UML之顺序图(时序图)
1 顺序图
1.1 顺序图的概念
顺序图(sequence diagram): 用来描述为了完成确定事务,对象之间按照时间消息交互的顺序关系。
1.2 顺序图样式和元素
(1) 对象及命名
(2) 生命线
表示对象存在的时间,对象下面一条虚线表示。
(3)控制焦点
小矩形,表示这个时间对象将执行操作。
(4)消息
带箭头的连线,表示对象之间传输的信息。
消息:对象之间传输的信息。
消息有以下类型:
- 同步消息
- 异步消息
- 返回消息
- 阻止消息
- 超时消息
①调用消息:调用消息(也称为同步消息)的发送者把控制传递给接收者,然后停止活动,等到消息接收者放弃或返回控制。
②异步消息:异步消息的发送者通过消息把信号传递给接收者,然后继续自己活动,不等待接收者返回消息或控制。
③返回消息:表示从过程调用返回。如果是从过程调用返回,则返回消息是隐含的,可以不画出来。
对于非过程调用,如果有返回消息,必须画出来。
④阻止消息:阻止消息指消息发送者发出消息给接收者,如果接收者无法立即接收这个消息,则发送者放弃这个消息。
⑤超时消息:超时消息指消息发送者发出消息给接收者,并按指定时间等待,如果接收者无法在指定时间内接收这个消息,则发送者放弃这个消息。
2 建立顺序图
① 从用例中识别交互过程;
② 识别参与交互过程的对象;
③ 为每一个对象设置生命线,并确定对象的存在期限;
④ 从引发交互的初始消息开始,在对象生命线上依次画出交互的消息;
⑤如果需要,可以给消息增加时间约束,以及前置条件和后置条件。