UML动态建模---状态图_第1页
UML动态建模---状态图_第2页
UML动态建模---状态图_第3页
UML动态建模---状态图_第4页
UML动态建模---状态图_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、http:/http:/中科院计算所职业培训中心中科院计算所职业培训中心走技能培训之路走技能培训之路为企业信息化加油为企业信息化加油中科院计算所计算机职业技能培训中心中科院计算所计算机职业技能培训中心 UMLUML动态建模动态建模-状态图状态图杨少波杨少波http:/http:/中科院计算所职业培训中心中科院计算所职业培训中心走技能培训之路走技能培训之路为企业信息化加油为企业信息化加油UMLUML动态建模动态建模-状态图状态图在本讲您能了解如下内容在本讲您能了解如下内容q状态机和状态状态机和状态q状态图中的状态类型状态图中的状态类型q复合状态的说明复合状态的说明q状态的转移状态的转移q状态图的

2、建模过程状态图的建模过程q状态图的应用示例状态图的应用示例http:/http:/中科院计算所职业培训中心中科院计算所职业培训中心走技能培训之路走技能培训之路为企业信息化加油为企业信息化加油1 1、UMLUML状态图中的状态机和状态状态图中的状态机和状态(1 1)状态机)状态机 它是展示状态与状态转换的图,在它是展示状态与状态转换的图,在UMLUML里,状态机用里,状态机用于对具有事件驱动的特性的动态行为建模。于对具有事件驱动的特性的动态行为建模。(2 2)状态)状态 状态是状态机的重要组成部分,所有对象都具有状状态是状态机的重要组成部分,所有对象都具有状态,状态是对象执行了一系列活动的结果。

3、态,状态是对象执行了一系列活动的结果。 当某个事件发生后,对象的状态将发生变化。当某个事件发生后,对象的状态将发生变化。2 2、状态图(、状态图(State DiagramState Diagram)(1 1)含义:含义:用来描述一个特定对象的所有可能状态及用来描述一个特定对象的所有可能状态及其引起状态转移的事件。其引起状态转移的事件。http:/http:/中科院计算所职业培训中心中科院计算所职业培训中心走技能培训之路走技能培训之路为企业信息化加油为企业信息化加油(2 2)作用)作用p大多数面向对象技术都用状态图表示单个对象在其生大多数面向对象技术都用状态图表示单个对象在其生命周期中的行为命

4、周期中的行为p同时也显示了该实体如何根据当前所处的状态对不同同时也显示了该实体如何根据当前所处的状态对不同的时间做出反应的。的时间做出反应的。(3 3)什么场合应该采)什么场合应该采用状态图用状态图 当行为的改变和当行为的改变和状态有关时才创建状状态有关时才创建状态图。态图。 右面表示右面表示一个图书一个图书销售业务中的销售业务中的“销售记销售记录录”的状态图,随着用的状态图,随着用户产生不同的行为,该户产生不同的行为,该“销售记录销售记录”的状态也的状态也发生变化发生变化http:/http:/中科院计算所职业培训中心中科院计算所职业培训中心走技能培训之路走技能培训之路为企业信息化加油为企业

5、信息化加油3 3、为什么要使用状态图、为什么要使用状态图(1 1)了解类的动态行为)了解类的动态行为 分析人员和开发人员通过状态图能够更好地了解类分析人员和开发人员通过状态图能够更好地了解类的动态行为,使编码前能讨论和建立复杂逻辑。的动态行为,使编码前能讨论和建立复杂逻辑。(2 2)通常我们创建一个通常我们创建一个UMLUML状态图是为了以下的研究状态图是为了以下的研究目的:目的:p研究类、角色、子系统、或组件的复杂行为。研究类、角色、子系统、或组件的复杂行为。p建模实时系统。建模实时系统。4 4、状态图中定义的状态类型、状态图中定义的状态类型(1 1)状态图中定义的状态有)状态图中定义的状态

6、有初态、终态、中间状态、初态、终态、中间状态、复合状态复合状态http:/http:/中科院计算所职业培训中心中科院计算所职业培训中心走技能培训之路走技能培训之路为企业信息化加油为企业信息化加油(2 2)初态)初态-状态图的起始点,在状态图的起始点,在UMLUML中把初始状态放中把初始状态放置在左上角并且初始状态被建模成一个实心圈。置在左上角并且初始状态被建模成一个实心圈。(3 3)终态)终态-是状态图的终点是状态图的终点q在在UMLUML中把最终状态放置在右下角,并且最终状态被中把最终状态放置在右下角,并且最终状态被建模为一个带边界的实心圆;建模为一个带边界的实心圆;q一个状态图只能有一个初

