收藏 分销(赏)

状态图与活动图.pptx

上传人:胜**** 文档编号:998771 上传时间:2024-04-10 格式:PPTX 页数:47 大小:589.21KB
下载 相关 举报
状态图与活动图.pptx_第1页
第1页 / 共47页
状态图与活动图.pptx_第2页
第2页 / 共47页
状态图与活动图.pptx_第3页
第3页 / 共47页
状态图与活动图.pptx_第4页
第4页 / 共47页
状态图与活动图.pptx_第5页
第5页 / 共47页
点击查看更多>>
资源描述

1、第八章 状态图与活动图主讲教师:阿都建华单位:软件工程系什么是状态图nUML中的状态图(statechart diagram)主要用于描述一个对象在其生存期间的动态行为,表现一个对象所经历的状态序列,引起状态转移的事件,以及因状态转移而伴随的动作n状态就是对象生命期中的某个条件或状况,在此期间对象将满足某些条件、执行某些活动或等待某些事件n一个状态图表现了一个对象的生存史,着重描述从一个状态到另一个状态的控制流状态图:一部电梯的运行方式状态图的图形元素n状态:用一个带圆角的矩形框表示,可以进一步划分为3个分隔框:名称框、内部转移框和嵌套状态图框名称框:标出状态的名称内部转移框:规定动作或活动,

2、但不改变对象的当前状态嵌套状态图:放置被嵌套的子状态图n转移:用实箭线表示,箭尾连接出发状态,即源状态,箭头连接到达状态,即目标状态在箭线上可以标示与该转移有关的选项:事件、保安条件和动作n初始状态:是模型元素的初始状态,代表一个状态图的起始点,是一个伪状态。初始状态用一个实心的圆表n终结状态:是模型元素的最后的状态,代表一个状态图的终止点,是一个伪状态。终结状态用一个圆中套一个实心圆表示初始状态终结状态n判定:判定是在状态图中的一个特定的位置,工作流在此按保安条件的取值而发生分支判定用空心小菱形表示n同步:同步可视化地定义了并发工作流的分劈(fork)与接合(join)分劈是一个源状态分为两

3、个或两个以上的目标状态接合是两个以上的源状态连接为一个目标状态同步在状态图中用一条粗短线表示,成为同步杆状态n状态(state)是指在对象的生命期中的某个条件或状况,在此期间对象将满足某些条件、执行某些活动或等待某些事件状态属性:对确定对象的状态有重要意义的属性一个状态有以下几个部分:状态名(name)、进入/退出(entry/exit action)、内部转移(internal transition)、子状态(substate)、延迟事件(deferred event)组合状态n简单状态:一个不含有嵌套状态的状态n组合状态:如果一个状态内嵌套了若干个状态,则称该状态为组合状态或超状态n子状态

4、:嵌套在另一个状态中的状态n使用组合状态的优点:避免了转移线交叉,使图面清晰,简化了状态图,更重要的是要清楚地表达了状态的结构关系,便于分清主次,分别对待顺序状态与并发状态n顺序状态:组合状态的子状态是一个一个执行的,不是并发存在的顺序状态与并发状态n并发状态:子状态是并发存在的两个并发的子状态图用一条虚线分隔n并发状态图:用于描述一个对象在某个时刻有多个并发的子状态机的情况,并发状态图是这些子状态图的组合历史状态n历史状态是一个伪状态,代表上次离开组合状态时的最后一个活动子状态,当再次进入这个组合状态时,可直接进入这个子状态n历史状态用一个含字母“H”的小圆圈表示n事件是一个有意义的事情的说

5、明,它位于特定的时间和空间点n在状态图中,事件是一个激励的出现,它定义一个触发子触发对象改变其状态n在UML中,事件分为4类:调用事件、变化事件、时间事件、信号事件事件n调用事件:表示对操作的调度格式:Event-name(comma-separated-parameter-list)n变化事件:如果一个布尔表达式中的变量发生变化,使得该布尔表达式的值相应地变化,从而满足某些条件,则这种事件称为变化事件变化事件用关键字when表示n时间事件:指满足某一时间表达式的情况的事件时间事件用关键字after或when表示n信号事件:表示对象接收了信号这种情况,往往会触发状态的转移在UML中,信号用构造

6、型signal表示信号事件和调用事件的表示格式是一样的动作n动作是一个可执行的原子计算,即动作是不可被中断的,其执行时间是可忽略不计的 进入动作和退出动作的例子:Entry/setMode(onTrack)Exit/setMode(offTrack)小结n状态图的基本概念、用途n状态图的图形元素n状态的定义及分类n组合状态的分类n事件、事件的分类、动作什么是活动图n活动图是系统的一种行为视图,它描述参与行为的对象类的活动的顺序,包括依赖于条件的行为和并发行为 没有可口可乐没有可口可乐 判断条件判断条件 判定活动判定活动 找到可找到可 口可乐口可乐 活动活动 找到咖啡找到咖啡 没有咖啡没有咖啡

