【问题标题】:How to represent the admin in this case?在这种情况下如何代表管理员?
【发布时间】:2016-09-07 15:21:42
【问题描述】:

管理员可以执行与用户相同的所有操作,并且可以查看和修改不属于他们的工单。普通用户只能在他们创建的工单上执行所有这些操作。另一个区别是管理员获得所有票证的列表,而用户仅获得他们自己的票证列表(“显示所有票证”扩展名)。这些是用户和管理员之间的唯一区别。

我如何代表管理员?
添加另一个演员并连接到所有人似乎不是一个好主意。

每个与工单相关的用例都有一个条件“用户创建了工单。”,只需添加“或用户是管理员”就可以完成这项工作,但系统是否具有行政。问题是管理员基本上是一个拥有额外权限的用户。

【问题讨论】:

标签: uml use-case


【解决方案1】:

虽然 UML 规范中没有直接解释,但您可以添加另一个用户 admin,在参与者之间显示一般化,其中 admin 是用户的专业化,并将只能由管理员执行的 UC 链接到管理员参与者,而 UC 对用户可用(和管理员)仅限用户演员。

一个专门化的参与者可以访问(可以运行)它专门化的参与者的所有 UC 以及它自己的 UC。

建议使用这种方法,例如由 Howard Podesva 编写(参见“面向 IT 业务分析师的 UML”),并且符合 UML 规范。

还请注意,参与者和用例之间的关联仅表明参与者以某种方式参与了 UC。虽然在大多数情况下是启动,但不一定总是如此。

【讨论】:

  • 可以引入一个命名法来区分主要演员和次要演员。例如。我使用了一个定向的关联。对于主要的和次要的无向使用关系。也有人说 UC 应该只有一个主要演员。
  • @ThomasKilian 至于只放置主要参与者 UML 规范是明确的,无论哪个参与者与 UC 交互,它们都应该与它相关联(但是还应该记住,UML 提供了一个模型,而模型可能会忽略一些信息——比如次要演员)。我遵循相同的规则来记录主要/次要参与者,它也被使用,例如在官方 OMG UML 考试中。
【解决方案2】:

现在管理员和用户都可以做同样的事情,但管理员可以有一些额外的用例。

【讨论】:

  • 我就是这样做的。伊斯特更快一些,并给出了更好的解释,所以我选择了他的答案。我赞成你的。
猜你喜欢
  • 2020-09-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多