序列图
1 目的
序列图用于通过场景执行来显示系统中对象之间传递的信息,以模拟使用场景的逻辑。
2 描述
序列图显示了在场景中进程或对象如何交互。 用于执行场景所需的类以及它们相互传递的消息(由用例步骤触发)显示在图表上。 序列图显示了场景中使用的对象是如何交互的,但没有说明它们之间的关系。 序列图也经常用来表示用户界面组件或软件组件如何交互。
该图以水平和垂直方式表示信息。 通过彼此发送消息的对象用从左到右位于页面顶部的框来表示,每个对象占用一页的空间,并由一条延伸到底部的竖线分隔开。 一个对象发送给另一个对象的消息用 水平箭头 表示。消息按顺序从上到下、从左到右显示,首先是页面顶部左侧的第一条消息,然后向右和向下显示后续消息。 时序图有时也被称为 事件图 。
序列图的标准记号是统一建模语言(UML)规范的一部分。
3 元素
.1 生命线
在序列图中,生命周期表示一个对象在所建模的情景中的寿命。下面的例子显示了对象顺序。生命周期由一条虚线从每个对象框垂直延伸到底部。
.2 激活盒子
激活框表示操作执行的时间段。对激活的调用由指向激活对象的实心箭头表示。生命线可以用X终止。
.3 消息
消息是两个对象之间的交互。 消息显示为从发送消息的对象的激活框指向接收消息的对象的箭头。
消息名称位于箭头所指的线上方。有不同类型的消息:
- 同步调用:控制权转移到接收对象。发送者在收到返回消息之前不能采取行动。
- 异步调用(也称为信号)允许对象在发送信号后继续执行自己的处理。 对象可以同时发送多个信号,但一次只能接受一个信号。
4 使用考虑因素
.1 优势
- 以交互发生的顺序显示系统中对象之间的交互。
- 以可视化的方式显示对象之间的交互,使涉众 1能够相对容易地验证逻辑。
- 用例可以细化为一个或多个序列图,以提供更详细的业务流程,并深入了解。
.2 限制
- 为系统中的每个用例创建完整的序列图可能会浪费时间和精力,这可能是不必要的。
- 在历史上被用来建模系统流程,但在其他情况下可能被认为过于技术性。