UML-04-状态图资料.ppt

  1. 1、本文档共42页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
4.1.1 什么是状态图 1. 状态图的概念 状态图(statechart diagram): 用来描述一个特定的对象所有可能的状态,以及由于各种事件的发生而引起的状态之间的转移和变化。 状态:是对象取值和链接的抽象。 状态图的例子: 4.1.2 状态图的要素 4.1.2 状态图的要素 事件 1. 事件的概念 事件(event): 是指在确定的时间和位置所发生的对对象起作用的事情。事件的发生将引起一些动作,使对象发生状态的转移。 活动:是对为响应事件而执行的行为的引用。活动表示法是“/”和活动的名称。 例如:按下右键/菜单显示,鼠标移动/高亮显示的菜单项更新 3. 事件的类型 信号是指从一个对象到另一个对象的明确的单向信息流动 ① 信号事件:是指发送或接收信号的事件。 ② 变化事件:因满足某种条件而引起的事件,变化条件用when表示。 ③ 时间事件:满足某一时间表达式而引起的事件,时间事件用after、when表示。 2 状态 1. 状态的概念 状态(state): 是指对象在其生命周期中,满足某些条件、执行某些活动、或等待某些事件时的一个状况。 状态指的是对象的状态。例如: ● 发票(对象)被支付(状态) ● 小车(对象)正在停着(状态) ● 发动机(对象)正在工作(状态) ● 电灯(对象)开着(状态) 2.状态的表示 ● 状态的表示:用圆角的矩形框表示状态。 ● 状态的要素: 1. 状态名 (黑体、首字母大写) 2. do活动(内部转移 :不改变对象的状态,也不执行entry和exit动作) 3. 进入、退出动作 4. 子状态 (嵌套在另外一个状态中的状态) do活动 (内部转移 :不改变对象的状态,也不执行entry和exit动作) 例如:警示灯在复印机卡纸状态下会闪烁。 表示方法:do/flash warning light 进入、退出动作 活动绑定在某状态的入口和出口 表示方法:在状态框内用entry/ 和exit/表示 3. 状态的类型 ① 初始状态(只能一个) ② 原子状态 ③ 终结状态(可以0或多个) ④ 组合状态 ⑤历史状态 ④ 组合状态 组合状态:含有子状态的状态,用于描述对象的某个复杂状态。组合状态也可以有初态和终态。 子状态:被嵌套在另外一个状态中的状态,可分为顺序子状态和并发子状态。 (1) 顺序子状态 对象在任何时刻只能处于组成状态的某一个子状态,即多个子状态之间是互斥的,不能同时存在。 IC卡电话机状态图 (2)并发子状态 并发子状态:指一个对象在同一时刻可以处于多种子状态。 聚合并发 对象内的并发 聚合并发 聚合并发 对象内的并发 对象内的并发 ⑤历史状态 记录组合状态退出时所处的子状态,以便再次进入从这个状态开始工作。 3 转移(迁移) 转移的概念 转移(transition): 是一个状态向另外一个状态的转换。对象处在源状态时,发生一个事件,如果条件满足,则执行相应的动作,对象由源状态转移到目标状态。 转移用箭头表示,如果没有标注事件,则本转移为自动转移。 警戒条件:是为了要让转移发生而必须为真的布尔表达式。 例如:当你早上出门的时候(事件),如果温度在冰点以下(条件),那你要戴手套(下一状态)。表示:出门[冰点以下] 3 转移 2. 转移的类型 ① 自转移: 源状态和目标状态为同一状态的转移。 ② 自动转移: 一个 状态根据本状态的有关情况,自动触发进入目标状态,在转移上没有事件。 4.1.3 状态图的作用 状态图: 用来描述一个对象在其生命周期中所表现出来的状态和行为。 当在系统建模过程中需要描述某个事物或对象的不同状态,以及状态之间转移的事件和动作时,用状态图。

文档评论(0)

基本资料 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档