提示:UML建模专栏持续更新中。。。。。。
文章目录
前言
在标识出系统的类图之后,仅给出了实现用例的组成结构,除此之外还需要描述这些类的对象是如何交互来实现用例功能的。
在一个待开发的系统中,任何对象都不是孤立存在的,系统中对象之间通过消息的传递来进行交互。因此在设计系统时,需要使用交互图对对象之间的交互进行建模。
交互图表示类(对象)如何交互来实现系统行为。交互图是顺序图、通信图、交互概览图和定时图的总称。
顺序图:强调消息的时间次序的交互图,顺序图展示的是按时间顺序发生的消息传送。
通信图:强调收发信息的对象的结构组织的交互图,通信图强调的是消息交互传递中对象之间的关联。
定时图:展现消息跨越不同对象或角色的实际时间,而不仅仅关心消息的相对顺序。
交互概览图:活动图和顺序图的混合物,可以对活动图中的一些关键的、复杂度不高的活动节点进行细化,用顺序图来表示其对象间的控制流。
在UML中,用例的实现用交互图(Interaction Diagram)来指定和说明。交互图通过显示对象之间的关系和对象之间处理的消息实现系统的动态建模。
1.顺序图概述
顺序图(sequence diagram)是强调消息时间顺序的交互图,又称为时序图或序列图,它描述了对象之间传送消息的时间顺序,用来表示用例中的行为,并将这些行为建模成信息交换。
顺序图将交互关系表示为一个二维图,其中纵向是代表时间维度,时间向下延伸,按时间依次列出各个对象所发出和接收的消息。水平方向是代表对象的维度,排列着参与交互的各个独立的对象。
顺序图可以很好的展示对象与对象之间的通信以及什么消息触发了这些通信,但顺序图不能很好的显示负责过程的逻辑。
顺序图描述对象之间的动态交互关系,着重体现对象间消息传递的时间顺序。顺序图可供不同类型的用户使用,对项目的各方面人员都有用:
用户可以从顺序图中看到业务过程的细节;
需求分析人员可以使用顺序图提供一个深层次的表达,把用例带入下一层次。通常用例被细化为一个或者更多的顺序图。
系统分析人员可以从顺序图中看到处理流程;
系统开发人员可以看到需要开发的对象和对这些对象的操作;
质量保证工程师可以看到过程的细节,并根据这个过程开发测试案例。
顺序图的三种主要作用:
细化用例的表达。使用顺序图的一大用途,就是将用例所描述的需求与功能转化为更加正式、层次更加分明的细化表达。
有效地描述类职责的分配方式。我们可以根据顺序图中各对象之间的交互关系和发送的消息来进一步明确对象所属类的职责。
丰富系统的使用语境的逻辑表达。系统的使用语境即为系统可能的使用方式和使用环境。
在UML图中,顺序图与用例图和类图之间关系如图所示。