Uml 在某些用例需要身份验证的情况下创建用例图的建议方法?

Uml 在某些用例需要身份验证的情况下创建用例图的建议方法?,uml,use-case,use-case-diagram,Uml,Use Case,Use Case Diagram,我的同事和我都不太确定如何对用例建模,我们中的3个人都得到了不同的解决方案,你们可以看到下面的每个图片,它们是我们所面临的问题的简化版本。我们刚刚开始认真的项目工作,没有人有太多的经验,所以我们想从start学习在这种情况下的最佳实践 我们有一个web应用程序,每个用户都可以访问网站的某一部分,而其他部分则需要登录,现在我们还不能确定编写该应用程序用例的正确方法。我的想法是将用户与来宾用户和认证用户分开,这样我们的用例就不会因为一堆包含关系而变得混乱(我们得到的用例比这里介绍的多得多) 这就是我

我的同事和我都不太确定如何对用例建模,我们中的3个人都得到了不同的解决方案,你们可以看到下面的每个图片,它们是我们所面临的问题的简化版本。我们刚刚开始认真的项目工作,没有人有太多的经验,所以我们想从start学习在这种情况下的最佳实践

我们有一个web应用程序,每个用户都可以访问网站的某一部分,而其他部分则需要登录,现在我们还不能确定编写该应用程序用例的正确方法。我的想法是将
用户
来宾用户
认证用户
分开,这样我们的用例就不会因为一堆
包含关系
而变得混乱(我们得到的用例比这里介绍的多得多)

这就是我所做的:

在我看来,这是最容易理解和扩展的,因为它清楚地区分了两种用户。

另一种可能的办法:

当我们有更多的用例时,这看起来也很好,比上一个更容易理解

最后一点:

这与我们在大学里学到的UML规范最为接近,但一旦我们添加更多用例,它就会变得非常混乱,行开始相互交叉,很难看出是什么。


我们的问题是,在这种情况下,编写用例图的最佳方法是什么?

使用方法二。为了理解,将用例分成几个部分。对于方法二,您可以显示用户登录,在另一个用例中,您可以显示经过身份验证的用户可以做什么。

您应该使用第一种方法处理单独的用例还有演员

您可能会在
用例a
用例B
中添加一个前提条件,例如:用户必须经过身份验证

然后,
登录
用例的后置条件可以是:用户已通过身份验证。这会将您的用例与
登录
用例的结果联系起来,而不是与实际用例联系起来
如果明天您创建了一个与
登录
用例具有相同后置条件的新用例,那么您不需要重新设计包含
登录
用例的所有其他用例(或者更糟的是包含在
登录
用例中)


在这种情况下,从演员名字来看,这一切都是显而易见的,所以你甚至可以考虑完全放弃它。

不使用你的任何方法!代码>登录根本不是用例,因为它不会增加任何价值。在需要身份验证的用例中使用约束

{需要登录}

谢谢你的帮助,但我真的不明白你在第二句话中想说什么,你能解释一下吗?我也说过Geert Bellekens说的话。但你还不明白我的话,但我发现托马斯帮了我最大的忙,所以我选择了他的答案,如果你是说在那次否决投票中,那不是我。非常感谢,很好的答案,从来没有考虑过那些条件,现在这很有意义。谢谢,还有一个问题,该约束应该将参与者与用例或2个用例连接起来,还是不重要,可以两种方式使用?该约束可以连接到UC(因此每个人都需要身份验证),也可以连接到UC和参与者之间的连接器(意味着:仅适用于该特定参与者)。一般来说:UC显示附加值。如果你看不到,那不是UC。这很有道理,再次感谢你,你帮了我很多。