UML之顺序图

一 定义

顺序图是将交互关系表示为一个二维图。纵向是时间轴(生命线),时间沿竖线向下延伸。横向轴代表了在协作中各独立对象的类元角色。类元角色用生命线表示。当对象存在时,角色用一条虚线表示,当对象的过程处于激活状态时,生命线是一个双道线;

二 顺序图的要素

活动者,对象、生命线、控制焦点、消息

活动者:活动的发起人活着活动的承受者。

对象:活动中交互的实体,三种表示如下:                                            

生命线:描述对象的生存周期,对象下方的虚线就是生命线,如上图。

控制焦点:指活动者或对象执行状态的时间段:

 

 

 

 

 

消息:消息用于描述对象间交互的方式和内容:

1.同步消息:一个对象向另一个对象发出同步消息后,将处于阻塞状态,一直等到另一个对象的回应。

 2.异步消息:一个对象向另一个对象发出异步消息后,这个对象可以进行其他的操作,不需要等到另一个对象的响应。

3.返回消息:同步消息的返回消息

4.自关联消息:用来描述对象内部函数的互相调用。

1.条件判断:用于描述代码中if…else…这种结构

标记为“alt”   例如:

 

 

 

 

 

 

 

 

 

 

2.可选:是一种特殊的“条件判断”,它只是一个if,没有else if或else

可选的标记为:opt  例如:

 

 

 

 

 

 

3.循环:是指代码中的for、while之类的语句块。

循环的标记为:loop

例如:下图中[m,n]是指至少执行m次,最多执行n次

 

 

 

 

 

 

 

4.同步:用于描述多线程的情况。

同步的标记是:par  例如:

 

 

 

 

 

 

 

顺序图的引用:

在一个顺序图中,可以引用另一个顺序图,其引用方式类似于复合片段,

标签为:ref   例如:

 

 

 

 

三:画顺序图的步骤

1.      确定交互的范围

2.      确定参与交互的活动者与对象

3.      确定活动者、对象的生存周期

4.      确定交互中产生的消息

5.      细化消息的内容

四:酒店预订的一个用例(寻找酒店)

代码实例:

 

 

 

 

 

 

 

 

 

 

五:用例图、活动图、时序图之间的关系

 

 

 

六 :类图与时序图之间的关系

 

 

 

 

 

 

类图描述系统的静态结构,时序图描述系统的动态行为。

若出现了一个新的消息(不是类中的操作),则需要为类添加一个新的操作。

posted @ 2017-06-07 17:38  Arrkwin  阅读(3399)  评论(0编辑  收藏  举报