UML是否在两个用例之间扩展

时间:2017-09-26 07:42:16

标签: uml

我有一个名为X的演员。这个演员连接到用例:查看库存。 还有一个名为View items的Use Case。在查看库存时,演员可以选择查看属于库存的物品。

在这种情况下:View项目用例是否应该扩展View库存?因为演员在看到所有库存的同时查看物品是可选的吗? 或者两个用例只是简单地连接到演员而不是彼此连接?

在UML 2和统一过程中,它指出扩展用例通常在注释完整用例时因此无法实例化。 我的情况真的很困惑。

这里有一个简单的观点:

使用案例:查看库存

延伸---->查看项目

如果没有先从视图库存用例中选择特定库存,则无法查看项目。这是可选的。

用例:查看项目

延伸---->新增项目 延伸---->删除项目

您必须先查看特定广告资源中的项目,然后才能添加或删除项目。这是可选的。 enter image description here

1 个答案:

答案 0 :(得分:1)

你最好忘记那些扩展/包含关系。您很想在UC上应用功能分解,这与您在此处尝试实现的完全相反。 UC应该是所考虑的系统(SUC)向其中一个参与者提供的唯一附加值。所以UCs最好显示为代表SUC和站在外面的演员的边界内的简单气泡。将主要演员放在左边和(如果有的话)次要演员到边界的右边界是很常见的。

  • 不要使用extend / include。 (我从来没有真正需要这些关系。恕我直言,他们是UML中的设计错误。)
  • 如果您的UC图表开始类似于蜘蛛网,那么您的设计可能会被破坏。
  • UC不是关于功能的顺序。如果只能在执行另一个UC后执行UC,请添加约束{ can only be executed after UC x has been completed once }等。