uml各种关系的比较说明.doc

上传人:枫** 文档编号:563029119 上传时间:2023-11-28 格式:DOC 页数:4 大小:27KB
返回 下载 相关 举报
uml各种关系的比较说明.doc_第1页
第1页 / 共4页
uml各种关系的比较说明.doc_第2页
第2页 / 共4页
uml各种关系的比较说明.doc_第3页
第3页 / 共4页
uml各种关系的比较说明.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《uml各种关系的比较说明.doc》由会员分享,可在线阅读,更多相关《uml各种关系的比较说明.doc(4页珍藏版)》请在金锄头文库上搜索。

1、uml各种关系的比较说明各种关系的比较说明 Extend 、 Include 、 Uses 第一、 必须明确uses和extends是UML1.1中的stereotypes(构造),它们在UML1.3(Rose2003中已经舍弃了uses关系)中被修订为include(代替了原有的uses)和extend; 第二、 需要明确的是include和extend用于表示use cases之间的关联(associations)?依赖关系; 第三、 有一个例子可以解释include和extend的用法:在一个eCommerce系统中,有三个用例 Browse Catalog Place Order Au

2、thorize Credit Purchase这个用例来自外部系统。 其中“Browse Catalog”用例extend“Place Order”用例,因为“Place Order”是“Browse Catalog”的特殊情况,用户在browse的时候,可以随时place order。 而“place order”用例include“Authorize Credit Purchase”用例,这是因为用户必须用credit card来支付order,这就存在一个验证credit card的问题,所以“place order”用例一定包含“Authorize Credit Purchase”用例

3、。 用尤克滨先生的话来说就是:比如你上楼,你也许必须要走楼梯(include),当然你有可能在中途去一下洗手间(extend)。 Extend扩展关系,最常用的关系之一(并联) 定义 表示两个用例间有扩展关系,后者是前者信息或者业务功能的扩展。如果A extend B,那么B是A一个条件性执行用例。 格式 表示NewUseCase(A)每次被调用,系统也有可能会调用NewUseCase2(B),但并不是每次都调用NewUseCase2。表示NewUseCase2只是NewUseCase1的一个扩展用例,关系不像Include那么紧密 例子 比如登录是一个用例,如果我们把登录失败当成一个用例,那

4、么这个用例和登录就是Extend的关系。(当然登录失败我们一般处理为一个备选流)。 说明 是指额外的用力插入,基用力对此扩展不知情扩展关系是处理用例的变体,如果把变体的内容放在同一个用例的可选过程中, 会使得问题变得复杂, 难于理解。 通常建立基本过程在基本用例中,不同的变体建立成不同的用例扩展基本用例。是对基本的流程进行建模,然后通过扩展用例进行扩展。基本用例不知道扩展用例,扩展用例通常是在基本用例的某一点和特定的条件激发。扩展用例通常是对基本用例的补充和可选的行为建模。扩展关系可以看作是中断。(例如:“查询人员信息”是一个用例,“修改人员信息”是一个用例,则“查询人员信息”extend“修

5、改人员信息”,表明修改人员信息涉及到查询人员信息,这可以使得传统的audi设计更为精确) 使用条件 if usecase A is mixed into usecase B ( it can be said B allows optional functionality of A to be incorporated into itself),but A is not added as a whole ,it is divided as some parts but all the parts are all added to B . I think this relation can be

6、described as extension . 使用基本原则 1.基用例(即被扩展用例)与扩展用例应该是 相互独立的,换句话说,基用例必须是完整的,扩展的用例与其相分离的。 先描述基本行为(或特性)-强制的 再描述添加的额外行为-强制的或可选的 2.扩展依赖的层次深度,一般不应该再去扩展一个扩展用例。 Include是包含关系,最常用的关系之一(串连) 定义 表示两个用例间有包含关系,后者是前者的一部分。如果A Include B,那么A Case就有可能执行B Case,如果A执行B得话,就必须完全执行。 格式 表示NewUseCase1每次被调用,系统也都会调用NewUseCase2。表

7、示NewUseCase2其实是NewUseCase1的一个附属用例。当然,NewUseCase2也可能是另外一个用例的附属用例。 例子 例如看病是个用例,挂号是另一个用例,挂号包含于看病。但是看病时并不一定挂号,因为急诊是无需挂号的(即是说看病用例不包含挂号用例),但如果挂号的话,那就必须完成这个用例。 说明 使用关系是在多个用例包含了重复的内容,避免重复,把这部分共同的用例片断抽出来,可以被多个用例使用。比如取款和转账都需要用户身份验证。 是对多个用例中重复的部分的抽取,并通过用例的Include关系来表达出来。 包含用例知道被包含用例,通常在文字描述中通过下划线的方式来引用被包含用例。 被

8、包含用例的动作流被插入到包含用例的动作流中通常,被包含用例不是一个真正意义上的用例,只是一个片断。 可以命名为Sub Use Case。包含关系可以看作是调用或者引用。 使用条件 the use case being included is known as the inclusion use case , and the use case doing the including as the base use case . the include relationship is appropriate if a complete sequence diagram for the base c

9、ase would include the sequence diagram for the inclusion case ,and the interactions in the inclusion case are performed without interruption 如何在画用例的时候使用Extend 和 Uses (和Include似乎并无本质区别?姑且先等价二者usesInclude) 如果你学过电路的基本知识,这个比喻有用 被使用的用例是多条串联电路中的公共的串联电路。 箭头从使用的主电路指向被使用的公共电路。 扩展关系正好和并联电路有关系。 扩展用例就是一条带有并联和串联电路的电路中,并联部分除一条基本支路以外的所有其他的并联支路。被扩展的用例是,在并联处用基本支路连接的整条串联电路。每一条并联支路都是对这条基本支路的一个扩展(可替换路径),在这条电路中,串联部分的电路是公共的。 箭头从并联支路指向整条带基本支路的串联电路。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号