状态机图与协议状态机图

问题描述 投票:3回答:3

有两种类型的状态机图:

  1. 状态机图
  2. 协议状态机

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

uml state-machine
3个回答
6
投票

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

  1. 行为的
  2. 协议

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

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

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

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

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


5
投票

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

  • UML状态机定义状态图的概念,语法规则和基本语义
  • 在协议状态机的情况下,这个基本语义被精炼并放在这个特定的技术环境中。

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

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

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


0
投票

在UML中,协议状态机是设置合法事件序列的“规范”,而不指定实现的行为(状态变化除外),而行为状态机是“实现”状态机可以采取行动(行为)。

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

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

© www.soinside.com 2019 - 2024. All rights reserved.