《UML及软件建模》第九章 协作图(sequencediagram)

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

3协作图和顺序图的比较 3A)协作图和顺序图的基础一—类图示例 下面我们来绘制一张对象图来对类的实例建模,这张图协作图的基础。 遥控车钥匙 ↓搭载 车主 汽车 对类的实例建模的对象图
Page 6 3、协作图和顺序图的比较 下面我们来绘制一张对象图来对类的实例建模,这张图协作图的基础。 :汽车 :遥控车钥匙 :车主 对类的实例建模的对象图 3.1、协作图和顺序图的基础--类图示例

32入协作图示例 遥控车钥匙 b=“lock” 4: blinkLights 5: beep 3: lock 车主 汽车 对对象间消息建模得到的协作图
Page 7 :汽车 :遥控车钥匙 :车主 4:blinkLights 3.2、协作图示例 5:beep [b=“lock”] 3:lock 对对象间消息建模得到的协作图

33顺序图示例 车主 遥控车钥匙 汽车 1: getButton Press(b) 2: processKey Message(b) 4: blinkLights b=“lock” 3: lock 5: beep 和协作图等价的顺序图
Page 8 3.3、顺序图示例 :车主 :遥控车钥匙 :汽车 1:getButtonPress(b) 2:processKeyMessage(b) 4:blinkLights 5:beep [b=“lock”] 3:lock 和协作图等价的顺序图

34、状态变化和消息的嵌套 假设汽车有一个 Locked属性,其值可以是True或 False。你可以假设汽 车有两个状态,分别是 Locked和 Unlocked,如图所示。 Unlocked Lock Message Unlock message Locked 对汽车的 Locked和 Unlocked状态建模
Page 9 3.4、状态变化和消息的嵌套 假设汽车有一个Locked属性,其值可以是True或False。你可以假设汽 车有两个状态,分别是Locked和Unlocked,如图所示。 Unlocked Locked Lock Message Unlock Message 对汽车的Locked和Unlocked状态建模

我们能够在协作图中表示状态的变化。在本例中,我们在一个汽车对象 中给出oked值。然后,我们复制一个带有不同 locked值的汽车对象。把 这两外对象连接起来,再表示出从第一个对象到第二个对象的消息。用 关键字《 become》标示出这条消息。 这个例子是我们有机会来体验和协作图相关的另一个概念,使用数字系 统来表示消息之间的某些关系。到目前为止,我们已见过按顺序出现的 消息,其实消息也可能以嵌套的形式出现。你可以这样对嵌套消息编号 :首先是它所嵌入其中的消息的号码,然后是一个小数点,然后是被嵌 套的消息的号码。下图展示了状态变化和消息嵌套
Page 10 我们能够在协作图中表示状态的变化。在本例中,我们在一个汽车对象 中给出locked值。然后,我们复制一个带有不同locked值的汽车对象。把 这两个对象连接起来,再表示出从第一个对象到第二个对象的消息。用 关键字《become》标示出这条消息。 这个例子是我们有机会来体验和协作图相关的另一个概念,使用数字系 统来表示消息之间的某些关系。到目前为止,我们已见过按顺序出现的 消息,其实消息也可能以嵌套的形式出现。你可以这样对嵌套消息编号 :首先是它所嵌入其中的消息的号码,然后是一个小数点,然后是被嵌 套的消息的号码。下图展示了状态变化和消息嵌套
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《UML及软件建模》第一章 概述(李唯).ppt
- 武汉大学:《计算机组成与结构》课程教学资源(教学大纲)Principles of Computer Construction.doc
- 武汉大学:《计算机组成与结构》课程教学资源(练习题)运算方法与运算器课堂练习题.doc
- 武汉大学:《计算机组成与结构》课程教学资源(课件讲稿)第九章 输入输出系统.pdf
- 武汉大学:《计算机组成与结构》课程教学资源(课件讲稿)第八章 辅助存储器.pdf
- 武汉大学:《计算机组成与结构》课程教学资源(课件讲稿)第七章 存储系统.pdf
- 武汉大学:《计算机组成与结构》课程教学资源(课件讲稿)第六章 中央处理器.pdf
- 武汉大学:《计算机组成与结构》课程教学资源(课件讲稿)第五章 指令系统.pdf
- 武汉大学:《计算机组成与结构》课程教学资源(课件讲稿)第四章 主存储器.pdf
- 武汉大学:《计算机组成与结构》课程教学资源(课件讲稿)第三章 运算方法和运算部件(3.6-3.7)运算部件、数据校验码.pdf
- 武汉大学:《计算机组成与结构》课程教学资源(课件讲稿)第三章 运算方法和运算部件(3.3-3.5)二进制乘法运算、二进制除法运算.pdf
- 武汉大学:《计算机组成与结构》课程教学资源(课件讲稿)第三章 运算方法和运算部件(3.1-3.2)数据的表示方法和转换、带符号数的表示方法及加减运算.pdf
- 武汉大学:《计算机组成与结构》课程教学资源(课件讲稿)第一章 计算机系统概论.pdf
- 《计算机网络及应用》第一章 计算机网络概述.ppt
- 《计算机网络及应用》第五章 网络互联图.ppt
- 《计算机网络及应用》第五章 网络互联.ppt
- 《计算机网络及应用》第四章 传输介质与连接器.ppt
- 《计算机网络及应用》第三章 网络参考模型.ppt
- 《计算机网络及应用》第七章 图.ppt
- 《计算机网络及应用》第七章 WINDOWS 2000 SERVER.ppt
- 《UML及软件建模》第十章 活动图(activity diagram).ppt
- 《UML及软件建模》第十一章 物理视图(physics view).ppt
- 《UML及软件建模》第十二章 模型管理视图.ppt
- 《UML及软件建模》第十三章 扩展组件.ppt
- 《UML及软件建模》第十二章 UML的总结.ppt
- 《UML及软件建模》课堂习题.ppt
- 《UML及软件建模》第十三章 在建模过程中运用UML(1/3).ppt
- 《UML及软件建模》第十三章 在建模过程中运用UML(2/3).ppt
- 《UML及软件建模》第一章 理解面向对象.ppt
- 《UML及软件建模》第十三章 在建模过程中运用UML(3/3).ppt
- 《UML及软件建模》如何获取用例.ppt
- 《UML及软件建模》第二章 UML的构成.ppt
- 《UML及软件建模》第三章 类图和对象图.ppt
- 《UML及软件建模》第四章 类之间的关系.ppt
- 《UML及软件建模》第五章 聚集、组成、接口和实现.ppt
- 《UML及软件建模》第六章 用例.ppt
- 《UML及软件建模》第七章 状态图.ppt
- 《UML及软件建模》第八章 交互视图概论.ppt
- 《Photoshop CS3案例教程》项目一制作漂亮的贺卡 ——初识Photoshop CS3.ppt
- 《Photoshop CS3案例教程》项目七 制作手提袋 ——形状与路径.ppt