UML用例图,查看器的不同actor?

时间:2016-05-30 14:54:34

标签: uml use-case

我想知道我的用例图是否正确,如果有人可以给我一些指示,如果不是。

用于用户可以登录的应用程序(始终需要)。当他们登录时,他们会看到一个列表,其中包含可以向上或向下投票的帖子(如reddit)。选择帖子时,他们可以放置和删除(仅限自己的)评论。

登录的用户可以在登录时放置帖子,但也有一个按钮,可以查看他们已经放置的帖子,可以在其中进行编辑和删除。

最后,有一位管理员可以删除不适当的帖子和评论。

我是否应该定义用户只能编辑和删除自己的帖子和评论?如果是这样,我该怎么做?也许是另一个演员?

提前致谢!

Diagram

2 个答案:

答案 0 :(得分:2)

您的UC存在一些缺陷。

  1. 登录根本不是UC(它不会向actor添加任何值)。这是您可以适用于UC的约束。
  2. 错误的用户名/ pw当然不是UC。它会在某处弹出一些消息。
  3. 注册是其自己的UC。将其直接连接到用户。
  4. 使用UC进行泛化并不是一个好主意,因为它会带来很多讨论内容。将其保留在Manage级别,并在UC内部描述这意味着什么。
  5. <<include>>通常以错误的方式使用(即用于功能分解)。你也是这样做的。所以请放下它,专注于基本的UC Manage comments并直接与演员联系。
  6. 如果出于某种原因需要为UC描述一些订单,您可以使用UC中的前置条件。

答案 1 :(得分:0)

请记住,您无法使用用例图对所有内容进行建模。单个UC是一组提供特定业务结果的操作流程。您可以在UC的描述中提供有关限制的详细信息(例如,您只能管理自己的注释的条件)(通过活动或序列图建模或仅在书面描述中),但在UC图上

由于评论在您的系统中是可选的,因此您肯定使用了错误的关系。 include 表示在执行包括UC时,包含的UC将始终执行。在您的情况下,这取决于用户的决定,这意味着您应该使用 extends (当然,在这种情况下,关系是相反的方向)。见18.1.3.2(第2段)和18.1.3.3(第1段)。您几乎可以在任何有关基于UML的分析的书中找到对此的确认(例如Howard Podeswa的“商业分析师的UML”)。

除此之外,我同意Thomas Kilian给出的缺陷清单。