顺序图(也叫序列图)和协作图(也叫合作图)称为交互图。
其中,序列图用来描述对象之间消息发送的先后次序,阐明对象之间的交互过程以及在系统执行过程中的某一具体时刻 将会发生什么事件。
序列图是一种强调时间顺序的交互图,其中对象沿横轴排列,消息沿纵轴按时间顺序排列。序列图中的对象生命线是一条垂直的虚线,他表示一个对象在一段时间内存在。
顺序图是一个二维图形。
1、顺序图(Sequence diagram)
构成:
(1)对象Object(包括Actor实例)
(2)消息
含义:消息是对象之间的通信,可以是信号或者操作调用。
形式:
——Call
——Return
——Send
——Create
——Destroy
简单消息、同步消息和异步消息:
简单消息:表示简单的控制流。
同步消息:表示嵌套的控制流。
异步消息:表示异步的控制流。可以把一个简单消息和一个同步消息合并成一个消息。
(3)生命线(激活)
表示在某段时间内对象是存在的。
可以看出,图中有3个对象,分别是Client、Transaction、ODBCProxy。
c:Client 表示c是client的实例,:Transaction匿名对象是Transaction的实例
从生命期来看,Client>Transaction>ODBCProxy。
2、协作图(Collaboration diagram)
也叫合作图、通信图,是一种交互图(interaction diagram),强调的是发送和接收消息的对象之间的组织结构。一个协作图显示了一系列的对象和在这些对象之间的联系以及对象间发送和接收的消息。
顺序图有时间轴,而协作图没有,协作图通过数字编号描述顺序。
协作图强调参加交互的对象,顺序图强调消息的时间顺序。