序列图主要用于展示对象之间交互的顺序。
序列图将交互关系表示为一个二维图。纵向是时间轴,时间沿竖线向下延伸。横向轴代表了在协作中各独立对象的类元角色。类元角色用生命线表示。当对象存在时,角色用一条虚线表示,当对象的过程处于激活状态时,生命线是一个双道线。
消息用从一个对象的生命线到另一个对象生命线的箭头表示。箭头以时间顺序在图中从上到下排列。
角色(Actor)
对象(Object)
生命线(Lifeline)
控制焦点(Focus of Control)
消息(Message)
自关联消息(Self-Message)
Combined Fragments
序列图中涉及的元素:
1. 生命线(Lifeline):
生命线名称可带下划线。当使用下划线时,意味着序列图中的生命线代表一个类的特定实体。
2. 同步消息
发送人在它继续之前,将等待同步消息响应
3. 异步消息
在发送方继续之前,无需等待响应的消息
4. 注释
5. 约束
约束的符号很简单;格式是: [Boolean Test]
6. 组合片段
组合片段 用来解决交互执行的条件及方式。 它允许在序列图中直接表示逻辑组件,用于通过指定条件或子进程的应用区域,为任何生命线的任何部分定义特殊条件和子进程。
常用的组合片段有:
a. 抉择(Alt)
抉择用来指明在两个或更多的消息序列之间的互斥的选择,相当于经典的if..else..。
抉择在任何场合下只发生一个序列。 可以在每个片段中设置一个临界来指示该片段可以运行的条件。 else 的临界指示其他任何临界都不为 True 时应运行的片段。 如果所有临界都为 False 并且没有 else,则不执行任何片段。
b. 选项(Opt)
包含一个可能发生或不发生的序列
c. 循环(Loop)
片段重复一定次数。 可以在临界中指示片段重复的条件。
d. 并行(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 片段中。 |
相关推荐
StarUML是一款强大的建模工具,专用于创建各种UML(统一建模语言)图表,如类图和时序图。这款工具对于软件开发者、系统架构师以及对软件设计有需求的用户来说,是一个不可或缺的资源。在本文中,我们将深入探讨...
StarUML是一款强大的开源软件建模工具,它支持创建各种类型的统一建模语言(UML)图表,包括类图、时序图、活动图等,是软件开发者、系统分析师和项目管理人员进行设计和规划的重要工具。本手册将详细介绍如何使用...
为了创建Android时序图,开发者可以选择使用专门的建模工具,如PlantUML、StarUML等,也可以利用代码生成器如Java代码自动生成时序图。对于压缩包中的"Shixutu"文件,可能是包含预定义时序图模板或者样例的资源,...
在这个场景中,我们关注的是五种主要的UML图:活动图、时序图、顺序图、用例图和类图。 1. **活动图**:活动图主要用于描述系统中一个过程或任务的步骤和流程,类似于流程图。对于ATM取款机,活动图会展示从插入...
总结,UML是软件开发过程中的关键工具,通过星UML等工具,我们可以有效地利用类图、用例图、时序图等图表进行建模,从而提高软件开发的效率和质量。通过学习和应用这些UML知识,开发者能够更好地理解和表达复杂系统...
专业UML画图工具破解版 ,可以画 流程图 类图 时序图等等,是画UML最佳帮手
StarUML是一款强大的建模工具,专为软件开发者和系统架构师设计,它支持创建多种统一建模语言(UML)图表,包括类图、时序图和其他关键的UML模型。这款工具的英文版,"StarUML_英文版本(默认java反向工程)",特别...
StarUML是一款强大的建模工具,它主要用于创建各种软件设计模型,包括用例图、类图、时序图和活动图等。这些图形是统一建模语言(UML)的一部分,是软件开发过程中的重要文档,有助于清晰地表达系统的需求、结构和...
StarUML-v2.1.4,用例图,时序图画图工具,项目开发中常用的工具
StarUML(简称SU),是一种创建UML类图,生成类图和其他...StarUML是一个开源项目之一发展快、灵活、可扩展性强(zj),可绘制9款UML图:用例图、类图、序列图、状态图、活动图、通信图、构件图、部署图以及复合结构图等。
3. **时序图(Sequence Diagram)**:时序图主要用于展示对象之间交互的时间顺序,强调消息传递的顺序。在StarUML中,你可以轻松创建并调整消息的顺序,以展示复杂的交互流程。 4. **协作图(Collaboration Diagram)**...
替换staruml安装目录下的app.asar文件,重启软件即可 使用博文 :https://blog.csdn.net/m4330187/article/details/120272159
时序图:是UML中能表现出一个过程中各个详细步骤的模型图,过程可以理解为一个功能的执行过程。在分析代码的时候, 时序图能够清晰分析出代码执行流程, 非常有助于理解代码逻辑.
适用于Linux下的StarUML,版本v3.2.2,AppImage格式,本人亲手操刀,你懂的,打开即永久使用,下的文件是文本文件,里面有网盘下载地址,!
下载解压后,打开StarUML.exe,即可以根据具体设计开发需要,在不同需求场景切换到对于(diagram)图标视图窗口下进行绘图,如下图在时序图界面(Sequence Diagram窗口)
时序图和协作图(现在统称为通信图)则关注对象间的消息传递,强调时间顺序和交互行为。它们在分析和设计系统行为时尤其有用,特别是在多线程或分布式环境下的系统。 组件图展示了系统中可重用的物理组件,而包图则...
在智能停车系统中,时序图可以描绘从车辆进入、寻找停车位、支付费用到离开的过程,以及系统中的各个组件如入口闸机、收费系统、车位传感器等之间的通信关系。通过时序图,我们可以理解系统各部分如何协同工作,确保...
StarUML是一款强大的建模工具,它支持统一建模语言(UML)的多种图表,如用例图、类图、序列图、状态图等,是软件开发过程中的重要辅助工具。本使用手册将深入介绍如何有效利用StarUML进行模型设计与管理。 一、...
StarUML是一款强大的UML建模工具,能够帮助我们轻松创建和编辑这些图形,辅助我们进行系统设计和分析。 在提供的附件中,README.txt可能是对整个项目的简要介绍和使用说明,而“UML大作业”文件可能包含了上述提到...
做为一个android 工程师,画UML图,真是必须学习的,有时候,代码量大了,一个时序图,类图,就可以很容易看懂项目,这个是绿化版,百分百行,亲测