UML基本使用--时序图

作者: Bugfix | 来源:发表于2017-07-11 09:55 被阅读508次

综述

时序图是一种强调时间顺序的对象交互图(1.是描述对象间交互的图 2.这种图是强调时间顺序的),换句话说就是描述谁和谁先做什么,然后再做什么的图
在时序图中,首先把参与交互的对象放在图的上方,沿X轴方向排列,通常把发起交互的对象放在左边,较下级的对象依次放在右边,然后把这些对象发送和接受的消息沿Y轴方向按时间顺序从上到下放置。这样就提供了控制流随着时间推移的清晰的可视化轨迹。

推荐工具:依然是StarUML

时序图的基本元素

  • 1.对象(Object)

【定义】:表示的是时序图中的参与者
【描述方式】:在外面画一个矩形,矩形内部的描述文字有三种格式:1.对象名: 类名 2. 类名 3.对象名。
【备注】大多数情况下,在描述上并没有将对象单独拿出来作为一种基本元素,都是将对象放在生命线(后面会介绍)中一起提到

UMLSequenceObject
  • 2.生命线(Lifelines)

【定义】:每个对象的底部中心的位置都带有生命线。生命线是一个时间线,从时序图的顶部一直延伸到底部,长度当然由你的业务来决定啦,生命线表示了对象存在的时间
【描述方式】:表示为从对象图标向下延伸的一条虚线

UMLSequenceLifeLine
  • 3.控制焦点(Focus Of Control)

【定义】:用来表示时序图中对象执行某个操作的一段时间,在很多文章里面将其形象的理解为程序函数 { } 中的内容。
【描述方式】:用一个细长的矩形狂表示,顶端与收到的消息产生时间对齐

UMLSequenceFocusOfControl
  • 4.消息(Messages)

【定义】:A 向 B 发送消息message1,其实就是叫 B 去调用 message1这个方法。消息一般分为同步消息,异步消息和返回消息,自关联消息(也就是自己调用自己的方法)
【描述方式】:同步消息用带实心箭头的直线表示,异步消息用带普通箭头的直线表示,返回消息用虚线普通箭头表示,返回消息也可以区分同步和异步,在StarUML中可以自行修改。
【备注】:同步和异步的区分一方面是按照函数本身的执行方式来区别,另一方面是按照实际做的业务本身来区别。举个栗子比如说下载素材,下载这件事情本来是异步去执行,但是有可能这个具体的函数看起来是同步执行的,这个时候就看你怎么选择了。

UMLSequenceMessage
  • 5.创建对象

【定义】:创建对象也算是消息的一种,通过发送消息的方式创建对象。
【描述方式】:在时序图的图形表示中,和其他对象不一样的是,其他对象通常位于整个时序图的顶部,而被创建的对象则位于图的中间部位。
【备注】:创建在使用中比较少看到,基本都是最开始就把所有对象创建好,然后画时序图,为了以后能看懂别的时序图,这里特地提出。

UMLSequenceCreateObject
  • 6.销毁对象

【定义】:创建对象也算是消息的一种,通过发送消息的方式销毁对象。
【描述方式】:描述方式没有什么变化,就是发送消息给对象,只是在对象的生命线中会添加一个”X“,来进行标示。
【备注】:删除对象一般在时序图中也不是很常见,如果没有要特别注意的删除事件,一般都是不写的。

UMLSequenceDeallocObject
  • 7.结束点

【定义】:标记整个业务结束的位置
【描述方式】:实心黑圆圈

UMLSequenceEndPoint

来个示例吧

以AR素材下载为例,简单讲述进入VC之后自动下载到最后刷新界面的时序图

UMLSequenceDemo

参考文章

https://www.ibm.com/developerworks/rational/library/3101.html
http://www.codemag.com/Article/0203081
http://www.sparxsystems.cn/resources/uml2_tutorial/uml2_sequencediagram.html
http://www.cleey.com/blog/single/id/873.html

相关文章

  • UML基本使用--时序图

    综述 时序图是一种强调时间顺序的对象交互图(1.是描述对象间交互的图 2.这种图是强调时间顺序的),换句话说就是描...

  • UML 时序图 Sequence diagram

    UML 时序图 Sequence diagram [toc] 时序图 时序图,又名序列图,循环图,是一种UML交互...

  • UML建模(五)--时序图

    UML建模(五)--时序图 1、概述 1.1 时序图的定义 在UML 的表示中,时序图将交互关系表示为一个二维图。...

  • uml

    看懂UML类图和时序图

  • 设计模式

    设计模式笔记 学会读图 UML我要看懂图UML类图 时序图在线绘制在线绘制时序图工具集合 Builder模式 bu...

  • markdown的流程图、时序图、甘特图画法

    推荐使用mermaid,支持流程图、时序图、甘特图的绘制 UML流程图 语法参考:https://github.c...

  • UML总结

    uml概述 uml形式 类图 时序图 类图是展示软件项目中,类与类关系的逻辑图。时序图展示的是软件的方法调用流程。...

  • UML 时序图

    https://www.cnblogs.com/wolf-sun/p/UML-Sequence-diagram.html

  • UML时序图

    UML时序图 时序图(Sequence Diagram)是显示对象之间交互的图,这些对象是按时间顺序排列的。顺序图...

  • UML时序图

    时序图(Sequence Diagram)是显示对象之间交互的图,这些对象是按时间顺序排列的。顺序图中显示的是参与...

网友评论

  • 64c384f03e18:3.控制焦点(Focus Of Control)中的例图是不是错了。同步消息(标为实箭头)完成传输,并隐含一条返回消息。所以下面不能再画一条返回消息了。
    我是小白,不知道说的对不对

本文标题:UML基本使用--时序图

本文链接:https://www.haomeiwen.com/subject/zypphxtx.html