系统时序图

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


相关文章
|
8月前
|
XML 算法 安全
详解RAG五种分块策略,技术原理、优劣对比与场景选型之道
RAG通过检索与生成结合,提升大模型在企业场景中的准确性与可控性。分块策略是其核心,直接影响检索效率与回答质量。本文系统解析固定大小、语义、递归、基于结构和LLM的五种分块方法,对比优缺点及适用场景,并探讨RAG在知识关联、多模态理解等方面的前沿挑战与优化路径。
564 0
详解RAG五种分块策略,技术原理、优劣对比与场景选型之道
|
12月前
|
算法 Java C语言
汉诺塔问题
汉诺塔问题源自印度古老传说,涉及将一组圆盘从一根柱子移动到另一根,遵循特定规则。文章详细介绍了该问题的背景、解决思路以及如何使用分治算法实现,同时提供了C语言、Java和Python的代码示例。
761 0
|
7月前
|
Oracle 关系型数据库 MySQL
蓝易云:比较Oracle和MySQL的语法差异。
在使用Oracle和MySQL时,数据库设计、查询优化、以及日常管理的方式会因为这些差异而有不同的考虑和应用策略。因此,开发人员和数据库管理员必须了解各自数据库的特性和语法差异,以便更有效地利用数据库资源。适应这些语法和功能上的差异对于维护跨数据库平台应用至关重要。
289 5
|
8月前
|
机器学习/深度学习 人工智能 自然语言处理
大模型专业名词解释手册
本文系统介绍了大语言模型(LLM)的核心概念、训练方法、优化技术、应用模式及伦理问题,涵盖Transformer架构、注意力机制、预训练与微调、提示工程、模型压缩、安全对齐等关键技术术语,全面解析大模型的工作原理与发展挑战,助力深入理解生成式AI的技术脉络与未来方向。
859 0
|
7月前
|
机器学习/深度学习 人工智能 自然语言处理
复旦大学×阿里云产学合作协同育人合作案例
复旦大学联合阿里云开展“天池AI案例100开发”项目,赵卫东团队依托产业级平台构建“理论-实训-实战”教学新体系,开发4大综合性AI案例,覆盖图像识别、自然语言处理等方向。通过MOOC、教材、师资培训多渠道辐射全国,累计惠及超13万学习者,形成可复制的产教融合示范范式,推动人工智能人才培养与产业需求无缝对接。(238字)
576 5
|
8月前
|
人工智能 自然语言处理 API
全面认识MCP:大模型连接真实世界的“USB-C接口”
MCP(模型上下文协议)是Anthropic推出的开放标准,旨在打通大模型与外部工具、数据源的连接壁垒,被誉为AI时代的“USB-C接口”。它通过统一的协议规范,实现AI智能体对各类工具的即插即用,简化开发流程,提升任务执行效率,推动AI应用向自动化、生态化演进。
684 0
全面认识MCP:大模型连接真实世界的“USB-C接口”
|
8月前
|
消息中间件 人工智能 NoSQL
RocketMQ:A2A协议实现多智能体优化
Apache RocketMQ推出专为AI场景设计的轻量级通信模型LiteTopic,通过百万级队列支持海量会话,并结合A2A协议与AgentScope框架,实现多智能体高效、可靠的异步协作,重塑企业级AI应用通信架构。
273 0
RocketMQ:A2A协议实现多智能体优化
|
8月前
|
负载均衡 算法 Java
5-微服务篇
本文详解SpringBoot自动装配原理、启动流程、核心注解@SpringBootApplication组成,以及常用起步依赖、配置文件加载顺序。涵盖SpringBoot运行方式、跨域解决方案,结合SpringCloud介绍五大组件、微服务通信、注册发现、负载均衡策略及自定义方法。同时分享项目中限流、熔断、降级、异常处理等实战经验,全面解析微服务架构关键技术实现。
281 0
|
存储 安全 数据可视化
如何开发人事管理系统中的薪酬管理板块?(附架构图+流程图+代码参考)
本文深入解析了企业薪酬管理模块的开发与实现,涵盖模块概述、核心功能、业务流程及开发技巧。通过实际代码示例,帮助开发人员构建高效、灵活的薪酬管理系统,提升企业人事管理效率与数据准确性。