系统时序图

简介: 时序图(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.时序图示例




相关文章
|
1天前
|
SQL 运维 分布式计算
如何做好SQL质量监控
SLS推出用户级SQL质量监控功能,集成于CloudLens for SLS,提供健康分、服务指标、运行明细、SQL Pattern分析及优化建议五大维度,助力用户全面掌握SQL使用情况,提升日志分析效率与治理能力。
|
1天前
|
jenkins Java 持续交付
SpringBoot集成Jenkins
本文介绍在阿里云CentOS系统上安装配置Jenkins的完整流程,涵盖环境准备(JDK1.8)、Jenkins安装与启动、端口及用户配置、Git与Maven集成,并包含插件安装与初始设置步骤,助力实现持续集成部署。
 SpringBoot集成Jenkins
|
1天前
|
缓存 开发工具 git
QLExpress使用及源码分析
基于阿里巴巴QLExpress规则引擎,通过实体构建、接口定义与脚本编写(如user.yaml),实现灵活的业务规则配置。支持AST语法树解析、上下文赋值与缓存机制,适用于动态表达式执行与规则计算场景。
|
1天前
|
Java 测试技术 Linux
生产环境发布管理
本文介绍大型团队中多环境自动化发布流程,涵盖DEV、TEST、PRE、PROD各环境职责,结合CI/CD平台实现分支管理、一键部署与日志追踪,提升发布效率与系统稳定性。
生产环境发布管理
|
1天前
|
消息中间件 算法 网络协议
7.选举机制源码分析
本文深入解析了ZooKeeper中FastLeaderElection的源码实现,涵盖其核心类结构、选举流程及关键函数。重点分析了Notification与ToSend消息机制、WorkerReceiver和WorkerSender的通信过程,并详细阐述了lookForLeader等核心方法如何通过逻辑时钟、选票PK和过半判定完成Leader选举。
 7.选举机制源码分析
|
1天前
|
Web App开发 Dubbo 关系型数据库
3.Soul网关接入与验证
本章节在前两章基础上引入Soul网关,讲解如何将Provider和Consumer应用接入Soul。通过添加依赖、使用@SoulSpringMvcClient注解及配置文件实现服务注册,并验证网关路由与通信功能,完成Dubbo与HTTP服务的统一管理。
 3.Soul网关接入与验证
|
1天前
|
Dubbo Java 应用服务中间件
2.搭建dubbo-zk应用
基于Spring Boot 2.2.2与Dubbo 2.0.0,构建ZooKeeper注册中心的分布式服务架构,实现Provider与Consumer模块解耦通信,完成接口远程调用验证。
 2.搭建dubbo-zk应用
|
1天前
|
Dubbo Java 应用服务中间件
1.入门运行Soul
Soul 是基于 WebFlux 构建的响应式 API 网关,支持 Dubbo、Spring Cloud 等多种协议,具备高性能、异步、跨语言特性。提供插件化架构,支持热插拔、动态配置、A/B 测试与蓝绿发布,集成鉴权、限流、熔断等丰富插件,适用于微服务网关场景。
 1.入门运行Soul
|
1天前
|
Java 数据库连接 调度
xxljob执行源码分析
本文深入解析XXL-JOB分布式任务调度框架源码,涵盖架构设计、核心执行流程与关键线程池机制。内容包括任务触发、注册、失败重试、日志报告及时间轮调度原理,结合带中文注释的源码包与分析导图,全面剖析其高性能设计实现。
 xxljob执行源码分析
|
1天前
|
存储 算法 BI
xxljob本地运行
本文介绍XXL-JOB分布式任务调度框架的本地部署与使用流程,涵盖源码获取、服务端数据库初始化、配置修改、服务启动及客户端注册执行器等步骤,并演示如何配置调度任务、选择路由策略及测试执行效果,帮助快速上手使用。
 xxljob本地运行