欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

UML 系列 - 协作图(通信图) 协作图

最编程 2024-07-07 21:52:50
...

原文地址: https://www.cnblogs.com/wolf-sun/p/UML-collaboration-diagram.html

系列文章

UML系列——用例图Use Case
UML系列——用例图中的各种关系(include、extend)
UML系列——类图Class
UML系列——类图class的关联关系(聚合、组合)
UML系列——类图class的依赖关系
UML系列——类图class的泛化关系
UML系列——类图class的实现关系Realization
UML系列——包图Package
UML系列——活动图activity diagram
UML系列——时序图(顺序图)sequence diagram

引言

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

1.png

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

2.png

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

案例:时序图

3.png

协作图
5.png

6.png

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

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

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

案例剖析

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

7.png

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

协作图

8.png

9.png

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

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

协作图的构成

对象、链接、消息

对象

1.png

链接

1、链接的概念

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

2、链接的符号表示

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

2.png

消息

1、消息的概念

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

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

3.png

时序图与协作图的转换

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

总结

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