UML-序列图

序列图

序列图定义

  • 在UML的表示中,序列图将交互关系表示为一个二维图。其中,纵向是时间轴,时间沿竖线向下延伸。横向代表了在协作中各独立对象的角色。角色使用生命线进行表示,当对象存在时,生命线用一条虚线表示,此时对象不处于激活状态,当对象的过程处于激活状态时,生命线是一个双道线。序列图中的消息使用从一个对象的生命线到另外一个对象的生命线的箭头表示,箭头以时间顺序在图中从上到下排列。

作用

  • 确认和丰富一个使用语境的逻辑表达。一个系统的使用情景就是系统潜在的使用方式的描述,也就是它的名称所要描述的。一个使用情景的逻辑可能是一个用例的一部分,或是一条控制流。
  • 细化用例的表达。就是把用例表达的需求,转化为进一步,更加正式层次的精细表达。用例常常被细化为一个或者更多的序列图。
  • 有效的描述分配各个类的职责以及各类具有的相应职责的原因。根据对象之间的交互关系来定义类的职责。

组成

对象

  • 序列图中的对象可以是系统的参与者或者任何有效的系统对象。对象的表示形式也和对象图中的对象的表示方式一样,使用名称的矩形框标记。所显示的对象及其类的名称带有下划线,二者用冒号隔开,使用 “对象名:类名”的形式,对象的下部有一条被称为“生命线”的垂直虚线。

生命线

  • 生命线是一条垂直的虚线,用来表示序列图中的对象在一段时间内的存在。
  • 每个对象的底部中心的位置都带有生命线。从序列图的顶部一直延伸到底部,所用时间取决于交互持续时间。
  • 对象与生命线结合在一起组成对象的生命线。对象存的的时间段包括对象在拥有控制线程时或被动对象在控制线程通过时存在。当对象在拥有控制线程时,对象被激活,作为线程的根。

激活

  • 序列图可以描述对象的激活(Activation),激活是对象操作的执行,它表示 一个对象直接的活着通过从属操作完成操作的过程。它对执行的持续时间和执行与其调用者之间的控制关系进行建模。
  • 激活在序列图中用一个细长的矩形框表示,它的顶端与激活时间对齐,底端与完成时间对齐。被执行的操作根据不同风格表示成一个附在激活符号旁或者在左边空白处的文字标记

消息

  • 消息(Messages)是从一个对象(发送者)向另外一个或几个对象(接收者)发送信号,或者由一个对象(发送者或者调用者)调用另外一个对象(接收者)的操作。
  • 可以有不同的实现方式,比如:过程调用,活动线程间的内部通讯,事件的发生。

概念

创建与销毁对象

  • 创建一个对象指发送者发送一个实例化消息后实例化对象的结果。
  • 销毁对象指的是将对象销毁并回收其资源,通常是一个明确的动作,也可以是其他动作,约束或垃圾回收机制的结果。
  • 创建对象操作的执行使用消息箭头表示,箭头指向被创建对象的框。
  • 在序列图中,对象的销毁是使用在对象的生命线上画大 X 表示,在销毁新创建的对象,或者序列图中的任何其他对象时,都可以使用。它的位置是在导致对象被销毁的信息上,或者在对象的自我终结的地方。

分支与从属流

  • UML中,存在两种方式可以来修改序列图中消息的控制流,分别是分支和从属流。
  • 分支是指从同一点发出多个消息的并指向不同的对象,根据条件互斥,可以有条件和并行两种结构。由于序列图只表示某一个活动按照时间顺序的经历过程,所以对序列图的分支画法没有明显的支持。
  • 从属流指的是从同一点发出多个消息指向同一个对象的不同生命线。

demo

在这里插入图片描述

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值