时序图(Sequence Diagram)是显示对象之间交互的图,这些对象是按时间顺序排列的。顺序图中显示的是参与交互的对象及其对象之间消息交互的顺序。时序图中包括的建模元素主要有:角色(Actor)、对象(Object)、生命线(Lifeline)、控制焦点(Focus of control)/ 激活(Activation)、消息(Message)、组合片段(Combined Fragments)/交互片段(interaction fragment)。

  • 角色 ( Actor )

    用以表示和系统进行交互的参与者角色,不一定是人也可以是物或者系统。UML用例图中用一个小人来表示角色

  • 对象 ( Object )

    对象就是类的实例。UML用例图中用矩形框来表示对象。

  • 生命线 ( Lifeline )
    生命线代表对象在某一用例中的生命周期。UML用例图中用虚线来表示生命线。
  • 控制焦点 ( Focus of Control ) / 激活(Activation)
    控制焦点代表对象在某一用例过程中执行某一操作的时间。UML用例图中用方块来表示控制焦点。
  • 消息(Message)

    消息是角色和对象或者对象与对象之间的信息传递。消息分为三种:同步消息、异步消息、返回消息。

    (1) 同步消息(Synchronous Message):

    把信息传递给接受者后,停止活动,等待返回结果。使用(实线)

    (2) 异步消息(Asynchronous Message):
    把信息传递给接受者后,不用等待返回结果。可以直接开始下一个活动。类似于打电话的过程,拨通号码后,用户变不需要继续下一步的操作,只需等待连接。UML图表示如下:

    图示上与同步消息图示不同的是message的单箭头。

    双击message的剪头图,弹出属性对话框,选择Detail选项卡,将Control flow 下拉选项改成Asynchronous(异步),图示就会变成单箭头。

    (3) 返回消息(Return Message):

    代表从过程调用返回。UML图表示如下:
    使用虚线连接

    (4) 自关联消息(Self-Message):

    自关联消息表示方法的自身调用或者一个对象内的一个方法调用另外一个方法。UML图表示如下:

  • 组合片段(Combined Fragments)/交互片段(interaction fragment):
    UML图表示如下:

    中间方框用(Interaction fragment) 图标表示。可选择的组合有:

    alt:在一组行为中根据特定的条件选择某个交互;
    opt:表示一个可选的行为;
    break:提供了和编程语言中的break类拟的机制;
    par:支持交互片段的并发执行;
    seq:强迫交互按照特定的顺序执行;
    strict:明确定义了一组交互片段的执行顺序;
    neg:用来标志不应该发生的交互;
    region:标志在组合片段中先于其他交互片断发生的交互;
    ignore:明确定义了交互片段不应该响应的消息;
    consider:明确标志了应该被处理的消息
    assert:标志了在交互片段中作为事件唯一的合法继续者的操作数;
    loop:说明交互片段会被重复执行 

    (1)抉择(Alt):抉择用来表示多个消息序列下根据不同条件互斥的选择,类似于if...else,下图就是一个抉择的例子,用户到商店里购买一件商品,如果小于50件就可以购买成功,如果大于50件,就出现货品不足无法购买的情况,这是个比较粗糙的例子,不过对于解释抉择的组合片段还是很好理解的。

    (2)选项(Opt):表示一个可能存在又可能不存在的消息通信过程,例如上面购买操作,有可能用户会购买商品,也可能不购买商品,表示如下图:

    (3) 循环(Loop):表示该消息通信的过程多次根据条件重复执行,类似于for,如下图示例:

    (4)并行(Par):表示对象生命线中持续进行消息通信的部分,具体如下图:

    (5) 中断(break):用来表示序列中如果选择一个序列则要放弃其他序列的情况,类似于switch里的break,如下图:

    (6)强顺序(strict):多个操作片段必须按照顺序发生。下面就是一个典型的例子,做菜这个操作分为切菜和炒菜,这个流程是必须不可逆的,所以是强顺序。

    (7)弱顺序(Seq):多个操作片段在同一生命线上必须按照片段顺序发生,如果是不同的生命线则可以是并行发生,这个就不举实例了,基本表示方法和上面一样。

  • 一个电话拨号的时序图

