什么是时序图?
时序图(Sequence Diagram),又名序列图、循序图、顺序图,是一种UML交互图。
它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作,经常用在详细设计文档中。
时序图是一个二维图,横轴表示对象,纵轴表示生命线,消息在各个对象之间传递,依照时间顺序纵向排列。
时序图的作用
1、展示对象之间的交互顺序。将交互行为建模为消息传递,通过描述信息如何在对象间发送和接收的,展示对象间的交互。
2、时序图强调的是交互的时间顺序
3、可以直观的描述并发进程
组成元素
1、Actor(角色,参与者)
表示
2、对象
a.对象有三种表示方式
a1.包含对象名和类名,用“对象:类”表示
a2.只有类名,此时表示匿名对象,用“:类”表示
a3.只有对象没有类名,用“对象”表示
b.命名方式的选择
三种方式那种让读者更容易理解就是用哪一种
c.对象的排列顺序
对象的排列顺序不重要,但是为了作图清晰易懂,应该遵循以下准则:
c1.交互频繁的对象尽可能的靠拢
c2.把初始化整个交互活动的对象放在最左边
3.生命线
在时序图中表示为从对象图标向下延伸的一条虚线,表示对象存在的时间。
4.控制焦点
又称为激活期,表示时间段的符号,在这个时间段内对象将执行相应的操作,用小矩形表示。
5.消息
消息一般分为同步消息(Synchronous Message),异步消息(Asynchronous Message)和返回消息(Return Message)。
a.消息的发送者把控制传递给消息的接收者,然后停止活动,等待消息的接收者放弃或者返回控制。用来表示同步的意义;
b.消息发送者通过消息把信号传递给消息的接收者,然后继续自己的活动,不等待接受者返回消息或者控制。表示异步的意义,
异步消息的接收者和发送者是并发工作的。
c.返回消息表示从过程调用返回。
6.自关联消息
方法的自身调用或者一个对象内一个方法调用另一个方法
7.组合片段
用来解决交互执行的条件和方式,它允许直接在序列图中表示逻辑组件,用于通过指定条件或子进程的应用区域,为任何生命线的任何部分定义特殊条件和子进程。组合片段共有13种,名称及含义如下:
bpng.png
常用组合片段举例:
(1)抉择(Alt)
抉择在任何场合下只发生一个序列。 可以在每个片段中设置一个临界来指示该片段可以运行的条件。else 的临界指示其他任何临界都不为 True 时应运行的片段。如果所有临界都为 False 并且没有 else,则不执行任何片段。
alt.png
(2)选项(Opt)
包含一个可能发生或不发生的序列;
op.png
(3)循环(Loop)
片段重复一定次数,可以在临界中指示片段重复的条件。
loop.png
(4)并行(Par)
par.png
8.时序图实例
chapter.png
网友评论