这是一个正确的用例图吗?

时间:2014-03-22 11:17:52

标签: uml

我试图写一个在线购物的用途。客户可以搜索他们想要的商品并将其添加到购物车,但是当他们决定结帐时,他们需要使用他们的帐户登录。但是如果客户已经登录会发生什么?我的图表仍然正确吗?如果没有,我该如何修改它?

enter image description here

2 个答案:

答案 0 :(得分:0)

您正在尝试将用例图用作工作流编辑器,这是不正确的。

用例图用于指示用户可以采取的操作来完成某些操作。它们不代表这些行为的顺序。每个用例都从特定的用户操作开始,而不是另一个用例的副作用。

在你的图表中,“搜索​​”用例很好,但结果的显示是该用例的一部分。如果系统只显示“搜索完成”结果,然后强制用户执行某些操作来查看结果,那就没有用了......虽然你有一个<<include>>关系,但它不是什么装置

<<include>>的一个示例是Login用例。客户可以在做任何其他事情之前自行登录,或者登录可能由另一个用例触发,例如Check Out。因此,登录本身就是一个用例,Check Out用例也是<<include>>

添加到购物车是一个应由客户直接触发的用例。它不是自动触发的东西 - 客户需要做某事。

同样适用于付款用例。我认为客户需要执行明确的行动才能付款。

答案 1 :(得分:0)

任何用例都必须连接到某些actor。所以,你应该添加连接。

CheckOut用例很奇怪且不可理解。我不知道网上商店的任何行动,包括登录和付款。如果您的意思是订购,则登录或付款是附加的单独用例,这些用例通过某些可被描述为状态的条件与订购相关联。

别忘了,您不能仅通过用例元素显示操作和状态序列。如果你有一个小的用例图,你可以在其中包含状态机图,但这里并不好 - 你完全忘记了管理员和卖家的演员及其用例,所以完整的用例图太大了在其中添加额外的东西。描述有关登录其他状态机图表的序列。

相关问题