PowerDesigner16 时序图的更多相关文章

  1. [UML]UML系列——时序图(顺序图)sequence diagram

    系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图Class [UML]UML系列——类 ...

  2. 使用Astah制作UML时序图

    Astah制作UML图--详解 时序图的制作 开篇语: 本文为光荣之路原创文章,欢迎转载,但请注明出处. 做测试的难免看到开发画出各种设计图,都很羡慕,比如: 帅么,漂亮么,其实我们测试人员也可以轻松 ...

  3. SPI总线协议及SPI时序图详解

    SPI,是英语Serial Peripheral Interface的缩写,顾名思义就是串行外围设备接口.SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚 ...

  4. GIT FLOW 时序图

    git flow sequence md link: git branching model master->master branch: use default branch Note rig ...

  5. [转载]UML时序图总结

    前言 在我的工作中,用的最多的就是时序图了.可能由于工作的原因,我也是最喜欢画时序图了,很清楚,很明了,什么时候发送什么消息,到达什么状态,一下子就展示在你的脑海里,对于消息驱动的程序来说,是再好不过 ...

  6. 看懂UML类图与时序图

    看懂UML类图和时序图 这里不会将UML的各种元素都提到,我只想讲讲类图中各个类之间的关系: 能看懂类图中各个类之间的线条.箭头代表什么意思后,也就足够应对 日常的工作和交流: 同时,我们应该能将类图 ...

  7. UML系列04之 UML时序图

    概要 本章对UML的时序图进行介绍,主要内容包括:时序图介绍时序图组成 转载请注明出处:http://www.cnblogs.com/skywang12345/p/3523355.html 时序图介绍 ...

  8. 使用网站websequencediagrams在线画时序图

    在线画时序图的网站:https://www.websequencediagrams.com/ 该网站提供拖拉图形和编写脚本代码2个方式来制作时序图,同时提供多种显示风格. 实例: 1.脚本代码: ti ...

  9. 安装StarUML 及使用时序图(Sequence Diagram)和用例图(use case diagram)

    时序图 用例图

随机推荐

  1. vue学习笔记之:为何data是一个方法

    vue学习笔记之:为何data是一个方法 在vue开发中,我们可以发现,data中的属性值是在function中return出来的.可为何data必须是一个函数呢?我们先看官方的解释: 当一个组件被定 ...

  2. Android游戏音效实现

    1. 游戏音效SoundPool 游戏中会根据不同的动作 , 产生各种音效 , 这些音效的特点是短暂(叫声,爆炸声可能持续不到一秒) , 重复(一个文件不断重复播放) , 并且同时播放(比如打怪时怪的 ...

  3. WPF+数据库+三层

    1.计算类 using System; using System.Collections.Generic; using System.Linq; using System.Text; namespac ...

  4. 什么是Processing

    Processing是一种计算机语言,以JAVA语法为基础,可转化成JAVA程序,不过在语法上简易许多.所有的原始代码及开发环境开放,主要用于艺术.影像.影音的设计与处理. 其次为什么要介绍这款软件呢 ...

  5. 详解实现Android中实现View滑动的几种方式

    注: 本文提到的所有三种滑动方式的完整demo:ScrollDemo 1. 关于View我们需要知道的 (1)什么是View? Android中的View类是所有UI控件的基类(Base class) ...

  6. 【week3】psp (技术随笔)

    本周psp: 随笔字数: 总计 累计代码行 (前两项为单元测试部分) 词频统计:87 四则运算:49 四人小组:39 175 随笔字数 (不包含代码字数) 词频统计:237 四则运算:125 四人小组 ...

  7. BZOJ4820 SDOI2017硬币游戏(概率期望+高斯消元+kmp)

    容易想到的做法是建出AC自动机,高斯消元.然而自动机上节点数量是nm的. 注意到我们要求的变量只有n个,考虑将其他不用求的节点合并为一个变量.这个变量即表示随机生成一个串,其不包含任何一个模板串的概率 ...

  8. P2613 【模板】有理数取余

    题目描述 给出一个有理数 $c=\frac{a}{b}$ ,求 c mod 19260817 的值. 输入输出格式 输入格式: 一共两行. 第一行,一个整数 aa .第二行,一个整数 bb . 输出格 ...

  9. 【转】C# Datatable排序与取前几行数据

    转自:http://www.cnblogs.com/linyechengwei/archive/2010/06/14/1758337.html http://blog.csdn.net/smartsm ...

  10. [洛谷P3979]遥远的国度

    题目大意:有一棵$n$个点的树,每个点有一个点权,有三种操作: $1\;x:$把根变成$x$ $2\;u\;v\;x:$把路径$u->v$上的点权改为$x$ $3\;x:$询问以$x$为根的子树 ...