1 / 33
文档名称:

软件工程状态图.ppt

格式:ppt   大小:269KB   页数:33页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

软件工程状态图.ppt

上传人:yuzonghong1 2017/11/28 文件大小:269 KB

下载得到文件列表

软件工程状态图.ppt

文档介绍

文档介绍:状态图
学****内容
何谓状态图
构成状态图的元素
状态图的组成
使用Rose创建状态图
创建项目中的状态图
何谓状态图
1. 状态图的概念
状态图由状态、转换、事件、活动和动作5部分组成:
(1)状态指的是对象在其生命周期中的一种状况,处于某个特定状态中的对象必然会满足某些条件、执行某些动作或者是等待某些事件。一个状态的生命周期是一个有限的时间阶段。
(2)转换指的是两个不同状态之间的一种关系,表明对象将在第一个状态中执行一定的动作,并且在满足某个特定条件下由某个事件触发进入第二个状态。
(3)事件指的是发生在时间和空间上的对状态机来讲有意义的那些事情。事件通常会引起状态的变迁,促使状态机从一种状态切换到另一种状态,如信号、对象额度创建和销毁等。
(4)活动指的是状态机中进行的非原子操作。
(5)动作指的是状态机中可以执行的那些原子操作,所谓原子操作指的是它们在运行的过程中不能被其他消息所中断,必须一直执行下去,最终导致状态的变更或者返回一个值。
何谓状态图
状态
状态用于对实体在其生命周期中的各种状况进行建模,一个实体总是在有限的一段时间内保持一个状态。状态由一个带圆角的矩形表示,状态的描述应该包括:名称、入口和出口动作、内部转换和嵌套状态。
何谓状态图
转换
在UML的状态建模机制中,转换用带箭头的直线表示,一端连接源状态,箭头指向目标状态。转换还可以标注与此转换相关的选项,如事件、监护条件和动作等,如果转换上没有标注触发转换的事件,则表示此转换自动进行。
何谓状态图
初始状态
每个状态图都应该有一个初始状态,它代表状态图的起始位置。初始状态是一个伪状态(一个和普通状态有连接的假状态),对象不可能保持在初始状态,必须要有一个输出的无触发转换(没有事件触发器的转换)。通常初始状态上的转换是无监护条件的,并且初始状态只能作为转换的源,而不能作为转换的目标。
一个状态图只能有一个初始状态,用一个实心的圆表示。
何谓状态图
终止状态
终止状态是一个状态图的终点,一个状态图可以拥有一个或者多个终止状态。
对象可以保持在终止状态,但是终止状态不可能有任何形式的触发转换,它的目的就是为了激发封装状态上的完成转换。
何谓状态图
判定
活动图和状态图中都有需要根据给定条件进行判断,然后根据不同的判断结果进行不同的转换的情况。
实际就是工作流在此处按监护条件的取值发生分支,在UML中判定用空心菱形表示。
何谓状态图
2. 为什么要使用状态图
状态图的作用主要体现在以下几个方面:
(1)状态图清晰的描述了状态之间的转换顺序,通过状态的转换顺序也就可以清晰的看出事件的执行顺序。如果没有状态图我们就不可避免的要使用大量的文字来描述外部事件的合法顺序。
(2)清晰的事件顺序有利于程序员在开发程序时避免出现事件错序的情况。
(3)状态图清晰的描述了状态转换时所必须的触发事件、监护条件和动作等影响转换的因素,有利于程序员避免程序中非法事件的进入。
(4)状态图通过判定可以更好的描述工作流因为不同的条件发生的分支。
构成状态图的元素
1. 状态
状态名:在实际使用中,状态名通常是直观、易懂、能充分表达语义的名词短语,其中每个单词的首字母要大写。
内部活动:状态可以包含描述为表达式的内部活动。当状态进入时,活动在进入动作完成后就开始。如果活动结束,状态就完成,然后一个从这个状态出发的转换被触发。
内部转换:状态可能包含一系列的内部转换,内部转换因为只有源状态而没有目标状态,所以内部转换的结果并不改变状态本身。如果对象的事件在对象正处在拥有转换的状态时发生,那内部转换上的动作也被执行。
入口和出口动作:状态可能具有入口和出口动作。这些动作的目的是封装这个状态,这样就可以不必知道状态的内部状态而在外部使用它。入口动作和出口动作原则上依附于进入和出去的转换,但是将它们声明为特殊的动作可以使状态的定义不依赖状态的转换,因此起到封装的作用。
历史状态:组成状态可能包含历史状态(History state)。