UML与系统分析设计 第二版 教学课件 ppt 作者 张龙祥 1_ uml006

上传人:E**** 文档编号:89398695 上传时间:2019-05-24 格式:PPT 页数:64 大小:888KB
返回 下载 相关 举报
UML与系统分析设计 第二版  教学课件 ppt 作者  张龙祥  1_ uml006_第1页
第1页 / 共64页
UML与系统分析设计 第二版  教学课件 ppt 作者  张龙祥  1_ uml006_第2页
第2页 / 共64页
UML与系统分析设计 第二版  教学课件 ppt 作者  张龙祥  1_ uml006_第3页
第3页 / 共64页
UML与系统分析设计 第二版  教学课件 ppt 作者  张龙祥  1_ uml006_第4页
第4页 / 共64页
UML与系统分析设计 第二版  教学课件 ppt 作者  张龙祥  1_ uml006_第5页
第5页 / 共64页
点击查看更多>>
资源描述

《UML与系统分析设计 第二版 教学课件 ppt 作者 张龙祥 1_ uml006》由会员分享,可在线阅读,更多相关《UML与系统分析设计 第二版 教学课件 ppt 作者 张龙祥 1_ uml006(64页珍藏版)》请在金锄头文库上搜索。

1、在UML2.0中提供了对系统动态行为建模的四大类图形:Use Case图、交互图、状态机图和活动图。 交互图(Interaction Diagram)主要表现对象之间是如何进行交互和通信的。 交互图主要用于对Use Case中的控制流的建模。一般情况下,一个交互图表达单个Use Case的行为,它表示出该Use Case中的若干个实例对象和对象之间所传递的消息。 交互图包括顺序图、通信图、 计时图和交互概观图。 UML的交互图与状态机图、活动图,以及Use Case图一起构成了系统的行为视图(Behavioral View)。 交互概观图将在第8章介绍。,第6章 交互图,Home,第6章 交互

2、图,6.1 顺序图,6.2 通信图,6.3 协同,6.4 计时图,6.5 交互图的应用,Home,顺序图的着重点是完成某个行为的对象类和这些对象类之间所传递的消息的时间顺序。 UML的顺序图类似于以往一般面向对象技术中的时序图。 例:图6.1是项目与资源管理系统PRMS中的一个把技能加入资源的顺序图,它表示了Use Case“把技能加入资源”的行为。,6.1 顺序图,Home,图6.1 把技能加入资源的顺序图,6.1 顺序图,Home,6.1.1 顺序图的组成,6.1.2 对象的创建与销毁,6.1.3 同步消息与异步消息,6.1.4 交互框架,6.1.5 分支,6.1.6 循环,6.1.7 自

3、调用与回调,顺序图是一个二维图形。在顺序图中水平向为对象维,沿水平方向排列参与交互的对象类角色;竖向为时间维,沿垂直向下方向按时间递增顺序列出各对象类角色所发出和接收的消息。 一个顺序图由下列图形元素构成:对象类角色、生命线、激活期和消息。 1对象类角色 对象类角色(Class Role)表示在交互中对象可起的作用。 对象类角色用矩形框图标表示。 在顺序图中对象类角色一般只给出名称,其命名规则与在对象类图中相同。,Home,6.1.1 顺序图的组成,2生命线 生命线(Lifeline)表示对象存在的时间,在顺序图中生命线表示为从对象图标向下延伸的一条虚线。 3激活期 激活期(Activatio

4、n)又称为控制焦点(Focus of control),表示对象执行一个动作的期间,也即对象激活的时间段。 激活期由位于生命线上的一个窄矩形框表示。 当一个对象在激活期时,该对象处于激活状态,能够响应或发送消息,执行动作或活动。当一个对象不在激活期时,该对象处于休眠状态,什么事都不做,但它仍然存在,等待新的消息来激活它。,Home,6.1.1 顺序图的组成,4消息 消息(Message)表示对象之间的通信,对象之间的交互通过互发消息来实现,消息将触发接受对象中的特定操作。 。 在顺序图中消息用对象角色之间的一条水平箭线表示。消息箭线从源对象指向目标对象,其上标有消息内容标签。 消息内容标签的格

