系统时序图

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

相关文章
|
14小时前
|
缓存 算法 Java
线程池
本文深入剖析了Java线程池的核心机制,涵盖ThreadPoolExecutor与ScheduledThreadPoolExecutor的实现原理,重点解析了线程复用、任务队列、调度策略及延时执行的底层逻辑,并介绍了Executors工具类和ThreadLocal的使用与设计思想。
线程池
|
13小时前
|
存储 JSON NoSQL
3-MongoDB常用命令
本文介绍MongoDB数据库操作,包括创建和删除数据库、集合的显式与隐式创建及删除,以及文档的增删改查。重点讲解文章评论数据存储至articledb库中的实际应用,涵盖批量插入、条件查询、分页排序等常用操作,帮助掌握MongoDB基本CRUD技能。
 3-MongoDB常用命令
|
14小时前
|
负载均衡 Java 应用服务中间件
微服务网关与配置中心 学习目标
本课程学习Spring Cloud Gateway网关的实现,掌握路由配置、负载均衡、内置过滤器(如StripPrefix)及全局过滤器的使用。重点包括自定义身份校验过滤器、JWT鉴权流程、微服务间用户信息传递,并结合Nacos实现服务发现与统一配置管理,完成前后端联调与权限控制。
15 0
微服务网关与配置中心 学习目标
|
17小时前
|
NoSQL Linux Shell
MongoDB单机部署
本文介绍MongoDB在Windows及Linux系统的安装启动方法,包括下载32/64位安装包、解压配置、命令行或配置文件方式启动服务,并通过mongo shell或Compass图形化工具连接数据库。同时提供版本选择建议、常见配置项说明、防火墙设置及服务启停操作,助你快速部署单机MongoDB环境。(238字)
|
15小时前
|
JSON 缓存 前端开发
什么是WebFlux
CORS(跨域资源共享)是W3C标准,允许浏览器向跨源服务器发起XMLHttpRequest请求,突破AJAX同源限制。浏览器自动处理CORS通信,开发者无需特殊编码。关键在于服务器需实现CORS接口。请求分为简单和非简单两类,后者会先发送OPTIONS预检请求。相比仅支持GET的JSONP,CORS功能更强大,兼容现代浏览器。
|
14小时前
|
SQL Nacos 数据库
工程介绍
本课程围绕微服务架构展开,涵盖Nacos配置中心、Feign远程调用及Gateway网关实践。通过doctor-station项目实战,完成配置热更新、开单限流、维护时间控制,实现服务解耦与请求路由,提升系统可维护性与安全性。(238字)
|
16小时前
|
XML Java 数据格式
Spring @Configuration 注解详解:用 Java 代码替代 XML 配置
`@Configuration` 是 Spring 实现 Java 配置的核心注解,替代传统 XML,通过 `@Bean` 注册 Bean,结合 `@Import`、`@ComponentScan` 等实现类型安全、可维护的配置方式,推动 Spring 应用现代化。
|
16小时前
|
SQL 运维 分布式计算
如何做好SQL质量监控
本文介绍如何通过CloudLens for SLS实现SQL质量监控,帮助用户全面掌握SQL使用情况。涵盖健康分、服务指标、运行明细、SQL Pattern分析及优化建议五大维度,助力识别性能瓶颈、优化资源使用,提升日志分析效率与治理能力。
 如何做好SQL质量监控
|
13小时前
|
SQL 数据库连接 数据库
Activity代码实现
本教程演示如何使用Activiti创建、部署并操作简单工作流。包括流程定义、启动实例、任务查询与完成,结合代码与数据库验证,实现审批流程自动化管理。
Activity代码实现
|
16小时前
|
运维 Devops 开发工具
生产环境缺陷管理
git-poison是一款基于go-git的生产环境缺陷管理工具,实现bug的分布式追溯与自动化卡点,有效避免多分支开发中的漏修、漏发问题,降低协同成本,提升发布安全性。
生产环境缺陷管理

热门文章

最新文章