简介

时序图(Sequence Diagrams)描述对象之间消息的发送顺序,强调时间顺序。时序图是一个二维图,横轴表示对象,纵轴表示时间,消息在各对象之间横向传递,按照时间顺序纵向排列。用箭头表示消息,用竖虚线表示对象生命线。

时序图的作用

  • 展示对象之间交互的顺序。将交互行为建模为消息传递,通过描述消息如何在对象间发送和接收来动态展示对象之间的交互
  • 相对于其他UML图,时序图更强调交互的时间顺序。
  • 可以直观地描述并发进程。

时序图组成元素

时序图组成元素主要包括:

  • 角色(Actor)
  • 对象(Object)
  • 生命线(Lifeline)
  • 控制焦点(Focus of Control)
  • 消息(Message)

角色(Actor)

系统角色,可以是人、机器、其他系统、子系统

对象(Object)

对象的三种命名方式:

  • 对象:类
  • :类
  • 对象

对象的左右顺序并不重要,但通常要遵循以下两个原则:

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

生命线(Lifeline)

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

控制焦点(Focus of Control)

又被称为激化期,表示时间段的符号,表示在这个时间段内,对象将执行相应的操作。可以理解为Java中一对大括号中的内容。

消息(Message)

  • 同步消息 Synchronous Message
  • 异步消息 Asynchronous Message
  • 返回消息 Return Message

时序组合片段 Combined Fragments

组合片段(Combined Fragments)用来解决交互执行的条件和方式,它允许在时序图中直接表示逻辑组件,用于通过指定条件或子进程的应用区域,为任何生命线的任何部分定义特殊条件和子进程。

类型 名称 说明
Alt 抉择 包含一个片段列表,这些片段包含备选消息序列。可以在每个片段中都设置一个临界来指示该片段可以运行的条件。else的临界指示其他任何临界都不为true时应运行的片段。如果所有临界都为false并且没有else,则不执行任何片段
Opt 选项 包含一个可能发生或可能不发生的序列。可以在临界中指定序列发生的条件
Loop 循环 片段重复一定次数。可以在临界中指示片段重复的条件。Loop组合片段具有Min和Max属性,它们指示片段可以重复的最小和最大次数。默认值是无限制
Break 中断 如果执行此片段,则放弃序列的其余部分。可以使用临界来指示发生中断的条件
Par 并行 并行处理。片段中的事件可以交错
Critical 关键 用在Par或Seq片段中,指示此片段中的消息不得与其他消息交错
Seq 弱顺序 有两个或更多操作数片段。涉及同一生命线的消息必须按片段的顺序发生。如果消息涉及的生命线不同,则来自不同片段的消息可能会并行交错
Strict 强顺序 有两个或更多操作数片段。这些片段必须按给定顺序发生
Consider 考虑 指定此片段描述的消息列表。其他消息可发生在运行的系统中,但对此描述来说意义不大
Ignore 忽略 指定此片段未描述的消息列表。这些消息可发生在运行的系统中,但对此描述来说意义不大。在Message属性中键入该列表
Assert 断言 操作数片段指定唯一有效的序列。通常用在Consider或Ignore片段中
Neg 否定 此片段中显示的序列不得发生。通常用在Consider或Ignore片段中

抉择(Alt)

选项(Opt)

循环(Loop)

并行(Par)

