如何在 UML 用例图中创建身份验证步骤?

How to create the authentification step in a UML use case diagram?

我正在绘制在线账单支付的用例图,但我对身份验证步骤感到困惑。为新用户和注册用户创建单独的用例是否更好,就像我在下面尝试过的那样

或者我应该只创建一个登录用例然后扩展寄存器,例如:

或者我应该创建一个身份验证用例并扩展登录、注销和注册吗?

用例显示为其参与者带来的附加值。 Login 没有附加值。所以 Login 根本不是用例。这是您应用于其他用例的约束。它可以附加到(真实的)用例,例如 { actor must be logged in}.

我可以推荐 Bittner/Spence 作为处理用例的优秀资源。

根据预期的系统行为和您的写作风格,有多种方法。

  • 使用两个不同的参与者,授权用户和非授权用户。为非授权用户编写子功能级登录用例。让授权用户仅成为用户目标用例(如检查余额)中的参与者。
  • 在所有用户目标级别用例中写入用户被授权的前提条件。编写子功能级登录用例。
  • 在所有用户目标级用例中写入用户会话有效的前提条件。编写子功能级用例,其中系统检查会话并在需要时强制执行登录用例。

登录、注销和注册(以及会话过期)场景未按您要求的方式连接。例如,您可以将它们标记为 AAA 或放入 AAA chapter/folder。没有必要将它们混合在一个场景中。