5、式为: 序号 保安条件 *循环 返回表:= 操作名(参数表) 序号为消息在整个交互中的顺序号。 保安条件(Guard Condition)是一个布尔条件表达式。只有当其保安条件被满足时才能发送该消息。保安条件可以缺省,表示该消息是无条件发送的。 循环说明规定该消息发送的重复次数。 操作的参数表是一个以逗号分隔的实在参数表,它被传递给接收该消息的对象类角色中的一个操作(方法)。,Home,6.1.1 顺序图的组成,消息有多种类型,可以触发的动作有:调用另外一个对象的操作,调用本对象的操作,返回值给调用者,发送信号给一个对象,创建或销毁对象。 不同形式的箭线表示不同种类型的消息,如图6.2所示。,

6、Home,6.1.1 顺序图的组成,图6.2 消息箭线对应的含义,在对系统的行为建模时,顺序图可以采用两种不同的抽象层次:说明层(Specification level)和实例层(Instance Level)。 例:图6.1是一个说明层的顺序图。 例:图6.3是相应的实例层的顺序图。 这类的顺序图又称为剧本(Scenario),有助于了解具体的实例交互行为。,Home,6.1.1 顺序图的组成,图6.3 把技能“A/D”加入资源“王平”的剧本(顺序图),一个对象可以在交互中创建。 如果一个对象是在交互中创建的,则该对象的生命线就从接收到一个标有构造型的创建消息之时开始。 一个对象可以在交互中

7、销毁。 如果一个对象是在交互中销毁的,则该对象的生命线就从接收到一个标有构造型的销毁消息之时终止。对象销毁的标志是在其生命线的端部标上一个“”。 一个对象可以由其他的对象发送消息予以销毁,也可以自己销毁,Home,6.1.2 对象的创建与销毁,例:一个客户机与数据库的JDBC接口交互行为的部分顺序图如图6.4所示。 其中的数据库事务对象“:事务”由标有 的消息,触发创建,被消息触发销毁。 对象的自行销毁可见后面的图6.11所示。,Home,6.1.2 对象的创建与销毁,图6.4 对数据库的JDBC接口的访问,同步消息(Synchronous massage)代表一个通过操作调用的嵌套的控制流,

8、该操作调用要求操作同步。 同步消息的发送者把控制传递给消息的接收者,然后暂停活动,等待消息接收者放弃或返回控制。 同步消息的接收者执行所请求的操作,如果需要的话,可以把控制传递给另一个对象角色,请求做某个操作,并且当该操作完成后把控制返回给原来的同步消息的发送者。 同步消息的接收者也可以直接返回或发送信息给原来的消息的发送者。,Home,6.1.3 同步消息与异步消息,同步消息的接收者必须是一个被动对象(Passive object),即它是一个需要通过消息的驱动才能执行动作的对象。 同步消息用一条带全箭头(实心三角或叉形)的箭线表示。 一般一个同步消息必有一个配对的返回消息。 在顺序图中返回

9、消息可以省略,返回消息一般隐含在激活期的底端,但也可以用一条带叉形箭头的虚箭线显式表示。,Home,6.1.3 同步消息与异步消息,同步消息和返回消息在顺序图中的3种表示形式,如图6.5所示。,Home,6.1.3 同步消息与异步消息,图6.5 同步消息在顺序图中的表示,异步消息(Asynchronous massage)代表一个经由信号的非嵌套的控制流,该信号异步要求一个操作。 异步消息的发送者通过消息把信号传递给消息的接收者,然后继续自己的活动,不等待接收者返回信息或控制。 异步消息的接收者执行所请求的操作,操作完成后可以发回信息给异步消息的发送者。 异步消息的发送者和接收者是并发工作的。

