UML(5)——协作图
协作图中表示了角色之间的关系,通过协作图限定协作中的对象或链。协作指的是在一定的语境中一组对象以及实现某些行为的对象间的相互作用。
协 作图是表现对象协作关系的图,表示了协作中作为各种类元角色的对象所处的位置。图中主要显示了类元角色和关联角色,类元角色表示参与协作执行的对象的描 述,对象可以参与一或多个协作;关联角色表示参与协作执行的关联的描述。类元角色和关联角色描述了对象的配置和当一个协作的实例执行时可能出现的连接。在 一个协作中,描述了该协作所有对象组成的网络结构以及相互发送消息的整体行为,表示了潜藏于计算过程中的三个主要结构的统一:数据结构,控制流和数据流。
从 结构上,协作图和对象图一样,包含了一个角色集合和它们之间定义了行为方面的内容的关系,从这个角度上说,协作图也是类图的一种,但静态视图描述了类固有 的内在属性,协作图描述了类实例的特性。从行为上,协作图和序列图一样,包含了一系列消息的集合,这些消息在具有某一角色的各对象间进行传递交换,互相协 作达到目标。
协作图中的涉及的对象可以标识为四个组:存在于整个交互作用中的对象,在交互中创建的对象,在交互中销毁的对象,在交互中创建并销毁的对象。
在UML中,协作图中的类元角色表示为类的符号,也就是矩形,关联角色表现为实现的关联路径,路径上带有消息符号。如果关联线上标有消息,图形就可以表示一个交互,一个全国性用来表示一个操作或用例的实现。
协作图的作用
协 作图是在一种给定语境中描述协作中各个对象间的组织交互关系的空间组织结构的图形化方式,从定义中可以分析它的作用为:对象间消息的传递来反映具体的使用 语境的逻辑表达,一个使用情境的逻辑可能是一个用例的一部分或是一条控制流;它的交互关联显示对象交互的空间组织结构,显示一种对象间的关系,而不注重顺 序;表现一个类的操作实现,协作图中可以说明类操作中使用的参数,变量,返回值。当表现一个系统的行为时,消息编号对应了程序中嵌套调用的结构和信号传递 过程。
序列图常用来表示方案,协作图用于过程的详细设计。
协作图的组成
协作图由对象,消息,链等构成。
对象:类的实例。对象的角色表示一个或一组对象在完成目标的过程中所起的部分作用。对象是角色所属类的直接或间接实例,在协作图中,一个类的对象可能充当多个角色。
对象名:类名
消息:消息用来描述系统动态行为,它是从一个对象向另一个或几个对象发送信息,或由一个对象调用另一个对象的操作。由三部分组成:发送者,接收者,活动。
消息用带标签的箭头表示,它附在链上。链连接了发送者和接收者,箭头所指方向为接收者。每个消息包括一个顺序号以及消息的名称,其中顺序号标识了消息的相关顺序。消息的名称可以是一个方法,包含名字,参数表,返回值。
链:表示两个或多个对象间的独立连接,是关联的实例。协作图中,关联角色是与具体语境有关的暂时的类元之间的关系,关系角色的实例也是链。链表示为一个或多个相连的线或弧。
例:

