状态机图与协议状态机图

时间:2014-06-13 10:05:59

标签: uml state-machine

有两种类型的状态机图:

  1. 状态机图

  2. 协议状态机

  3. 但我无法得到它们之间的确切差异

3 个答案:

答案 0 :(得分:6)

我将尝试以非常简单的方式解释差异: 你是对的,UML定义了两种类型的状态机:

  1. 行为

  2. Protocolar

  3. 行为状态机定义行为,重点关注系统状态如何作为对事件发生的反应而变化。理解非常重要。接受事件的事件被定义为转换时的触发器。这种状态机是众所周知的。

    协议状态机不主要定义行为。它的基本作用是定义,何时以及在何种条件下可以调用拥有实例的个别行为特征(操作,接收)。

    生命中协议状态机的典型例子可能是计算机启动过程:

    让我们想象一下计算机的工作状态:加载BIOS,加载操作系统,准备好。 在加载Bios之前无法执行加载操作系统,在加载操作系统之前无法执行应用程序。协议状态机将具有3个状态和两个转换。转换将在加载bios状态之前定义计算机loadBios()的操作,在加载Bios和加载OS的状态之间加载loadOS()。

    协议是一组用于执行实例的操作和其他行为特征的规则。

答案 1 :(得分:5)

协议状态机IS状态机,一种状态机的特例,适用于协议规范。

  • UML状态机定义状态图的概念,语法规则和基本语义
  • 如果协议状态机,这个基本语义被细化并放入这个特定的技术环境。

总之,协议状态机是普通UML状态机对协议规范/建模的具体应用。

您可能希望阅读本文以了解有关协议状态机及其如何使用UML状态机的更多信息:

http://www.uml-diagrams.org/protocol-state-machine-diagrams.html

答案 2 :(得分:0)

在UML中,协议状态机是设置合法事件序列的«规范»,而不指定实现的行为(状态更改除外)而行为状态机«实现»状态机可以采取操作(行为)。< / p>

从这个角度来看,协议状态机就像一个接口(它纯粹是抽象的),而行为状态机就像一个类。行为状态机可以实现协议状态机。

您可以在文章Building Protocol State Machines in UML 2中找到更多详细信息,包括围绕数据库访问的非平凡示例,Michael Jesse Chonoles和James A. Schardt。