系列文章

[UML]UML系列——用例图Use Case

[UML]UML系列——用例图中的各种关系(include、extend)

[UML]UML系列——类图Class

[UML]UML系列——类图class的关联关系(聚合、组合)

[UML]UML系列——类图class的依赖关系

[UML]UML系列——类图class的泛化关系

[UML]UML系列——类图class的实现关系Realization

[UML]UML系列——包图Package

[UML]UML系列——活动图activity  diagram

[UML]UML系列——时序图(顺序图)sequence diagram

引言

用例图、活动图、时序图之间的关系?

时序图与协作图之间的关系

共同点:二者都是用对象间的交互来描述用例的。

案例:时序图

协作图

共同点:时序图与协作图均显示了对象间的交互。

不同点:时序图强调交互的时间次序。

协作图强调交互的空间结构。

案例剖析

这里还使用上片文章中的赤壁之战的时序图来分析。

思考:孔明向哪些对象发送了消息?又接收了哪些对象发送的消息?(可以根据这个典故,想想)

协作图

时序图按照时间顺序布图,而写作图按照空间结构布图

协作图与时序图在语义上是等价的,二者可以相互转换,而不会丢失信息。(通过上面的例子,你可能已经看出他们之间的转化关系)

协作图的构成

对象、链接、消息

对象

链接

1、链接的概念

链接用来在协作图中关联对象,链接的目的是让消息在不同的系统对象之间传递。

2、链接的符号表示

链接以连接两个对象的单一线条表示。

消息

1、消息的概念

消息是协作图中对象与对象之间通信的方式

2、消息的类型与符号表示

时序图与协作图的转换

时序图和协作图在语义上是等价的,所以时序图和协作图可以彼此转换而不会损失信息。(具体转换方式在下面Rose建模中讲到)

协作图的Rose建模

一、新建协作图

方法1:

方法2:

二、重命名协作图并双击打开

三、添加对象

方法1: a.将事先创建的类从浏览器拖到协作图中

b.双击对象,在弹出的窗口中设置对象的名称

方法2:
a.通过工具栏的对象按纽在协作图中添加一个对象

b.双击对象,在弹出的窗口中设置对象名和类

四、添加链接

用工具栏中的链接按纽进行连接

五、添加消息

方法1:
a.用工具栏上的消息按纽点击链接线

b.双击消息,在弹出的窗口中设置消息的名称

方法2:
a.双击链接线,弹出如下窗口

六、设置消息的类型

七、时序图与协作图的相互转换

总结

以上就是协作图的相关内容,希望对您有所帮助。在实际运用中,时序图用的比较多,我比较喜欢从时序图转换为协作图,其实时序图协作图,要其一就可以。不必要两种图都画,个人见解。

[UML]UML系列——协作图(通信图)collaboration diagram的更多相关文章

  1. Python设计模式 - UML - 通信图(Communication Diagram)

    简介 通信图表示对象之间的消息往来,是表述时序图中信息交互的另一种UML图,介绍完时序图就要对照学习一下通信图,二者是一体两面的. 通信图和时序图可以相互转换,二者的侧重点不同,通信图侧重哪些对象发送 ...

  2. UML基础系列:类图

    类图描述系统中类的静态结构,它不仅定义系统中的类,描述类之间的联系,如关联.依赖.聚合等,还包括类的内部结构(类的属性和操作).类图描述的是静态关系,在系统的整个生命周期中都是有效的.对象图是类图的实 ...

  3. UML精粹5 - 状态图,活动图,通信图,组合结构,组件图,协作,交互概述图,时间图

    状态机图state machine diagram 下面是状态图的一个例子(一个城堡中的秘密保险箱的控制面板). 转换transition包括3个部分:trigger-signature [guard ...

  4. [UML]UML之开篇

    前言 大学时,学习软件工程时,学到了UML,由于当时接触项目太少,认识不清,再加上毕业后一直忙于coding,很少有时间去真正的认识和学习UML. 现在感觉有必要去回头看看这些东西啦. 什么是UML ...

  5. [UML]UML系列——状态机图statechart diagram

    系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图Class [UML]UML系列——类 ...

  6. 协作图(通信图)collaboration diagram

    协作图(通信图)collaboration diagram 系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UM ...

  7. [时序图笔记] 步步为营UML建模系列五、时序图(Squence diagram)【转】

    概述 顺序图是一种详细表示对象之间以及对象与参与者实例之间交互的图,它由一组协作的对象(或参与者实例)以及它们之间可发送的消息组成,它强调消息之间的顺序. 顺序图是一种详细表示对象之间以及对象与系统外 ...

  8. [UML]UML系列——时序图(顺序图)sequence diagram

    系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图Class [UML]UML系列——类 ...

  9. [UML]UML系列——活动图activity diagram

    系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图Class [UML]UML系列——类 ...

随机推荐

  1. java, poi, excel

    工作需要用java操作Excel,现在网上搜索了一下,决定选取POI包来操作.pom内容如下: <dependency> <groupId>org.apache.poi< ...

  2. MFC CFileDialog用法例子。

     Set it to TRUE to construct a File Open dialog box. Set it to FALSE to construct a File Save As dia ...

  3. asp.net前台绑定时间格式时,定义时间格式

    <%#Eval("news_time","{0:yyyy-MM-dd}") %><%#((DateTime)Eval("news_t ...

  4. 添加和删除hadoop集群中的节点

    参见 http://www.cnblogs.com/tommyli/p/3418273.html

  5. nullcon HackIM2016 -- Programming Question 3

    Still Hungry and unsutisfied, you are looking for more. Some more, unique un heard dishes. Then you ...

  6. 介绍开源的.net通信框架NetworkComms框架 源码分析(十五 ) CommsThreadPool自定义线程池

    原文网址: http://www.cnblogs.com/csdev Networkcomms 是一款C# 语言编写的TCP/UDP通信框架  作者是英国人  以前是收费的 目前作者已经开源  许可是 ...

  7. P1159岳麓山上打水

    P1159岳麓山上打水 https://vijos.org/p/1159 dfsID,第一次听说这东西,但是感觉不太靠谱啊. 一开始的时候,想到了排个序后,然后进行dp,如果要输出字典序最小其实还是可 ...

  8. POJ 2186-Popular Cows (图论-强联通分量Korasaju算法)

    题目链接:http://poj.org/problem?id=2186 题目大意:有n头牛和m对关系, 每一对关系有两个数(a, b)代表a牛认为b牛是“受欢迎”的,且这种关系具有传递性, 如果a牛认 ...

  9. sqlserver 分区表

    我们知道很多事情都存在一个分治的思想,同样的道理我们也可以用到数据表上,当一个表很大很大的时候,我们就会想到将表拆 分成很多小表,查询的时候就到各个小表去查,最后进行汇总返回给调用方来加速我们的查询速 ...

  10. 自定义ImageView回调实现手动改变圆环大小

    //-----------------自定义MyView继承Imageview------------------------------- package com.bw.yuanhuan; impo ...