UML交互图

     顺序图和协作图统称交互图,用来描述系统中多个对象之间的相互关系及对象间消息的传递,用于对系统中多个对象的相互作用的过程进行建模。

    在面向对象分析过程中,可以使用顺序图来描述完成一个用例的过程,使用协作图来分析系统中的对象和对象之间传递的消息。

    顺序图描述了对象之间传递消息的时间顺序,用来表示用例中行为顺序。用例常常被细化为一个或多个的顺序图。顺序图描述了对象以及对象之间传递的消息,强调对象之间的交互是按照时间的先后顺序发生的,这些特定顺序发生的交互序列从开始到结束需要一定的时间。

    在顺序图中,对象都不是孤立存在的,这些对象之间是通过消息进行通讯。消息由从一个对象的生命线指向另一个对象的生命线的直线箭头表示,箭头上标注要发送的消息名。


顺序图理解


1,条件分支

在顺序图中的控制流并不是只能按照从上到下的顺序依次进行,控制流也可以进行修改,条件分支就是一种。表示两个分支在同一时间点上只能执行一个分支。


         UML交互图_第1张图片    

 2,从属流

从属流与条件分支不同,从属流允许某一个对象根据不同的条件改变执行不同的操作,即可以创建对象的另一个生命线分支。

            UML交互图_第2张图片   

3,消息延迟

顺序图中的消息通常都是水平的,表明消息的传递时瞬时的,也就是说在消息传递的过程中不会发生其他的事件。但有些情况下,可能存在一定的时间延迟。

         

4,循环

为了强调需要对多个对象重复发送某个消息,可以在顺序图中添加循环标识符号,顺序图中标识循环执行的消息有三种方式。

第一种:在需要循环重复执行的消息前添加符号*,并在其后的中括号中写明具体条件。

          UML交互图_第3张图片  

第二种:在时间轴上注释表明消息的重复执行,使用大括号标明说明文字。

             

第三种:使用矩形框将需要重复执行的消息框起来,并在中括号内说明重复执行的条件。

         UML交互图_第4张图片 

5,顺序图片段

利用顺序图片段可以表示比较复杂的交互。顺序图片段被描述成顺序图中框起来的一部分交互的矩形。顺序图片段与顺序图中某部分交互重叠,顺序图片段中可以包含任意数目的交互,还可以包含嵌套片段。

顺序图片段矩形的左上角包含一个运算符,以表明类型。

        UML交互图_第5张图片

     

针对机房收费系统中的学生上下机过程的顺序图为:

         

                                            上图为操作员给学生注册时的协作图

    

    协作图着重于描述协作对象间的交互和连接。顺序图是按照时间的顺序布图,而协作图是按照空间来布图。

对象的表示方式:

         

多对象:协作图中,有时信号或操作是应用于一个对象集合而不是单一对象上,称为多对象。

                      

单对象给多对象同时发送一个消息时,需要在消息前面加上一个星号,并加上用方括号括起来的条件。


主动对象:在协作图中,主动对象是一组属性和方法的封装体,主动对象中至少有一个方法不需要接收消息就能主动执行。





你可能感兴趣的:(UML交互图)