笔者坚定认为,在绘制任何图形之前,都应该先弄清楚图形的概念、组成元素以及绘制规范。这有助于提升我们的绘图效率。
- 什么是时序图?
- 时序图的组成元素
- 如何绘制时序图?(附微信二维码支付案例)
一、什么是时序图
时序图是UML交互图中的一类,又名序列图、顺序图。
用于描述对象之间的传递消息的时间顺序(包括发送消息、接收消息、处理消息、返回消息等)。
二、时序图的组成元素
1、对象
对象代表时序图中的对象在交互中所扮演的角色,一般使用矩形表示。
如果对象位于时序图的顶部,说明在交互开始时对象就已经存在了。如果对象的位置在中间部分,说明对象是在交互的过程中被创建的。当一个对象被删除或自我删除时,在其生命线(生命线详见下方)终止点处放置 “ X”标识。
2、生命线
生命线代表时序图中的对象在一段时期内的存在。时序图中每个对象底部中心都有一条垂直的虚线,这就是对象的生命线。
对象间的消息存在于两条虚线间。
3、消息
两个对象之间的单路通信,从发送方指向接收方。
消息的传递一般有以下几种方式:
同步消息:消息的发送者把控制传递给消息的接收者,然后停止活动,等待消息的接收者放弃或者返回控制。
注意:发送人需要等待消息的响应。带实心箭头的实线表示
异步消息:消息发送者通过消息把信号传递给消息的接收者,然后继续自己的活动,不等待接受者返回消息或者控制。
注意:发送人不需要等待消息的响应。带线型箭头的实线表示
返回消息:返回消息表示从过程调用返回
带线型箭头的虚线表示。
自关联消息: 自身调用自身的方法,即自我调用的同步消息
三、如何绘制时序图
时序图绘制具体分为以下5步:
- 确定交互过程的上下文;
- 识别参与过程的交互对象;
- 为每个对象设置生命线;
- 从初始消息开始,依次画出随后消息;
- 考虑消息的嵌套,标示消息发生时的时间点。