第6章交互图.ppt_第1页
第6章交互图.ppt_第2页
第6章交互图.ppt_第3页
第6章交互图.ppt_第4页
第6章交互图.ppt_第5页
已阅读5页,还剩68页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第六章,互动图,演讲者:邓昆,教学要点:本章介绍了互动图的基本概念、表现形式及其应用。计算机应用技术是教师专用的(java编程)。第6章,交互图,表达了对象之间的交互,是一个描述一组对象如何合作完成某个行为的建模工具。交互图主要用于对用例中的控制流进行建模。一般来说,交互图表示单个用例的行为,它表示用例中的几个实例对象以及对象之间传输的消息。教师计算机应用技术系(UML系统分析与设计),第6章交互图,其中包括序列图、通信图、时序图和交互概述图。UML的交互图、状态机图、活动图和用例图构成了系统的行为视图。计算机应用技术系教师专用(UML系统分析与设计),6.1序列图,计算机应用技术系教师专用(

2、UML系统分析与设计),序列图侧重于某个行为对象类的完成和这些对象类之间传递消息的时间顺序。UML的序列图类似于过去通用的面向对象技术中的序列图。示例:图6.1是在PRMS向资源添加技能的序列图,它通过用例显示了“向资源添加技能”的行为。图6.1向资源添加技能的序列图,6.1序列图,序列图的组成序列图是一个二维图。在序列图中,水平方向为对象维度,交互对象角色沿水平方向排列;垂直维度是时间维度,每个对象类角色发送和接收的消息按照时间的升序沿垂直向下的方向列出。序列图由以下图形元素组成:对象类角色、生命线、激活周期和消息。计算机应用技术系教师专用(UML系统分析与设计),6.1序列图,序列图的组成

3、对象类角色对象类角色代表了对象在交互中可以发挥的作用。对象类角色由矩形框图标表示。在序列图中,对象类角色通常只给出名称,它们的命名规则与对象类图中的相同。生命线表示对象存在的时间。生命线表示为从序列图中的对象图标向下延伸的虚线。计算机应用技术系教师(UML系统分析与设计),6.1序列图,序列图组成激活期(Activation period)也叫控制焦点,它表示一个对象执行一个动作的时期,即该对象被激活的时间段。激活期由生命线上的一个窄矩形框表示。当对象处于活动期时,对象处于活动状态,可以响应或发送消息,并执行操作或活动。当一个对象不在激活期时,它处于休眠状态,什么也不做,但它仍然存在,等待新的

4、消息来激活它。计算机应用技术部是专门为教师设计的(UML系统分析与设计),6.1序列图,序列图的组成消息指示对象之间的通信,而对象之间的交互是通过相互发送消息来实现的,这将触发接收对象中的具体操作。在序列图中,消息由对象角色之间的水平箭头线表示。消息箭头从源对象指向目标对象,目标对象标有消息内容标签。面向教师的计算机应用技术系(UML系统分析与设计),6.1序列图,序列图的报文内容标签的格式是:序号安全条件*循环返回表:=操作名(参数表)序号是整个交互中报文的序号。保护条件是布尔条件表达式。只有在满足安全条件时,才能发送消息。可以默认安全条件,这意味着消息是无条件发送的。循环描述指定发送消息的

5、重复次数。操作的参数列表是一个逗号分隔的实际参数列表,它被传递给ob中的一个操作(方法),专用于计算机应用技术系的教师,6.1序列图。可以触发多种类型的消息,例如调用另一个对象、调用该对象、向调用方返回值、向对象发送信号以及创建或销毁对象。不同形式的箭头表示不同类型的消息,如图6.2所示。计算机应用技术系教师专用(UML系统分析与设计),图6.2消息箭头对应含义,6.1序列图,序列图组成,计算机应用技术系教师专用(UML系统分析与设计),在对系统行为建模时,序列图可以采用两个不同的抽象层次:规范层次和实例层次。示例:图6.1是说明各层的序列图。示例:图6.3是相应示例层的序列图。这种序列图也称

