顺序图的建模步骤

合集下载

顺序图

顺序图

1.4 顺序图:一般顺序图
• 实例顺序图(instance sequence diagram):只 把一个场景用顺序图描述出来 • 一般顺序图(generic sequence diagram):绘 制顺序图时考虑到用例所有场景。
:Customer
:Front
:Register
:Dispenser
checkAvailability(selection) displyPrompt("Sold Out") returnCash(cash) update(cash,price) receiveChange(cash,price) releaseSoda(selection) [selection avaliable]receiveSoda(selection)
• 顺序图中对象的符号和对象图中对象所用的符号一样。
• 将对象置于时序图的顶部意味着在交互开始的时候对象就已 经存在了,如果对象的位置不在顶部,那么表示对象是在交 互的过程中被创建的。
生命线(lifeline):一条垂直的虚线,表示时序图 中的对象在一段时间内的存在。每个对象的底部 中心的位置都带有生命线。生命线是一个时间线, 从时序图的顶部一直延伸到底部,所用的时间取 决于交互持续的时间。
车主
钥匙
小车
getButtonPress(b) processKeyMessage(b) [b="lock] lock()
BlinkLights Beep
1.3 饮料销售机 (1)类图
1.3 饮料销售机 (2)最理想场景的顺序图
:Customer
:Front
:Register
:Dispenser
1.1 什么是顺序图

顺序图和协作图

顺序图和协作图

第4章顺序图和协作图4.1 交互图概述在一个待开发的系统中,任何对象都不是孤立存在的,系统中的这些对象都是通过传递消息进行交互的。

因此在设计系统时,就免不了对交互进行缄默,并用交互图展现出来。

4.1.1 交互的定义当需要对类操作、类、构件、用例乃至整个系统的控制流进行建模时,一定离不开“交互”。

交互:一次交互就是指在特定语境中,为了实现某一个目标,而在一组对象之间进行交换的一组消息所表示的行为。

交互图:是用来描述对象之间以及对象与参与者之间的动态协作关系以及协作过程中行为次序的图形文档。

通常用来描述一个用例的行为,显示该用例中所涉及的对性和这些对象之间的消息传递情况在大多数情况下,消息通常是指启动一个操作或发送一个信号,以及创建或销毁一个对象。

4.1.2 UML交互图的类型顺序图:是一种强调消息时间顺序的交互图,着重描述对象按照时间顺序的消息交换,为读者提供了控制流随着时间推移的清晰的可视化轨迹。

协作图(UML 2.0中的通信图):强调的是参加交互的对象的组织,着重描述系统成分如何协同工作,为读者提供了在协作对象结构组织的语境中观察控制流的一个清晰的可视化轨迹。

顺序图和协作图从不同的角度表达了系统中的交互和系统的行为,它们可以相互转化,并且转换过程不会丢失信息。

定时图(UML 2.0中新增):采用了一种带数字刻度的时间轴来精确地描述消息的顺序,而不是像顺序图那样只是指定消息的相对顺序,而且它还允许可视化的表示每条生命线的状态变化,当需要对实时时间进行定义时,采用定时图可以很好的满足。

交互概述图(UML 2.0中新增):是交互图和活动图的混合物。

定时图和交互概述图是两种特殊的变体。

4.1.3交互图和类(图)4.2 顺序图顺序图:显示的是参与交互的对象及对象之间消息交换的顺序,用来表示用例中的行为顺序。

图显示的是汽车租赁系统中客户取车的顺序图,涉及5个对象:客户、预定请求、工作人员、工作记录和汽车。

sequencediagram 语法

sequencediagram 语法

sequencediagram 语法顺序图(Sequence Diagram)是一种UML(Unified Modeling Language)的图形化建模工具,用于描述对象之间的交互关系。

在软件开发过程中,顺序图用于可视化系统的行为,展示对象之间的时序交互流程。

顺序图的目标是描述对象之间的消息传递,以及这些消息在时间上的顺序。

它可以用来表示不同对象之间的交互方式,或者展示一个对象内部的交互过程。

顺序图的基本元素包括参与者(Actor)、对象(Object)、生命线(Lifeline)、消息(Message)和控制焦点(Focus of Control)。

1.参与者(Actor):顺序图中的参与者是指与系统交互的外部实体,可以是人、其他系统或者硬件设备。

在顺序图中,参与者通常表示为一个方框,可以包含多个实例。

2.对象(Object):对象在顺序图中表示系统中的实体或者模块。

它可以是一个类的实例、一个组件、一个子系统或者系统本身。

每个对象都有一个生命线,在顺序图中表示为一条垂直虚线。

3.生命线(Lifeline):生命线表示对象在一段时间内的存在。

它是一个垂直虚线,从对象的图形下方延伸到顺序图的顶部。

生命线上的箭头表示对象的存在时间。

4.消息(Message):消息是顺序图中对象之间的通信方式。

它分为同步消息(Synchronous Message)、异步消息(Asynchronous Message)和返回消息(Return Message)等几种类型。

同步消息表示发送者在接收到消息后会等待返回结果,而异步消息则表示发送者不需要等待返回结果。

5.控制焦点(Focus of Control):控制焦点表示在顺序图中的消息接收和处理过程。

它通常表示为带有箭头的竖线,箭头指向消息的接收者。

在顺序图中,可以通过以下步骤来描述对象之间的交互过程:1.确定参与者和对象:首先需要确定顺序图中涉及的参与者和对象,以及它们之间的关系和交互方式。

uml建模的流程

uml建模的流程

uml建模的流程
UML建模流程主要包括以下步骤:
1. 需求分析:通过业务建模理解领域需求,绘制用例图来可视化用户与系统交互场景。

2. 用例细化:定义和详细描述每个用例的行为规约,明确系统功能需求。

3. 静态建模:基于需求,创建类图描述类结构,对象图展示对象实例关系,包图组织模块划分。

4. 动态建模:通过序列图描绘对象间的交互序列,状态图展现对象状态变迁,活动图展示业务流程。

5. 架构设计:构建组件图和部署图,规划系统结构和技术实现方案。

6. 模型验证与迭代:评审模型,根据反馈调整模型直至满足系统设计需求。

第十章时序图(顺序图)

第十章时序图(顺序图)

第十章 时序图
饮料销售机
(2)钱币记录仪的主要功能是: ①从前端获取顾客输入的信息(包括现金和饮 料选购); ②更新现金和饮料存储; ③将用户投入的现金或找回的零钱发送到前端。
饮料销售机
第十章 时序图
(3)分配器的主要功能是: ①检查用户所选饮料是否有存货; ②分发饮料给顾客。 买饮料的顺序是: a)顾客从前端投入钱币,选择所需要的饮料; b)钱币到达钱币记录仪,记录仪通知分配器检查 饮料存货情况; c)若有存货,记录仪更新自己的存储,并通知分 配器发饮料到机器前端。
一组对象(对象名和类名) 对象生命线(时间轴) 对象被激发(对象的活跃期) 对象间的通信(消息)
第十章 时序图
二. 时序图样式和元素
消息 对象
生命线
被激活期
第十章 时序图
二. 时序图样式和元素

