欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    教学课件PPT状态图和活动图.ppt

    • 资源ID:2262069       资源大小:298.02KB        全文页数:41页
    • 资源格式: PPT        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    教学课件PPT状态图和活动图.ppt

    第7章 状态机图(状态图和活动图),UML理论与实践,2,状态图,状态图通常是对类描述的补充,它说明该类的对象所有可能的状态,以及哪些事件将导致状态的改变。状态图描述了对象的动态行为,是一种对象生存周期的模型。一个状态图包括一系列的状态以及状态之间的迁移。,UML理论与实践,3,状态图中的基本符号,UML理论与实践,4,状 态,状态由状态名、状态变量和活动三部分组成。状态变量是状态图所显示的类的属性,也可以是临时变量。活动部分列出了处于该状态时要执行的事件和动作。有3个标准事件:entry事件用于指明进入该状态时的特定动作。exit事件用于指明退出该状态时的特定动作。do事件用于指明在该状态中时执行的动作。,UML理论与实践,5,说明:所有对象都具有状态,状态是对象执行了一系列活动的结果。当某个事件发生后,对象的状态将发生变化。状态图中定义的状态有:初态、终态、中间状态、组合状态、历史状态等。一个状态图只能有一个初态,而终态可以有多个,也可以没有终态。,UML理论与实践,6,事件的语法如下:event-nameopt(argument list)opt guard-condition opt/activity-expressionopt 其中,事件名可以是包括三个标准事件(entry,exit,do)在内的任何事件,参数表表示该事件所需的参数,警戒条件是一布尔表达式,动作表达式是该事件将被执行的动作。,UML理论与实践,7,UML理论与实践,8,画状态图的步骤,列出对象具有的所有状态 状态分为起始状态、结束状态和中间状态。一张状态图可以有一个起始状态和若干个(可以为0)结束状态。标识导致状态转换的事件 当一个对象接收到某个事件时,会导致从一个状态转换到另一个状态,称为状态迁移(transition)。为状态和迁移定义状态变量和动作 在状态迁移和/或处于某个状态中时都可能需要执行一些相应的动作,综合这些动作,使得对象完成相应的功能。,UML理论与实践,9,UML理论与实践,10,状态迁移,1.状态迁移 引起状态迁移的原因通常有两种:(1)当标在迁移箭头上的事件出现时会引起状态的迁移。此时,首先执行引起迁移的事件中的动作,然后迁移到新的状态,执行新状态中的内部动作(包括entry、exit、do以及用户定义的动作)。在执行do或用户定义的动作时,可以被外部的事件(将导致该状态的迁移)中断,但entry动作和exit动作是不能被中断的,并且它们总是要执行完的。,UML理论与实践,11,当状态图中相应的迁移上未指明事件时,表示当位于迁移箭头源头的状态中的内部动作(包括entry、exit、do以及用户定义的动作)全部执行完后,该状态迁移被自动触发。,UML理论与实践,12,UML理论与实践,13,事件 条件/动作表达式说明:事件:指已发生并可能引发某种活动的一件事;条件:由方括号围起的关系或逻辑表达式;动作表达式:一个触发状态迁移时可执行的过程表达式;,状态迁移的语法如下:,UML理论与实践,14,UML理论与实践,15,事 件,事件是指已发生并可能引发某种活动的一件事,类,UML理论与实践,16,事件的种类,UML理论与实践,17,Call event的语法格式如下:事件名(逗号分隔的参数列表)例:,Change event用关键字when表示。例,UML理论与实践,18,Time event用关键字after或when表示。例:,Signal event的语法格式和Call event一样。信号事件是一个异步事件,而调用事件一般是一个同步事件。,UML理论与实践,19,状态图之间发送的消息,状态图之间可通过动作或图间的虚线箭头向其他状态图发送消息。当采用虚线箭头时,状态图必须画在矩形框中。在图间的消息箭头有两种画法:从表示源对象的状态图中的状态迁移上画虚线箭头到表示目标对象的状态图的边框上;在两个状态图的边框间画虚线箭头,表示源对象在其执行期间的某时刻发送该消息。在状态图之间发送消息时,在目标对象的状态图中应画有一个捕获这个消息的相应的迁移。,UML理论与实践,20,UML理论与实践,21,组合状态和子状态,子状态(substate)是嵌套在另一状态中的状态。一个含有子状态的状态被称作组合状态(composite state)。,UML理论与实践,22,说明:组合状态中也有初始状态和终结状态。从源状态可以转移到组合状态本身,也可以直接转移到组合状态中的子状态。子状态之间可分为“or”关系和“and”关系两种。“or”关系说明在某一时刻仅可到达一个子状态,“and”关系说明组合状态中在某一时刻可同时到达多个子状态。,UML理论与实践,23,例2:子状态之间“and”关系的例子。,例1:子状态之间“or”关系的例子。,UML理论与实践,24,历史(History)指示器,历史指示器用来记忆内部的状态,用里面标有H字母的圆圈表示。使用历史状态,可以记住从组合状态中退出时所处的子状态,当再次进入组合状态时,可直接进入到这个子状态,而不是再次从组合状态的初态开始。,UML理论与实践,25,H和H*的区别:H只记住最外层的组合状态的历史。H*可记住任何深度的组合状态的历史。例:历史状态的例子。,UML理论与实践,26,状态图的工具支持,正向工程:根据状态图生成代码。例:所生成的代码示例:,UML理论与实践,27,class MessageParser public boolean put(char c)switch(state)case Waiting:if(c=)state=GettingBody;else token.append(c);break;case GettingBody:if(c=;)state=Waiting;return true;,else body.append(c);return false;public StringBuffer getToken()return token;public StringBuffer getBody()return body;private final static int Waiting=0;private final static int GettingToken=1;private final static int GettingBody=2;private int state=Waiting;private StringBuffer token,body;,UML理论与实践,28,活动图,活动图是状态图的特例,由状态图变化而来的,活动图中一个活动结束后将立即进入下一个活动(在状态图中状态的转移可能需要事件的触发)。活动图用来描述完成一个操作所需要的活动,或者是一个用例实例(场景)的活动。活动图中的状态称为动作状态,用圆角矩形表示,动作状态之间的迁移用箭头表示,迁移上可以附加警戒条件、发送子句和动作表达式。与状态图不同的是,活动图中动作状态之间的迁移不是靠事件触发的,当动作状态中的活动完成时迁移就被触发。,UML理论与实践,29,UML理论与实践,30,每个泳道代表一个责任区,泳道名放在矩形区的顶端。通常根据责任把活动组织到不同的泳道中,它能清楚地表明动作在哪里执行(在哪个对象中)。一个动作迁移可以分解成二个或多个导致并行动作的迁移,若干个来自并行活动的迁移也可以合并成一个迁移。在活动图中用黑体线来表示迁移的分解和合并。活动图中可以表示对象,对象用对象符号(矩形)表示,它可作为活动的输入或输出(用虚线箭头连接),也可展示一个对象受一特定动作的影响(用动作和对象之间的虚线表示)。,UML理论与实践,31,UML理论与实践,32,活动图中可以描述信号的发送和接收,UML理论与实践,33,活动图还可以用来描述用例,UML理论与实践,34,活动图与状态图比较,活动图和状态图描述的重点不同:活动图描述的是从activity到activity的控制流,而状态图描述的是对象的状态及状态之间的转移。活动图和状态图使用的场合不同:对于以下几种情况可以使用活动图:分析用例理解涉及多个用例的工作流处理多线程应用对于下面的情况要使用状态图:显示一个对象在其生命周期内的行为。,说明:若要显示多个对象之间的交互情况,可用交互图。,UML理论与实践,35,书的状态图,UML理论与实践,36,借阅者帐户的状态图,UML理论与实践,37,1.借阅者的活动图,UML理论与实践,38,图书管理员的活动图,UML理论与实践,39,系统管理员维护借阅者帐户的活动图,UML理论与实践,40,系统管理员进行书目信息维护的活动图,UML理论与实践,41,系统管理员维护书籍信息的活动图,

    注意事项

    本文(教学课件PPT状态图和活动图.ppt)为本站会员(文库蛋蛋多)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开