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

角色

  系统角色,可以是人、及其甚至其他的系统或者子系统。

对象

  对象包括三种命名方式:

    第一种方式包括对象名和类名;

    第二中方式只显示类名不显示对象名,即表示他是一个匿名对象;

    第三种方式只显示对象名不显示类名。

生命线

  生命线在顺序图中表示为从对象图标向下延伸的一条虚线,表示对象存在的时间。

控制焦点

  控制焦点是顺序图中表示时间段的符号,在这个时间段内对象将执行相应的操作。用小矩形表示。

消息

  消息一般分为同步消息(Synchronous Message),异步消息(Asynchronous Message)和返回消息(Return Message)。

    同步消息:消息的发送者把控制传递给消息的接收者,然后停止活动,等待消息的接收者放弃或者返回控制。用来表示同步的意义。

    异步消息:消息发送者通过消息把信号传递给消息的接收者,然后继续自己的活动,不等待接受者返回消息或者控制。异步消息的接收者和发送者是并发工作的。

    返回消息:返回消息表示从过程调用返回。

    

自关联消息

  表示方法的自身调用或者一个对象内的一个方法调用另外一个方法。以一个半闭合的长方形+下方实心剪头表示。

  UML时序图组合片段简要说明 :

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

例如:并行:  

            

例如:循环

          

UML图之时序图的更多相关文章

  1. 看懂UML类图与时序图

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

  2. 设计模式——1.概述&UML类图和时序图

    声明:本博客设计模式相关文章均整理和修改自网络,原文地址:图说设计模式 学习设计模式的3个层次—— 1.熟悉所有设计模式: 2.能够用代码实现: 3.运用到工作的项目中. 设计模式指导软件开发,学习设 ...

  3. 看懂UML类图和时序图

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

  4. [转] 看懂UML类图和时序图

    PS: 组合关系:实心,一个类A属于另一个类,或多个类,但是类A不能单独存在去使用,A一般是一种抽象的东西 聚合关系:空心,一个类A可以单独存在使用 不论组合聚合,A的方法都会被直接调用. 看懂UML ...

  5. 【UML九种图系列】之如何利用三层来绘制类图、时序图?

    UML并发视图:实体之间行为的交互,是动态.分为:时序图.协作图.状态图.活动图 一.时序图简述: 时序图(Sequence Diagram):描述对象之间的交互行为,按照时间顺序排列. 元素: 角色 ...

  6. 阅读UML类图和时序图

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

  7. Eclipse下生成/编辑Java类图或时序图(UML)[转载]

    一 引用文章 1.[eclipse下生成Java类图和时序图,生成UML图(更完整版)](https://blog.csdn.net/guomainet309/article/details/5302 ...

  8. powerdesign、navacat、ER图、uml、类图、时序图

    关于建表和生成实体以及ER图的简便方法 a:用navacat客户端生成简单的ER图,并生成建表sql,执行生成表. b:用powerdesign连接数据库,反向生成带有注释的ER图. c:用ideal ...

  9. UML类图和时序图

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

  10. (转)看懂UML类图和时序图

    从一个示例开始 请看以下这个类图,类之间的关系是我们需要关注的: 车的类图结构为<<abstract>>,表示车是一个抽象类: 它有两个继承类:小汽车和自行车:它们之间的关系为 ...

随机推荐

  1. Skyline TerraExplorer -二次开发- 加载外部数据的各种连接串

    Skyline 可以连接外部的数据源,包括SQL Server,Oracle ,excel,mySQL,SQlite,WFS....... 连接字符串如下:例如连接shp文件,为“FileName=C ...

  2. TopSnackbar,在顶部滑出显示的Snackbar;

    TopSnackbar 既然你能找到这篇文章,说明你一定使用过或了解Snackbar,所以我就不介绍Snackbar了.嗯~有图有真相! 嗯,就是图上这样: 我把Snackbar的源码拉了过来,重写了 ...

  3. Python数据类型的内置函数之list(列表)

    Python数据类型内置函数 - str(字符串) - list(列表) - tuple(元组) - dict(字典) - set(收集) list(列表)的操作 - (append)在列表最后追加指 ...

  4. scrpy-cookie

    两种方法模拟登陆 1.直接携带cookie import re import scrapy class RenrenSpider(scrapy.Spider): name = 'renren' all ...

  5. 关于python的多行注释,启动新浏览器,循环语句乘法口诀

    1,提问:如何将python写的多行代码改写成注释,进行写下一段代码?这样可以在多个脚本中写东西? 回答:百度了一下,还真有 选中所要注释的代码  CTRL + / 然后所选的代码前面都会出现#,编程 ...

  6. 深入理解Java虚拟机读书笔记8----Java内存模型与线程

    八 Java内存模型与线程   1 Java内存模型     ---主要目标:定义程序中各个变量的访问规则,即在虚拟机中将变量存储到内存和从内存中取出变量这样的底层细节.     ---此处的变量和J ...

  7. Django08-批量创建数据

    通过views.py文件中创建 第1种方法循环创建数据, 这种方法不推荐,因为每一次循环都会连接一次数据库,效率较慢 def user_list(request): user_all = models ...

  8. spark各种模式提交任务介绍

    前言 本文章部分内容翻译自: http://spark.apache.org/docs/latest/submitting-applications.html 应用提交 Spark的bin目录中的sp ...

  9. Spark sql 在yarn-cluster模式下找不到表

    在hive里建一个数据库test,在数据库里建了一张表user,然后在Spark程序中使用Spark sql读取这张表 "select * form test.user" 当部署模 ...

  10. faiss索引基于数量级和内存限制的选择

    它是一个能使开发者快速搜索相似多媒体文件的算法库.而该领域一直是传统的搜索引擎的短板.借助Faiss,Facebook 在十亿级数据集上创建的最邻近搜索(nearest neighbor search ...