如何用Rose创建序列图

上传人:飞*** 文档编号:49245432 上传时间:2018-07-26 格式:PPT 页数:25 大小:560KB
返回 下载 相关 举报
如何用Rose创建序列图_第1页
第1页 / 共25页
如何用Rose创建序列图_第2页
第2页 / 共25页
如何用Rose创建序列图_第3页
第3页 / 共25页
如何用Rose创建序列图_第4页
第4页 / 共25页
如何用Rose创建序列图_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《如何用Rose创建序列图》由会员分享,可在线阅读,更多相关《如何用Rose创建序列图(25页珍藏版)》请在金锄头文库上搜索。

1、UML统一建模语言重点内容:l序列图的基本概念 l序列图的组成 l序列图中的项目相关概念l使用ROSE创建序列图l使用Rose创建序列图案例分析 第第8 8章章 序列图序列图UML统一建模语言一、序列图的基本概念一、序列图的基本概念所谓交互是指在具体语境中由为实现某个目标的一组对象之间进行交互的一 组消息所构成的行为。一个结构良好的交互过程类似于算法,简单、易于理解和 修改。UML提供的交互机制通常被用来对两种情况进行建模,分别是为系统的动 态方面进行建模和为系统的控制过程进行建模。面向动态方面进行建模时,该机 制通过描述一组相关联、彼此相互作用的对象之间的动作序列和配合关系,以及 这些对象之

2、间传递、接收的消息来描述系统为实现自身的某个功能而展开的一组 动态行为。面向控制流进行建模时,可以针对一个用例、一个业务操作过程或系 统操作过程,也可以针对整个系统。描述这类控制问题的着眼点是消息在系统内 如何按照时间顺序被发送、接收和处理。序列图是对象之间基于时间顺序的动态交互,它显示出了随着时间的变化对 象之间是如何进行通讯的。在UML的表示中,序列图将交互关系表示为一个二维 图。其中,纵向是时间轴,时间沿竖线向下延伸。横向代表了在协作中各独立对 象的角色。角色使用生命线进行表示,当对象存在时,生命线用一条虚线表示, 此时对象不处于激活状态,当对象的过程处于激活状态时,生命线是一个双道线

3、。序列图中的消息使用从一个对象的生命线到另一个对象生命线的箭头表示,箭 头以时间顺序在图中从上到下排列。 1 1、序列图的定义、序列图的定义UML统一建模语言一、序列图的基本概念一、序列图的基本概念1 1、序列图的定义、序列图的定义UML统一建模语言序列图作为一种描述在给定语境中消息是如何在对象间传递的图形 化方式,在使用其进行建模时,主要可以将其用途分为以下三个方面:1 确认和丰富一个使用语境的逻辑表达。一个系统的使用情境就是 系统潜在的使用方式的描述,也就是它的名称所要描述的。一个使用情 境的逻辑可能是一个用例的一部分,或是一条控制流。2 细化用例的表达。我们前面已经提到,序列图的主要用途

4、之一, 就是把用例表达的需求,转化为进一步、更加正式层次的精细表达。用 例常常被细化为一个或者更多的序列图。3 有效地描述如何分配各个类的职责以及各类具有相应职责的原因 。我们可以根据对象之间的交互关系来定义类的职责,各个类之间的交 互关系构成一个特定的用例。例如,“Customer对象向Address对象请求 其街道名称”指出Customer对象应该具有“知道其街道名”这个职责。2 2、序列图在项目开发里的作用、序列图在项目开发里的作用一、序列图的基本概念一、序列图的基本概念UML统一建模语言序列图中的对象可以是系统的参与者或者任何有效的系统对象。对 象的表示形式也和对象图中的对象的表示方式

5、一样,使用包围名称的矩 形框来标记,所显示的对象及其类的名称带有下划线,二者用冒号隔开 ,使用“对象名 :类名”的形式,对象的下部有一条被成为“生命线”的 垂直虚线。1 1、对象、对象二、序列图的组成二、序列图的组成UML统一建模语言如果对象的开始位置位于序列图的顶部,就意味着序列图在开始交互的 时候该对象就已经存在了,如果不位于顶部,说明对象在交互的过程中将被 创建。在序列图中,可以通过以下几种方式使用对象:使用对象生命线来建立类与对象行为的模型,这也是序列图的主要目的 。不指定对象的类,先用对象创建序列图,随后再指定它们所属的类。这 样可以描述系统的一个场景。区分同一个类的不同对象之间如何

