提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:吴园园|2019-12-17 11:26:07.867|阅读 968 次
概述:描述状态机图对于理解即时条件或执行模型时的“运行状态”如何至关重要。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
相关链接:
Enterprise Architect是一个对于软件系统开发有着极好支持的CASE软件(Computer Aided Software Engineering)。EA不同于普通的UML画图工具(如VISIO),它将支撑系统开发的全过程。在需求分析阶段,系统分析与设计阶段,系统开发 及部署等方面有着强大的支持,同时加上对10种编程语言的正反向工程,项目管理,文档生成,数据建模等方面。可以让系统开发中各个角色都获得最好的开发效率。
状态机图
状态机图对单个对象的行为进行建模,指定对象在其生命周期中响应事件而经历的事件顺序。
例如,以下状态机图显示了门在其生命周期内所经历的状态。
门可以处于以下三种状态之一:“打开”,“关闭”或“锁定”。它可以响应打开,关闭,锁定和解锁事件。请注意,并非所有事件在所有状态下都有效。例如,如果一扇门打开了,则只有在关上门后才能将其锁定。还要注意,状态转换可以附加一个保护条件:如果门已打开,则仅当满足条件doorWay-> isEmpty时,它才能响应Close事件。以下各节将全面讨论状态机图中使用的语法和约定。
状态用圆角矩形表示状态,状态名称写在其中。
初始状态和最终状态
初始状态由实心黑色圆圈表示,并可以用名称标记。最终状态由内部带有圆点的圆圈表示,也可以标记名称。
转场
从一个状态到下一个状态的过渡用带箭头的线表示。过渡可能具有触发,防护和效果,如下所示。
“触发”是转换的原因,可能是信号,事件,某些条件的变化或时间的流逝。“保护”是一个必须为true的条件,触发器才能引起转换。“效果”是一种动作,由于转换,该动作将直接在拥有状态机的对象上调用。
State Actions
在上面的过渡示例中,效果与过渡相关联。如果目标状态有许多过渡到达,并且每个过渡都具有与之关联的相同效果,则最好将效果与目标状态关联而不是过渡。这可以通过为状态定义一个输入动作来完成。下图显示了带有进入动作和退出动作的状态。
也可以定义在事件上发生的动作或始终发生的动作。可以定义每种类型的任意数量的动作。
自我转变
状态可以具有返回自身的过渡,如下图所示。当效果与过渡相关联时,这是最有用的。
复合状态
状态机图可以包括子机图,如以下示例所示。
显示相同信息的另一种方法如下。
上述版本中的符号表示在另一张图中显示了Check PIN子机的详细信息。
入口点
有时,您不想在正常的初始状态下进入子计算机。例如,在下面的子计算机中,通常以“ Initializing”状态开始,但是如果由于某种原因不需要执行初始化,则可以通过“ Ready”状态开始过渡到指定的入口点。
下图显示了上一级状态机。
出口点
以类似于入口点的方式,可以命名替代出口点。下图给出了一个示例,在该示例中,在主处理状态之后执行的状态取决于使用哪条路径转换出该状态。
选择伪状态
选择伪状态显示为菱形,其中一个过渡到达,而两个或多个过渡离开。下图显示,在选择伪状态之后到达的任何状态都取决于在执行前一状态期间选择的消息格式。
伪状态连接点
结伪状态用于将多个转换链接在一起。单个结可以具有一个或多个传入的转换和一个或多个传出的转换;可以对每个过渡应用防护。结点无语义。将输入的过渡转换为多个输出的过渡的结实现了静态条件分支,而选择伪状态则实现了动态条件分支。
终止伪状态
输入终止伪状态表示状态机的生命线已结束。终止伪状态标记为叉号。
历史状态
历史状态用于记住状态机被中断时的先前状态。下图说明了历史状态的使用。该示例是属于洗衣机的状态机。
在这种状态机下,当洗衣机运行时,它将从“洗涤”到“漂洗”进入“旋转”状态。如果断电,则洗衣机将停止运行并进入“关闭电源”状态。然后,在恢复电源后,将在“历史状态”符号处进入“运行”状态,这意味着它应从上次中断的位置恢复。
并发区域
可以将状态划分为包含子状态的区域,这些子状态同时存在并执行。下面的示例显示,在“正在应用制动”状态下,前后制动器将同时且独立运行。注意使用fork和join伪状态,而不是选择和合并伪状态。这些符号用于同步并发线程。
=====================================================
想要了解或购买Enterprise Architect正版版权,请
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@capbkgr.cn
文章转载自:本文探讨 SQL Server 中 NULL 和空值之间的区别,并讨论如何有效地处理它们。
Unity 是一款功能极其丰富的游戏引擎,允许开发人员将各种媒体集成到他们的项目中。但是,它缺少最令人兴奋的功能之一 - 将 Web 内容(例如 HTML、CSS 和 JavaScript)直接渲染到 3D 场景中的纹理上的能力。在本文中,我们将介绍如何使用 DotNetBrowser 在 Unity3D 中将 Web 内容渲染为纹理。
DevExpress v24.2帮助文档正式发布上线了,请按版本按需下载~
本教程将向您展示如何用MyEclipse构建一个Web项目,欢迎下载最新版IDE体验!
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@capbkgr.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