Uml 用例所需的两个参与者可以是同一个人吗?
我已经看到了下面的用例图 给出的问题是“用例需要多少人?” 我被教导,演员被用来模拟领域中的某些角色,“真实”的人可以扮演多个角色 严格按照这个定义,一个人同时扮演两个角色就足够了,但我不确定我是否遗漏了什么,因为直觉上应该有一个原因,为什么有两个演员在场。 一个“真实”的人就够了吗 是的,这是可能的 例如,设想一个系统允许跟踪软件中的错误,参与者可以Uml 用例所需的两个参与者可以是同一个人吗?,uml,use-case-diagram,Uml,Use Case Diagram,我已经看到了下面的用例图 给出的问题是“用例需要多少人?” 我被教导,演员被用来模拟领域中的某些角色,“真实”的人可以扮演多个角色 严格按照这个定义,一个人同时扮演两个角色就足够了,但我不确定我是否遗漏了什么,因为直觉上应该有一个原因,为什么有两个演员在场。 一个“真实”的人就够了吗 是的,这是可能的 例如,设想一个系统允许跟踪软件中的错误,参与者可以 用户:在系统中添加新错误报告以发出问题信号的人 修正者:修正错误的人 如果开发软件的人员在intern中检测到缺陷,则该团队的同一人可以
- 用户:在系统中添加新错误报告以发出问题信号的人
- 修正者:修正错误的人
在我的论坛中,当用户请求注册时,我手动接受或不接受注册以拒绝垃圾邮件发送者 确保测试我同时扮演了用户和管理员的角色
等等,有很多这样的案例这个问题似乎假设演员就是人。然而事实并非如此:一个系统可以是另一个与用例主题交互的系统 严格地说,如果A和B是系统,那么根本不需要人员 但即使图中的所有参与者都是人类:图中的角色是未指定的。大多数人认为这意味着1,即强制演员。然而,未指明的意思是我们不知道。它可以是(至少,因为UML2.5)
0..1
,这样与主体交互只需要一个参与者,剩下的第二个是可选的
最后,正如您已经正确分析和Bruno确认的,即使需要两个参与者,也可能是同一个人。警告使用正确的命名/标记,您在问题和相关标记中使用了“UML活动图”,而不是“用例图”。我同意大多数人都错了,他们认为这意味着1。然而,下一个最常见的误解是,它意味着未指定。实际上,这意味着建模者不想在图表中提及它。我们必须查看模型才能找到答案。在那里,我们可能会发现,它实际上是未指明的。令人惊讶的是,这意味着1。它的意思是1,因为属性
lower
和upper
有一个派生,在未指定lowerValue
和upperValue
的情况下,其计算结果为1。当然,你仍然可以争辩说,隐式和显式之间是有区别的。