系统时序图

简介: 时序图(Sequence Diagram)是UML中描述对象间消息传递时间顺序的交互图。横轴为对象,纵轴为时间,通过生命线、控制焦点和消息等元素,直观展示系统动态协作过程,强调交互的时间顺序,适用于建模并发行为与方法调用流程。

1.什么是时序图?

时序图(Sequence Diagram),亦称为序列图、循序图或顺序图,是一种UML交互图。它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。时序图是一个二维图,横轴表示对象,纵轴表示时间,消息在各对象之间横向传递,依照时间顺序纵向排列。

2.时序图的作用是什么?

1、展示对象之间交互的顺序。将交互行为建模为消息传递,通过描述消息是如何在对象间发送和接收的来动态展示对象之间的交互;

2、相对于其他UML图,时序图更强调交互的时间顺序;

3、可以直观的描述并发进程。

3.组成元素有哪些?

1. 角色(Actor)

系统角色,可以是人、机器、其他系统、子系统;在时序图中用表示。

2. 对象(Object)

(1)对象的三种命名方式

第一种方式包括对象名和类名,例如:直播课时:课时,在时序图中,用“对象:类”表示;

第二种方式只显示类名,即表示它是一个匿名对象,例如: :课程;在时序图中,用“:类”表示;

第三种方式只显示对象名不显示类名,例如:讲师;在时序图中,用“对象”表示。

(2)命名方式的选择

三种命名方式均可,哪种最容易让阅读该时序图的人理解,就选择哪种。

(3)对象的排列顺序

对象的左右顺序并不重要,但是为了作图清晰整洁,通常应遵循以下两个原则:

①. 把交互频繁的对象尽可能的靠拢;
②. 把初始化整个交互活动的对象放置在最左端。

3. 生命线(Lifeline)

在时序图中表示为从对象图标向下延伸的一条虚线,表示对象存在的时间。

4. 控制焦点(Focus of Control)

又称为激活期,表示时间段的符号,在这个时间段内对象将执行相应的操作。它可以被理解成C语言语义中一对花括号{ }中的内容;用小矩形表示。

5. 消息(Message)

消息一般分为同步消息(Synchronous Message),异步消息(Asynchronous Message)和返回消息(Return Message)。

消息的发送者把控制传递给消息的接收者,然后停止活动,等待消息的接收者放弃或者返回控制。用来表示同步的意义;

消息发送者通过消息把信号传递给消息的接收者,然后继续自己的活动,不等待接受者返回消息或者控制。异步消息的接收者和发送者是并发工作的。

返回消息表示从过程调用返回。

6. 自关联消息

表示方法的自身调用或者一个对象内的一个方法调用另外一个方法

4.时序图示例

相关文章
|
传感器 机器学习/深度学习 自动驾驶
无人驾驶中常用的37个数据集以及每个数据集的亮点
我们在写论文的时候,经常会用到数据集.以下是我的一些整理.
|
8月前
|
XML Java 数据格式
Spring @Configuration 注解详解:用 Java 代码替代 XML 配置
`@Configuration` 是 Spring 实现 Java 配置的核心注解,替代传统 XML,通过 `@Bean` 注册 Bean,结合 `@Import`、`@ComponentScan` 等实现类型安全、可维护的配置方式,推动 Spring 应用现代化。
|
11月前
|
人工智能 自然语言处理 IDE
模型微调不再被代码难住!PAI和Qwen3-Coder加速AI开发新体验
通义千问 AI 编程大模型 Qwen3-Coder 正式开源,阿里云人工智能平台 PAI 支持云上一键部署 Qwen3-Coder 模型,并可在交互式建模环境中使用 Qwen3-Coder 模型。
1507 109
|
Ubuntu 安全 Linux
从旧到新:全面升级 Ubuntu 系统指南
为保障新装系统的安全,建议尽早创建快照。**利用VMware快照功能保障系统安全并方便恢复。**在相应位置悬停鼠标,即可查看详细信息。选择左侧的选项,为该虚拟机拍摄快照,并在拍摄快照的过程中,关闭所有正在运行的软件以确保备份过程迅速完成。
|
7月前
|
人工智能 前端开发 API
智能体来了:从0到1:真正的第一步,不是调用API
本文厘清智能体本质:它不是大模型本身,而是以LLM为中枢、具备感知、规划、记忆与工具调用的闭环系统。强调“真正第一步”是构建可失败、可反馈的任务工作流,而非堆砌提示词;主张从垂直场景出发,以业务逻辑为核心,借力平台化工具落地。
385 0
|
8月前
|
Arthas 存储 运维
记Arthas实现一次CPU排查与代码热更新
本文介绍如何使用Arthas排查Java应用CPU占用过高问题,通过thread、watch、jad等指令定位线程阻塞与异常代码,并实现无需重启的热更新修复,结合profile生成火焰图进行性能分析,提升线上问题处理效率。
记Arthas实现一次CPU排查与代码热更新
|
8月前
|
Arthas 监控 Java
下载安装
Arthas 是一款Java诊断工具,使用前需确保服务器已启动Java应用、安装JDK并可访问公网。通过下载 arthas-boot.jar 并启动,可连接目标Java进程进行实时监控与问题排查,支持多进程选择,操作简单高效。
下载安装
|
数据采集 人工智能 监控
探讨 AI 驱动自适应数据采集技术
在当今互联网环境下,网页结构动态变化日益复杂,传统数据采集技术面临巨大挑战。本文探讨了基于AI算法的自适应数据采集方法,结合爬虫代理、Cookie与User-Agent设置等关键技术,应对动态页面变更。通过Python示例代码,展示如何稳定抓取目标网站数据,并分析该技术的优势、挑战及实际应用注意事项,为未来数据采集提供了新思路。
578 44
|
监控 Java 数据库
Java程序如何进行不停机更新?
Java程序如何进行不停机更新?
946 1
|
存储 安全 物联网
LoRa技术在物联网领域的安全性挑战与应对策略分享
LoRa技术在物联网中虽有广泛应用潜力,但其安全问题不容忽视。文章指出,LoRa网络的安全隐患主要涉及密钥管理、伪造报文、恶意拥塞及终端安全。建议加强密钥加密、分发机制,实施报文认证,限制设备发送速率,强化终端硬件安全及软件保护,以应对各种攻击,确保物联网系统的安全与稳定。
545 5