6、为场景(Scenario),它有助于理解示例的具体交互行为。图6.3添加技能“A/D”到资源“王平”(序列图)的脚本中,6.1序列图,对象的创建和销毁可以在交互中创建对象。如果在一个交互中创建了一个对象,当接收到一个用原型标记的创建消息时,对象的生命线就开始了。一个对象可以在交互中被破坏。如果一个对象在交互中被破坏了,当接收到一个用原型标记的破坏消息时,对象的生命线就终止了。物体毁灭的标志是在它的生命线的末端标上一个 号。一个对象可以通过从其他对象发送消息来销毁,也可以自己销毁。它只供计算机应用技术系(UML系统分析与设计)的教师使用,而6.1序列图、对象创建和销毁只供计算机应用技术系(UML

7、系统分析与设计)的教师使用。例如,客户机和数据库之间的JDBC接口交互行为的部分序列图如图6.4所示。其中,数据库事务对象:“事务”由标记的消息触发创建,由消息销毁。在下图6.11中可以看到物体的自毁。图6.4数据库JDBC接口访问,6.1序列图,同步消息和异步消息(同步质量)代表操作调用的嵌套控制流,需要操作同步。同步消息的发送方将控制权传递给消息的接收方,然后暂停活动,等待接收方放弃或返回控制权。同步消息的接收者执行所请求的操作。如果需要,它可以将控件传递给另一个对象角色,请求执行一些操作,并在操作完成时将控件返回给原始同步消息的发送者。同步消息的接收者也可以直接向原始消息的发送者返回或发

8、送信息。教师计算机应用技术部(UML系统分析与设计),6.1序列图,同步消息和异步消息同步消息的接收者必须是一个被动对象,也就是说,它是一个需要由消息驱动来执行动作的对象。同步消息由带有全箭头(实心三角形或叉)的箭头线表示。通常,同步消息必须有成对的返回消息。在序列图中,返回消息可以省略,这通常在激活周期的底部暗示,但是它也可以由带有分叉箭头的虚线箭头明确表示。计算机应用技术系教师(UML系统分析与设计),6.1序列图,同步消息和异步消息,同步消息和返回消息都用序列图表示,如图6.5所示。计算机应用技术部是专门为教师设计的(UML系统分析与设计),图6.5,时序图中同步消息的表示,以及图6.1

9、,同步消息和异步消息,异步质量,通过一个信号表示一个非嵌套的控制流,它异步地需要一个操作。异步消息的发送者通过消息将信号传输给消息的接收者,然后继续他自己的活动,而不等待接收者返回信息或控制。异步消息的接收方执行所请求的操作,并可以在操作完成后向异步消息的发送方发回信息。异步消息的发送者和接收者在c交互图中有很多异步消息。计算机应用技术系教师(UML系统分析与设计),6.1序列图,同步消息和异步消息异步消息的接收者必须是一个活动对象,也就是说,它是一个可以在没有消息驱动的情况下执行其操作的对象。异步消息可以做以下三件事之一:创建一个新线程。此时的异步消息连接到激活周期的顶部。创建一个新对象。与

10、已经运行的线程通信。由计算机应用技术系教师使用(UML系统分析与设计),6.1序列图中,同步消息和异步消息用带半箭头的箭头线(叉或实心三角形)表示,如图6.6所示。交互图中有很多异步消息。教师计算机应用技术系(UML系统分析与设计),图6.6时序图中的异步消息表示,6.1时序图,交互框架是UML 2.0中提出的标记序列图片片段的图形化方法。片段,也称为交互片段,是指序列图中的一个子区域,它包含序列图的局部内容。片段被允许具有保护条件,并且当条件为真时,片段被执行。一个或多个片段可以被一个交互式框架包围,并且在框架图左上角的标题框中给出一个操作符,指示交互式框架中片段的处理模式。教师计算机应用技

