欢迎来到天天文库
浏览记录
ID:40838989
大小:273.51 KB
页数:55页
时间:2019-08-08
《chapter08状态图》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第8章状态图8.1状态机8.2状态图8.3状态8.4事件8.5转换8.6状态图建模技术8.7实例——图书馆管理系统的状态图8.1状态机状态机是展示状态与状态转换的图。状态机包含了一个类的对象在其生命期间所有状态的序列以及对象对接受到的事件所产生的反应。利用状态机可以精确地描述对象的行为。8.1状态机组成:状态(State)转换(Transition)事件(Event)活动(Activity)动作(Action)8.2状态图一个状态图表示一个状态机。状态图表现从一个状态到另一个状态的控制流。状态图由表示状态的节点和表
2、示状态之间转换的带箭头的直线组成。8.2状态图组成:状态(State)转换(Transition)初始状态(StartState)终结状态(EndState)判定(Decision)8.2状态图示意图:8.2状态图8.2.1状态8.2.2转换8.2.3初始状态8.2.4终止状态8.2.5判定8.2.1状态状态由一个带圆角的矩形表示。状态图标可以分为三部分:名称内部转换嵌套状态8.2.2转换转换用带箭头的直线表示,一端连接源状态即转出的状态,箭头一端连接目标状态即转入的状态。转换可以标注与此转换相关的选项如事件、动作
3、和监护条件。8.2.3初始状态初始状态代表状态图的起始位置,只能作为转换的源,而不能作为转换的目标。初始状态在一个状态图中只允许有一个,它用一个实心的圆表示。8.2.4终止状态终止状态是模型元素的最后状态,是一个状态图的终止点。终止状态只能作为转换的目标,而不能作为转换的源。终止状态在一个状态图中可以有多个,它用一个套有一个实心圆的空心圆表示。8.2.5判定判定在状态图中的位置:工作流在此处按监护条件的取值而发生分支。判定用空心小菱形表示。8.2.5判定因为监护条件为布尔表达式,所以通常条件下的判定只有一个入转换和
4、两个出转换。根据监护条件的真假可以触发不同的分支转换。8.3状态8.3.1概述8.3.2状态名8.3.3内部转换8.3.4入口动作与出口动作8.3.5简单状态8.3.6组成状态8.3.7历史状态8.3.1概述状态图中的状态一般是给定类对象中的一组属性值,这组属性值是对象所有属性的子集。在对系统建模时,我们可以只关心那些明显影响对象行为的属性以及由他们表达的对象状态,而不用理睬那些于对象行为无关的状态。8.3.1概述状态种类:简单状态(SimpleState)组成状态(CompositeState)状态组成:状态名(
5、Name)活动(Activity)入口动作(EntryAction)出口动作(ExitAction)8.3.2状态名状态名表示状态的名字,通常用字符串表示。一个状态的名称在状态图所在的上下文中应该是唯一的。不过,状态允许匿名。状态的名字通常放在状态图标的顶部8.3.3内部转换内部转换只有一个源状态而没有目标状态,因此转换激发的结果并不改变状态本身。如果一个内部转换带有动作,动作也要被执行,但是由于没有状态改变发生,因此不需要执行入口和出口动作。内部转换和自转换不同,虽然两者都不改变状态本身,但是自转换会激发入口动作
6、和出口动作的执行,而内部转换却不会。8.3.4入口动作与出口动作入口动作和出口动作表示进入或退出这个状态所要执行的动作。入口动作用“entry/要执行的动作”表达,而出口动作用“exit/要执行的动作”表达。8.3.5简单状态简单状态是指不包含其他状态的状态。简单状态没有子结构,但它可以具有内部转换、入口动作和出口动作等。8.3.6组成状态组成状态是可以包含一些嵌套的子状态的状态。组成状态可以使用“与”关系分解为并发子状态,或者通过“或”关系分解为互相排斥的顺序子状态。组成状态的一个入转换代表对其嵌套子状态区域内的
7、初始状态的入转换;对嵌套子状态区域内的终结状态的转换代表包含它的终止状态的相应活动的完成。8.3.6组成状态1.顺序子状态2.并发子状态1.顺序子状态如果一个组成状态的子状态对应的对象在其生命期内的任何时刻都只能处于一个子状态,即多个子状态之间是互斥的,不能同时存在,这种子状态称为顺序子状态。当状态机通过转换从某种状态转入组成状态时,此转换的目的可能是这个组成状态本身,也可能是这个组成状态的子状态。2.并发子状态有时组合状态有两个或者多个并发的子状态机,此时称组成状态的子状态为并发子状态。顺序子状态与并发子状态的区
8、别在于后者在同一层次给出两个或多个顺序子状态,对象处于同一层次中来自每个并发子状态的一个时序状态中。8.3.7历史状态历史状态代表上次离开组成状态时的最后一个活动子状态,它用一个包含字母“H”的小圆圈表示。每当转换到组成状态的历史状态时,对象便恢复到上次离开该组成状态时的最后一个活动子状态,并执行入口动作。8.4事件事件表示在某一特定的时间或空间出现的能够引
此文档下载收益归作者所有