1

我有一个具有 3 个状态的系统。我想处理失败。也就是系统重启的时候不知道自己所处的状态,下面的状态图对吗?

在此处输入图像描述

4

1 回答 1

0

这不是一个有效的 UML 状态机图,原因如下:

  1. 起始节点是错误的符号。应该是子弹。
  2. 箭头叉。每个箭头(过渡)都应该在一个节点上开始和结束。
  3. Y 和 N 没有方括号。

关于语义:

  1. 决策没有有意义的文本(应参考先前存储的状态)。它们可以组合成一个决定“storedState =”,它有四个传出转换,被保护为 [S1]、[S2]、[S3] 和 [empty]。
  2. 不存在将状态存储在持久存储中以便在崩溃时恢复的操作。
  3. 如果所有决策都产生 N,则该对象立即被销毁,而不是以某种默认状态结束。
  4. 我不明白 A1、A2 和 A3 的意图。

也许最好先显示没有重新启动逻辑的图表,然后告诉我们您尝试添加到该图表以处理故障的内容。

于 2019-05-17T04:57:21.540 回答