此问题已经在这里有了答案:
我正在研究运动应用程序,并且正在使用UML用例图对某些部分进行建模。一部分与应用程序中的用户设置目标有关。
用户可以设置的一些目标如下:
使用上述目标,用户还可以设置适用于上述两个目标的其他目标。
下面是该系统的一个小例子。
我已对上述实现进行了重新思考。我的一些问题/担忧如下:
Set exercise target
和Set calorie target
也可以是Set targets
用例的概括吗?Set targets
用例吗?我可以只使用用户与Set exercise target
和Set calorie target
的关联吗?Apply additional targets
和其他目标?此外,使用extends
和generalisation
进行区分的简便方法是什么?我感到这就是我的困惑,使我怀疑自己。
关于如何改进上述用例的任何建议将不胜感激。我主要关心的通常是正确的语法和符号。
如果有多个用例具有共同的结构或行为,请使用generalization
。 This page有助于理解该概念。如果您想证明两个用例非常相似,则使用generalization
确实有意义。
extend
关系更具体,可以在第二个(扩展)用例扩展第一个(基本)用例的行为时使用。另请参阅this discussion。
Actor
通常被允许与所有用例关联(专用/通用,扩展和扩展)。但是,应仅将关联与该Actor
使用的那些用例联系起来。