系统角色,可以是人、及其甚至其他的系统或者子系统。
♀ 对象(Object)
对像包含三种命名方式:
○ 显示对象名和类名
○ 显示类名不显示对象名
○ 显示对象名
图例:
♀ 生命线(LifeLine)
生命线在顺序图中表示为从对象图标向下延伸的一条虚线,表示对象存在的时间。
♀ 控制焦点(Focus of Control)
控制焦点是顺序图中表示时间段的符号,在这个时间段内对象将执行相应的操作。用小矩形表示,如下图中红色矩形所示:
♀ 消息(Stimulus)
消息一般分为三种类型:
○ 同步消息(Synchronous Message)
消息的发送者把控制传递给消息的接收者,然后停止活动,等待消息的接收者放弃或者返回控制。
○ 异步消息(Asynchronous Message)
消息发送者通过消息把信号传递给消息的接收者,然后继续自己的活动,不等待接受者返回消息或者控制。异步消息的接收者和发送者是并发工作的。
○ 返回消息(Return Message)
返回消息表示从过程调用返回。
图例:
♀ 自关联消息(SelfStimulus)
方法的自身调用以及一个对象内的一个方法调用另外一个方法。图例:
♀ Combined Fragment
○ alt(Alternative fragment) 图例:
代码解析:
if( )
{
}
else
{
}
○ opt(Option fragment) 图例:
代码解析:
switch(value)
{
case 0:
break;
case 1:
break;
case 2:
break;
default:
break;
}
○ loop(Loop fragment) 图例:
代码解析:
while(value)
{
}
○ par(Parallel fragment) 图例:
代码解析:
UINT WINAPI thread1()
{
}
UINT WINAPI thread2()
{
}
一些不常用的子片断
○ critical 表示临界区,如VC中的CriticalSection。
○ break 表示一个含有判断条件的子片断,判断条件为真则执行子片断。如VC中if语句。
○ assert 表示子片断所描述的功能是执行过程中某一时刻唯一有效的功能。当执行到该子片断之前时则说明该子片断的功能一定会被执行。通常会和ignore或者consider一起使用,以断定某种特定种类的功能。
○ ref 用于引用其它的交互图。其表示方法是用一个矩形加上ref操作符,并写明引用的交互图名称。