《第7讲状态机图》由会员分享,可在线阅读,更多相关《第7讲状态机图(83页珍藏版)》请在金锄头文库上搜索。
1、 状态图状态图7.1 7.1 几个概念几个概念几个概念几个概念7.27.2 状态状态状态状态7.37.3 状态转换状态转换状态转换状态转换7.47.4 事件事件事件事件7.57.5 复合状态复合状态复合状态复合状态7.67.6 并发状态并发状态并发状态并发状态7.77.7 控制结点控制结点控制结点控制结点7.87.8 子机状态子机状态子机状态子机状态7.97.9 状态机状态机状态机状态机7.107.10 状态机图实例状态机图实例状态机图实例状态机图实例第第7讲讲状态图状态图7.1.1 7.1.1 状态状态状态状态7.1.27.1.2 状态机状态机状态机状态机7.1.37.1.3 状态机图状态机
2、图状态机图状态机图第第7讲讲7.1 几个概念几个概念 状态状态(state):指事物在其生命周期中满足某些条指事物在其生命周期中满足某些条件、执行某些操作或等待某些事件而持续的一种件、执行某些操作或等待某些事件而持续的一种稳定的状况稳定的状况 。 状态状态状态状态7.1.17.1.1待用待用运行运行故障故障 状态机状态机(state machine ): 描述一个事物在其生命描述一个事物在其生命期中,所具有的状态,以及因事件触发而引起的期中,所具有的状态,以及因事件触发而引起的状态的各种转换。状态的各种转换。 状态机状态机状态机状态机7.1.27.1.2 状态机状态机(state machin
3、e diagram ): 是是UMLUML用来描用来描述状态机的图,在述状态机的图,在UML2.0UML2.0版本之前,状态机图被版本之前,状态机图被称为状态图。状态机图由状态结点、控制结点和称为状态图。状态机图由状态结点、控制结点和转换边构成。转换边构成。状态机图状态机图状态机图状态机图7.1.37.1.3状态结点状态结点控制结点控制结点转换边转换边状态图状态图7.2.1 7.2.1 状态的概念状态的概念状态的概念状态的概念7.2.27.2.2 状态的类型状态的类型状态的类型状态的类型7.2.37.2.3 状态的动作状态的动作状态的动作状态的动作第第7讲讲7.2 状态状态 状态状态(stat
4、e):指事物在其生命周期中满足某些条指事物在其生命周期中满足某些条件、执行某些操作或等待某些事件而持续的一种件、执行某些操作或等待某些事件而持续的一种稳定的状况稳定的状况 。 状态表示为:状态表示为: 状态名若用英文,第一个字母要大写。状态名若用英文,第一个字母要大写。 状态的概念状态的概念状态的概念状态的概念7.2.17.2.1 可分为以下三类:可分为以下三类: 简单状态简单状态:也被称为原子状态,不包含子状态和子机:也被称为原子状态,不包含子状态和子机状态。状态。 复合状态复合状态:内部包含子状态的状态。:内部包含子状态的状态。 子机状态子机状态:状态机作为子状态的状态。:状态机作为子状态
5、的状态。状态的类型状态的类型状态的类型状态的类型7.2.27.2.2 可分为以下三类:可分为以下三类: 简单状态简单状态: 复合状态复合状态: 子机状态子机状态:状态的类型状态的类型状态的类型状态的类型7.2.27.2.2 一个状态内部所包括的动作或事件,一个状态内部所包括的动作或事件,在当前在当前 状态下,状态机会执行这些动作,可以有:状态下,状态机会执行这些动作,可以有: 入口动作入口动作:进入该状态自动执行的第一个动作,表示为:进入该状态自动执行的第一个动作,表示为:entry/do shing , 例如例如 entry/do dooropen。 出口状态出口状态:退出该状态自动执行的最
6、后一个动作,表示为:退出该状态自动执行的最后一个动作,表示为:exit/do shing, 例如,例如,exit/door close 。 内部变迁内部变迁:在该状态下做的动作,不引起状态变化。表示为:在该状态下做的动作,不引起状态变化。表示为:do/thing,例如,例如,do/check up on work 。 延迟事件延迟事件:在该状态下,如果发生某事件,将被延时处理。表示为:在该状态下,如果发生某事件,将被延时处理。表示为:事件事件/defer/defer,例如,例如,print/defer(15)print/defer(15),表示打印事件将被延迟,表示打印事件将被延迟1515秒秒
7、 。状态的动作状态的动作状态的动作状态的动作7.2.37.2.3状态图状态图7.3.1 7.3.1 状态转换的概念状态转换的概念状态转换的概念状态转换的概念7.3.27.3.2 状态转换的三要素状态转换的三要素状态转换的三要素状态转换的三要素第第7讲讲7.3 状态的转换状态的转换 状态转换(状态转换(state transitionstate transition): :是两个状态之间的一种是两个状态之间的一种有向关系,表示从源状态转换到目标状态。状态转换用一有向关系,表示从源状态转换到目标状态。状态转换用一个带箭头的实线表示,箭头由源状态指向目标状态。个带箭头的实线表示,箭头由源状态指向目标
8、状态。 状态转换的概念状态转换的概念状态转换的概念状态转换的概念7.3.17.3.1 触发事件触发事件:触发状态转换的条件,如开门,入库,开:触发状态转换的条件,如开门,入库,开电源等。如果没有触发事件,指源状态执行完后,自动转电源等。如果没有触发事件,指源状态执行完后,自动转换到目标状态。换到目标状态。状态转换的要素状态转换的要素状态转换的要素状态转换的要素7.3.27.3.2 触发事件触发事件: 监护条件监护条件:用来监护状态转换。在事件发生后,如果监:用来监护状态转换。在事件发生后,如果监护条件为真,则执行动作,并转换状态。如果监护条件为护条件为真,则执行动作,并转换状态。如果监护条件为
9、假,则不执行转换动作,也不实施状态转换。假,则不执行转换动作,也不实施状态转换。 如果没有监护条件,则不作条件判断,在事件发生后直如果没有监护条件,则不作条件判断,在事件发生后直接执行转换动作。接执行转换动作。状态转换的要素状态转换的要素状态转换的要素状态转换的要素7.3.27.3.2 触发事件触发事件: 监护条件监护条件: 转换动作转换动作:在事件发生后所执行的一组动作,并把状在事件发生后所执行的一组动作,并把状态由源状态转换到目标状态。在动作前置一个态由源状态转换到目标状态。在动作前置一个“/”/” 。状态转换的要素状态转换的要素状态转换的要素状态转换的要素7.3.27.3.2状态转换的要
10、素状态转换的要素状态转换的要素状态转换的要素7.3.27.3.2状态图状态图7.4.1 7.4.1 事件的概念事件的概念事件的概念事件的概念7.4.27.4.2 事件的性质事件的性质事件的性质事件的性质7.4.37.4.3 事件的类型事件的类型事件的类型事件的类型7.4.47.4.4 几种事件几种事件几种事件几种事件第第7讲讲7.4 事件事件 事件(事件(eventevent): :指所发生的瞬时事情,能引起状态变换。指所发生的瞬时事情,能引起状态变换。 例如:例如: 按按“开关开关”,能开启机器,能开启机器 “ “双击鼠标双击鼠标”打开窗口。打开窗口。事件的概念事件的概念事件的概念事件的概念
11、7.4.17.4.1事件的性质事件的性质事件的性质事件的性质7.4.27.4.2 瞬时态瞬时态:事件在瞬时发生,没有时间延迟。:事件在瞬时发生,没有时间延迟。 原子性原子性:事件不可再分割:事件不可再分割事件的类型事件的类型事件的类型事件的类型7.4.37.4.3 按发生的位置分:按发生的位置分: 外部事件外部事件:在系统外部发生的事件,例如,按按钮就在:在系统外部发生的事件,例如,按按钮就在外部发生。外部发生。 内部事件内部事件:在系统内部发生的事件,例如,溢出事件:在系统内部发生的事件,例如,溢出事件 按事件的性质分:按事件的性质分: 调用事件,调用事件,信号事件,信号事件, 变化事件,变
12、化事件,时间事件时间事件几种事件几种事件几种事件几种事件7.4.47.4.4 调用事件调用事件(call event)(call event):表示发送对象发给接收对象的表示发送对象发给接收对象的调用消息的接收消息事件,并由该事件触发接收对象的状调用消息的接收消息事件,并由该事件触发接收对象的状态转换。态转换。 几种事件几种事件几种事件几种事件7.4.47.4.4 信号事件信号事件( (signal event)event):表示发送对象发给接收对象表示发送对象发给接收对象的信号消息的接收消息事件,并由该事件触发接收对象的的信号消息的接收消息事件,并由该事件触发接收对象的状态转换。状态转换。
13、几种事件几种事件几种事件几种事件7.4.47.4.4 改变事件改变事件( (change event)event):表示当布尔表达式的值改表示当布尔表达式的值改变为真时所激发的事件。系统将一直检测改变事件中的布变为真时所激发的事件。系统将一直检测改变事件中的布尔表达式的值,只要它的值改变为真,该事件就被激发。尔表达式的值,只要它的值改变为真,该事件就被激发。改变事件一般用关键字改变事件一般用关键字whenwhen开头的布尔表达式表示,当表开头的布尔表达式表示,当表达式的值由假变为真时,事件将发生。达式的值由假变为真时,事件将发生。 例如:例如:when (when (systemtimesys
14、temtime=12:00)=12:00),表示当系统时钟到,表示当系统时钟到达达1212点时,激发该事件。点时,激发该事件。 几种事件几种事件几种事件几种事件7.4.47.4.4 时间事件时间事件( (time event)event):是经过一定的时间或者到达是经过一定的时间或者到达某个绝对时间时发生的事件。某个绝对时间时发生的事件。 用关键字用关键字afterafter及时间值表示相对时间,例如,及时间值表示相对时间,例如,“after(10sec.)”after(10sec.)”,表示从现在算起,表示从现在算起,1010秒之后将发生秒之后将发生该事件。该事件。 用关键字用关键字atat
15、及时间值表示绝对时间,例如,及时间值表示绝对时间,例如,“at 2012-at 2012-10-1”10-1”表示到表示到20122012年年1010月月1 1日引发该事件。日引发该事件。 状态图状态图7.5.1 7.5.1 复合状态的含义复合状态的含义复合状态的含义复合状态的含义7.5.27.5.2 复合状态的性质复合状态的性质复合状态的性质复合状态的性质7.5.37.5.3 复合状态的类型复合状态的类型复合状态的类型复合状态的类型第第7讲讲7.5 复合状态复合状态 复合状态复合状态: :指包含子状态的状态。指包含子状态的状态。 例如,例如,ATMATM机的状态机图:机的状态机图:复合状态的
16、含义复合状态的含义复合状态的含义复合状态的含义7.5.17.5.1复合状态的性质复合状态的性质复合状态的性质复合状态的性质7.5.27.5.2 事物在复合状态时,意味着它处于其中一个子状态;事事物在复合状态时,意味着它处于其中一个子状态;事物如果在某一个复合状态的子状态,它一定处于该复合状物如果在某一个复合状态的子状态,它一定处于该复合状态。态。 复合状态允许嵌套,子状态可以是简单状态、复合状态,复合状态允许嵌套,子状态可以是简单状态、复合状态,也可以是子机状态。也可以是子机状态。 复合状态的性质复合状态的性质复合状态的性质复合状态的性质7.5.27.5.2 复合状态具有始态,转入一个复合状态
17、等价于转入其始复合状态具有始态,转入一个复合状态等价于转入其始态。态。 复合状态可以有终态,达到复合状态的终态,将从复合复合状态可以有终态,达到复合状态的终态,将从复合状态转出。状态转出。 复合状态转换的类型复合状态转换的类型复合状态转换的类型复合状态转换的类型7.5.37.5.3 外部转换外部转换:在复合状态与其他状态之间发生的状态转换,:在复合状态与其他状态之间发生的状态转换,以及复合状态的自转换。外部转换表示离开一个复合状态以及复合状态的自转换。外部转换表示离开一个复合状态进入另外一个状态,或者进入复合状态自身。进入另外一个状态,或者进入复合状态自身。 局部转换局部转换:复合状态内部子状
18、态之间的转换,或者复合复合状态内部子状态之间的转换,或者复合状态转换到其中某个子状态。状态转换到其中某个子状态。 状态图状态图7.6.1 7.6.1 并发状态的含义并发状态的含义并发状态的含义并发状态的含义7.6.27.6.2 同步状态同步状态同步状态同步状态第第7讲讲7.6 并发状态并发状态 并发状态并发状态: :在一个状态机或一个复合状态中,如果同时存在一个状态机或一个复合状态中,如果同时存在相互可以独立的几组状态,则称这几组状态是并发状态在相互可以独立的几组状态,则称这几组状态是并发状态(concurrent state)(concurrent state)。 例如:例如:并发状态的含义
19、并发状态的含义并发状态的含义并发状态的含义7.6.17.6.1 同步状态同步状态: :指多个并发区间中的状态在转换过程彼此存在指多个并发区间中的状态在转换过程彼此存在同步关系,一个区间中的一个转换需要等到另一个区间中的同步关系,一个区间中的一个转换需要等到另一个区间中的某个转换发生后才能进行。某个转换发生后才能进行。 例如:例如:同步状态同步状态同步状态同步状态7.6.27.6.2状态图状态图7.7.17.7.1 初始状态初始状态初始状态初始状态7.7.27.7.2 分叉与汇合分叉与汇合分叉与汇合分叉与汇合7.7.37.7.3 汇接汇接汇接汇接7.7.47.7.4 选择选择选择选择7.7.5
20、7.7.5 历史状态历史状态历史状态历史状态7.7.67.7.6 终止状态终止状态终止状态终止状态7.7.77.7.7 入口点与出口点入口点与出口点入口点与出口点入口点与出口点第第7讲讲7.7 控制结点控制结点初始状态初始状态 (initial state) :(initial state) :简称始态,表示状态机的起始,简称始态,表示状态机的起始,始态用实心园表示。一个复合状态或子机状态也有其始态。始态用实心园表示。一个复合状态或子机状态也有其始态。一个状态机可以有多个始态,存在多个始态的状态机一定存一个状态机可以有多个始态,存在多个始态的状态机一定存在状态的并发,在并发状态的一个区间只能有
21、一个始态。在状态的并发,在并发状态的一个区间只能有一个始态。初始状态表示一个状态机从此结点开始,但事物不会此状态初始状态表示一个状态机从此结点开始,但事物不会此状态停留,会立即转换到初始状态所连接的第下一个状态。停留,会立即转换到初始状态所连接的第下一个状态。初始状态只有输出,没有输入。初始状态只有输出,没有输入。初始状态初始状态初始状态初始状态7.7.17.7.1分叉分叉 (fork) :(fork) :指将一个转换分成两个或多个转换,用来描指将一个转换分成两个或多个转换,用来描述需要并发的状态。述需要并发的状态。 汇合汇合 ( (join) :) :指将从并发状态来的转换合并形成一个转换,
22、指将从并发状态来的转换合并形成一个转换,用来描述多个并发状态的控制同步。用来描述多个并发状态的控制同步。 分叉与汇合分叉与汇合分叉与汇合分叉与汇合7.7.27.7.2汇接汇接( (junction):):用来汇接多个转换,以简化转换路径。汇用来汇接多个转换,以简化转换路径。汇接的符号与初始状态的符号相同,但它允许连接多个转换的接的符号与初始状态的符号相同,但它允许连接多个转换的输入和多个输出。输入和多个输出。 汇接汇接汇接汇接7.7.37.7.3选择选择( (choice ):):用来实现根据条件判断,转换到不同目标状用来实现根据条件判断,转换到不同目标状态。用菱形表示选择,有一个输入边到选择
23、,多个输出边由态。用菱形表示选择,有一个输入边到选择,多个输出边由选择到目标状态结点。选择到目标状态结点。 选择选择选择选择7.7.47.7.4历史状态历史状态( (history state ):):为一个状态机或复合状态提供了为一个状态机或复合状态提供了一种在退出状态时记忆当前活动所处的子状态,并能够返回一种在退出状态时记忆当前活动所处的子状态,并能够返回到该子状态的机制。到该子状态的机制。 历史状态历史状态历史状态历史状态7.7.57.7.5历史状态历史状态终止状态终止状态( (final state ):):被简称为终态,表示一个状态机、一个被简称为终态,表示一个状态机、一个复合状态,
24、或一个区间状态的结束。终止状态用复合状态,或一个区间状态的结束。终止状态用“牛眼牛眼”符符号表示。号表示。 终止状态终止状态终止状态终止状态7.7.67.7.6终止状态终止状态 入口点入口点( (entrypoint ):):是其它状态转换到一个状态机或复合状是其它状态转换到一个状态机或复合状态的始态的一个进入点。入口点用小圆圈表示,被放置到状态的始态的一个进入点。入口点用小圆圈表示,被放置到状态机或复合状态的边界上。态机或复合状态的边界上。 出口点出口点( (exitpoint ):):是状态机或复合状态到其他状态的一个是状态机或复合状态到其他状态的一个转出点。出口点用带叉的小圆圈表示,也被
25、放置到状态机或转出点。出口点用带叉的小圆圈表示,也被放置到状态机或复合状态的边界上。复合状态的边界上。 入口点和出口点入口点和出口点入口点和出口点入口点和出口点7.7.77.7.7入口点和出口点的例子入口点和出口点的例子:状态图状态图第第7讲讲7.7 子机状态子机状态 子机状态子机状态( (submachine state ):):是指把一个状态机作为另外一是指把一个状态机作为另外一个状态机的子状态。包含子机状态的状态机被称为母状态机。个状态机的子状态。包含子机状态的状态机被称为母状态机。母状态机是以引用的方式把一个已经存在的状态机作为自己母状态机是以引用的方式把一个已经存在的状态机作为自己子
26、状态,在母状态机中子机状态作为一个子状态,但它自身子状态,在母状态机中子机状态作为一个子状态,但它自身仍是一个完整的状态机。仍是一个完整的状态机。 状态图状态图7.8.17.8.1 状态机的概念状态机的概念状态机的概念状态机的概念7.8.27.8.2 状态机的用途状态机的用途状态机的用途状态机的用途7.8.37.8.3 状态机建模规则状态机建模规则状态机建模规则状态机建模规则7.8.47.8.4 状态机建模状态机建模状态机建模状态机建模7.8.57.8.5 状态机与其它的比较状态机与其它的比较状态机与其它的比较状态机与其它的比较第第7讲讲7.8 状态机状态机 状态机状态机(state mach
27、ine ): 描述一个事物在其生命描述一个事物在其生命期中,所具有的状态,以及因事件触发而引起的期中,所具有的状态,以及因事件触发而引起的状态的各种转换。状态的各种转换。 状态机的概念状态机的概念状态机的概念状态机的概念7.8.17.8.1 对象状态建模对象状态建模: 用例状态建模用例状态建模: 交互状态建模交互状态建模: 构件状态建模构件状态建模:状态机的用途状态机的用途状态机的用途状态机的用途7.8.27.8.2 1 对象状态建模对象状态建模: 描述一个对象在其生命期中,所具有描述一个对象在其生命期中,所具有的状态,以及因事件触发而引起的状态的各种转换。的状态,以及因事件触发而引起的状态的
28、各种转换。 根据其用途,可分为根据其用途,可分为行为状态机行为状态机和和协议状态机协议状态机。状态机的用途状态机的用途状态机的用途状态机的用途7.8.27.8.2 行为状态机:行为状态机:描述一个对象在其生命周期中可能处的各种描述一个对象在其生命周期中可能处的各种状态,以及因事件的触发而引起状态之间转换的行为规则状态,以及因事件的触发而引起状态之间转换的行为规则与方式与方式 。前面的例子全部属于行为状态机。前面的例子全部属于行为状态机状态机的用途状态机的用途状态机的用途状态机的用途7.8.27.8.2 协议状态机:协议状态机:描述一个对象在其生命周期中可能处的状态,描述一个对象在其生命周期中可
29、能处的状态,以及因对对象所定义操作的一种允许的调用序列,使得对以及因对对象所定义操作的一种允许的调用序列,使得对象可能经历的状态变化过程。象可能经历的状态变化过程。 状态机的用途状态机的用途状态机的用途状态机的用途7.8.27.8.2 2 用例状态建模用例状态建模:一个用例在其执行过程中也会处于不一个用例在其执行过程中也会处于不同的状态,可以用状态机描述用例的状态,及其转换同的状态,可以用状态机描述用例的状态,及其转换 。状态机的用途状态机的用途状态机的用途状态机的用途7.8.27.8.2登录登录 3 交互状态建模交互状态建模:一个交互描述为完成某项功能,系统中一个交互描述为完成某项功能,系统
30、中若干个对象相互交互消息的过程。一个交互过程也会存在若干个对象相互交互消息的过程。一个交互过程也会存在多种状态,及其状态的转换,可以用状态机图来描述交互多种状态,及其状态的转换,可以用状态机图来描述交互状态的转换。状态的转换。 状态机的用途状态机的用途状态机的用途状态机的用途7.8.27.8.2订货交互的状态机:订货交互的状态机: 4 构件状态建模构件状态建模:构件封装了多个类,构件在其生命周期构件封装了多个类,构件在其生命周期中也会存在不同状态,可以用状态机对构件的状态及其转中也会存在不同状态,可以用状态机对构件的状态及其转换进行建模。换进行建模。 状态机的用途状态机的用途状态机的用途状态机
31、的用途7.8.27.8.2状态机建模应该遵循下面规则:状态机建模应该遵循下面规则: 1 1)初始状态只有转出,没有转入。初始状态的转出无触发事件、无监)初始状态只有转出,没有转入。初始状态的转出无触发事件、无监护条件。护条件。 2 2)状态机最少应该有一个初态,如果存在并发可以有多个初始状态。)状态机最少应该有一个初态,如果存在并发可以有多个初始状态。 3 3)状态机最少应该有一个终态,允许存在多个终态。)状态机最少应该有一个终态,允许存在多个终态。 4 4)除初态外,其他所有状态都至少应具有一个转入。)除初态外,其他所有状态都至少应具有一个转入。 5 5)除终态外,其他所有状态都至少应具有一
32、个转出。)除终态外,其他所有状态都至少应具有一个转出。 6 6)一个状态机中不允许存在两个同名的状态。)一个状态机中不允许存在两个同名的状态。状态机建模规则状态机建模规则状态机建模规则状态机建模规则7.8.37.8.3状态机建模的基本步骤:状态机建模的基本步骤: 1 1)确定对哪一个类元进行建模。)确定对哪一个类元进行建模。 2 2)从类元实例的创建(始态)到被撤销(终态),确定)从类元实例的创建(始态)到被撤销(终态),确定实例可能经历的所有状态。实例可能经历的所有状态。 3 3)分析实例从一种状态转换到另外一种状态可能发生的)分析实例从一种状态转换到另外一种状态可能发生的事件。事件。 4
33、4)确定当触发事件发生时,实例应该执行的动作。)确定当触发事件发生时,实例应该执行的动作。 5 5)对建模结果进行精化和细化。)对建模结果进行精化和细化。 6 6)检查与验证状态机图。)检查与验证状态机图。状态机建模状态机建模状态机建模状态机建模7.8.47.8.4 1 1)状态机图用于事物状态及其变换的建模)状态机图用于事物状态及其变换的建模; ;活动图用于过活动图用于过程流程建模程流程建模 。 2 2)状态结点表示事物一个状态,活动结点表示一个过程)状态结点表示事物一个状态,活动结点表示一个过程中的一个动作。中的一个动作。 3 3)交互图用于多个对象为完成一个任务的交互关系,状)交互图用于
34、多个对象为完成一个任务的交互关系,状态机图表示一个事物所处的状态,及其变换。态机图表示一个事物所处的状态,及其变换。 4 4)可以用状态机描述一个交互过程中所处的状态及其转)可以用状态机描述一个交互过程中所处的状态及其转换,用活动图描述一个交互执行的流程。换,用活动图描述一个交互执行的流程。 状态机与其他的图比较状态机与其他的图比较状态机与其他的图比较状态机与其他的图比较7.8.57.8.5状态图状态图7.9.17.9.1 手机状态机图手机状态机图手机状态机图手机状态机图7.9.27.9.2 电梯状态机图电梯状态机图电梯状态机图电梯状态机图7.9.37.9.3 银行账户状态机图银行账户状态机图
35、银行账户状态机图银行账户状态机图7.9.47.9.4 状态机建模状态机建模状态机建模状态机建模7.9.57.9.5 状态机与其它的比较状态机与其它的比较状态机与其它的比较状态机与其它的比较第第7讲讲7.9 状态机图例子状态机图例子手机状态机图手机状态机图手机状态机图手机状态机图7.9.17.9.1电梯状态机图电梯状态机图电梯状态机图电梯状态机图7.9.27.9.2银行账户状态机图银行账户状态机图银行账户状态机图银行账户状态机图7.9.37.9.3ICIC卡电话机状态机图卡电话机状态机图卡电话机状态机图卡电话机状态机图7.9.47.9.4付款确认付款确认已确认已确认订货状态机图订货状态机图订货状
36、态机图订货状态机图7.9.57.9.5教学进程教学进程教学进程教学进程 电子钟状态机图电子钟状态机图电子钟状态机图电子钟状态机图7.9.67.9.6教学进程教学进程教学进程教学进程操作系统进程状态机图操作系统进程状态机图操作系统进程状态机图操作系统进程状态机图7.9.77.9.7 小结小结小结小结教学进程教学进程教学进程教学进程 8.1 8.1 状态图状态图状态图状态图 8.1.1 8.1.1 状态图的概念状态图的概念状态图的概念状态图的概念 8.1.2 8.1.2 状态图的要素状态图的要素状态图的要素状态图的要素 8.1.3 8.1.3 状态状态状态状态 8.1.4 8.1.4 转移转移转移
37、转移 8.1.5 8.1.5 事件事件事件事件 8.1.6 8.1.6 状态图的应用状态图的应用状态图的应用状态图的应用第第第第7 7讲讲讲讲 状态图状态图状态图状态图 重要知识点重要知识点重要知识点重要知识点 8.2 8.2 组合结构图组合结构图组合结构图组合结构图 8.2.1 .2.1 组合结构图的提出组合结构图的提出组合结构图的提出组合结构图的提出 8.2.2 .2.2 组合结构图的概念组合结构图的概念组合结构图的概念组合结构图的概念 8.2.3 8.2.3 组合结构图的要素组合结构图的要素组合结构图的要素组合结构图的要素 8.2.3 8.2.3 协作协作协作协作 8.3 8.3 时序图
38、时序图时序图时序图 8.3.1 8.3.1 概述概述概述概述 8.3.2 8.3.2 时序图时序图时序图时序图 8.3.3 8.3.3 时序图的作用时序图的作用时序图的作用时序图的作用 1. 填空填空 状态图状态图用来描述一个特定的用来描述一个特定的( )所所有可能的状态有可能的状态,以及由于各种事件的发生以及由于各种事件的发生而引起的状态之间的而引起的状态之间的( )和变化。和变化。 问题:问题:问题:问题:? 1. 填空填空 状态图状态图用来描述一个特定的用来描述一个特定的(对象对象)所所有可能的状态有可能的状态,以及由于各种事件的发生以及由于各种事件的发生而引起的状态之间的而引起的状态之
39、间的(转移转移)和变化。和变化。 答案:答案:答案:答案:!问题:问题:问题:问题:教学进程教学进程教学进程教学进程2、在状态图中可以表示的概念有(、在状态图中可以表示的概念有( ).(多选)(多选) A 动作动作 B 事件事件 C 转移转移 D 用例用例?答案:答案:答案:答案:教学进程教学进程教学进程教学进程2、在状态图中可以表示的概念有(、在状态图中可以表示的概念有( ).(多选)(多选) A 动作动作 B 事件事件 C 转移转移 D 用例用例!问题:问题:问题:问题:教学进程教学进程教学进程教学进程3、在下面的符号和概念之间连线。、在下面的符号和概念之间连线。 A 接口接口 B 开始状
40、态开始状态 C 实体类实体类 D 结束状态结束状态?答案:答案:答案:答案:教学进程教学进程教学进程教学进程3、在下面的符号和概念之间连线。、在下面的符号和概念之间连线。 A 接口接口 B 开始状态开始状态 C 实体类实体类 D 结束状态结束状态!问题:问题:问题:问题:教学进程教学进程教学进程教学进程 4、说说事件与转移的区别。、说说事件与转移的区别。 ?答案:答案:答案:答案:教学进程教学进程教学进程教学进程 4、说说事件与转移的区别。、说说事件与转移的区别。 事件:特定时间发生的事情,可引起对事件:特定时间发生的事情,可引起对象状态的转移。象状态的转移。 转移:一个状态到另外一个状态的转
41、换。转移:一个状态到另外一个状态的转换。!问题:问题:问题:问题:教学进程教学进程教学进程教学进程5、判断下面说法的正确性、判断下面说法的正确性: A 用例图用于结构建模用例图用于结构建模 B 类图描述软件的状态结构类图描述软件的状态结构 C 对象图是软件模型不可缺少的图形对象图是软件模型不可缺少的图形 D 状态图建模必不可少状态图建模必不可少?答案:答案:答案:答案:教学进程教学进程教学进程教学进程5、判断下面说法的正确性、判断下面说法的正确性: A 用例图用于结构建模用例图用于结构建模 B 类图描述软件的状态结构类图描述软件的状态结构 C 对象图是软件模型不可缺少的图形对象图是软件模型不可
42、缺少的图形 D 状态图建模必不可少状态图建模必不可少!问题:问题:问题:问题:教学进程教学进程教学进程教学进程 6、说说活动图的三个作用。、说说活动图的三个作用。 ?答案:答案:答案:答案:教学进程教学进程教学进程教学进程 6、说说活动图的三个作用。、说说活动图的三个作用。 A 描述业务流程描述业务流程 B 描述工程组织描述工程组织 C 描述算法流程描述算法流程!问题:问题:问题:问题:教学进程教学进程教学进程教学进程 7、如果要对一个企业的工作流程建模,、如果要对一个企业的工作流程建模,下面四个图中(下面四个图中( )是最有用的。)是最有用的。 A 交互图交互图 B 活动图活动图 C 状态图
43、状态图 D 类图类图?答案:答案:答案:答案:教学进程教学进程教学进程教学进程 7、如果要对一个企业的工作流程建模,、如果要对一个企业的工作流程建模,下面四个图中(下面四个图中( )是最有用的。)是最有用的。 A 交互图交互图 B 活动图活动图 C 状态图状态图 D 类图类图!问题:问题:问题:问题:教学进程教学进程教学进程教学进程8、下面说法正确的是、下面说法正确的是: A 状态图可以用来描述用例状态变换状态图可以用来描述用例状态变换 B 状态图可以用来描述多个对象之间的状态图可以用来描述多个对象之间的关系关系 C 活动图可以用来描述对象操作算法的活动图可以用来描述对象操作算法的流程流程 D 活动图可以用来描述多个用例间多个活动图可以用来描述多个用例间多个关系关系?答案:答案:答案:答案:教学进程教学进程教学进程教学进程8、下面说法错误的是、下面说法错误的是: A 状态图可以用来描述用例状态变换状态图可以用来描述用例状态变换 B 状态图可以用来描述多个对象之间的状态图可以用来描述多个对象之间的关系关系 C 活动图可以用来描述对象操作算法的活动图可以用来描述对象操作算法的流程流程 D 活动图可以用来描述多个用例间多个活动图可以用来描述多个用例间多个关系关系!报告题:报告题:报告题:报告题:1、画出反映电话机工作的状态图、画出反映电话机工作的状态图教学进程教学进程教学进程教学进程