10、在交互图中大量的是异步消息。,Home,6.1.3 同步消息与异步消息,异步消息的接收者必须是一个主动对象(Active object),即它是一个不需要消息驱动就能执行其动作的对象。 一个异步消息可以做以下3件事情之一: (1)创建一个新线程。此时的异步消息连接到一个激活期的顶部。 (2)创建一个新对象。 (3)与一个已经在运行的线程通信。,Home,6.1.3 同步消息与异步消息,异步消息用一条带半箭头(叉形或实心三角)的箭线表示,如图6.6所示。 在交互图中大量的是异步消息。,Home,6.1.3 同步消息与异步消息,图6.6 异步消息在顺序图中的表示,交互框架(Interaction

11、Frame)是UML 2.0中提出的标记顺序图片段的图示方法。 片段(Fragment),又称交互片段(Interaction Fragment),是指顺序图中的一个分区域,包含着该顺序图的局部内容。对于一个片段允许带有保安条件(Guard),当该条件为真时才执行该片段。 一个或多个片段可以由一个交互框架包围,在框架图形左上角的标题框中给出操作符,表明该交互框架中片段的处理方式。 如果把二个或多个片段放在一个交互框架里,各片段的区域之间用一条虚线分隔,则称为组合片段。组合片段常用于表示交互中的条件选择、并发或引用情况。 一个顺序图中可以含有多个交互框架,每一个交互框架可以包含一个或多个片段;一

12、个交互框架中可以包含另一个交互框架。 使用交互框架便于表示交互中的分支、循环、并发,以及一个交互引用另一个交互的情况。,Home,6.1.4 交互框架,例:一个包含组合片段的交互框架示例,如图6.7所示。在该交互框架中是一个组合片段,它有两个交互片段,并发执行。,Home,6.1.4 交互框架,图6.7 包含组合片段的交互框架示例,交互框架的常用操作符有alt、opt、par、loop、region、neg、ref等。它们的含义分别为: alt选择。有多重片段供选择,且必选其一,只有当其保安条件为真的片段才被执行。 opt任选。有多重片段供选择,只有当其保安条件为真的片段才被执行。 par并行

13、。每个片段都并发执行。 loop循环。片段可重复执行,保安条件给出执行条件。 region临界区域。片段只有一个线程对它立即执行。 neg否定。片段指明一次无效的交互。 ref引用。引用在其它图上定义的一个交互。 交互引用(InteractionUse)是UML 2.0中提出的新概念。交互引用是复制被引用的交互内容的手段。一个交互引用引用另一个交互(片段或组合片段),该被引用的交互是在其它地方定义的。,Home,6.1.4 交互框架,例:交互引用的示例,如图6.8所示。,Home,6.1.4 交互框架,图6.8 交互引用示例,分支是指从一个对象的同一个时间点发出多个消息的情况,其中的每一个消息

14、都有保安条件,当保安条件得到满足,则发送该消息。 。 条件分支:多个消息的保安条件是互斥的,在一个特定的时刻,仅有一个消息的保安条件会得到满足,导致该消息的发送。 并发分支:多个消息的保安条件是互为相容的,在一个特定的时刻多个消息的保安条件都可能满足,则多个消息可能同时发送。,Home,6.1.5 分支,在UML 1.x中,可如图6.9所示在顺序图中表示分支。 其中水平向的消息箭线表明该消息在瞬间发生;斜向下的消息箭线表示非瞬时消息,表明该消息需要有一定的传输时间。,Home,6.1.5 分支,图6.9 分支与并发在顺序图中的表示,在UML 2.0中,在顺序图中表示分支和并发要求采用交互框架。

15、 分支的示例如图6.10所示。,Home,6.1.5 分支,图6.10 分支示例,消息的循环是指一组消息被多次发出。 在顺序图中循环处理可以用交互框架表示,一组消息包含在一个交互框架中,这些消息将循环重复发送。 在交互框架左上角的标题框中标明操作符“loop”。操作符“loop”的语法定义为:loop (,)。 其中,为循环参数值的下界,为循环参数值的上界,均可为非负整数;还可为“*”,表示无限。 若操作符“loop”不带参数值,则为无限循环。 循环的继续或退出也可由一个出口条件控制。出口条件可用条件表达式表示,其值是循环的次数。,Home,6.1.6 循环,例:在顺序图中表示循环,如图6.11所示。,Home,6.1.6 循环,图6.11 循环示例,例:项目与资源管理系统PRMS的一个清除项目的顺序图 ,如图6.12所示。 消息的多重循环结构。 UML 1.x允许顺序图中的循环结构可以用虚线和约束条件表示。参见教材中图6.13。,Home,6.1.6 循环,图6.12 PRMS的一个清除项目的顺序图,自调用(Self Call)是指一个对象调用自己。 在顺序图上自调用可以用一条返回给发送对象的箭线表示,在消息箭线上还可以加上构造型 。 回调:异步消息的接收对象,在指定的事件类型发生或所要求的操作已完成时,立

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号