我的用例图中有三个主要角色,Admin,SuperAdmin,User。 现在SuperAdmin CRUD管理员,每个管理员都有不同的权限,3个不同的权限是准确的。 我的问题是我是否必须创建3种类型的管理员(因此还有2个演员),每个管理员根据他的特权表示,或者只创建一个管理员演员&将它链接到所有三个用例(3个权限)?
我是UML& amp;的新用户这是我的第一个项目。
答案 0 :(得分:1)
这取决于特权。
如果一个特权是一个用例 - 一个特定的主题行为(你正在创建的系统),暴露给用户 - 那么如果两个参与者对这个用例的准入不同,那么它们应该被显示为不同的演员。例如,一个管理员可以注册用户,另一个不能。为它们制作不同的名称。
如果特权不是行为 - 例如,一个管理员可以设置用户0..5的优先级,另一个管理员可以将其设置在0..7范围内,它们可以显示为一个参与者他们的特权可以显示为州。根据UML标准,状态机可以包含在用例中。
如果特权只是暂时的,那么一定要使用一个演员,因为它是状态。不要忘记,不同时刻的不同用户通常有不同的选择。但是这个事实将由状态机在用例图的内部或外部描述。
答案 1 :(得分:0)
通过UML定义,actor不代表特权。 UML说,当系统执行声明的用例时,它与与usecase相关联的actor交互(或协作)。这意味着,如果actor没有与UseCase的关联(直接或间接),则它无法访问此功能。
演员可以专门化其他演员,这意味着,专业演员在使用过程中与系统互动,更多的是一般演员有关联等。
不要仅仅为描述特权而定义演员,这不是正确的方法。