① 对象及命名
:类名 :对象名
对象名:类名
第十章 时序图
二. 时序图样式和元素
① 对象的命名
② 生命线 表示对象存在的时间,对象下面一条虚线表示。
返回消息
第十章 时序图
三. 消息 消息:对象之间传输的信息。消息有以下类型: ④阻止消息 阻止消息指消息发送者发出消息给接收者,如果接收 者无法立即接收这个消息,则发送者放弃这个消息。
阻止消息
第十章 时序图
三. 消息 消息:对象之间传输的信息。消息有以下类型:
⑤超时消息 超时消息指消息发送者发出消息给接收者,并按 指定时间等待,如果接收者无法在指定时间内接收这 个消息,则发送者放弃这个消息。
②异步消息 异步消息的发送者通过消息把信号传递给接收者, 然后继续自己活动,不等待接收者返回消息或控制。
异步消息

顺序图的技巧

顺序图的技巧

顺序图的技巧顺序图是一种重要的UML(统一建模语言)图形工具,用于描述系统中对象之间的交互过程。

通过顺序图,我们可以清晰地表示系统中对象之间的消息传递和时序关系,帮助软件开发人员和系统分析师更好地理解系统的工作流程。

下面是一些在绘制顺序图时可以使用的技巧:1. 确定参与者和对象:在开始画顺序图之前,首先需要明确系统中的参与者和对象。

