UML及软件建模 主讲人:李唯 Clx7000@163.com
Page 1 UML及软件建模 主讲人 :李 唯 clx7000@163.com
第九章协作图( secdence diagram) 什么时协作图 如何运用协作图 如何对主动对象、并发和同步建模
Page 2 第九章 协作图 (sequence diagram) 什么时协作图 如何运用协作图 如何对主动对象、并发和同步建模
概述 与顺序图一样,协作图也展示对象之间的交互关系。它绘制出对象与对 象之间的消息连接 顺序图与协作图很相似,实际上这两种图表达的是同一种信息,并且可 以将顺序图转换为等价的协作图,反之亦然 顺序图和协作图虽然都可以表示各对象间的交互关系,但它们的侧重点 不同。顺序图强调的是交互的时间顺序。协作图强调的是交互的语境与 参与交互的对象的整体组织。 顺序图用消息的几何排列关系来表达消息的时间顺序,各角色之间的相 关关系是隐含的。协作图用各个角色的几何排列图形来表示角色之间的 关系,并用消息来说明这些关系。 还可以从另外一个角度来看两种图的定义:顺序图按照时间顺序布图, 而协作图按照空间组织布图。 在实际中可以根据需要选用这两种图
Page 3 1、概述 与顺序图一样,协作图也展示对象之间的交互关系。它绘制出对象与对 象之间的消息连接。 顺序图与协作图很相似,实际上这两种图表达的是同一种信息,并且可 以将顺序图转换为等价的协作图,反之亦然。 顺序图和协作图虽然都可以表示各对象间的交互关系,但它们的侧重点 不同。顺序图强调的是交互的时间顺序。协作图强调的是交互的语境与 参与交互的对象的整体组织。 顺序图用消息的几何排列关系来表达消息的时间顺序,各角色之间的相 关关系是隐含的。协作图用各个角色的几何排列图形来表示角色之间的 关系,并用消息来说明这些关系。 还可以从另外一个角度来看两种图的定义:顺序图按照时间顺序布图, 而协作图按照空间组织布图。 在实际中可以根据需要选用这两种图
2、协作图在UML中的表示方法 对象图展示出对象和对象之间的静态关系。协作图是对象的扩展。协作图 除了展示出对象之间的关联,还显示出对象之间的消息传递。通常在协作 图中省略掉关联的名字,因为表示出关联的名字会使图变得混乱。 关联线附近的箭头线表示对象之间传递的消息,箭头指向消息接收对象。 消息名称和消息序号附在箭头线附近。消息的一般含义是触发接收消息的 对象执行它的一个操作。箭头的含义和顺序图中的一样。 add O 对象名1 对象名2 协作图图符集
Page 4 2、协作图在UML中的表示方法 对象图展示出对象和对象之间的静态关系。协作图是对象的扩展。协作图 除了展示出对象之间的关联,还显示出对象之间的消息传递。通常在协作 图中省略掉关联的名字,因为表示出关联的名字会使图变得混乱。 关联线附近的箭头线表示对象之间传递的消息,箭头指向消息接收对象。 消息名称和消息序号附在箭头线附近。消息的一般含义是触发接收消息的 对象执行它的一个操作。箭头的含义和顺序图中的一样。 :对象名2 :对象名1 add() 协作图图符集
上面说过,可以将顺序图转换为协作图。反过来也成立。因此在协 作图中也应能表示出消息的顺序。可以在消息名前面加上消息的序 号它代表该消息在消息序列中的序号。消息名和序号之间用冒号 隔开。 对象名1 2: modify () 对象名3 对象名2
Page 5 :对象名2 上面说过,可以将顺序图转换为协作图。反过来也成立。因此在协 作图中也应能表示出消息的顺序。可以在消息名前面加上消息的序 号,它代表该消息在消息序列中的序号。消息名和序号之间用冒号 隔开。 :对象名1 :对象名3