系统时序图

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

相关文章
|
域名解析 网络协议 关系型数据库
tcp和udp的区别是什么
TCP和UDP是互联网协议中的传输层协议。TCP是面向连接的,通过三次握手建立可靠连接,提供数据顺序和可靠性保证,适用于HTTP、FTP等需要保证数据完整性的应用。UDP则是无连接的,数据报独立发送,传输速度快但不保证可靠性,常用于实时通信、流媒体和DNS解析等对速度要求高的场景。根据应用需求选择合适的协议至关重要。
tcp和udp的区别是什么
|
9月前
|
uml C语言
系统时序图
时序图(Sequence Diagram)是UML中描述对象间消息传递时间顺序的交互图。横轴为对象,纵轴为时间,通过生命线、控制焦点和消息等元素,直观展现系统动态协作过程,强调交互的时间顺序与并发行为,常用于分析和设计系统逻辑。
|
监控 前端开发 Java
错误码如何设计才合理?
对于错误码的设计,不同的开发团队有不同的风格习惯。本文分享阿里文娱技术专家长统对于错误码的看法,希望从错误码使用的不同场景讨论得到一个合理的错误码规约,得到一个面向日志错误码标准和一个面向外部传递的错误码标准。
13231 3
错误码如何设计才合理?
|
监控 前端开发 JavaScript
如何开发一套工程项目部管理系统?(附架构图+流程图+代码参考)
工程项目部管理系统通过信息化手段整合进度、资源、人员、财务及风险管理,提升项目执行效率与决策质量。系统涵盖功能设计、业务流程、开发技巧及实现效果,助力企业构建高效、低风险的管理平台,实现项目全流程监控与优化。
|
缓存 云计算
这个夏天,追光动画在阿里云上“绘出”《长安三万里》
追光动画已和阿里云合作多年,从《阿唐奇遇》到《白蛇2:青蛇劫起》、《新神榜:杨戬》和这次的《长安三万里》等。
这个夏天,追光动画在阿里云上“绘出”《长安三万里》
|
Java 关系型数据库 BI
ES 中时间日期类型 “yyyy-MM-dd HH:mm:ss” 的完全避坑指南
ES 中时间日期类型 “yyyy-MM-dd HH:mm:ss” 的完全避坑指南
ES 中时间日期类型 “yyyy-MM-dd HH:mm:ss” 的完全避坑指南
|
XML Java 数据格式
使用完全注解的方式进行AOP功能实现(@Aspect+@Configuration+@EnableAspectJAutoProxy+@ComponentScan)
本文介绍了如何使用Spring框架的注解方式实现AOP(面向切面编程)。当目标对象没有实现接口时,Spring会自动采用CGLIB库进行动态代理。文中详细解释了常用的AOP注解,如`@Aspect`、`@Pointcut`、`@Before`等,并提供了完整的示例代码,包括业务逻辑类`User`、配置类`SpringConfiguration`、切面类`LoggingAspect`以及测试类`TestAnnotationConfig`。通过这些示例,展示了如何在方法执行前后添加日志记录等切面逻辑。
1637 2
使用完全注解的方式进行AOP功能实现(@Aspect+@Configuration+@EnableAspectJAutoProxy+@ComponentScan)
Axure 多平台自适应
Axure 多平台自适应
609 0
|
网络协议 前端开发 数据安全/隐私保护
一文搞懂OSI参考模型与TCP/IP
一文搞懂OSI参考模型与TCP/IP
3074 0