【UML】--包含和扩展

 

                                                    【UML】--包含和扩展




    在UML中的用例图中常见的关系有包含、扩展和泛化,其中包含于扩展是用例图中特有的关系,而泛化关系不仅用

于用例图,同时也适用于其他图,比如类图等等。

  

    用例图直接的包含和扩展关系是分解和组织用例的有效工具,表面上看它们有许多相似之处,事实上是有很多相似

之处,更多的是我们要进行对比学习、进行关联学习和总结。                        



一、   包含(include)关系



   定义通常是指一个大的用例包含了几个小的用例,几个小的用例组成一个大的用例;

  

   当可以从两个或两个以上的用例图中提取公共行为时,应该使用包含关系来表示它们。其中这个提取出来的公共用

例成为抽象用例,而把原始用例成为基本用例或基础用例。例如,图1中的“登记外借信息”和“查询外借信息”两个用例

都需要登陆,为此,可以定义一个抽象用例“用户登录”。用例“登记外借信息”和“查询外借信息”与用例“用户登录”之间

的关系就是包含关系。其中<<include>>是包含关系的构造型,箭头指向抽象用例。

 

               


   当多个用例需用使用同一段事件流时,抽象成为公共用例,可以避免在多个用例中重复地描述这段事件流,也可以

防止这段事件流在不同用例中的描述出现不一致。当需要修改这段公共的需求时,也只要修改一个用例,避免同时修

改多个用例而产生的不一致性和重复性工作。另外,当某个用例的事件流过于复杂时,为了简化用例的描述,也可以

将某一段事件流抽象成为一个被包含的用例。




二、   扩展(extend)关系

 

定义:两个独立的用例,完成一个后可以开启另一个,两个用例本身都是独立的。 

     

                    


  

     如果一个用例明显的混合了两种或两种以上的不同场景,即根据情况可能发生多种分支,则可以将这个用例分为一

个基本用例和一个或多个扩展用例,这样使描述可能更加清晰。如上图中的图书管理员进行“查询书籍信息”操作时,

如果发现书籍信息有误,他可以使用“修改书籍信息用例来完成错误的修改。所以用例“查询书籍信息”和“修改书籍信

息”之间的关系就是扩展关系。其中<<extend>>是扩展关系的构造型,箭头指向基本用例。



    注意:扩展和包含都是箭头指向 主的,上图2中修改是在 “查询”之前,先查询

在修改!修改是查询的一个扩展出来的功能。
  

   除了包含还有泛化和继承,这又是什么呢?请看下文。



评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值