用例图的条件路径应该如何建模?

use*_*781 8 uml use-case

我正在制作一个网站,访问者可以:

  • 查看帖子。
  • 仅在未登录的情况下使用常规注册或 Facebook 注册。
  • 仅当已注册 Facebook 时才可使用 Facebook 登录。
  • 仅当他们以常规方式注册时才使用常规登录或密码重置。
  • 仅在经过身份验证后才创建帖子或取消注册。

我不明白应该如何为访问者提供不同的用例建模。由于未注册访问者可以成为注册访问者,而注册访问者也可以成为未注册访问者,因此他们可以在网站上做同样的事情,只是采取不同的路径。

这些条件对于用例图重要吗?常规注册需要填写很多字段,而 Facebook 注册只需要访问者选择一个用户名,这样说是不是太具体了?

用例可以自我扩展吗?就像注册失败一样,访客再次重复注册。

编辑:我猜测如何绘制图表: 用例图

编辑2:或者也许像这样更简单? 在此输入图像描述

Gho*_*ani 4

正如@granier 所说,你的第二个模型要好得多,@Thomas Kilian 的观点是可以修改的。

我想指出你的错误并提供一个新的用例图。我认为你的模型存在一些错误(逻辑上和实践上):

  1. 太详细的用例图(模型1)(请参阅我之前的帖子TIPS 这里
  2. 用户名不是用例。
  3. 登录和重置密码之间没有扩展关系。(型号2)
  4. 与注册用户关联的登录?所有用户都可以触发登录用例(无论成功与否)。
  5. 错误使用包含、扩展和继承关系(模型 1)。

请考虑我提供的用例图:

在此输入图像描述

此外,您可以将前置条件和后置条件添加到用例文档中。但是,它们不会改变用例。