第5章 建立辅助模型—顺序图
一、概念与表示法:
1、概述:顺序图(Sequence Diagram)是一种详细表示对象之间以及对象与系统外部的参与者之间动态联系的图形文档。由对象(参与者)、消息、生命线和执行规约组成。顺序图是二维的,垂直方向表示时间,水平方向表示不同的对象或参与者。
2、对象生命线:对象表示成称之为“生命线”的垂直虚线。
(1)如果一个对象在图中所规定的时间段被创建,那么就把创建对象的箭头的头部画在对象符号上。如果对象在图中被销毁,那么用一个大的“X” 标记它的析构,该标记或者放在引起析构的箭头处,或者放在从被销毁的对象最终返回的箭头处;
(2)在图的顶部(第一个箭头之上)放置在转换开始时就存在的对象,而在整个转换完成时仍然存在的对象的生命线,要延伸超出最后一个箭头。
(3)生命线可以分裂成两条或更多条并发的生命线,以表示条件性。
3、执行规约:用一个窄长的矩形表示执行规约,矩形顶端和它的开始时刻对齐,末端和它的结束时刻对齐。
4、消息:消息是对象之间的通讯的规格说明,用消息(操作或信号)的名字及其参数值或者参数表达式标示箭头。
(1)同步消息:一般把它用于普通的过程调用。在外层控制恢复之前,要完成整个嵌套序列。
(2)异步消息:用它表示异步通讯,也即发送者发出消息后,立即继续执行中的下一步,不进行等待。
5、信号:信号名‘(‘用逗号分隔的参数列表‘)’;从一个对象可以向另一个对象或对象的集合发送信号。例如消息广播。发送者在发送信号时,要实例化其参数。对于接收者来说,它收到的是一个事件。
二、顺序图中的结构化控制
在顺序图中用结构化控制操作符能展示多个序列的并行执行,条件和循环等高层控制。
三、建立顺序图
一个顺序图用于描述一个交互场景。
若交互场景复杂,可使用结构化控制。
策略:
1、详细地审阅有关材料
2、选定一组对象
3、对象的创建和撤销,用消息箭线显式地予以指明
4、决定消息将怎样或以什么样的序列在对象之间传递
5、棒形条(执行规约)
6、两个对象的操作执行如属同一控制线程,则接收者操作的执行应在发送者发出消息之后开始,并在发送者结束之前结束
7、如果需要,也可以对对象所执行的操作的功能以及时间和空间约束进行描述。
8、如果需要,可使用结构化控制。