时序图 Sequence Diagrams相关推荐

  1. UML时序图(Sequence Diagram)

    什么是时序图 时序图(Sequence Diagram),又名序列图.循序图,是一种UML交互图.它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作. 让我们来看一看visio2016对时 ...

  2. UML时序图(Sequence Diagram)学习笔记

    UML时序图(Sequence Diagram)学习笔记 原创 SuperMan-zhang 最后发布于2018-07-04 14:37:25 阅读数 94844 收藏 发布于2018-07-04 1 ...

  3. 【工具】-10 UML时序图(Sequence Diagram)学习笔记

    为什么要绘制时序图? 我们编码的时候,知道有的用例的业务逻辑按照比较确定的时间先后顺序进行展开.这时候,我们就需要知道我们设计的系统中的不同类之间传递消息(可以认为是不同对象函数间的调用)要按照怎么样 ...

  4. UML时序图(Sequence Diagram)讲解

    什么是时序图 时序图(Sequence Diagram),又名序列图.循序图,是一种UML交互图.它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作. 时序图的元素 我们在画时序图时会涉及 ...

  5. 程序时序图 Sequence Diagram(序列图) UML图(数据流程图)的绘制

    参考视频教程:1.时序图的绘制 描述数据的流动 上面教程看起来还是有点懵逼 来看百度百科吧! 时序图中包括如下元素:角色,对象,生命线,控制焦点和消息. 1.角色(Actor) 系统角色,可以是人或者 ...

  6. 【UML】时序图Sequence diagram(交互图)(转)

    前言 UML时序图是UML动态图之一,它是强调时间顺序的交互图. 定义 时序图是显示按时间顺序排列的对象之间交互的图. 组成元素 对象 包括三种命名方式:第一种方式包括对象名和类名:第二中方式只显示类 ...

  7. UML 顺序图(时序图) sequence diagram

    1. 什么是顺序图 是强调消息时间顺序的交互图.时序图描述类系统中类和类之间的交互,它将这些交互建模成消息交换.时序图是一个模型,用于描述对象间如何随着时间在某些行为方面进行协作.(强调的是消息的时间 ...

  8. java时序图工具_快速学习时序图:时序图简介、画法及实例

    点击上方☝Java编程技术乐园,轻松关注!及时获取有趣有料的技术文章 做一个积极的人 编码.改bug.提升自己 我有一个乐园,面向编程,春暖花开! 一. 什么是时序图? 时序图(Sequence Di ...

  9. 机械动作时序图怎么画_时序图怎么画步骤教程_时序图用什么工具画_时序图的作用是什么...

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

最新文章

  1. Windows+Nginx+IIS做图片分布式存储详细步骤
  2. python学习音频-Python学习笔记--音频处理
  3. golang中map并发读写问题及解决方法
  4. Sql Server之旅——第十三站 深入的探讨锁机制
  5. 文件I0通用的IO模型
  6. 这可能是新手最容易入门的JVM讲解(不过是一场恋爱)
  7. 拓端tecdat|互联网行业各大岗位分析,全是干货,不看你就OUT了
  8. ANSYS18.2安装教程
  9. mysql proxy maxscale_maxscale参数配置
  10. 电脑桌面便签怎么编辑修改便签内容?
  11. 中国房地产总市值与GDP的比例
  12. 计算机休眠下睡眠的不同点是什么,电脑休眠和睡眠的区别
  13. linux wine编译安装目录,wine32和wine64共存编译安装方法
  14. Codeforce 1296 C. Yet Another Walking Robot
  15. QQ跳转浏览器php代码,QQ微信域名预防封禁强制跳转至浏览器打开PHP源代码下载...
  16. 将一个Vue项目跑起来
  17. 2021腾讯犀牛鸟校园布道师养成计划丨百校同行
  18. 2014年红帽高峰论坛随笔
  19. 图像处理基础之颜色空间
  20. 微信小程序-组件样式覆盖

热门文章

  1. css-loader 版本号,Webpack中css-loader和less-loader的使用教程
  2. random.RandomState()
  3. PHP-大转盘礼包概率
  4. 朴素贝叶斯—印第安人
  5. 问了ChatGPT几个硬件问题
  6. 对安全研究人员和渗透测试人员有用的Firefox 插件
  7. 初学者用js是怎么敲九九乘法表的
  8. 时间序列(五): 大杀器: 循环神经网络
  9. 保护云安全的7个安全锦囊
  10. 大数据安全: Hadoop安全模型的演进