参与者是系统的外部实体,可以是用户、其他系统或硬件设备。

对象是系统的内部实体,代表系统内部的模块、类或组件。

2. 标识参与者和对象:对于每个参与者和对象,在顺序图中都需要标识出其名称和角色。

参与者和对象的名称应该准确地描述其功能和职责,以便能够清晰地理解系统的交互过程。

3. 定义消息:在顺序图中,消息是参与者和对象之间进行通信的方式。

消息可以是同步消息(带有返回值)或异步消息(没有返回值)。

同步消息用实线箭头表示,异步消息用虚线箭头表示。

在定义消息时,需要明确消息的类型、名称、参数和返回值。

4. 绘制生命线:生命线是顺序图中的垂直线,代表对象的存在和活动时间。

每个对象在顺序图中都应该有一个生命线与之对应。

生命线从对象的启动到终止,表示对象在系统中的存在时间。

5. 添加激活条:激活条用于表示对象在特定时间段内的活动状态。

激活条是位于生命线上的水平线条,用于显示对象的活动时间段。

当对象执行某个操作时,激活条将会出现,表示对象处于活动状态。

6. 确定时序关系:顺序图中的时序关系表示对象之间消息的顺序和时间间隔。

可以使用顺序图中的数字或时间戳来表示消息之间的时序关系。

时序关系有:同步、异步、返回、创建和销毁等。

7. 使用合适的图形符号:在绘制顺序图时,要使用合适的图形符号来表示参与者、对象、消息和时序关系。

对于参与者和对象可以使用矩形框来表示,对于消息可以使用箭头来表示。

使用合适的图形符号可以使顺序图的含义更加清晰。

8. 合理布局和命名:在绘制顺序图时,要注意合理布局和命名。

顺序图

A2:用户名不存在 1.系统提示用户名不存在。 2.再次输入用户名、密码。 3.进入添加课程事件流第3步。
2020/1/31
20
系统向参与者的输出
2020/1/31
18
实例—网上选课 系统的交互图
Login 事件流
1.学生进入登陆界面,用例开始。 2.输入用户名、密码。 3.系统验证用户名、密码。
A1:密码错误 A2: 用户名不存在 4.进入学生界面,系统显示目前所 建立的全部课程信息。 5.用例结束。
A1:密码错误 1.系统提示密码错误。 2.重新输入密码。 3.进入添加课程事件流第3步。
11
8.2.2 顺序图
主要概念
♂类 ♂ 对象 ♂ 生命线 ♂ 操作 (控制焦点,执行规约) ♂ 消息(激活) ♂ 对象的创建与撤销
2020/1/31
12
顺序图—主要概念
对象 生命线
♂ 表示一个对象在其生命周期内的存在
s1 : Student
2020/1/31
13
顺序图-主要概念
操作
曹操 刘备
孔明
♂ 画在生命线上的战一争个瘦长的矩形表示一个操作正在
执行,从矩形上端开始,到下端结束。
想计策
火烧连营
2020/1/31
14
顺序图—主要概念
消息(激发)
objiect message return message asynchronous message /'es'iŋkrənəs/ procedur call
2020/1/31
7
8.1.2 术语和概念
消息???
♂ 对象发出的服务请求 ♂ 消息名,参数,返回值 ♂ 对一个消息的接收意味着一个事件的发生

顺序图