11、术部(UML系统分析与设计),6.1序列图,交互框架如果在一个交互框架中放置两个或多个片段,并且每个片段的区域用虚线分开,则称之为组合片段。组合片段通常用于表示交互中的条件选择、并发或引用。序列图可以包含多个交互帧,每个交互帧可以包含一个或多个片段;一个交互框架可以包含另一个交互框架。使用交互框架可以方便地表示交互中的分支、循环、并发,以及一个交互引用另一个交互的情况。教师计算机应用技术系(UML系统分析与设计),6.1序列图,交互框架示例:一个包含组合片段的交互框架示例,如图6.7所示。在交互框架中,有一个组合片段,它有两个交互片段,并发执行。计算机应用技术是供教师使用的(UML系统分析与设

12、计)。图6.7包含一个组合片段的交互框架的例子,以及6.1序列图。交互式框架的常用操作符有alt、opt、par、loop、region、neg、ref等。它们的意思是:替代选择。有多个片段可供选择,必须选择一个,并且只有安全条件为真的片段才会被执行。可选。有多个片段可供选择,只有那些安全条件为真的片段才会被执行。平行。每个片段同时执行。循环。段可以重复执行,安全条件给出了执行条件。区域的临界区域。一个片段只有一个线程来立即执行它。否定否定。该片段指示无效的交互。参考文献引用另一个图上定义的交互。计算机应用技术系教师专用(UML系统分析与设计),6.1序列图,交互式框架交互使用是UML 2.0

13、中提出的新概念。交叉引用是复制引用的交互式内容的一种方式。交互引用是指在其他地方定义的另一个交互(片段或组合片段)。计算机应用技术部是专门为教师服务的(UML系统分析和设计)。6.1序列图,交互框架示例:交互引用示例,如图6.8所示。计算机应用技术部专用于教师(UML system analysis and design),图6.8交叉引用示例,6.1序列图,分支是指从一个对象的同一个时间点发送多个消息的情况,每个消息都有安全条件,当安全条件满足时,就发送该消息。条件分支:多条消息的安全条件是互斥的,在特定的时间,只满足一条消息的安全条件,导致消息的发送。并发分支:多条消息的安全条件相互兼容。

14、如果在特定时间可以满足多条消息的安全条件,则可以同时发送多条消息。面向教师的计算机应用技术系(UML系统分析与设计),6.1序列图,分支于UML 1.x,其中可以用序列图表示如图6.9所示。水平消息箭头表示消息即时出现。对角向下的消息箭头表示非即时消息,表示该消息需要一定的传输时间。教师计算机应用技术部(UML系统分析与设计),图6.9,序列图中分支和并发的表示,以及图6.1,序列图,UML 2.0中的分支,这需要一个交互框架。一个分支的例子如图6.10所示。计算机应用技术系教师专用(UML系统分析与设计),图6.10分支示例,6.1序列图,循环消息循环意味着一组消息被发送多次。序列图中的循环

15、处理可以用交互框架来表示,一组消息包含在一个交互框架中,这些消息将循环重复发送。在交互式框架左上角的标题框中标记操作符“循环”。运算符“loop”的语法定义为:loop(,)。面向教师的计算机应用技术系(UML系统分析与设计),6.1序列图,其中,它是循环参数值的下界和循环参数值的上界,它们都可以是非负整数;它也可以是“*”,这意味着无限。如果运算符“loop”没有参数值,则它是一个无限循环。循环的继续或退出也可以通过退出条件来控制。退出条件可以用条件表达式表示,其值是循环数。面向教师的计算机应用技术系(UML系统分析与设计),6.1序列图,循环示例:在序列图中显示循环,如图6.11所示。以计

16、算机应用技术系教师(UML系统分析与设计)为例,图6.11循环图,图6.1顺序图,循环图,以计算机应用技术系教师(UML系统分析与设计)为例,图6.12项目和资源管理系统PRMS清算项目的顺序图,如图。消息的多重循环结构。UML 1.x允许序列图中的循环结构用虚线和约束来表示。参见教科书中的图6.13。图6.12一个清算项目的序列图,6.1序列图,自调用和回调自调用指的是一个对象调用自己。序列图上的自调用可以用返回到发送对象的箭头来表示,原型可以添加到消息箭头中。回调:当指定的事件类型发生或所需操作完成时,异步消息的接收对象立即向原始调用方发送异步消息,通知相关事件已经发生或操作已经完成,并返回一些必要的参数和信息。回调不同于返回。回调发送的是异步消息。发送者和接收者并行执行他们自己的活动,并且不是任何异步消息都必须有成对的回调消息。返回消息与同步消息配对,同步消息的发送方必须等待接收方返回的返回消息,然后才能执行后续

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论