1. 关联关系(association)

关联关系式是用一条直线表示的,如A—B。表示在一段时间内将多个类的实例连接在一起,关联关系描述了某个对象在一段时间内一直知道另一个对象的存在。在Rose中为了区分相互“知道”和单向“知道”的关系,定义了关联关系的另一个变体,既单向关联关系,用一条带箭头的直线来表示,例如A—>B,说A知道B中,但是B不知道A。

2. 依赖关系(dependency)

依赖关系是用一条带箭头的虚线表示的,例如A----->B(A依赖于B)。依赖关系用来描述一个对象的修改会导致另一个对象的修改这样的关系。与关联关系不同的是,依赖关系除了“知道”其他对象的存在,还会“使用”其他对象的属性或者方法。因此可以这么说,依赖关系是一种特殊的关联管理。

3. 扩展关系(extends)

扩转关系是用一条带箭头的虚线加版型<<extends>>来表示的,如(A扩展出B),它用于在用例模型中说明向基本用例中的某个点插入扩展用例,一般来说,扩展用例是带有抽象性质的,它表示了用例场景中的某个支流,有特定的扩展点触发而被启动。扩展用例应该用在概念模型中,通过分析业务用例场景抽象出关键的可选核心业务而形成扩展用例。与包含关系不同的是,扩展表示的是“可选”,而不是“必需”,这意味着即使没有扩展用例,基本用例也是完整的。如果没有基本用例,扩展用例是不能单独存在的。

4. 包含关系(include)

包含关系是用一条带箭头的虚线加版型<<include>>来表示的,包含用例总是带有抽象性质的,基本用例可控制与包含用例的关系,并可依赖于执行包含用例所得的结果。但基本用例和包含用例都不能访问对方的属性。于扩展用例一样,包含用例也应当用在概念用例模型中,通过分析业务用例场景而抽象出关键的必选的核心业务而形成包含用例。与扩展用例不同的是,包含用例表示的是“必须”而不是“可选”。这意味着如果没有包含用例,基本用例是不完整的,同时如果没有基本用例,包含用例是不能单独存在的。

5. 实现关系(realize)

实现关系式一条带空心箭头的虚线表示的,基本用例描述了一个业务目标,但是该业务目标有多种可能的实现途径,每一种途径可以用用例实现来表示。

6. 泛化关系(generalization)

泛化关系是一条带空心箭头的实线表示的,(A继承自B)。泛化关系可用于建模过程中的任意个阶段,说明两个对象之间的继承关系。

7. 聚合关系(aggregation)

聚合关系是用一条带空心菱形箭头的直线表示的,如(A聚合到B上,或者B由A组成)。聚合关系用于类图,特别用于表示实体对象之间的关系,表达整体由部分构成的语义。与组合关系不同的是,整体和部分不是强依赖的,即使整体不存在了,部分仍然存在。

8. 组合关系(composition)

组合关系式是用一条带实心菱形箭头的直线表示的,如(A组合成B,或者是B由A构成)。需要特别说明的是,在Rose中没有采用实心菱形箭头这一标准的UML图形,而是采用了带箭头的空心菱形。箭头表示指向组合的子对象,表示子对象属于母对象。组合关系是一种强依赖的特殊聚合关系,如果整体不存在了则部分也消亡。

