UML之状态图

简介: <h1> 1、概念</h1> <p><span style="font-family:KaiTi_GB2312; font-size:24px">  状态:是指在对象生命周期中满足某些条件、执行某些活动或等待某些事件的一个条件和状况。</span></p> <p><span style="font-family:KaiTi_GB2312; font-size:24px">  状态机:记

 1、概念

  状态:是指在对象生命周期中满足某些条件、执行某些活动或等待某些事件的一个条件和状况。

  状态机:记录下给定时刻状态下的设备,他可以根据不同的输入对每个给定的变化而改变其状态或引发一个动作。

  状态图(statechart Diagram):本质上是一个状态机,或者是状态机的特殊情况,它基本上是状态机中的元素的投影,这也意味着状态图包括状态机的所有特征。

 2、状态图

 状态

  

 状态的组成部分


名称(Name)
将一个状态与其他状态分开的字符串;状态也可能是匿名的,这表示它没有名称
进入和退出动作(Entry/Exit Action)
在进入和退出时执行的操作
内部转移(Internal Transition)
对事件做出响应,执行一定的动作,但不会发生状态的转换


子状态(substage)
当状态是复合状态时
延迟事件(Deferred Event)
未在本状态中处理,但不被丢弃,而是延迟到其他状态中处理的事件

 

转换

 用于表示一个状态机的两个状态之间的一种关系,即一个在某初始状态的对象通过执行指定的动作并符合一定的条件下进入第二种状态。


五要素


 

源状态
转移所影响的状态;如果对象处于源状态,当对象收到转移的触发事件并且满足警戒条件(如果有)时,就可能会触发输出转移。
事件触发器
使转移满足触发条件的事件。当处于源状态的对象收到该事件时(假设已满足其警戒条件),就可能会触发转移。
警戒条件
使转移满足触发条件的事件。当处于源状态的对象收到该事件时(假设已满足其警戒条件),就可能会触发转移。
操作
可执行的、不可分割的计算过程,该计算可能直接作用于拥有状态机的对象,也可能间接作用于该对象可见的其他对象。
目标状态
在完成转移后被激活的状态。


类型 

转换类型
描述
语法
外部转换
对事件做出响应,引起状态变化或自身转换,同时引发一个特定动作,如果离开或进入状态将引发进入转换、离开转换
事件 ( 参数 )[ 监护条件 ]/ 动作
内部转换
对事件做出响应,并执行一个特定的活动,但并不引起状态变化或进入转换、离开转换
事件 ( 参数 )[ 监护条件 ]/ 动作
进入转换
当进入某一状态时,执行相应活动
entry/ 活动
退出转换
当离开某一状态时,执行相应活动
exit/活动

  还有一种状态行为:DO/活动,当对象处于一个状态时,它一般是空闲的,在等待一个事件的发生。但是某些时间,你可能希望描述个正在进行的活动。在处于一个状态的同时,对象做着某些工作,并一直继续到被某个事件中断。

 

 



相关文章
|
5月前
|
应用服务中间件 uml
【UML】软件工程中常用图:类图、部署图、时序图、状态图
【UML】软件工程中常用图:类图、部署图、时序图、状态图
603 1
|
6月前
|
存储 uml
UML之状态图
UML之状态图
54 0
|
6月前
|
算法 测试技术 uml
UML-状态图
UML-状态图
87 0
|
算法 测试技术 数据库
UML——行为图(活动图、状态图)
描述了一个具体对象的可能状态以及它们之间的转换。展现一个对象拥有的状态,还可以说明时间(如消息的接收、错误、条件变更等)如何随着时间的推移来影响这些状态。
|
uml
UML行为图(状态图 活动图)
UML行为图(状态图 活动图)
101 0
|
调度 uml
UML之状态图
UML之状态图
155 0
|
测试技术 uml
UML--------行为图(状态图、活动图)
UML--------行为图(状态图、活动图)
|
算法 测试技术 uml
【UML】行为图(活动图、状态图)
【UML】行为图(活动图、状态图)
217 0
|
测试技术 uml
UML——活动图和状态图
UML——活动图和状态图
486 0
UML——活动图和状态图