- 1、本文档共47页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第8-状态图1资料
第8章 状态图 8.1 状态机 8.2 状态图 8.3 状态 8.4 事件 8.5 转换 8.6 状态图建模技术 8.5 实例——图书馆管理系统的状态图 8.1 状态机 8.2 状态图 8.2.1 状态 8.2.2 转换 8.2.3 初始状态 8.2.4 终止状态 8.2.5 判定 8.3 状态 8.7 实例—图书馆管理系统的状态图 8.7.1 使用Rose绘制状态图的步骤 8.7.2 图书馆管理系统的状态图 8.7.1 使用Rose绘制状态图的步骤 1. 创建状态图 2. 加入开始状态和终止状态 3. 增加状态 4. 增加转换 5. 增加历史状态 8.5.4 复合转换 复合转换由简单转换组成,这些简单转换通过分支判定、分叉或接合组合在一起。由判定参与的转换就是复合转换。除了简单的两个分支判定之外还可以有多条件的分支判定。多条件的分支判定又分为链式的和非链式的分支,这两种分支如下图所示。 链式分支 非链式分支 状态机描述了对象的具有事件驱动的动态行为,对象动作的执行、状态的改变都是以特定事件的发生为前提的,触发事件就是能够引起状态转换的事件。触发事件可以是信号、调用和时间段等。 8.5.5 触发事件 8.5.6 监护条件 转换可能具有一个监护条件,监护条件是触发转换必须满足的条件,它是一个布尔表达式。当事件被触发时,监护条件被赋值,如果布尔表达式的值为真,那么转换被触发,为假则不会引起转换,监护条件只能在触发事件发生时被赋值一次。 8.5.7 动作 动作是一组可执行语句或者计算处理过程。动作可以包含发送消息给另一个对象、操作调用、设置返回值、创建和销毁对象等。动作也可以是一个动作序列,即一系列简单的动作的组合。动作的执行时间非常短,与外界事件所经历的时间相比是可以忽略的,因此,在动作的执行过程中不能再插入其他事件。下表列出了UML中的各种动作。 terminate 对象的自我销毁 中止 opertionComplete(arg) 创建一个信号实例并将其发送到目标对象(一个或者一组) 发送 return value 为调用者指定返回值 返回 object.destroy() 销毁一个已存在的对象 销毁 new Student() 创建一个新对象 创建 setname(arg) 调用目标对象的一个操作,等待操作执行完成,可能会有返回值 调用 target:=expression 对一个变量赋值 赋值 语法 对动作的描述 动作种类 UML中的各种动作 8.6 状态图建模技术 状态图一般用于对系统中的某些对象和系统的行为建模。建模的时候要找出对象所处的状态、触发状态改变的动作,以及对象状态改变时应执行的动作。具体建模步骤如下: (1)找出适合用模型描述其行为的类 (2)确定对象可能存在的状态 (3)确定引起状态转换的事件 (4)确定转换进行时对象执行的相应动作 (5)对建模的结果进行相应的精化和细化 状态机:用于描述一个对象在其生存期间的动态行为,表现对象响应事件所经历的状态序列以及伴随的动作。 状态图:用来描述状态机的,一个状态机可以用多张状态图来描述。 门的状态 状态机是展示状态与状态转换的图。 状态机由状态、转换、事件、活动和动作5部分组成。 (1)状态表示一个模型在其生存期内的状况,一个状 态的生存期是有限的一个时间段。 (2)转换表示两个不同状态之间的联系,事件可以触 发状态之间的转换。 (3)事件是在某个时间产生的,可以触发状态转换。 (4)活动是在状态机中进行的一个非原子的执行,由 一系列动作组成。 (5)动作是一个可执行的原子计算,它导致状态的变 更或者返回一个值。 状态图主要用于表现从一个状态到另一个状态的控制流。它不仅可以展现一个对象拥有的状态,还可以说明事件如何随着时间的推移来影响这些状态。 状态图由表示状态的节点和表示状态之间转换的带箭头的直线组成。若干个状态由一条或者多条转换箭头连接,状态的转换由事件触发。组成UML的图形元素有状态、转换、初始状态、终结状态和判定等,一个简单的状态图如下图所示。 一个简单的状态图示意图 状态是状态机的重要组成部分,它描述了状态机所建模对象的动态行为产生的结果。 状态由一个带圆角的矩形表示,状态图的图标可以分为3部分:名称、内部转换和嵌套状态图。 名称 内部转换 嵌套状态图 状态图的图标表示 (1)名称。名称表示状态的名字,通常用字符串表示。 (2)内部转换。在内部转换中可以包含进入或者退出此状态应该执行的活动或动作,它们将响应对象所接收到的事件,但是不改变对象的状态。 (3
文档评论(0)