UML 关系的更多相关文章

  1. 图例解析四大UML关系【转】

    转自http://developer.51cto.com/art/201007/209644.htm 本文和大家重点讨论一下UML关系图,UML中有五类图,共有九种图形,UML类之间的UML关系图你是 ...

  2. UML关系

    UML关系详解 1.关联关系(association) 连接模型元素及链接实例,用一条实线来表示 2.依赖关系(dependency) 表示一个元素以某种方式依赖于另一个元素,用一条虚线加箭头来表示 ...

  3. UML关系图

    在UML类图中,常见的有以下几种关系: 泛化(Generalization),  实现(Realization),关联(Association),聚合(Aggregation),组合(Composit ...

  4. 设计模式奠基石——UML关系转化为代码

    1.继承关系(泛化关系) [说明]:继承关系是子类(派生类)继承父类(基类),或者子接口继承父接口的关系.即子类对象"is a" 父类对象,比方鸟是动物. [UML图]: 图解:A ...

  5. 简单实用UML关系图解

    一句话UML,再记不住就要DPP了: 关系 图解 代码 备注 1:继承关系(Generalization)     2:实现关系(Realization)     3:依赖关系(Dependency) ...

  6. UML关系(泛化,实现,依赖,关联(聚合,组合))

    http://www.cnblogs.com/olvo/archive/2012/05/03/2481014.html UML类图关系(泛化 .继承.实现.依赖.关联.聚合.组合) 继承.实现.依赖. ...

  7. UML关系类图

    在UML类图中,常见的有以下几种关系: 泛化(Generalization),  实现(Realization),关联(Association),聚合(Aggregation),组合(Composit ...

  8. UML关系总结

    用例图: 1.扩展关系:如果已有一个用例,在这个用例的基础(该用例是完整的)上加入新的动作形成了另一个用例,即后者是通过继承前者的属性并加入新的内容而来的,则前者通常称为通用化用例,后者常为扩展用例. ...

  9. UML关系实现、泛化,依赖、组合

    图片via<大话设计模式> UML一目了然

随机推荐

  1. C++的那些事:面向对象

    1 OOP概述 面向对象基于三个基本概念:数据抽象.继承和动态绑定.通过使用数据抽象,我们可以将类的接口与实现分离:使用继承,可以定义相似的类型并对其相似关系建模:使用动态绑定,可以在一定程度上忽略相 ...

  2. AppInventor学习笔记(五)——瓢虫快跑应用学习

    一.瓢虫引入 1:加入控件: 先引入方框中含有的控件,里面有两个画布,一个图像精灵,一个重力感应,一个时钟(设为10Ms).顺手改名.设置图像精灵的移动speed为10,并且引入瓢虫的图像 2.加入逻 ...

  3. codeforces732D 二分加贪心。。

    啊,不好意思..这个题窝也不会,看了网上的题解做的.. 先说一下题意.. 你要考试了..然后你有n天的时间准备以及进行考试 并且,每一天..要么你花一天时间去考一门(每天只能考一门),要么花一天时间休 ...

  4. 虚拟机下运行linux通过nat模式与主机通信、与外网连接

    首先:打开虚拟机的编辑菜单下的虚拟网络编辑器,选中VMnet8 NAT模式.通过NAT设置获取网关IP,通过DHCP获取可配置的IP区间.同时,将虚拟机的虚拟机菜单的设置选项中的网络适配器改为NAT模 ...

  5. HTML-Geolocation API

    获取位置信息: 请求一个位置信息,如果用户同意,浏览器就会返回位置信息(由经纬度和其他元数据组成),该信息是通过支持html5地理定位功能的底层设备提供给浏览器的:该API不指定设备用哪种底层技术来定 ...

  6. Unity Built-in Shader详解二

    这次主要讨论Unity自带的Shader中Transparent Shader Family 这个家族的Shader一共7种,原理和类型与Normal中的上差不多,只不过这些Shader是用在半透明或 ...

  7. Web 设计新趋势: 使用 SVG 代替 Web Icon Font

    如果你还在使用 Icon Font 作为网页中显示图标的实现方案,那么你可能有点 Out 了. 由于使用 Icon Font 显示图标存在一些缺陷,开发者们一直在致力于探索使用 SVG 作为替代的方法 ...

  8. Float Equal Problem

    Understand limitations of floating point representations.Never check for equality with ==. Instead, ...

  9. 【BZOJ】1601: [Usaco2008 Oct]灌水(kruskal)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1601 很水的题,但是一开始我看成最短路了T_T 果断错. 我们想,要求连通,对,连通!连通的价值最小 ...

  10. mybatis 调用存储过程 返回游标 实例

    存储过程示例: create or replace procedure Fsp_Plan_CheckPrj(v_grantno varchar2, v_deptcode number, v_curso ...