阻止消息 消息的发送者传递消息给接 收者,如果接收者无法立即接收, 则发送者放弃该消息。
Rational Rose画顺序图
打开rose软件,选择新建Sequence Diagram
Rational Rose画顺序图
Rational Rose画顺序图
Selection Tool:光标返回 箭头,选择工具
选项(Opt)
• 包含一个可能发生或不发生的序列
循环(Loop)
• 片段重复一定次数。 可以在临界中 指示片段重复的条件。
并行(Par)
组合片段
谢建模序列图的下一步是从左到右布置在该工作流程中所有的参与 者和对象,同时也包含要添加消息的对象生命线。
Rational Rose画顺序图
在对象之间添加消息
Rational Rose画顺序图
在对象之间添加消息,选择消息种类
Rational Rose画顺序图
常用消息的类型
自关联消息
用来描述对象内部函数的互相调
用。
超时消息
超时消息是同步消息中的一种特 殊情况,源消息对象发出消息后将等 待响应一段时间,在限定时间内还没 有响应时,源消息对象将取消阻塞状 态而执行后续操作。
常用消息的类型
异步消息 消息的发送者将消息发送给 消息的接受者后,不用等待回应 的消息,即可开始另一个活动。
Text Box:创建文本框
Note:创建注释 Object:序列图中的对象
Anchor Note to Item:将注释连接到序列图 中的相关模型元素 Object Message:两个对象之间的普通消 息,消息在单个控制线程中运行
Message to Self:对象的自身 消息 Return Message:返回消息 Destruction Marker:销毁对象标记 Procedure Call:两个对象之间的过程调用 Asynchronous Message:两个对象之 间的异步消息,也就是说客户发出

第6章 顺序图和协作图


6.1.1 顺序图概述
顺序图主要用于按照交互发生的一系列顺序,显示对 象之间的这些交互。很象类图,开发者一般认为顺序 图只对他们有意义。然而,一个组织的业务人员会发 现,顺序图显示不同的业务对象如何交互,对于交流 当前业务如何进行很有用。除记录组织的当前事件外, 一个业务级的顺序图能被当作一个需求文件使用,为 实现一个未来系统传递需求。在项目的需求阶段,分 析师能通过提供一个更加正式层次的表达,把用例带 入下一层次。那种情况下,用例常常被细化为一个或 者更多的顺序图。在UML图中,顺序图与用例图和类 图之间关系如图6.1所示。
图6.8 异步消息符号
6.1.2 顺序图的基本内容
③返回消息(Return Message) 返回消息表示从过程调用返回。
图6.9 返回消息图标
6.1.2 顺序图的基本内容
另外在消息的创建过程中还存在一些其他的内容,比 如说创建对象、撤销对象、自关联消息等。 ①创建(create)对象 一个对象可以通过发送消息来创建另一个对象,即创 建对象,如图6.10所示。对象在创建消息发生后才能存 在,对象的生命线也是在创建消息后才存在。
6.1.3 约 束
userInterface dataControl dataSource
1 : requestArray() 2 : requestArryLength() 3 : returnArrayLength
loop
Condition 4 : requestArrayItem()
5 : returnArrayItem
3. 生命线 4. 激活期 生命线(LiftLine)代表顺序图中对象在一段时间内的 存在。生命线在顺序图中表示为从对象图标底部中心 位置向下延伸的一条虚线(但事实上UML2中定义的生 命线可以用实线来表示)。 激活期(Activation)也被称为控制焦点,代表顺序图 中的对象执行一项操作的时期,是顺序图中表示时间 段的符号,在这个时间段内对象将执行相应的操作。 在UML中,用小矩形表示,被称为激活条或控制期, 对象就是在激活条的顶部被激活的,在完成自己的工 作后被去激活。

UML顺序图、协作图的设计

湖南文理学院实验报告课程名称:UML建模技术实验实验名称:UML顺序图、协作图的设计成绩:学生姓名:专业:计科班级、学号:同组者姓名:实验日期: 2013、6、2一、实验目的:①掌握对象的设计、消息流的设计;②掌握顺序图、协作图中对象交互关系的设计。

二、实验原理:时序图(Sequence Diagram),亦称为序列图或顺序图,是一种UML行为图。

它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。

它可以表示用例的行为顺序,当执行一个用例行为时,时序图中的每条消息对应了一个类操作或状态机中引起转换的触发事件。

时序图描述对象是如何交互的,并且将重点放在消息序列上。

也就是说,描述消息是如何在对象间发送和接收的。

