浅谈UML学习笔记动态图之状态图和活动图
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了浅谈UML学习笔记动态图之状态图和活动图相关的知识,希望对你有一定的参考价值。
Trufun Plato
原文转自trufun.net网站,更多UML资料和项目模型,可以到网站下载。
状态图
我先简单的理解一下,什么是状态机?
① 在日常生活中,状态机,我们理解为记录下给定时刻状态的机器,根据不同的输入对每个给定的变化而改变其状态或引发一个动作。
② 在UML中,状态机由对象的各个状态和连接这些状态的转换组成,是展示状态与状态转换的图。
③ 状态图本质上就是一个状态机或是状态机的特殊情况。由表示状态的节点和表示状态之间转换的带箭头的直线组成。
• 认识状态的概念和分类:
• 状态图组成还包括:
? 活动图
活动图是另一个种动态视图,描述动作和动作导致对象状态改变的结果,而不用考虑引发状态改变的事件。
• 活动图的图形标准:
① 起点
【作用】描述活动图的开始状态
【表示方式】黑的实心圆
② 终止点
【作用】描述活动图的终止状态
【表示方式】实心圆的空心圆
③ 活动
【作用】可以是手动也可以自动的执行任务
【表示方式】圆角矩形
④ 状态
【作用】活动的所处状态
【表示方式】椭圆矩形
⑤ 转换
【作用】描述一个活动转向另一个活动
【表示方式】带箭头的实线段,指向转向的活动
• 活动图的组成
? 状态图中“动作”和活动图中的“动作状态”区别
• 相同点:
① 都是原子性的,动作要么不执行,要么就完全执行,不能中断
② 执行时间都极短
• 不同点:
动作状态和状态图中的状态不同,不能有入口动作和出口动作,也不能有内部转移
? 了解活动图和状态图的各自作用
• 状态图的作用:
① 清晰描述状态之间的转换顺序,通过转换顺序可以清晰看出事件的执行顺序
② 清晰的事件顺序有利于程序员在开发程序时避免出现事件错序的情况
③ 清晰地描述了状态转换时所必须触发德尔事件、监护条件和动作等影响转换的因素,有利于程序员汇总非法事件的进入
④ 通过判断更好地描述工作流因为不同的条件发生的分支
• 活动图的作用:
? 活动图和状态图的区别
• 目的不同:活动图的主要目的是描述动作及对象的改变结果,而状态图则是描述对象、子系统、系统在生命周期中的各种行为
• 活动图中的状态转换不需要任何触发事件,状态图则需要触发事件
• 活动图种的动作可以放在泳道中,状态图不可以
以上是关于浅谈UML学习笔记动态图之状态图和活动图的主要内容,如果未能解决你的问题,请参考以下文章