欢迎来到天天文库
浏览记录
ID:36355643
大小:5.47 MB
页数:69页
时间:2019-05-09
《Chapter07-状态机图(状态图与活动图)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第7章:状态机图—状态图与活动图By王传栋南京邮电大学计算机学院软件工程系Chdwang@njupt.edu.cn课件下载:ftp://10.20.79.1状态机概念定义对象行为的规格说明对类实例生存周期建立模型,表示对象的生命历程说明对象对生存周期内可能检测到事件的响应描述对象随时间变化的动态行为描述对象在外部事件作用下的状态表示状态图:以状态为中心,对系统的动态方面建模活动图:以活动为中心,对计算流程和工作流程建模2CopyrightByChd.Wang,E-Mail:Chdwang@njupt.edu.cn状态图一个状态图有初始状态
2、、终止状态、状态、转换和分支等元素图元素的表示初始状态终止状态状态分支转换3CopyrightByChd.Wang,E-Mail:Chdwang@njupt.edu.cn初始状态和终止状态初始状态代表状态图的起始位置只能作为转换的源,而不能作为转换的目标一个状态图只有一个初始状态表示:实心圆终止状态状态图的终止点,模型元素的最后状态只能作为转换的目标,而不能作为转换的源一个状态图可以有多个终止状态表示:一个套有实心圆的空心圆4CopyrightByChd.Wang,E-Mail:Chdwang@njupt.edu.cn状态定义对象状态由对象
3、属性集的取值来确定表示:带圆角矩形,分为3个部分名称:对象所处状态的唯一标识内部转换:对象响应外部事件所执行的动作,内部转换发生时,不改变对象的状态嵌套状态图:标明此状态是复合状态5CopyrightByChd.Wang,E-Mail:Chdwang@njupt.edu.cn状态分类简单状态不包含子状态具有内部转换、入口动作和出口动作组合状态:包含子状态历史状态初次进入复合状态,要从嵌套的子状态的初始状态开始执行离开复合状态,再次进入时,希望从离开时所处于的子状态(历史状态)开始6CopyrightByChd.Wang,E-Mail:Chd
4、wang@njupt.edu.cn状态MP3播放机的状态图7CopyrightByChd.Wang,E-Mail:Chdwang@njupt.edu.cn状态组合状态的分类与表示顺序子状态:子状态之间是互斥关系复合状态被激活时,只能有一个子状态处于活动状态并发子状态:子状态之间是并发关系复合状态被激活时,包含2个或多个子状态处于活动状态注:子状态可能需要通信表示方法将子状态图嵌入复合状态中在复合状态中加入分解指示符8CopyrightByChd.Wang,E-Mail:Chdwang@njupt.edu.cn状态子状态机之间的通信并发的状态
5、机1和状态机2进行通信状态机1的实验中加入一个退出动作,退出时将lab设为true,lab同时又是状态机2的一个监护条件只有实验完成了,才能实施团队项目9CopyrightByChd.Wang,E-Mail:Chdwang@njupt.edu.cn转换定义外部事件作用下,满足特定条件时,对象在源状态下执行一系列动作,进入目标状态表示箭头线涉及概念源状态目标状态事件:外部作用于对象,触发对象状态改变监护条件:事件发生,验证监护条件,决定是否执行转换动作:转换被激发,则执行定义的动作活动:对象处于某状态时,进行的一系列动作10Copyright
6、ByChd.Wang,E-Mail:Chdwang@njupt.edu.cn转换事件:外部作用于对象,触发对象状态改变信号事件:通过发送或接收信号,实现对象之间通信异步机制:对象之间异步发送/接收信号对象之间可以形成泛化关系eg:鼠标、键盘的操作调用事件:调用对象的成员方法同步机制eg:11CopyrightByChd.Wang,E-Mail:Chdwang@njupt.edu.cn转换事件:外部作用于对象,触发对象状态改变改变事件根据属性的取值,触发事件时间事件根据时间流逝,触发事件延迟事件:对象处在某状态时,外部事件已产生,但没有执行(
7、相应)事件,而是延迟到其他状态响应eg:邮件发送12CopyrightByChd.Wang,E-Mail:Chdwang@njupt.edu.cn转换动作:转换被激发,则执行定义的动作转换被激发后,执行定义的动作动作示例:赋值语句、算术运算、发送信号、调用操作、创建和销毁对象、读取和设置属性值、包含多个动作的活动动作分类入口动作出口动作动作事件动作13CopyrightByChd.Wang,E-Mail:Chdwang@njupt.edu.cn转换活动:对象处于某状态时,进行的一系列动作表示:“do/动作名”,添加在状态的转换栏14Copy
8、rightByChd.Wang,E-Mail:Chdwang@njupt.edu.cn转换分类外部转换改变对象的状态外部事件作用下,满足特定条件[监护条件]时,对象在源状态下执行
此文档下载收益归作者所有