0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

时序图、活动图、状态图、协作图的区别

电子工程技术 来源:电子工程技术 2020-05-08 09:10 次阅读

时序图


时序图用于描述对象之间的传递消息的时间顺序, 即用例中的行为顺序.

当执行一个用例时, 时序图中的每条消息对应了一个类操作或者引起转换的触发事件.

在 UML 中, 时序图表示为一个二维的关系图, 其中, 纵轴是时间轴, 时间延竖线向下延伸. 横轴代表在协作中各个独立的对象. 当对象存在时, 生命线用一条虚线表示, 消息用从一个对象的生命线到另一个对象的生命线的箭头表示. 箭头以时间的顺序在图中上下排列.

ATM 用户成功登陆的时序图

时序图中的基本概念

对象:时序图中对象使用矩形表示, 并且对象名称下有下划线. 将对象置于时序图的顶部说明在交互开始时对象就已经存在了. 如果对象的位置不在顶部, 表示对象是在交互的过程中被创建的.

生命线:生命线是一条垂直的虚线. 表示时序图中的对象在一段生命周期内存在. 每个对象底部中心的位置都带有生命线.

消息:两个对象之间的单路通信. 从发送方指向接收方. 在时序图中很少使用返回消息.

激活:时序图可以描述对象的激活和钝化. 激活表示该对象被占用以完成某个任务. 钝化指对象处于空闲状态, 等待消息. 在 UML 中, 对象激活时将对象的生命线拓宽为矩形来表示的. 矩形称为计划条或控制期. 对象就是在激活条的顶部被激活的. 对象在完成自己的工作后被钝化.

对象的创建和销毁:在时序图中, 对象的默认位置是在图的顶部. 这说明对象在交互开始之前就已经存在了. 如果对象是在交互过程中创建的, 那么就应该将对象放到中间部分. 如果要撤销一个对象, 在其生命线终止点处放置 “ X” 符号.

练习:孙中山的……

活动图


在 UML 中, 活动图本质上就是流程图. 它用于描述系统的活动, 判定点和分支等.

活动图中的基本概念

动作状态:原子的, 不可中断的动作, 并在此动作完成之后向另一个动作转变. 在 UML 中动作状态用圆角矩形 表示, 动作状态所表示的动作写在圆角矩形内部.

分支与合并:分支在软件系统中很常见. 一般用于表示对象类所具有的条件行为. 用一个布尔型表达式的真假来判定动作的流向. 条件行为用分支和合并表达.在活动图中, 分支用空心小菱形 表示. 分支包括一个入转换和两个带条件的出转换, 出转换的条件应该是互斥的, 须保证只有一条出转换能够被触发. 合并包含两个带条件的入转换和一个出转换.

状态图

状态图:通过建立对象的生存周期模型来描述对象随时间变化的动态行为.

状态图中的基本概念

状态:用圆角矩形表示. 状态名称表示状态的名字, 通常用字符串表示. 一个状态的名称在状态图所在的上下文中应该是唯一的.

转换:用带箭头的直线表示. 一端连着源状态, 一端连着目标状态.

初始状态:每个状态图都有一个初始状态. 此状态代表状态图的起始位置. 初始状态只能作为转换的源, 不能作为转换的目标, 并且在状态图中只能有一个. 初始状态用一个实心圆表示.

终止状态:模型元素的最后状态, 是一个状态图的终止点. 终止状态在一个状态图中可以有多个.

协作图

协作图(也叫合作图)是一种交互图.

时序图主要侧重于对象间消息传递在时间上的先后关系, 而协作图表达对象间的交互过程及对象间的关联关系

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • UML
    UML
    +关注

    关注

    0

    文章

    122

    浏览量

    30750
  • 时序图
    +关注

    关注

    1

    文章

    56

    浏览量

    22348

原文标题:时序图、活动图、状态图、协作图的区别

文章出处:【微信号:EngicoolArabic,微信公众号:电子工程技术】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    AN75779状态图DATA_CNT和ADDR_CNT与DMA的buffer是什么关系?

    这个状态图里面,DATA_CNT和ADDR_CNT与DMA的buffer是什么关系?为什么是DATA LIMIT切换到state4,ADDR_LIMIT切换到state3?
    发表于 02-28 06:11

    什么是眼?两分钟带你认识示波器眼

    电路示波器
    安泰仪器维修
    发布于 :2024年02月23日 16:27:38

    AD7193如何通过spi的时序来进行模拟spi的通信编程?

    本人准备应用AD7193,现在一直无法实现AD7193 的spi通信,请问如何通过spi的时序来进行模拟spi的通信编程?
    发表于 12-21 07:36

    状态图使用详解-作者做了一个动态显示状态,怎么做的??

    论坛里的帖子,状态图使用详解-简单入门 我初学者,很有帮助,甚是感谢!! 软件界面里的图片,状态切换动画是怎么实现的? 没看明白,能给说一下吗?感谢
    发表于 11-30 11:41

    如何以正确的方式分析一个器件的时序

    只能分析一些简单的时序,稍微复杂点的就感觉力不从心啊,求讲解
    发表于 11-10 07:43

    LabVIEW状态图编程指南

    采用 LabVIEW 状态图模块开发应用程序 1-7LabVIEW 状态图模块中 UML 专用术语 8-15如何对 LabVIEW 状态图应用程序进行调试 16-25LabVIEW 状态图
    发表于 09-21 06:05

    原理绘制-25 - 第2节 #硬声创作季

    电路原理软件
    充八万
    发布于 :2023年08月15日 03:57:14

    原理绘制-25 - 第1节 #硬声创作季

    电路原理软件
    充八万
    发布于 :2023年08月15日 03:56:24

    用中继实现启保停电路,转梯形到软件里

    电路
    YS YYDS
    发布于 :2023年07月06日 21:53:50

    时序图、活动图、状态图协作图区别

    时序图用于描述对象之间的传递消息的时间顺序, 即用例中的行为顺序.
    的头像 发表于 07-03 10:13 1174次阅读
    <b class='flag-5'>时序</b>图、<b class='flag-5'>活动</b>图、<b class='flag-5'>状态图</b>、<b class='flag-5'>协作图</b>的<b class='flag-5'>区别</b>

    电路仿真功能演示#硬声创作季

    电路
    或许
    发布于 :2023年06月05日 16:27:13

    #电路 #数码科技 圆屏 esp32

    电路
    学习电子知识
    发布于 :2023年05月28日 20:48:43

    这个线路有问题吗?

    简单时序逻辑电路——触发器应用三 四人抢答器(74ls112 74LS20)线路。 如果有问题,应该怎么改
    发表于 05-18 13:46

    UML状态图详解

    本篇介绍了UML状态图的基础知识,并通过visio绘制一个全自动洗衣机的UML状态图实例,来介绍UML状态图的画法与所表达的含义。
    的头像 发表于 05-09 09:00 1939次阅读
    UML<b class='flag-5'>状态图</b>详解

    求分享一下FlexIO时序吗?

    引脚:FlexIO_D6 来自主控端的 SPI 固定为模式 3(即 CPOL = 1 和 CPHA = 1)。所以 uC FlexIO 将支持模式 3。 可以分享一下 FlexIO 时序吗? 与标准 LPSPI 相比,FlexIO 有什么限制吗?
    发表于 05-04 08:17