UML 您所在的位置:网站首页 线刷过程中提示ECHO处于关闭状态 UML

UML

2023-07-17 18:06| 来源: 网络整理| 查看: 265

目录

什么是状态图

状态图的内容

状态图实例

实例一

机房收费系统状态图

什么是状态图

状态图是系统分析的一种常用工具,它通过建立类对象的生存周期模型来描述对象随时间变化的动态行为。

一个状态图表示一个状态机,主要用于表现从一个状态到另一个状态的控制流。它不仅可以展现一个对象拥有的状态,还可以说明事件(如消息的接收、错误、条件变更等)如何随着时间的推移来影响这些状态。

状态图用于对系统的动态方面建模,动态方面指出现在系统结构中任一对象按事件排序的行为,其中这些对象可以是类、接口、构件和节点。

状态图的内容

▷状态:状态是状态机的重要组成部分,她描述了状态机所在对象动态行为的执行所产生的结果(结果:一般指能影响此对象对后续事件响应的结果)。UML图中使用一个圆角矩形表示一个状态。

状态的组成部分☟

名字(name)由一个字符串组成,用以识别不同状态。可匿名,一般放置在状态图符顶部

入口/出口动作

(entry/exit action)

该动作表示进入/退出这个状态所执行的动作。动作可以是原子动作,也可是动作序列内部转换(Internal Transaction)内部转换不会引起状态变化的转换,此转换的触发不会导致状态的入口/出口动作被执行。语法:事件/动作表达式子状态(Substate)UML中,子状态被定义为状态的嵌套结构,即包含在某状态内部的状态。包含子状态的状态被称为复合状态,不包含子状态的状态被称为简单状态。延迟事件(Deferred Event)延迟事件是事件的一个列表,此列表内的事件当前状态下不再处理,在系统进入其他状态时再处理。

▷转换:转换是状态间的关联。它们用于对一个实体的不同状态间的关系建模。当某个实体在第一个状态中执行一定的动作,并在某个特定事情发生并且某个特定的条件满足时进入下一个状态。

UML中,转换由5个部分组成,分别为源状态、目标状态、触发事件、监护条件和动作。

源状态(Source State)源状态就是被转换影响的状态。某对象处于源状态,当它接收到触发事件或满足监护条件,就会激活一个转换。目标状态(Target State)转换完成后,对象状态发生变化,这时对象所处的状态就是转换的目标状态。触发事件(Trigger Event)引起转变的事件,这里所指的事件可以是信号、调用、时间段或状态的一个改变。监护条件(Guard Condition)

是一个方括号括起来的布尔表达式,它被放在触发事件的后面。监护条件可以引用对象的属性值和触发事件的参数。

动作(Action)动作是一个可执行的原子计算,它可以包括操作、调用、另一个对象的创建或撤销、向一个对象发送信号。也可以是一个动作序列。 状态图实例 实例一

下图是某手机的状态图☟☟☟

当手机开机时,它处于空闲状态(idle),当用户开始使用电话呼叫某人(call someone)时,手机进入拨号状态(dialling)。如果呼叫成功,手机处于通话状态(working),否则重新进入空闲状态。手机空闲状态下被呼叫(be called),手机进入响铃状态(ringing)。如果用户接听电话,处于通话状态(working),如果用户拒接(refused),手机回到空闲状态(idle)。

机房收费系统状态图

✿以机房收费系统为例,画出如下图所示的状态图:

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有