7、态,而终态则可以有多个。一个状态图只能有一个初态,而终态则可以有多个。(4 4)中间状态)中间状态http:/http:/中科院计算所职业培训中心中科院计算所职业培训中心走技能培训之路走技能培训之路为企业信息化加油为企业信息化加油5 5、复合状态的说明、复合状态的说明(1 1)什么示复合状态)什么示复合状态q将可以进一步细化为多个子状态的状态称作复合状将可以进一步细化为多个子状态的状态称作复合状态。态。q子状态之间一般会有子状态之间一般会有“或或”和和“与与”关系两种形式。关系两种形式。(2 2)复合状态中的或关系)复合状态中的或关系说明在某一时刻仅可到达一个子状态。例如说明在某一时刻仅可到达

8、一个子状态。例如, ,一个一个处于行驶状态的汽车处于行驶状态的汽车, ,在在 行驶行驶 这个复合状态中有向前和这个复合状态中有向前和向后两个不同的子状态向后两个不同的子状态, ,在某一时刻汽车要么向前在某一时刻汽车要么向前, ,要么向要么向后。后。http:/http:/中科院计算所职业培训中心中科院计算所职业培训中心走技能培训之路走技能培训之路为企业信息化加油为企业信息化加油(3 3)复合状态中的与关系)复合状态中的与关系q说明复合状态中在某一时刻可同时到达多个子状态说明复合状态中在某一时刻可同时到达多个子状态( (称为并发子状态称为并发子状态) )。q具有并发子状态的状态图称为并发状态图。

9、具有并发子状态的状态图称为并发状态图。http:/http:/中科院计算所职业培训中心中科院计算所职业培训中心走技能培训之路走技能培训之路为企业信息化加油为企业信息化加油6 6、状态的转移(或者转换)、状态的转移(或者转换)(1 1)转换)转换 转换是状态间的关联,它们用于对一个实体的不同转换是状态间的关联,它们用于对一个实体的不同状态间的关系建模;状态间的关系建模;(2 2)UMLUML中的表示方式中的表示方式q在状态图中采用带箭头的连线来表示(状态的变迁在状态图中采用带箭头的连线来表示(状态的变迁通常是由事件触发的通常是由事件触发的, ,此时应在转移上标出触发转移此时应在转移上标出触发转移

10、的事件表达式;的事件表达式;q如果转移上未标明事件如果转移上未标明事件, ,则表示在源状态的内部活则表示在源状态的内部活动执行完毕后自动触发转移)。动执行完毕后自动触发转移)。http:/http:/中科院计算所职业培训中心中科院计算所职业培训中心走技能培训之路走技能培训之路为企业信息化加油为企业信息化加油(3 3)转换的组成)转换的组成 在在UMLUML中,转换由四个部分组成,它们分别是:中,转换由四个部分组成,它们分别是:q源状态(源状态(Source StateSource State)q目标状态(目标状态(Target StateTarget State)q触发事件(触发事件(Trig

11、ger EventTrigger Event)q和监护条件(和监护条件(Guard ConditionGuard Condition)7 7、状态图的应用场合、状态图的应用场合(1 1)当行为的改变和状态有关时才创建状态图,因为通)当行为的改变和状态有关时才创建状态图,因为通过状态图可以显示对象在其生命周期中依次经历的各种过状态图可以显示对象在其生命周期中依次经历的各种状态。状态。(2 2)但要表示由内部生成的操作(而非外部事件)驱动)但要表示由内部生成的操作(而非外部事件)驱动的事件流,则使用活动图。的事件流,则使用活动图。http:/http:/中科院计算所职业培训中心中科院计算所职业培训

12、中心走技能培训之路走技能培训之路为企业信息化加油为企业信息化加油8 8、状态图的应用示例、状态图的应用示例(1 1)下面给出一个)下面给出一个AccountAccount对象的状态图示例对象的状态图示例http:/http:/中科院计算所职业培训中心中科院计算所职业培训中心走技能培训之路走技能培训之路为企业信息化加油为企业信息化加油(2 2)一个图书销售业务的状态图如下)一个图书销售业务的状态图如下http:/http:/中科院计算所职业培训中心中科院计算所职业培训中心走技能培训之路走技能培训之路为企业信息化加油为企业信息化加油(3 3)库存状态图如下)库存状态图如下http:/http:/中科院计算所职业培训中心中科院计算所职业培训中心走技能培训之路走技能培训之路为企业信息化加油为企业信息化加油9 9、状态图的建模过程、状态图的建模过程 在使用状态图对系统反映型对象建模时,可以参照在使用状态图对系统反映型对象建模时,可以参照以下步骤进行:以下步骤进行:(1 1)识别一个要对其生命周期进行描述的参与行为的)识别一个要对其生命周期进行描述的参与行为的类。类。(2 2)对状态建模,即确定对象可能存在的状态。)对状态建模,即确定对象可能存在的状态。(3 3)对事件建模,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论