预订演示
前页 后页

状态机图表

状态机图是 SysML 九种核心图类型之一;它用于在块更改状态时创建和可视化块的行为。图上的关键元素是状态、转换和伪状态。从特定的角度来看,状态代表块生命周期中的重要时间,转换代表从一个状态到另一个状态的移动,而伪状态,正如我们将看到的,充当影响转换工作方式的交通控制器。

Enterprise Architect帮助建模者创建任意数量的状态机图表,每个图表可以有任意数量的状态、转换和伪状态。这些图表元素和连接器中的每一个都可以依次添加其他信息,这些信息将用更多细节修饰图表。该应用程序有一个模式库生产力工具,对新手非常有用,同样欢迎有经验的建模者。此屏幕截图显示了可用于创建状态机图的模型模式列表。

该模式可用于创建多个不同的状态机;在这个例子中,我们创建了一个简单的(单个区域)图表,其中包含所有适当的细节添加到状态和转换。建模者可以A存储库中的适当位置创建此图表,然后编辑状态和转换以及图表以使其适合自己的建模上下文。从该模式创建的初始状态机图将如下所示:

这个方便的特征提示工程师可以完成详细信息,例如简单的触发器和守卫条件转移

,或状态上的进入和退出操作,他们可能没有意识到 - 结果是符合最佳工程实践的图表,为客户产生更好的结果。

创建状态机图表

可以A以下命令从用户接口中的多个位置创建状态机图:

  • 设计功能区 - “图表”面板上的“添加图表”图标
  • 浏览器窗口工具栏 - 新图表”图标
  • 浏览器窗口上下文菜单- '添加图表'选项
我们将使用设计功能区创建状态机图。首先,您在浏览器窗口中选择您希望状态机图表所在的位置。与所有图一样,这可以是包或元素,但通常将状态机图插入到元素(例如块)中以描述块生命周期中的重要阶段。在浏览器窗口中选择位置后,然后选择:

功能区:设计>图表> 添加图表

Diagram panel of the Design ribbon in Sparx Systems Enterprise Architect.

选择此选项将打开New图表对话框,允许您命名图表;该名称将默认为包含图表的包或元素的名称,但您可以更改它。选择 SysML 透视图并选择 SysML 版本后,将显示图表列表,您可以从中选择状态机图表。选择确定按钮后,将在浏览器中选择的位置创建一个新的状态机图。图表画布将打开,允许您开始添加描述主题生命周期中重要阶段的元素和连接器。 Enterprise Architect还将显示工具箱的状态机页面,其中包含图表规范定义的元素和关系,以适用于构建状态机图表。除了始终可用的公共(元素)和公共关系页面之外,还可以根据需要打开任意数量的其他工具箱页面。

与状态机图一起使用的最重要的元素和连接器是:

元素

  • -状态- 定义实体生命周期中的重要相
  • 状态机——定义一组状态
  • Initial - 定义区域的入口点
  • 终点- 定义实体将拥有的最后状态
  • 历史记录 - 在退出和重新进入状态时充当纪念品或书签

连接器

  • 转移
    - 代表从一种状态到另一种状态的运动

可以通过将元素从工具箱页面拖放到图表画布上来将元素添加到图表中。从初始状态开始和一个或多个终点状态元素开始被认为是一种很好的做法,它应该适当地命名以描述它状态机开始的方式和可能完成的多种方式。将名称留空或给它起一个陈词滥调的名称,例如“开始”或“结束”,将无助于让读者清楚地了解正在建模的系统或系统的一部分,并且可能导致对图表的误解.添加这些节点并在图中适当放置后,可以添加状态和转换,从而定义被建模实体生命周期中的重要阶段。

一旦创建了基本图表,并且随着领域知识和系统行为的进一步发展,就可以在转换中添加触发器、事件和守卫,在状态中添加进入、执行和退出行为。新手通常会认为这些图表是微不足道的,但它们可以揭示否则无法看到的深刻见解。