6、交互时,首先应给对象命名,然后描 述同一类对象的交互 。也就是说,同一序列图中的几条生命线可以表示同一 个类的不同对象,两个对象是根据对象名称区别的。表示类的生命线可以与表示该类对象的生命线平行存在。可以将表示类 的生命线对象的名称设置为类的名称。1 1、对象、对象二、序列图的组成二、序列图的组成UML统一建模语言生命线(Lifeline)是一条垂直的虚线,用来表示序列图中的对象 在一段时间内的存在。每个对象的底部中心的位置都带有生命线。生命线是一个时间线, 从序列图的顶部一直延伸到底部,所用时间取决于交互持续的时间,也 就是说生命线表现了对象存在的时段。对象与生命线结合在一起称为对象的生命线

7、。对象存在的时段包括 对象在拥有控制线程时或被动对象在控制线程通过时存在。当对象在拥 有控制线程时,对象被激活,作为线程的根。被动对象在控制线程通过 时,即被动对象被外部调用时,通常称为活动,它的存在时间包括过程 调用下层过程的时间。2 2、生命线、生命线二、序列图的组成二、序列图的组成UML统一建模语言序列图可以描述对象的激活(Activation),激活是对象操作的执 行,它表示一个对象直接地或通过从属操作完成操作的过程。它对执行 的持续时间和执行与其调用者之间的控制关系进行建模。激活在序列图中用一个细长的矩形框表示,它的顶端与激活时间对 齐而底端与完成时间对齐。被执行的操作根椐不同风格表

8、示成一个附在 激活符号旁或在左边空白处的文字标号。 3 3、激活、激活二、序列图的组成二、序列图的组成UML统一建模语言消息(Messages)是从一个对象(发送者)向另一个或几个其他对 象(接收者)发送信号,或由一个对象(发送者或调用者)调用另一个 对象(接收者)的操作。它可以有不同的实现方式,比如过程调用、活动线程间的内部通讯 、事件的发生等。 4 4、消息、消息二、序列图的组成二、序列图的组成UML统一建模语言消息的组成:发送者、接收者和活动。发送者:是发出消息的类元角色。接收者:是接收消息的类元角色,接收消息的一方被 认为是事件 的实例 。接收者有两种不同的调用处理方式可以选用,通常由

9、接收者 的模型决定。一种方式是操作作为方法实现,当信号到来时它将被激活 。过程执行完 后,调用者收回控制权,并可以收回返回值 。另一种方 式是主动对象,操作调用可能导致调用事件,它触发一个状态机转换。活动为调用、信号、发送者的局部操作或原始活动,如创建或销毁 等。除上页图中表示的消息外,可以利用 消息的规范设置 消息的其他 类型,比如同步消息(发送者发出消息后等待接收者响应这个消息)阻 止消息(发送者发出消息给接收者,如果接收者无法立刻接收消息,则 发送者放弃这个消息)超时消息(发送者发出消息给接收者,如果接收 者超过一定时间未响应,则发送者放弃这个消息)。4 4、消息、消息二、序列图的组成二

10、、序列图的组成UML统一建模语言创建一个对象指的是发送者发送一个实例化消息后实例化对象的结果。 在创建对象的消息操作中,可以有参数,用于新生对象实例的初始化。类属 性的初始值表达式通常是由创建操作计算的,其结果用于属性的初始化。当 然也可以隐式取代这些值 ,因此初始值表达式是可重载的默认项。销毁对象指的是将对象销毁并回收其拥有的资源,它通常是一个明确的 动作,也可以是其它动作、约束或垃圾回收机制的结果。销毁一个对象将导 致对象的所用组成部分被销毁,但是不会销毁一般关联或者聚集关系连接的 对象,尽管它们之间包含的该对象的链接也将被消除。在序列图中,创建对象操作的执行使用消息的箭头表示,箭头指向被

11、创 建对象的框。在序列图中,对象被销毁是使用在对象的生命线上画大表示,在销毁 新创建的对象,或者序列图中的任何其他对象时,都可以使用。它的位置是 在导致对象被销毁的信息上,或者在对象自我终结的地方。1 1、创建与销毁对象、创建与销毁对象三、序列图中的项目相关概念三、序列图中的项目相关概念UML统一建模语言1 1、创建与销毁对象、创建与销毁对象三、序列图中的项目相关概念三、序列图中的项目相关概念例:创建新采购合同并存入采购合同数据库的顺序图。UML统一建模语言在UML中,存在两种方式可以来修改序列图中消息的控制流,分别是:分 支和从属流。分支是指的是从同一点发出多个消息的并指向不同的对象,根据条

