`

Rose 画序列图 .

    博客分类:
  • UML
uml 
阅读更多

文章转载http://blog.csdn.net/chenyujing1234

 

一、

1. 序列图的定义

UML的表示中,序列图将交互关系表示为一个二维图。其中,纵向是时间轴,时间沿竖线向下延伸。横向代表了在协作中各独立对象的角色。角色使用生命线进行表示,当对象存在时,生命线用一条虚线表示,此时对象不处于激活状态,当对象的过程处于激活状态时,生命线是一个双道线序列图中的消息使用从一个对象的生命线到另一个对象生命线的箭头表示,箭头以时间顺序在图中从上到下排列。
 

2. 序列图在项目开发里的作用

 
序列图作为一种描述在给定语境中消息是如何在对象间传递的图形化方式,在使用其进行建模时,主要可以将其用途分为以下三个方面:

(1)确认和丰富一个使用语境的逻辑表达。一个系统的使用情境就是系统潜在的使用方式的描述,也就是它的名称所要描述的。一个使用情境的逻辑可能是一个用例的一部分,或是一条控制流。

(2)细化用例的表达。我们前面已经提到,序列图的主要用途之一,就是把用例表达的需求,转化为进一步、更加正式层次的精细表达。用例常常被细化为一个或者更多的序列图

(3)有效地描述如何分配各个类的职责以及各类具有相应职责的原因。我们可以根据对象之间的交互关系来定义类的职责,各个类之间的交互关系构成一个特定的用例。例如,Customer对象向Address对象请求其街道名称指出Customer对象应该具有知道其街道名”这个职责

二、序列图的组成

1. 对象

序列图中的对象可以是系统的参与者或者任何有效的系统对象。对象的表示形式也和对象图中的对象的表示方式一样,使用包围名称的矩形框来标记,所显示的对象及其类的名称带有下划线,二者用冒号隔开,使用对象名:类名的形式,对象的下部有一条被成为生命线的垂直虚线。

 

2. 生命线

生命线(Lifeline)是一条垂直的虚线,用来表示序列图中的对象在一段时间内的存在。
每个对象的底部中心的位置都带有生命线。生命线是一个时间线,从序列图的顶部一直延伸到底部,所用时间取决于交互持续的时间,也就是说生命线表现了对象存在的时段。
对象与生命线结合在一起称为对象的生命线。对象的对象存在的时段包括对象在拥有控制线程时或被动对象在控制线程通过时存在。当对象在拥有控制线程时,对象被激活,作为线程的根。

3. 激活

序列图可以描述对象的激活(Activation),激活是对象操作的执行,它表示一个对象直接地或通过从属操作完成操作的过程。它对执行的持续时间和执行与其调用者之间的控制关系进行建模
激活在序列图中用一个细长的矩形框表示,它的顶端与激活时间对齐而底端与完成时间对齐。被执行的操作根椐不同风格表示成一个附在激活符号旁或在左边空白处的文字标号。

4. 消息

消息(Messages)是从一个对象(发送者)向另一个或几个其他对象(接收者)发送信号,或由一个对象(发送者或调用者)调用另一个对象(接收者)的操作。
它可以有不同的实现方式,比如过程调用、活动线程间的内部通讯、事件的发生等。

 

三、序列图中的项目相关概念

1. 创建与销毁对象

创建一个对象指的是发送者发送一个实例化消息后实例化对象的结果
销毁对象指的是将对象销毁并回收其拥有的资源,它通常是一个明确的动作,也可以是其它动作、约束或垃圾回收机制的结果。
在序列图中,创建对象操作的执行使用消息的箭头表示,箭头指向被创建对象的框
在序列图中,对象被销毁是使用在对象的生命线上画大×表示,在销毁新创建的对象,或者序列图中的任何其他对象时,都可以使用。它的位置是在导致对象被销毁的信息上,或者在对象自我终结的地方。
 

2. 分支与从属流

UML中,存在两种方式可以来修改序列图中消息的控制流,分别是:分支和从属流
分支是指的是从同一点发出多个消息的并指向不同的对象,根据条件是否互斥,可以有条件和并行两种结构。由于序列图只表示某一个活动按照时间顺序的经历过程,所以在Rational Rose 2003中,对序列图的分支画法没有明显的支持。
从属流指的是从同一点发出多个消息指向同一个对象的不同生命线。从属流在Rational Rose 2003中不支持,因为添加从属流以后会明显增加序列图的复杂度。

四、使用Rose创建序列图

1. 创建对象

创建一个新的类图,可以通过以下方式进行。

()右键单击浏览器中的Use Case View(用例视图)、Logical View(逻辑视图)或者位于这两种视图下的包。

()在弹出的菜单中,选中New(新建)下的Sequence Diagram”(序列图)选项。

()输入新的序列名称。

()双击打开浏览器中的序列图。

2. 创建生命线

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

3. 创建消息

在序列图中添加对象与对象之间的简单消息的步骤如下:

(1)选择序列图的图形编辑工具栏中的图标,或者选择菜单栏Tools(工具)中Create(新建)下的Object Message选项,此时的光标变为符号。

(2)单击需要发送消息的对象。

(3)将消息的线段拖动到接收消息的对象中

(4)在线段中输入消息的文本内容。

(5)双击消息的线段,弹出设置消息规范的对话框,在弹出的对话框中,在General选项卡中可以设置消息的名称或等,消息的名称也可以是消息接收对象的一个执行操作,我们在名称的下列菜单中选择一个或从新创建一个即可,我们称之为消息的绑定操作。

(6)如果需要设置消息的同步信息,也就是说设置消息成为简单消息、同步消息、异步消息、返回消息、过程调用、阻止消息和超时消息等,可以在Detail选项卡中进行设置,还可以设置以消息的频率。

4. 创建对象与销毁对象

由于创建对象操作也是消息的一种,我们仍然可以通过发送消息的方式创建对象。在序列图的图形表示中,和其它对象不一样的是,其它对象通常唯一图的顶部,被创建的对象通常位于图的中间部位

 

销毁对象表示对象生命线的结束,在对象生命线中使用一个X来进行标识。给对象生命线中添加销毁标记的步骤如下:

(1)在序列图的图形编辑工具栏中选择按钮,此时的光标变为+符号。

(2)单击欲销毁对象的生命线,此时该标记在对象生命线中标识。该对象生命线自销毁标记以下的部分消失。

 

五、使用Rose创建序列图案例分析

1. 需求分析

我们可以通过更加具体的描述来确定工作流程,基本工作流程如下:

1)李老师希望通过系统查询某名学生的学科成绩。

2)李老师通过用户界面录入学生的学号以及学科科目请求学生信息。

3)用户界面根据学生的学号向数据库访问层请求学生信息。

4)数据库访问层根据学生的学号加载学生信息。

5)数据库访问层根据学生信息和学科科目获取该名学生的分数信息。

6)数据库访问层将学生信息和分数信息提供给用户界面。

7)用户界面将学生信息和分数信息显示出来。

2. 确定序列对象

建模序列图的下一步是从左到右布置在该工作流程中所有的参与者和对象,同时也包含要添加消息的对象生命线

3. 创建序列图

 

远程网络教学系统为例,在该系统中,系统管理员需要登录系统才能进行系统维护工作,如添加教师信息、删除教师信息等。根据系统管理员添加教师信息用例,创建相关序列图。

 

 

rose画图实践---BBS申请版主

参考文章:http://blog.csdn.net/lsh6688/article/details/5946758

 

 

最近一直在一个论坛上发帖,感觉很有意思,经过一番的努力,我申请当了这个论坛的英语部落的版主,

自己感觉是一件非常好的事情,能和大家在论坛上交流英语,虽然不多,但是做为版主,

每天都要发一些新的内容。

 

 

还要看懂别人的发帖,对帖子进行处理,评价帖子。这样也能提高自己的英语水平。

 

 

正好学习了rose ,我就用rose来画出论坛申请版主模块的时序图,和协作图。
 论坛名称:木蚂蚁
时序图:

 

协作图:

 

分享到:
评论

相关推荐

    rationalrose怎么画顺序图.pdf

    Rational Rose还支持更复杂的序列图特性,如时间线(显示事件发生的时间顺序)、交互片段(如并发、选择分支、循环等)以及组合片段等,以适应各种复杂的系统交互需求。 9. **保存和导出**: 完成绘图后,记得...

    Rational_Rose顺序图(序列图)的建模步骤

    在Rational Rose中,创建序列图的方式有两种:一是在逻辑视图(Logical View)中增加序列图,二是在用例视图(Use Case View)中增加序列图。在逻辑视图中,可以使用“Logical View”的右键菜单——〉“New”——〉...

    用rose画QQ的UML图

    3. **序列图**:序列图着重于对象之间的动态交互,展示了时间顺序下的消息传递。在QQ应用中,可以绘制一个用户发送消息到另一用户的序列图,展示从输入框输入、点击发送到接收方接收到消息的整个过程。 4. **状态图...

    Rational Rose2002学习笔记.doc

    - Use Case 视图包含系统角色、使用案例和 Use Case Diagrams,以及可能的序列图和协作图。在项目初期,主要是客户、分析师和项目经理使用它来理解系统的高层次视角。 4. **Logic 视图**: - 分析类:与特定编程...

    [Rational.Rose.Enterprise.Edition.2003].[Software].2003.zip

    UML是一种标准的建模语言,它允许开发者以图形化的方式表达软件系统的设计和结构,包括类图、序列图、用例图等,极大地提升了团队沟通和代码实现的准确性。Rational Rose 2003版加强了对UML 2.0的支持,提供了更丰富...

    考试系统Rose图(用例图,序列图)

    这是用Rose工具画的考试系统的图 里面包括用例图,序列图,很详细.

    序列图,时序图

    用rational rose画的时序图,序列图,泳道图等,详细描述了如何使用rational rose画泳道图,该资源已加密

    rose制作UML图

    在Rose中,可以通过排列对象和生命线,绘制消息箭头来构建序列图。 - **协作图(Collaboration Diagram)**:类似于序列图,但更注重对象间的结构关系。在Rose中,可以使用协作图来表示对象间的关系和消息传递。 - *...

    rose网上选课系统UML

    用rose画的网上选课系统UML图,一共有七种图,其中有用例,活动图,协作图,序列图等

    rational rose

    数据流图(Data Flow Diagram...同时,它还支持与对象模型、状态图、序列图等其他UML图表的集成,为全面的系统建模提供了强有力的支持。因此,掌握DFD和Rational Rose的使用,对于提升软件开发效率和质量具有重要意义。

    ROSE画图--UML类图关系大全.doc

    此外,ROSE还支持其他UML图,如用例图、序列图、状态图等,以全面展示系统的动态行为和交互。 在实际工作中,掌握UML类图及其关系对于系统设计和团队间的沟通至关重要。通过ROSE这样的工具,可以提高建模效率,使...

    软件工程(visio+rose)网上飞机订票系统.zip

    绘制序列图和协作图,描述系统内部组件间的消息传递;还可以生成状态图,展示每个对象在不同条件下的行为变化。通过Rose的建模,我们可以深入理解系统的动态特性和静态结构,确保设计的完整性和准确性。 在实际开发...

    rose使用方法

    它包括类图、对象图、用例图、序列图、协作图、状态图、活动图等不同类型的图表。 2. **安装与启动** 安装Rational Rose通常涉及下载安装包,然后按照提示进行安装。安装完成后,通过桌面快捷方式或开始菜单启动...

    rose的电子教程

    UML包括多种图表类型,如类图、对象图、用例图、序列图、协作图、状态图、活动图等,这些图表提供了全面的视角来理解软件系统的各个方面。 ### Rose基础操作 1. **启动与界面介绍**:首先,我们需要了解Rose的启动...

    Rose简单手把手教程

    Rose作为UML工具,提供了可视化界面,让开发者能够方便地创建和编辑UML模型,包括类图、用例图、序列图、协作图、状态图、活动图等,极大地提高了软件开发的效率和质量。 **Rose的主要功能** 1. **建模**:Rose...

    uml_java_helloworld.rar_Rational Rose_rose

    Rational Rose是IBM公司推出的一款强大的软件建模工具,它支持多种UML图表,包括类图、用例图、序列图等,帮助开发者以图形化的方式设计和理解软件系统。 描述中提到,“这是我的第一个用Rational Rose创建的项目”...

    火力篮球源码Android+详细完整实验报告+超详细类图(Rational Rose可修改,包括截图)+功能结构图.zip

    4. **Rational Rose模型**:Rational Rose是一款强大的软件建模工具,它支持UML建模,包括用例图、类图、序列图等。在这个项目中,开发者可能使用Rational Rose创建了系统的静态和动态模型,这有助于理解游戏的架构...

    基于Rational Rose 2003的uml的绘制

    3. **序列图(Sequence Diagram)**:序列图显示对象之间的动态交互,按照时间顺序排列,展示消息传递。这对于理解系统行为非常有帮助。 4. **协作图(Collaboration Diagram)**:协作图与序列图类似,但它更侧重于...

Global site tag (gtag.js) - Google Analytics