《《UMLUML面向对象建模基础面向对象建模基础》》交互图交互图知识图谱知识图谱AgendaAgenda•交互与交互图•如何阅读交互图•如何绘制交互图•交互图应用说明•定时图•本章小结AgendaAgenda•交互与交互图•如何阅读交互图•如何绘制交互图•交互图应用说明•定时图•本章小结交互的概念交互的概念•一次交互就是指在特定语境中,为了实现某一个目标,而在一组对象之间进行交换的一组消息所表示的行为UMLUML中的中的44种交互图种交互图•顺序图:顺序图是一种强调消息时间顺序的交互图,为读者提供了控制流随着时间推移的清晰的可视化轨迹•通信图:UML2.0中的通信图实际上就是UML1中的协作图,它强调的是参加交互的对象的组织,为读者提供了在协作对象结构组织的语境中观察控制流的一个清晰的可视化轨迹•定时图:采用了一种带数字刻度的时间轴来精确地描述消息的顺序•交互概述图:是交互图和活动图的混合物1.顺序图1.1概述顺序图(序列图)主要用于按照交互发生的一系列顺序,显示对象之间的这些交互。很象类图,开发者一般认为序列图只对他们有意义。然而,一个组织的业务人员会发现,序列图显示不同的业务对象如何交互,对于交流当前业务如何进行很有用。除记录组织的当前事件外,一个业务级的序列图能被当作一个需求文件使用,为实现一个未来系统传递需求。在项目的需求阶段,分析师能通过提供一个更加正式层次的表达,把用例带入下一层次。那种情况下,用例常常被细化为一个或者更多的序列图。1.顺序图序列图的主要用途之一,是把用例表达的需求,转化为进一步、更加正式层次的精细表达。用例常常被细化为一个或者更多的序列图。顺序图的主要元素顺序图的主要元素•对象与角色:最顶上一排矩形框。在交互图中,参与交互的对象既可以是具体的事物,又可以是原型化的事物。作为具体的事物,一个对象代表现实世界中的某个东西。例如,aOrder作为类Order的一个实例,可以代表一个特定的订单;而如果作为一个原型化的事件,则aOrder可以代表类Order的任何一个实例。•生命线与控制焦点:每个对象都有自己的生命线,对象生命线是一条垂直的虚线,用来表示一个对象在一段时间内存在。•消息:用来描述对象之间所进行的通信的,该信息带有对将要发生的活动的期望。当传送一个消息时,它所引起的动用是一个通过对计算过程的抽象而得到的可执行语句。•消息分为五种:调用、返回、发送、创建和销毁•调用:表示调用某个对象一个操作顺序图的主要元素顺序图的主要元素顺序图的主要元素顺序图的主要元素•顺序编号:整个消息的传递过程就形成了一个完整的序列,因此通过在每个消息的前面加上一个用冒号隔开的顺序号来表示其顺序。除了顺序编号之外,还可以采用嵌套方案:1.顺序图框架符号在UML2中,框架元件用于作为许多其他的图元件的一个基础,作为图的图形化边界。1.顺序图除了提供一个图形化边框之外,用于图中的框架元件也有描述交互的重要的功能。在序列图上一个序列接收和发送消息(交互),能通过连接消息和框架元件边界,建立模型(如图2所见到)。1.顺序图注意在图2中,对于序列图,图的标签由文字“sd”开始。当使用一个框架元件封闭一个图时,图的标签需要按照以下的格式:UML规范给图类型提供特定的文本值。(举例来说,sd代表序列图,activity代表活动图,usecase代表用例图)。1.顺序图基础序列图的主要目的是定义事件序列,产生一些希望的输出。重点不是消息本身,而是消息产生的顺序;不过,大多数序列图会表示一个系统的对象之间传递的什么消息,以及它们发生的顺序。图按照水平和垂直的维度传递信息:垂直维度从上而下表示消息/调用发生的时间序列,而且水平维度从左到右表示消息发送到的对象实例。1.顺序图生命线当画一个序列图的时候,放置生命线符号元件,横跨图的顶部。生命线表示序列中,建模的角色或对象实例。生命线画作一个方格,一条虚线从上而下,通过底部边界的中心(图3)。生命线名字放置在方格里。图3:用于一个实体名为freshman的生命线的Student类的一个例子UML的生命线命名标准按照如下格式:1.顺序图生命线图3中我们生命线例子是一个命名的对象,但是...