原文:http://www.cnblogs.com/jams742003/
UML(5)——协作图的更多相关文章
- [UML]UML系列——协作图(通信图)collaboration diagram
系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图Class [UML]UML系列——类 ...
- UML之协作图
面向对象动态建模,用于建立行为的实体间行为交互的四种图,状态图(Stage Diagram),时序图(Sequence Diagram),活动图(Activity Diagram)前面的博客中,我们已 ...
- 【UML】协作图Collaboration diagram(交互图)(转)
http://blog.csdn.net/sds15732622190/article/details/49402269 前言 学完UML时序图,就要看一下UML协作图,因为两张图是相 ...
- UML: 协作图
摘自http://www.umlonline.org/school/thread-38-1-1.html UML1.1时,协作图英文名字叫:Collaboration Diagram,UML2.0时, ...
- (五)UML之协作图
一.什么是协作图? 顾名思义协作图就是合作图,有合作就涉及到多个对象. 协作图(Collaboration Diagram /Communication Diagram,也叫合作图)是一种交互图(in ...
- UML简介
Unified Modeling Language (UML)又称统一建模语言或标准建模语言,是始于1997年一个OMG标准,它是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型 ...
- [UML]UML系列——状态机图statechart diagram
系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图Class [UML]UML系列——类 ...
- UML(统一建模语言)
最近看了一个UML图,所以特意来了解一下UML 统一建模语言 锁定 同义词 UML(统一建模语言)一般指统一建模语言 本词条由“科普中国”百科科学词条编写与应用工作项目 审核 . Unified Mo ...
- 设计模式-UML类图基础
设计模式之序-UML类图那点事儿 打14年年底就像写那么一个系列,用于讲设计模式的,代码基于JAVA语言,最早接触设计模式是大一还是大二来着,那时候网上有人给推荐书,其中就有设计模式,当时给我推荐的书 ...
- 设计模式之序章-UML类图那点事儿
设计模式之序-UML类图那点事儿 序 打14年年底就像写那么一个系列,用于讲设计模式的,代码基于JAVA语言,最早接触设计模式是大一还是大二来着,那时候网上有人给推荐书,其中就有设计模式,当时给我推荐 ...
随机推荐
- Spring验证的错误返回------BindingResult
Spring验证的错误返回------BindingResult 参考资料:http://www.mkyong.com/spring-mvc/spring-mvc-form-errors-tag-ex ...
- matlab数据转换为字符串并合并字符串标注到图像曲线上
1.把数字转换为字符串 [函数描述]str=num2str(A):把数组A中元素取小数点后四位,并转换为字符串. [函数实例]把数字转换为字符串,输入语句: str1=num2str(pi) str2 ...
- Javascript系列: Google Chrome调试js代码(zz)
你 是怎么调试 JavaScript 程序的?最原始的方法是用 alert() 在页面上打印内容,稍微改进一点的方法是用 console.log() 在 JavaScript 控制台上输出内容.嗯~, ...
- Git.Framework 框架随手记--ORM查询返回实体对象
使用ORM有一个优势,可以通过某种机制将数据库中的数据转化为自己想要的对象形式数据.本章记录一下如何使用Git.Framework返回实体对象 一. Git.Framework 中提供的方法 在Git ...
- [AaronYang]C#人爱学不学8[事件和.net4.5的弱事件深入浅出]
没有伟大的愿望,就没有伟大的天才--Aaronyang的博客(www.ayjs.net)-www.8mi.me 1. 事件-我的讲法 老师常告诉我,事件是特殊的委托,为委托提供了一种发布/订阅机制. ...
- Webbench网站压力测试
Webbench是有名的网站压力测试工具,能测试处在相同硬件上,不同服务的性能以及不同硬件上同一个服务的运行状况.webBech的标准测试可以向我们展示服务器的 两项 内容:每秒钟相应请求数和每秒 ...
- 软工实践练习——使用Git进行代码管理
GITHUB上的预备活动: 注册 创建小组Organization,邀请组员进来 将代码库fork到小组Organization底下 下载并使用GIT: Git的安装 使用Git进行代码管理 1.从百 ...
- ibatis中的$和#的区别
介绍 在Ibatis中我们使用SqlMap进行Sql查询时需要引用参数,在参数引用中遇到的符号#和$之间的区分为,#可以进行与编译,进行类型匹配,而$不进行数据类型匹配,例如: select * fr ...
- MyEclipse 启动报错:'Building workspace' has encountered a problem解决方法
转载于:http://blog.csdn.net/v123411739/article/details/42645159 每次MyEclipse工作空间报错如下:'Building workspace ...
- JQuery学习(2)之Ajax
同步传输 正 多件事情一起做 | 程 不 事情一件一件地做 常: | 序 是: 异步传输 人 事情一件一件地做 | 员 人 多件事情可以一起做 附加(XML) ★XML作用:用来存储数据. ★XML特 ...