UML定时图简介
UML(统一建模语言)定时图是交互图的一种特殊形式,用于展示对象在特定时间段内的行为。它们专注于时间约束和事件的顺序,因此在建模实时系统和性能分析方面特别有用。本教程将引导您了解UML定时图的基础知识,包括其目的、关键元素以及如何创建和解读它们。
UML定时图的目的
UML定时图在系统设计和分析中具有多个关键用途:
- 建模实时系统:它们对于设计时间因素至关重要的系统至关重要,例如嵌入式系统、通信协议和性能关键型应用。
- 分析时间约束:它们有助于理解并分析对象之间交互的时间特性,确保所有时间约束都得到满足。
- 性能分析:它们通过建模事件和交互的时间来评估系统的性能。
UML定时图的关键元素
生命线
生命线表示交互中的一个独立参与者,例如对象或参与者。它以一条水平条表示,展示该参与者随时间的存在。
状态或条件时间线
状态或条件时间线表示对象的状态或必须满足的条件。它以一条带有分段的水平条表示,展示不同时段内的不同状态或条件。
持续时间约束
持续时间约束指明条件必须满足的时间段。它以一条带有两条垂直线的水平条表示,分别表示持续时间的开始和结束。
时间约束
时间约束指明条件必须满足的具体时间点。它以一条与生命线在特定时间相交的垂直线表示。
销毁事件
销毁事件表示对象被销毁的时间点。它以生命线末端的“X”表示。
符号表示
UML定时图中的符号包括标签和注释,用于提供有关时间约束和条件的附加信息。
创建UML定时图
创建UML定时图的步骤
- 识别参与者:确定将参与交互的对象、参与者或实体。
- 定义生命线:绘制水平条来表示参与者的生命线。
- 添加状态或条件: 将生命线划分为多个段,以表示随时间变化的不同状态或条件。
- 指定持续时间约束: 添加带有垂直线的水平条,以表示必须满足条件的时间段。
- 指定时间约束: 添加与生命线相交的垂直线,以表示必须满足条件的具体时间点。
- 添加销毁事件: 在生命线末端放置一个“X”,以表示对象的销毁。
- 添加标签和注释: 添加标签和注释,以提供有关时间约束和条件的额外信息。
示例:Web交互时序图
目的
用于建模网络交互的时间特性,特别关注网络请求与响应周期的时间安排。

参与者
- 网络用户: 与网络进行交互的个人。
- 网络浏览器: 用于访问网络的浏览器。
- DNS解析器: 将域名解析为IP地址的服务器。
- 网络服务器: 托管网络内容的服务器。
时序图
- 网络用户的生命周期:
- 状态/条件:
- 空闲: 用户未主动与网络进行交互。
- URL: 用户在网页浏览器中输入一个URL。
- 等待: 用户正在等待网页加载。
- 查看: 用户正在查看网页。
- 状态/条件:
- 网页浏览器的生命线:
- 状态/条件:
- 空闲: 浏览器未积极处理请求。
- 处理中: 浏览器正在处理用户的输入或服务器的响应。
- 等待: 浏览器正在等待服务器的响应。
- 事件/刺激:
- 解析URL: 浏览器将URL解析为IP地址。
- HTTP请求: 浏览器向网页服务器发送HTTP请求。
- 显示页面: 浏览器将网页显示给用户。
- 时间约束:
- URL解析过程应在0到400毫秒之间完成。
- 在解析URL后50至200毫秒内应发送HTTP请求。
- 在接收到HTTP响应后100至500毫秒内应将页面展示给用户。
- 状态/条件:
- DNS解析器的生命线:
- 状态/条件:
- 空闲: DNS解析器未主动解析域名。
- 处理中: DNS解析器正在处理域名解析请求。
- 时间约束:
- DNS解析过程应在0到400毫秒之间完成。
- 状态/条件:
- Web服务器的生命线:
- 状态/条件:
- 等待: Web服务器正在等待传入的请求。
- 处理中: Web服务器正在处理传入的请求。
- 发送响应: Web服务器正在将响应发送回Web浏览器。
- 时间约束:
- Web服务器应在收到请求后的200至800毫秒内发送响应。
- 状态/条件:
交互与时间约束
- Web用户到Web浏览器:
- 用户在Web浏览器中输入URL,从“空闲”状态转换到“URL”状态。
- Web浏览器解析URL,这应在0到400毫秒之间完成。
- Web浏览器到DNS解析器:
- Web浏览器向DNS解析器发送同步消息,以将URL解析为IP地址。
- DNS解析器处理请求,这应该在0到400毫秒之间完成。
- Web浏览器到Web服务器:
- Web浏览器向Web服务器发送HTTP请求,这应在解析URL后的50至200毫秒内发送。
- Web服务器处理请求,并将响应发送回Web浏览器。
- Web服务器应在收到请求后的200至800毫秒内发送响应。
- Web浏览器到Web用户:
- Web浏览器将网页显示给用户,这应在接收到HTTP响应后的100至500毫秒内发生。
- 用户从“等待”状态转变为“查看”网页。
解读UML时序图
理解生命线
- 水平条:表示参与者在时间上的存在。
- 段:表示随时间变化的不同状态或条件。
理解持续时间约束
- 带垂直线的水平条:表示必须满足条件的时间段。
- 起始点和结束点:表示持续时间的起始和结束。
理解时间约束
- 垂直线:表示必须满足条件的具体时间点。
- 与生命线的交点:表示生命线上的具体时间。
理解销毁事件
- “X”符号:表示对象的销毁。
- 生命线的结束: 销毁事件被放置在生命线的末端。
理解符号
- 标签和注释: 提供有关时间约束和条件的附加信息。
- 附加信息: 包括任何有助于理解交互时间方面的相关信息。
结论
UML时序图对于建模和分析对象之间交互的时间方面至关重要。通过理解关键要素并遵循创建和解读它们的步骤,您可以有效地使用时序图来推理时间并建模实时系统。
参考文献
- 什么是时序图?
- 12. 时序图 – Visual Paradigm 社区圈
- Visual Paradigm 社区圈. (2018年5月11日). 12. 时序图 – Visual Paradigm 社区圈 2.
- 如何绘制时序图?
- 时间约束时序图 – UML – 讨论 Visual Paradigm
- Visual Paradigm 论坛. (2019年7月19日). 时间约束时序图 – UML – 讨论 Visual Paradigm .
- Visual Paradigm 中的 UML 图简介 – ArchiMetric
- ArchiMetric. (2024年8月23日). Visual Paradigm 中的 UML 图表入门 – ArchiMetric .
- 时序图,UML 图表示例:状态/条件时间线 – Visual Paradigm 社区圈
- Visual Paradigm 社区圈。(2018年9月24日)时序图,UML 图表示例:状态/条件时间线 – Visual Paradigm 社区圈 .
- UML 实用指南 – 了解 UML 建模所需的一切
- Visual Paradigm。(未注明日期)UML 实用指南 – 了解 UML 建模所需的一切 .
- 时序图 – UML 2 图表 – UML 建模工具
- Visual Paradigm。(未注明日期)时序图 – UML 2 图表 – UML 建模工具 .
- 时序图 – Visual Paradigm 社区圈
- Visual Paradigm 社区圈。(未注明日期)时序图 – Visual Paradigm 社区圈 .