版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1页,课件共71页,创作于2023年2月状态机图(StatemachineDiagram)状态机(statemachine):一种逻辑上的流程机
用于描述一个对象在其生命周期中的动态行为表现对象响应事件所经历的状态序列以及伴随的动作状态图和活动图用于描述一个状态机(状态机图)活动图强调了从活动到活动的控制流状态图强调了从状态到状态的转换第2页,课件共71页,创作于2023年2月状态图状态图的作用描述一个特定对象的所有可能状态以及由于各种事件的发生,而引起的状态间的转移第3页,课件共71页,创作于2023年2月状态图状态图的组成节点是状态:包括初始状态和终止状态,用圆角矩形表示关系是转换(或转移):用状态之间包含一些文字描述的有向箭头线表示第4页,课件共71页,创作于2023年2月状态状态的几种类型1.初态和终态2.中间状态3.组合状态4.历史状态第5页,课件共71页,创作于2023年2月1.初态和终态初态(Startstate)显示状态图中状态机的执行的开始一个状态机只能有一个初态,因为每一个执行都是从相同的地方开始的。如果一个状态机用多张图描述,则多张图用同一个初态嵌套状态中可以使用新的初态终态(EndState)表示一个最后的或者终端状态终态的数目可以不确定第6页,课件共71页,创作于2023年2月2.中间状态中间状态的组成1)状态名(Name)2)进入/退出动作(entry/exitaction)第7页,课件共71页,创作于2023年2月2.中间状态3)内部转换(InternalTransition)不导致状态改变的转换,不会执行entry和exit动作语法格式:event事件名/动作表达式第8页,课件共71页,创作于2023年2月2.中间状态4)子状态(Substate)嵌套在另外一个状态中的状态第9页,课件共71页,创作于2023年2月2.中间状态4)子状态(Substate)嵌套在另外一个状态中的状态第10页,课件共71页,创作于2023年2月3.组合状态(compositestate)含有子状态的状态被称为组合状态1.顺序组合状态图2.并发组合状态图第11页,课件共71页,创作于2023年2月顺序组合状态图第12页,课件共71页,创作于2023年2月并发组合状态图在UML2.0中已经废弃了同步状态第13页,课件共71页,创作于2023年2月4.历史状态(Historystate)历史状态是一种伪状态可以存储退出组合状态时所处的子状态,则返回组合状态时可以直接回到相应的子状态第14页,课件共71页,创作于2023年2月转换的五要素源状态(SourceState):转换激发之前对象所处的状态目标状态(TargetState)
:转换完成后对象所处的状态触发事件(TriggerEvent)
:引起转换发生的事件监护条件(GuardCondition)
:方括号括起来的布尔表达式,用于决定是否激活转换动作(Action):转换激活时对象执行的操作第15页,课件共71页,创作于2023年2月智能水壶的状态图打开[有水]/烧水:打开:触发事件有水:监护条件烧水:动作第16页,课件共71页,创作于2023年2月信用卡状态图第17页,课件共71页,创作于2023年2月无触发转移定义:状态转移不是因为某个事件触发引起的而是由于对象完成了某些活动,而引起的状态的转变第18页,课件共71页,创作于2023年2月触发事件的四种类型信号事件对象之间通过发送信号和接收信号实现通信信号是两个对象之间通信的媒介,它是一种异步机制在计算机中,鼠标和键盘的操作均属于此类事件对于一个信号而言,对象一般都有相应的事件处理器,如onMouseClick()等调用事件调用某个对象的成员方法就是调用事件,它是一种同步的机制。例如:在烧水器的状态图中,turnOn就是一种调用事件,用来将开关置于“On”状态。第19页,课件共71页,创作于2023年2月触发事件的四种类型改变事件某个指定属性值为真时,事件得到触发。在对象生命周期内,一直在计算改变事件中的属性值。当属性值为真时,事件触发,计算停止例如:when(temperature>100)/alerm()时间事件当时间流逝到某个时刻,触发事件对对象起作用它可以指定为绝对形式,也可以指定为相对形式。第20页,课件共71页,创作于2023年2月其他事件延迟事件(Deferredevent)延迟到下一状态中处理的事件是一种特殊的事件,它是指该事件不会触发状态的转换,当对象处于该状态时事件不会丢失,但会被延迟执行例如,当E-mail程序中正在发送第一封邮件时,用户下达发送第二封邮件执令就会被延迟,但第一封邮件发送完成后,这封邮件就会被发送。这种事件就属于延迟事件第21页,课件共71页,创作于2023年2月转换类型第22页,课件共71页,创作于2023年2月状态图应用为对象生命周期建模:主要描述对象能够响应的事件、对这些事件的响应以及过去对当前行为的影响为反应型对象建模:这个对象可能处于的稳定状态、从一个状态到另一个状态之间的转换所需的触发事件,以及每个状态改变时发生的动作状态机图既可以用来表示一个业务领域的知识,也可以用来描述设计阶段对象的状态变迁第23页,课件共71页,创作于2023年2月绘制状态机图的步骤寻找主要的状态确定状态之间的转换细化状态内的活动与转换用复合状态来展开细节第24页,课件共71页,创作于2023年2月状态图(购物网站)当从状态“结账”和“显示购物车”返回子状态“显示索引信息”时,将进入的是离开时的历史状态。也就是说,转到购物或结账区之后,再回到“浏览目录”的页面时,其中的内容是不变的,仍保留原来的信息。第25页,课件共71页,创作于2023年2月状态图(CD播放机)第26页,课件共71页,创作于2023年2月状态图(智能卡系统)阅读状态图第27页,课件共71页,创作于2023年2月状态图(订单处理1)订单处理办理发货之前需要检查商品,查看是否齐全。如果缺部分商品,则进入等待状态(直至商品齐全)货品发出之前,任何时候都可以取消订单第28页,课件共71页,创作于2023年2月状态图(订单处理2)第29页,课件共71页,创作于2023年2月状态图(订单处理3)第30页,课件共71页,创作于2023年2月状态图(航班预订1)第31页,课件共71页,创作于2023年2月状态图(航班预订2)细化状态内的活动与转换第32页,课件共71页,创作于2023年2月状态图(航班预订3)使用复合状态第33页,课件共71页,创作于2023年2月课堂练习绘制电脑工作时的状态转换图第34页,课件共71页,创作于2023年2月课堂练习绘制手机工作时的状态转换图第35页,课件共71页,创作于2023年2月课堂练习(电梯系统的状态图)电梯开始处于空闲状态(idle),当有人按下按钮要求使用电梯时(事件isrequired发生),电梯进入运行状态(run)。如果电梯的当前楼层比想要的楼层高时(监护条件[currentFloor>desiredFloor]成立),电梯进入下降状态(movingdown);反之,如果电梯的当前楼层比想要的楼层低时(监护条件[currentFloor<desiredFloor]成立),电梯进入上升状态(movingup);如果电梯的当前楼层与想要的楼层相同时(监护条件[currentFloor=desiredFloor]成立),电梯门打开(dooropen)。在电梯上升或下降期间,每经过一个楼层就判断监护条件[currentFloor=desiredFloor]是否成立,若不成立,继续移动,若成立,就进入停止状态(stop),15秒后,电梯门自动打开(dooropen),2分钟后,电梯门自动关上(doorclose),如果有更多的电梯使用要求,进入运行状态(run),反之,则进入空闲状态(idle)。第36页,课件共71页,创作于2023年2月课堂练习(电梯系统的状态图)第37页,课件共71页,创作于2023年2月带有复杂转换的状态图第38页,课件共71页,创作于2023年2月补充说明(状态图)适用情况:适用于描述跨越多个用例的单个对象行为不适合描述多个对象之间的行为协作故需与其他技术(类图、对象图)结合使用注意事项:不要花费大量时间和精力为系统中的每个类都画对应的状态图开发人员只关心关键类的行为,只需为这些类建立状态图,帮助理解所研究的问题第39页,课件共71页,创作于2023年2月活动图(ActivityDiagram)概念:由活动节点和转换流程构成的状态机图作用:描述系统或业务的活动序列构成的控制流用来描述事物或对象的活动变化流程为系统或业务工作流程和用例实现建模第40页,课件共71页,创作于2023年2月活动图(ActivityDiagram)活动图与流程图:流程图:表示算法的执行序列、过程、判定点、分支和循环活动图:支持并行活动,支持多线程编程活动图的应用:描述类的操作描述用例的执行过程活动图的缺点:难以清楚地表示对象和动作之间的关系第41页,课件共71页,创作于2023年2月活动图(ActivityDiagram)与状态图的区别状态图由某个对象的状态序列组成,以状态为中心活动图由某个过程中若干对象的活动序列组成,以活动为中心第42页,课件共71页,创作于2023年2月活动图(ActivityDiagram)组成元素活动节点起点和终点(即初态和终态)中间活动节点转换流程转换分支与合并分叉与汇合第43页,课件共71页,创作于2023年2月活动节点活动节点是活动图中最主要的元素之一,用来表示工作过程中的一个(或多个)工作步骤表示方法:用一个圆角矩形表示,活动的名称写在圆角矩形内部活动节点的表示第44页,课件共71页,创作于2023年2月活动节点动作状态:原子性的动作或操作的执行状态,不能被外部事件的转换中断活动状态:非原子性的,可以分解成其他子活动或动作状态,可以从外部中断。可以在图标中给出入口动作和出口动作等信息组合活动:一种内嵌活动图的状态,用于表示复杂的活动第45页,课件共71页,创作于2023年2月转换(StateTransition)作用:当一个活动结束时,活动控制流马上转向下一个活动节点表示方法:一条带箭头的直线转换的表示第46页,课件共71页,创作于2023年2月分支与合并(决策)程序控制流的三种基本结构:顺序、分支、循环分支:用于将一条转换路径分成多个部分,每一部分都有单独的监护条件和不同的结果当动作流遇到分支时,会根据监护条件的真假来判定动作的流向注意:分支的每个路径的监护条件应该是互斥的,因此只有一条路径的转换会被激发分支的表示条件互斥第47页,课件共71页,创作于2023年2月分支与合并(决策)合并:两个或者多个控制路径在此汇合的情况,表示从对应分支开始的条件行为的结束合并和分支都使用菱形表示,且常常成对使用省略表示分支与合并的菱形不会丢失任何信息第48页,课件共71页,创作于2023年2月分叉与汇合(同步)分叉与汇合:都用来表示并发执行的活动分叉线和汇合线(同步线):都使用加粗的水平线或垂直线段表示分叉:一个进入转换,多个离去转换表明系统从单一的过程变为过个并发的过程第49页,课件共71页,创作于2023年2月分叉与汇合(同步)汇合:多个进入转换,一个离去转换表示系统将结束多个并发过程,再次进入单一的过程注意:当且仅当所有的并发分支都到达汇合点后,活动流程才能进入下一个活动节点第50页,课件共71页,创作于2023年2月示例(同步)商品打包与付款两个活动是并行的即:这两个活动的执行顺序是任意的可以先后进行可以同时交叉进行第51页,课件共71页,创作于2023年2月泳道泳道技术:将活动用线条分成一些纵向的矩形,每个矩形属于一个特定的对象或部门对象的名字放在泳道的顶部属于该对象的所有活动都被放在泳道的区域内第52页,课件共71页,创作于2023年2月绘制顺序方法一:先确定参与活动的对象然后分析在整个过程中每个对象的活动方法二:先对活动进行全局的分析再将活动分配各具体的对象建议:两种方法各有利弊根据个人习惯和具体情况而定第53页,课件共71页,创作于2023年2月分类(1.简单活动图)第54页,课件共71页,创作于2023年2月分类(1.简单活动图)第55页,课件共71页,创作于2023年2月分类(2.标识泳道的活动图)泳道(SwimLane):用于有效地标识每个活动的实施者。表示方法:用一条垂直的线将活动分开每个泳道都有一个唯一的名称每个活动节点、分支必须只属于一个泳道;而转换,分叉与汇合是可以跨泳道的。第56页,课件共71页,创作于2023年2月分类(2.标识泳道的活动图)第57页,课件共71页,创作于2023年2月分类(3.标识对象流的活动图)某些活动中,对象与节点活动是紧密相关的:活动节点创建、删除或输出一些对象经过活动处理,修改了对象的状态对象流描述了活动与对象之间的关系,表示了活动使用对象以及活动对对象的影响。用户可以在活动图中把相关的对象标识出来标识哪些对象进入活动节点标识哪些对象从活动节点中输出第58页,课件共71页,创作于2023年2月分类(3.标识对象流的活动图)第59页,课件共71页,创作于2023年2月注册(活动图)第60页,课件共71页,创作于2023年2月构建活动图1.业务分析阶段活动图中每一条泳道表示一个职责单位(个人或部门),每个泳道的执行者体现了职能部门的工作职责、业务范围、部门之间的交互关系2.系统分析和设计阶段用活动图对对象的职责进行建模,每一个对象占据一个泳道,而活动是该对象的成员方法本阶段采用带泳道活动图的情况较少,因为序列图会更好地体现对象间的交互关系。活动图更适合于对复杂用例中的事件流进行建模第61页,课件共71页,创作于2023年2月课堂练习一个咨询公司会见新客户时的业务过程:1、公司业务员打电话给客户确定一个约定2、如果约定地点是在公司之内,那么公司中的技术人员就要为会面准备一间会议室3、如果约定地点是公司之外,那么咨询顾问就要用膝上电脑准备一份陈述报告4、咨询顾问与顾客在约定的时间和地点见面5、业务员随后给他们准备好会议用纸6、如果会议产生了一个问题陈述,咨询顾问就根据问题陈述建立一个提案并把该提案发给客户。 请分别建立简单活动图和标识泳道的活动图第62页,课件共71页,创作于2023年2月第63页,课件共71页,创作于2023年2月第64页,课件共71页,创作于2023年2月1、确定需求用例系统管理员查看修改员工信息系统管理员是参与者,其在查看修改员工信息的活动中,共有3个用例:1.登录:要进入系统,首先要登录。2.查询员工信息:进入系统后可以选择查询不同员工的信息。3.修改员工信息:需要修改某些员工的部分信息,比如员工晋升后需要修改的员工的职务和工资信息。第65页,课件共71页,创作于2023年2月2、确定用例路径
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 游戏主播面试经验及带货策略解析
- 平面设计岗位晋升路径与标准
- 食品加工厂设备保养与维修工作安排
- 质量检测仪器设备使用与管理规定
- 金融产品销售经理岗位面试技巧详解
- 税务会计经理招聘面试指南
- 医疗设备质量控制部负责人面试指南
- 南充医学就业市场分析
- 班级六一儿童节活动方案
- 通信工程师职位面试技巧解析
- 部编版新教材道德与法治二年级下册《1.身心健康很重要》教案设计
- 培智感统教案(全)
- 第2章 光纤和光缆
- 水土保持单位工程验收鉴定书
- 2023年常州纺织服装职业技术学院单招职业适应性测试题库及答案解析
- S3099-三期DCS分散控制系统技术协议
- 2008年度益阳市公务员录用考试面试时间(第一批第一组)安
- 永磁同步电动机原理和分析课件
- 前途理想教育主题班会
- 《普通话》教学讲义课件
- 常用 邮政储蓄银行汇款单(样本)
评论
0/150
提交评论