UML之序列图

序列图主要用于展示对象之间交互的顺序。

序列图将交互关系表示为一个二维图。纵向是时间轴,时间沿竖线向下延伸。横向轴代表了在协作中各独立对象的类元角色。类元角色用生命线表示。当对象存在时,角色用一条虚线表示,当对象的过程处于激活状态时,生命线是一个双道线。

消息用从一个对象的生命线到另一个对象生命线的箭头表示。箭头以时间顺序在图中从上到下排列。

序列图中涉及的元素:

1. 生命线:

生命线名称可带下划线。当使用下划线时,意味着序列图中的生命线代表一个类的特定实例。

2. 同步消息

发送人在它继续之前,将等待同步消息响应。

3. 异步消息

在发送方继续之前,无需等待响应的消息。

4. 注释

5. 约束

约束的符号很简单;格式是: [Boolean Test]

6. 组合片段

组合片段用来解决交互执行的条件及方式。它允许在序列图中直接表示逻辑组件,用于通过指定条件或子进程的应用区域,为任何生命线的任何部分定义特殊条件和子进程。

常用的组合片段有:

抉择(Alt)

抉择用来指明在两个或更多的消息序列之间的互斥的选择,相当于经典的if..else..。

抉择在任何场合下只发生一个序列。 可以在每个片段中设置一个临界来指示该片段可以运行的条件。else 的临界指示其他任何临界都不为 True 时应运行的片段。如果所有临界都为 False 并且没有 else,则不执行任何片段。

选项(Opt)

包含一个可能发生或不发生的序列

循环(Loop)

片段重复一定次数。 可以在临界中指示片段重复的条件。

并行(Par)

下表列出了常用的组合片段:


片段类型


名称


说明


Opt


选项


包含一个可能发生或可能不发生的序列。 可以在临界中指定序列发生的条件。


Alt


抉择


包含一个片段列表,这些片段包含备选消息序列。 在任何场合下只发生一个序列。

可以在每个片段中设置一个临界来指示该片段可以运行的条件。 else 的临界指示其他任何临界都不为 True 时应运行的片段。 如果所有临界都为 False 并且没有 else,则不执行任何片段。


Loop


循环


片段重复一定次数。 可以在临界中指示片段重复的条件。

Loop 组合片段具有“Min”和“Max”属性,它们指示片段可以重复的最小和最大次数。 默认值是无限制。


Break


中断


如果执行此片段,则放弃序列的其余部分。 可以使用临界来指示发生中断的条件。


Par


并行


并行处理。 片段中的事件可以交错。


Critical


关键


用在 Par 或 Seq 片段中。 指示此片段中的消息不得与其他消息交错。


Seq


弱顺序


有两个或更多操作数片段。 涉及同一生命线的消息必须以片段的顺序发生。 如果消息涉及的生命线不同,来自不同片段的消息可能会并行交错。


Strict


强顺序


有两个或更多操作数片段。 这些片段必须按给定顺序发生。

有关如何解释序列的片段

默认情况下,序列图表明可能发生的一系列消息。 在运行的系统中,可能会出现您未选择显示在关系图上的其他消息。

以下片段类型可用于更改此释义:


片段类型


名称


说明


Consider


考虑


指定此片段描述的消息列表。 其他消息可发生在运行的系统中,但对此描述来说意义不大。

在“Messages”属性中键入该列表。


Ignore


忽略


此片段未描述的消息列表。 这些消息可发生在运行的系统中,但对此描述来说意义不大。

在“Messages”属性中键入该列表。


Assert


断言


操作数片段指定唯一有效的序列。 通常用在 Consider 或 Ignore 片段中。


Neg


否定


此片段中显示的序列不得发生。 通常用在 Consider 或 Ignore 片段中。

原文: http://blog.csdn.net/tianhai110/article/details/6361338

时间: 2024-08-08 05:15:53

UML之序列图的相关文章

UML之序列图(Sequence Diagram)

类图描述的是类之间的静态关系,而序列图展示的是对象之间的沟通方法,描述运行时的交互关系. OOP编程语言里面合理的直接交互方式只有一种,方法调用(Event通讯是间接的).所以序列图也可以 理解为方法调用交互图.方法调用有四个元素,参与者(两个,调用者和被调用者),方法名称,输入 和输出. 参与者 参与者用一个Lifeline来表示,图像为一个矩形外加底部的一条竖线.矩形里面显示对象名,格式为 name:ClassType的样式,都为可选项,Martin Fowler推荐a Handler的格式

UML: 序列图

