UML 时序图[通俗易懂]

UML 时序图[通俗易懂]概念时序图(SequenceDiagram)描述了对象之间传递消息的时间顺序,用来表达用例中的行为顺序,是强调消息时间顺序的交互图。也就是说,时序图描述了类以及类间相互交换以完成期望行为的消息。内容时序图包括了4个元素,分别是对象(Object)、生命线(Lifeline)、激活(Activation)和消息(Message)。对象(Object)对象代表时序图中的对象…

大家好,又见面了,我是你们的朋友全栈君。

概念

时序图(Sequence Diagram)描述了对象之间传递消息的时间顺序,用来表达用例中的行为顺序,是强调消息时间顺序的交互图。也就是说,时序图描述了类以及类间相互交换以完成期望行为的消息。

内容

时序图包括了 4 个元素,分别是对象(Object)、生命线(Lifeline)、激活(Activation)和消息(Message)。

  1. 对象(Object)
    对象代表时序图中的对象在交互中所扮演的角色。时序图中对象的符号和对象图中对象所用的符号一样,都是使用矩形将对象名称包含起来,并且对象名称下有下划线,如下图所示:
    这里写图片描述
    将对象置于时序图的顶部意味着在交互开始的时候对象就已经存在了,如果对象的位置不在顶部,那么表示对象是在交互的过程中被创建的(对象可以在交互开始的时候创建, 也可以在交互过程中进行创建)。

  2. 生命线(Lifeline)
    生命线是一条垂直的虚线,表示时序图中的对象在一段时间内的存在。每个对象的底部中心的位置都带有生命线。生命线是一个时间线,从时序图的顶部一直延伸到底部,所用的时间取决于交互持续的时间。对象与生命线结合在一起称为对象的生命线;对象的生命线包含矩形的对象图标以及图标下面的生命线,如下图所示:
    这里写图片描述

  3. 激活(Activation)
    时序图可以描述对象的激活(Activation)和去激活(Deactivation)。激活代表时序图中的对象执行一项操作的时期。
    激活表示该对象被占用以完成某个任务,去激活指的是对象处于空闲状态,在等待消息。在UML中,为了表示对象是激活的,可以将对象的生命线拓宽成为矩形,如下图所示:
    这里写图片描述

  4. 消息(Message)
    消息是定义交互和协作中交换信息的类,用于对实体间的通信内容建模。消息用于在实体间传递信息,允许实体请求其他的服务,类角色通过发送和接收消息进行通信。它可以激发某个操作、唤起信号或导致目标对象的创建或撤销。消息序列可以用两种图来表示:时序图和协作图(时序图强调消息的时间顺序,而协作图强调交换消息的对象间的关系)。
    在 UML 中,消息使用箭头来表示,箭头的类型表示了消息的类型,消息箭头指的一方是接收方,如下图所示:
    这里写图片描述

时序图建模策略

(1)设置交互的语境,这些语境可以是系统、子系统、操作、类、用例和协作的一个脚本;
(2)通过识别对象在交互中扮演的角色,根据对象的重要性,将其按从左向右的方向放在时序图中;
(3)设置每个对象的生命线。一般情况下,对象存在于交互的整个过程,但它也可以在交互过程中被创建和撤销;
(4)从引发某个交互的信息开始,在生命线之间按从上向下的顺序画出随后的消息;
(5)设置对象的激活期,这可以可视化实际计算发生时的时间点、可视化消息的嵌套;
(6)如果需要设置时间或空间的约束,可以为每个消息附上合适的时间和空间约束;
(7)给某控制流的每个消息附上前置或后置条件,这可以更详细地说明这个控制流。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/148658.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Linux命令之解压缩:tar、zip、rar 命令

    Linux命令之解压缩:tar、zip、rar 命令一、简介解压缩是一个常用的操作,在Linux中通常比较常用的是tar命令,zip和rar命令则是Windows中比较常用。二、快速使用1.tar命令语法:tar[主选项+辅选项]文件或目录示例:#压缩文件file1和目录dir2到test.tar.gztar-zcvftest.tar.gzfile1dir2#…

    2022年6月11日
    32
  • 手机页面的前端开发工具_手机web页面

    手机页面的前端开发工具_手机web页面1.元素使用rem单位(相对于html的font-size,单位px)2.元素使用em单位(相对于自身的font-size,单位px)媒体查询样式的条件可以使用and满足想要的范围注意:手

    2022年8月3日
    6
  • Android平台ROM的定制及精简教程

    Android平台ROM的定制及精简教程本教程主要内容有:Android系统文件夹结构解析、应用软件说明、定制精简、ROM签名把包等内容。本教程测试平台为HTCG2、G3这两个型号,其它机型可以借鉴,刷机有风险,出问题自负。其实这个教程一早就想写的,但由于时间及本人的懒惰,一直拖着。今晚终于静下心来写好本文,本文有部份内容来自于网络。 速度与华丽,你喜欢那个。是不是想要一个又够速度又华丽的ROM呢?我是一个追求新鲜的人,对于手机的

    2022年10月16日
    3
  • soc ip核_类和对象有什么关系

    soc ip核_类和对象有什么关系SoC(SystemonaChip)中文名是系统级芯片。20世纪90年代中期,因使用ASIC实现芯片组受到启发,萌生应该将完整计算机所有不同的功能块一次直接集成于一颗硅片上的想法。SoC应由可设计重用的IP核组成,IP核是具有复杂系统功能的能够独立出售的VLSI块;IP核应采用深亚微米以上工艺技术;SoC中可以有多个MPU、DSP、MCU或其复合的IP核。IP核(I………

    2022年9月19日
    4
  • Docker 1.3 公布

    Docker 1.3 公布

    2022年2月6日
    40
  • oracle触发器报错语法,oracle触发器

    oracle触发器报错语法,oracle触发器oracle触发器系统默认用户浏览4438oracle触发器怎么写?通过编写数据库触发器,在HR数据库上实现下面的业务规则:1.如果某工种的最低工资进行上涨,则相应的员工的工资应自动增长…通过编写数据库触发器,在HR数据库上实现下面的业务规则:1.如果某工种的最低工资进行上涨,则相应的员工的工资应自动增长推荐于2019-06-0421:52:46创建触发器,给触发器命名,在哪个表上的增删改…

    2022年7月11日
    19

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号