7、同步条件同步条件找饮料找饮料将咖啡放到将咖啡放到 过滤器中过滤器中取一听取一听可口可乐可口可乐加水到加水到容器中容器中取出取出咖啡杯咖啡杯人人熄灭咖啡炉熄灭咖啡炉 点燃点燃咖啡炉咖啡炉把过滤器放把过滤器放到咖啡炉上到咖啡炉上冲调咖啡冲调咖啡终点终点喝饮料喝饮料倒咖啡倒咖啡n活动;活动;n泳道;泳道;n分支;分支;n分叉和汇合;分叉和汇合;n对象流;对象流;n注释体和注释连接。注释体和注释连接。活动图的基本要素活动图的基本要素u 活动活动n活动:活动是某件事情正在进行的状态,表现为由一系列动作组成的非原子的执行过程。nUML中的表示:泳道 泳道是活动图中的区域划分,每个泳道代表一个责任区,一个泳

8、道可由一个或多个类实现。分支对于同一触发事件,可以根据不同的对于同一触发事件,可以根据不同的警戒条件转向不同的活动,每个可能警戒条件转向不同的活动,每个可能的转移是一个分支。的转移是一个分支。分叉和汇合 表示系统或对象中的并发行为。分叉表示一个控制流被两个或多个控制流代替,经过分叉后,这些控制流是并发进行的;汇合正好相反。对象流 在活动图中可以出现对象,对象可以作为活动的输入或输出。对象流表示活动与对象之间的关系。注释体和注释连接注释体和注释连接n注释体:用于对UML实体进行文字描述。n注释连接:用于将注释体与要描述的实体相连,说明该注释体是针对该实体所进行的描述。活动图例子活动图例子课堂作业

9、某公司的设备采购流程设置为:A、由业务部门提出需求设备清单;B、将需求设备清单交采购部门建立采购采买单据;C、采购部门建立采购单据后,交财务部门,向财务部门申请款项,预支零用金;D、财务部门建立应付帐款单据后:核支款项;E、采购部门在收到款项后,进行采买;F、采买完成后,执行:(1)发票和剩余款项交财务部:(2)设备交业务部门;G、(a)采购部门:采购单据结案;(b)财务部门:帐款冲销结案;活动图的优点和缺点活动图的优点和缺点n优点:最适合支持并行行为,而且也是支持多线程编程的有力工具,可用于描述业务流程。n缺点:很难清楚地描述动作与对象之间的关系。虽然在活动旁标出对象名或者采用泳道技术可以定

10、义这种关系,但仍然没有交互图简单直接。n因此,像大多数建模技术一样,最好把活动图与其他技术结合使用。活动图与状态图的区别n活动图描述的是响应内部处理的对象类的行为,状态图描述的是对象类响应事件的外部行为。n活动图着重表现的是一个活动到另一个活动的控制流,是内部处理驱动的流程;而状态图着重表现的是从一个状态到另一个状态的流程,常用于有异步事件发生的情况活动图与交互图的区别n活动图着重表现的是活动的控制流,描述在对象之间传递的操作;而交互图着重表现的是对象到对象的控制流,描述对象之间传递的消息活动图的应用用途n分析Use Case在分析Use Case时需要理解系统将会发生哪些动作,行为之间的依赖

11、关系是什么,此时可以用活动图来验证Use Casen理解工作流程对理解业务处理过程十分有用,可以画出描述业务工作流的活动图与领域专家进行交流,明确业务处理操作是如何进行的,将会有怎样的变化n描述复杂过程的算法此时相当于UML版的程序流程图,常规的顺序、分支过程在活动图中都能得到充分体现n处理多线程应用利用活动图支持并发的特点,描述多线程应用的行为n活动图是一种用于系统的行为建模的工具,它能支持对并发行为的描述的特点,使其成为对工作流(业务流)建立模型的强大工具,尤其适合于多线程的程序的建模n主要缺点:动作与对象之间的连接关系不够清晰活动图的应用工作流建模何时可使用活动图何时可使用活动图n分析用例。能直观清晰地分析用例,了解应当采取哪些动作以及这些动作之间的依赖关系。一张完整的活动图是所有用例的集成图。n理解牵涉多个用例的工作流。在难于区分不同用例而对整个系统的工作过程又十分清楚时,可以先构造活动图,然后用切片技术派生用例图。n处理多线程应用。采用“分层抽象,逐步细化”的原则描述多线程。何时不应使用活动图何时不应使用活动图n显示对象间的合作。用交互图显示对象间的合作更简单直观。n显示对象在生命周期内的运转情况。活动图可以表示活动的激活条件,但不能表示一个对象的状态变换条件。因此,当要描述一个对象整个生命周期的运转情况时,应当使用状态图。

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服