所谓协作是指在一定的语境中一组对象以及用以实现某些行为的这些对象间的相互作用。

它描述了在这样一组对象为实现某种目的而组成相互合作的“对象社会”。

协作图就是表现对象协作关系的图,它表示了协作中作为各种类元角色的对象所处的位置,在图中主要显示了类元角色(Classifier Roles)和关联角色(Association Roles)。

类元角色描述了一个对象,关系角色描述了协作关系中的链。

与序列图中明确表示了角色之间的关系,通过协作角色来限定协作中的对象和链接。

另一方面,协作图不将时间作为单独的维来表示,所以必须使用顺序号判断消息的顺序以及并行线程。

序列图和协作图表达的是类似的信息,虽然它们使用的不同的方法表示,但是可以通过适当的方式将它们进行转换。

三、实验内容:①通过对BBS论坛系统的需求分析,绘制顺序图;②通过对BBS论坛系统的需求分析,绘制协作图。

具体内容如下:(一)BBS论坛系统的需求分析1、系统功能需求(1)从前台用户和游客角度,系统应包括:用户注册,用户登录,浏览文章,发表文章,帖子查询。

(2)从论坛管理员角度:会员管理,帖子管理,论坛分类管理,帖子分类。

(1)前台基本业务模块:注册会员,登录系统,发表文章,浏览文章,文章查询。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

顺序图的建模步骤
新建一个顺序图的方式有两种:
1.在逻辑视图中增加顺序图
1)一般情况下,顺序图属于系统的逻辑模型,因此可以使用“Logical View”的右
键菜单——〉“New”——〉“Sequence Diagram”,然后输入顺序图的名称“读者预
约图书”。接着双击新增的顺序图名称,开始输入序列图。

2.在用例视图中增加顺序图
顺序图主要是用于对用例的描述,在此种目的下新增序列图的方式也是有两种:

2.1)直接在“Use Case View”下的相应用例上通过右键菜单——〉“New”——〉
“Sequence Diagram”菜单项新建一个顺序图,输入顺序图的名称。输入完顺序图
的名称后,双击此顺序图的名称开始输入顺序图的内容。

2.2)在用例图中使用用例的属性窗口来新增顺序图。如下图所示,在用例“浏览
课件”的“Specification”属性窗口中的“Diagrams”项目下,通过右键菜单——〉
“Insert Sequence Diagram”,输入顺序图的名称,双击此顺序图名称,进入顺序图
的编辑界面。

3.增加和删除对象
3.1)使用原有的模型元素作为顺序图的对象
使用拖放的方式把原有的模型元素作为顺序图的对象(可以被拖放的模型元素有
参与者(Actor)和类(Class)这两种模型元素。)

3.2)增加新的顺序图对象
在顺序图的界面中,选择对象(Object)工具,然后输入对象名称。

4.删除顺序图中的对象
4.1)如下图所示,选择需要删除的对象,使用右键菜单——〉“Edit”——〉“Delete
from Model”菜单项即可删除该对象。

4.2)使用快捷键的方式比使用菜单项要简单,选中需要删除的对象,使用Ctrl+D
的方式即可删除该对象。

5.终结对象在顺序图中的生命
选择对象生命终结符号,选择需要终止生命的对象的生命线

6.增加和删除对象间的消息
选择对象消息(Object Message),按住鼠标左键,从需要发出消息的对象的生命
线开始,拖动线段直到接收消息的对象为止,松开鼠标左键,然后输入消息的名
称。还需要设置哪些对象是在交互的过程中被创建的。在增加对象的消息时,还
可以增加发送给对象自己的消息。

7.设置消息的不同类型
双击需要设置消息类型的消息,在“Detail”项目中进行消息类型的设置,一旦消
息的类型改变之后,消息的符号也会跟着进行相应的变化。

8.设置序列图的项目属性
设置序列图的项目属性的方法如下:主菜单——〉“Tools”——〉“Options”,在
弹出的窗口中选择“Diagram”标签,
: 读者
借书列表图书
查询借书信息
确认是否可续借

返回确认结果
添加续借信息

读者续借图书

相关文档
最新文档