Architecture 选择用户选项作为扩展用例?

Architecture 选择用户选项作为扩展用例?,architecture,uml,software-design,use-case,Architecture,Uml,Software Design,Use Case,我有一个很大的用例“管理订单”,我想把这个用例扩展到一个更具体的用例 当用户要求管理订单时,他可以做许多表示用例的选项,我的问题是:大用例是否扩展了新用例? 反过来说。特定子用例扩展主用例。这样看:当您想要管理订单时,您总是调用主用例,但其他行为可能会有所不同-检查订单状态用例扩展了管理订单用例的核心功能。这同样适用于订单。在您的图表中,extend关系方向应该颠倒 用法规则include和extend:用例中始终存在的公共部分可以提取出来(并可选地由其他用例使用),而included可以由更大

我有一个很大的用例“管理订单”,我想把这个用例扩展到一个更具体的用例

当用户要求管理订单时,他可以做许多表示用例的选项,我的问题是:大用例是否扩展了新用例?
反过来说。特定子用例
扩展
主用例。这样看:当您想要管理订单时,您总是调用主用例,但其他行为可能会有所不同-
检查订单状态
用例扩展了
管理订单
用例的核心功能。这同样适用于
订单
。在您的图表中,
extend
关系方向应该颠倒


用法规则
include
extend
:用例中始终存在的公共部分可以提取出来(并可选地由其他用例使用),而
include
d可以由更大的用例使用。应该提取用例中可能存在或可能不存在的可选部分,并将它们扩展到更大的用例中。

正如icepack所解释的,如果您想使用
扩展
,那么关系将以相反的方式绘制。但我不确定在这种情况下是否会使用
extend

事实上,用例应该始终代表一个真正的功能。这里,
检查订单状态
订单
确实是用例,但我不确定
管理订单
是用例。你确定它自己代表了什么吗?或者仅仅是将另外两个分组的一种方式?在第二种情况下,您应该使用包

为了回答这个问题,想象一下描述用例内容的场景。如果对于
管理订单
,您的场景仅仅是“在
检查订单状态
订单
之间进行选择”,那么
管理订单
不是一个用例