摘自http://www.umlonline.org/school/thread-37-1-1.html 大家都进过餐馆吃饭吧?你是如何和餐厅服务员“眉来眼去”的呢?回忆一下从你进餐馆开始到你离开餐馆的整个过程,期间都发生了一些什么事情? 这个过程,我们通过序列图展示出来,可能是这样子的: 注意:红色虚线以及黄底色的文字不是序列图的一部分,它们是用来说明这个序列图的. 序列图的语法并不复杂,简述如下:1.有两条竖轴,分别代表了顾客和服务员两个角色.2.两条竖轴之间有一些带箭头的线条,线条上有一些

csdn MarkDown 第六篇 技术篇--UML 序列图 实现

这一篇开始讨论代码层面的问题.主要是markdown的功能的设计实现. 这一篇先从markdown外围的代码开始讲起: UML序列图是从https://github.com/bramp/js-sequence-diagrams copy得到的. 当如这个UML代码还用到了两个JS,功能库和画图. <script src="underscore-min.js"></script> <script src="raphael-min.js"&

UML序列图总结

原文:UML序列图总结 序列图主要用于展示对象之间交互的顺序. 序列图将交互关系表示为一个二维图.纵向是时间轴,时间沿竖线向下延伸.横向轴代表了在协作中各独立对象的类元角色.类元角色用生命线表示.当对象存在时,角色用一条虚线表示,当对象的过程处于激活状态时,生命线是一个双道线. 消息用从一个对象的生命线到另一个对象生命线的箭头表示.箭头以时间顺序在图中从上到下排列. 序列图中涉及的元素: 1.   生命线: 生命线名称可带下划线.当使用下划线时,意味着序列图中的生命线代表一个类的特定实体. 2.

CSDN-Markdown编辑器之UML序列图

这里以"TCP协议中的三次握手"来讲一下Markdown编辑器中UML序列图的应用. 连接建立的过程: ```sequence Title:连接建立的过程 客户主机->服务器主机: 连接请求(SYN=1,seq=client_isn) 服务器主机->客户主机: 授予连接(SYN=1,seq=client_isn)\n ack=client_isn+1 客户主机->服务器主机: 确认(SYN=0,seq=client_isn+1)\nack=server_isn+1 `

从 Java 代码逆向工程生成 UML 类图和序列图

from:http://blog.itpub.net/14780914/viewspace-588975/ 本文面向于那些软件架构师,设计师和开发人员,他们想使用 IBM? Rational? Software Architect 从 Java? 源代码来逆向工程生成 UML 类和序列图. 逆向工程经常被用来从已有的源代码中以一种抽象模型 UML 格式来获得丢失的设计文档,其可以用来研究一个系统的静态结构和动态行为,并用于扩展新的特性到产品. 作者详细说明了使用 IBM Rational Sof

最常用的UML图包括:用例图、类图、序列图、状态图、活动图、组件图和部署图

(转) 用例图 用例图描述了系统提供的一个功能单元.用例图的主要目的是帮助开发团队以一种可视化的方式理解系统的功能需求,包括基于基本流程的"角色" (actors,也就是与系统交互的其他实体)关系,以及系统内用例之间的关系.用例图一般表示出用例的组织关系--要么是整个系统的全部用例,要么是完 成具有功能(例如,所有安全管理相关的用例)的一组用例.要在用例图上显示某个用例,可绘制一个椭圆,然后将用例的名称放在椭圆的中心或椭圆下面的中间位 置.要在用例图上绘制一个角色(表示一个系统用户),

转载:UML学习(三)-----序列图(silent)

原文:http://www.cnblogs.com/silent2012/archive/2011/09/14/2172219.html UML的模型中可分为两种,动态模型和静态模型.用例图.类图和对象图都是UML中的静态结构模型.而在UML系统动态模型的其中一种就是交互视图,它描述了执行系统功能的各个角色之间相互传递消息的顺序关系.序列图就是交互视图的一种形式. 1.序列图的定义 序列图是对对象之间传送消息的时间顺序的可视化表示.序列图的主要用途是把用例表达的需求,转化为进一步.更加正式层次的

UML学习(类图和序列图等)

visio绘制UML图使用visio 提示此UML形状所在的绘图页不是UML模型图的一部分 请问这个问题怎么解决?新建->选择绘图类型->选择软件与数据库模板->选择UML模型图->注意:如果不选择UML模型图的话,可能会出现无法编辑形状文本,提示“此UML形状所在的绘图页不是UML模型图的一部分,该形状设计用于利用UML模型图模板创建的绘图”所以利用Visio绘UML图第一步就是选择绘图类型为软件中的UML模型图. 还可以参考百度云盘的UML学习资料 参考:UML中几种类间关系: