一、概念

协作图(Collaboration Diagram /Communication Diagram,也叫合作图、通信图)是另一种交互图(interaction diagram)。它强调的是对象之间的交互关系。表示了协作中各元素所处的位置。在一个协作中,描述了该协作中所有对象组成的网络结构以及相互发送消息的整体行为。协作图虽然也表明了消息的先后顺序,但是相比序列图而言,没有序列图清晰一目了然。

二、特点

协作图中没有生命线的概念,只是对象和对象,它们之间通过消息来相互连接协作。

协作图是一种交互图,强调的是发送和接收消息的对象之间的组织结构,使用协作图来说明系统的动态情况。

协作图主要描述协作对象间的交互和链接,显示对象、对象间的链接以及对象间如何发送消息。

协作图虽然也表明了消息的先后顺序,但是相比序列图而言,没有序列图清晰一目了然,必须通过序号表示出顺序。

三、事物以及解释

事物名称解释
对象协作图中的对象和时序图中对象的概念相同,都是类的实例,一个协作代表为了完成某个目标而共同工作的一组对象。参与者也是一种特殊的对象。协作图对象不具有生命线。

       

消息用来描述系统动态行为的方法,是从一个对象向另一个对象发送的信息,是一种方法,一个操作的指令。由三部分组成:发送者、接收者和活动。消息用带标签的箭头表示,附在链上。每个消息包括一个顺序号和消息名称

       

表示对象之间的独立连接,表示一个或多个相连的线或弧。在自关联的类中,链的两端指向同一对象回路,是一条弧。

      

四、协作图与时序图的区别和联系

—协作图和时序图都表示出了对象间的交互作用,但是它们侧重点不同。

— 时序图清楚地表示了交互作用中的时间顺序(强调时间),但没有明确表示对象间的关系。

—协作图清楚地表示了对象间的关系(强调空间),但时间顺序必须从顺序号获得。

—协作图不能体现对象的初始化和消亡的时间

—协作图和时序图可以相互转化。

五、协作图例子

管理员结账

微信扫一扫付款

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