UML用例图关系(Include 和extend)

用例图关系

三种关系

泛化(Generalization)
包含(Include)
扩展(extend)

下面给大家分别通过举例来介绍一下这三种关系的概念和用法

概念和用法

概念
(1)泛化关系(带空心三角的实线表示):是一种继承关系,子用例是父用例的一种特殊形式,它继承了父用例的所有结构、行为、关系。其中三角箭头指向父用例。

举例
在这里插入图片描述
概念
(2)包含关系:基本用例的行为包含了另一个用例的行为,是比较特殊的依赖关系。
包含关系可以用于下面两种情况之中
举例
A. 当可以从两个或两个以上的用例中提取公共行为时,应该使用包含关系。其中提取出来的公共用例成为抽象用例,而把原始用例变成基本用例或基础用例。箭头指向抽象用例。
在这里插入图片描述
说明:阅读者在读书和借书的时候,都要登记记录,他们有登记记录这一共同的行为,所以把它提取出来作为一种抽象用例,借书和还书这两个基本用例中包含了登记记录这一抽象用例。
B.一个用例的功能太多时,可以使用包含关系建立若干个更小的用例。
在这里插入图片描述
说明:一般用户有很多功能,其中包括各种信息的查看,这时可以建立一个查询信息这一个用例,然后下面在包含查看余额、查看上机记录、查看充值记录这三个小用例。

(3)扩展关系:扩展用例在扩展点上增加新的维护和含义。扩展用例为基用例添加新的行为,箭头指向基本用例。
在这里插入图片描述
举例
在这里插入图片描述
说明:在机房收费系统当中,操作员在进行信息查询的时候,需要将查询到的信息导出为excel表格,这个导出excel用例相对于信息查询用例来说就是一个扩展用例

何时使用,如何区分?

什么时候使用包含关系
A.当两个或两个以上的用例包含大量的一致行为的时候,可以抽象出一个抽象用例
B.当用例数量太多或过于复杂的时候,可以使用抽象用例包含一些小用例
什么时候使用扩展关系
基本动作在一个用例中,如果这个基本用例还有其他动作,但需要在一定条件下才执行,可以将它放在扩展用例中

发布了54 篇原创文章 · 获赞 14 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/wtt15100/article/details/104027862