12、件是 否互斥,可以有条件和并行两种结构。从属流指的是从同一点发出多个消息指向同一个对象的不同生命线。2 2、分支与从属流、分支与从属流三、序列图中的项目相关概念三、序列图中的项目相关概念UML统一建模语言2 2、分支与从属流、分支与从属流三、序列图中的项目相关概念三、序列图中的项目相关概念分支允许控制流走向不同的对象,如下图所示。UML统一建模语言注意消息的开始位置是相同的,分支消息的结束“高度” 也是相等的。这说明在下一步中,其中之一将会执行,如下图 所示。序列图的其他技术UML统一建模语言从属流还允许控制流根据条件改变,但是只允许控制流改变为相 同对象的另一条生命线分支,如下图所示。序列图

13、的其他技术UML统一建模语言在下面的示例中,Editor在用户删除文件或者保存文件时向 Filesystem发送一条消息。显然,Filesystem将会执行两种完全 不同的活动,并且每一个工作流都需要独立的生命线,如下图 所示。序列图的其他技术UML统一建模语言创建一个新的类图,可以通过以下方式进行。右键单击浏览器中的Use Case View(用例视图)、Logical View(逻 辑视图)或者位于这两种视图下的包。在弹出的菜单中,选中“New”(新建)下的“Sequence Diagram”(序列 图)选项。输入新的序列名称。双击打开浏览器中的序列图。 1 1、创建对象、创建对象四、使用

14、四、使用RoseRose创建序列图创建序列图UML统一建模语言当对象被创建后,生命线便存 在。当对象被激活后,生命线的一 部分虚线变成细长的矩形框。在Rational Rose 2003中,是 否将虚线变成矩形框是可选的,我 们可以通过菜单栏设置是否显示对 象生命线被激活时的矩形框。设置是否显示对象生命线被激 活的矩形框步骤为:在菜单栏中选 择“Tools”(工具)下的“Options” (选项)选项,在弹出的对话框中 选择“Diagram”(图)选项卡,选择 或取消“Focus of control”选项。 2 2、创建生命线、创建生命线四、使用四、使用RoseRose创建序列图创建序列图U

15、ML统一建模语言在序列图中添加对象与对象之间的简单消息的步骤如下: 1 选择序列图的图形编辑工具栏中的图标,或者选择菜单栏“Tools”( 工具)中“Create”(新建)下的“Object Message”选项,此时的光标变为 “”符号。2 单击需要发送消息的对象。3 将消息的线段拖动到接收消息的对象中。4 在线段中输入消息的文本内容。5 双击消息的线段,弹出设置消息规范的对话框,在弹出的对话框中, 在“General”选项卡中可以设置消息的名称或等,消息的名称也可以是消息 接收对象的一个执行操作,我们在名称的下列菜单中选择一个或从新创建一 个即可,我们称之为消息的绑定操作。6 如果需要设置

16、消息的同步信息,也就是说设置消息成为简单消息、 同步消息、异步消息、返回消息、过程调用、阻止消息和超时消息等,可以 在“Detail”选项卡中进行设置,还可以设置以消息的频率。 3 3、创建消息、创建消息四、使用四、使用RoseRose创建序列图创建序列图UML统一建模语言由于创建对象操作也是消息的一种,我们仍然可以通过发送消息的方式 创建对象。在序列图的图形表示中,和其它对象不一样的是,其它对象通常 唯一图的顶部,被创建的对象通常位于图的中间部位。4 4、创建对象与销毁对象、创建对象与销毁对象四、使用四、使用RoseRose创建序列图创建序列图UML统一建模语言销毁对象表示对象生命线的结束,在对象生命线中使用一个“X”来进行 标识。给对象生命线中添加销毁标记的步骤如下:1 在序列图的图形编辑工具栏中选择 按钮,此时的光标变为“+”符号。2 单击欲销毁对象的生命线,此时该标记在对象生命线中标识。该对象 生命线自销毁标记以下的部分消失。4 4、创建对象与销毁对象、创建对象与销毁对象四、使用四、使用RoseRose创建序列图创建序列图UML统一

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 企业文档

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