状态机 - 你能模拟替代流程吗?

时间:2014-02-08 18:30:37

标签: uml state-machine visual-paradigm

我正在尝试实现状态机,但是我现在对此非常困惑。

你能否拥有模拟替代流量的州,例如车辆不存在 - 如果要发出罚款,或者Reg没有无效?

3 个答案:

答案 0 :(得分:2)

我理解你的问题 - 状态机在VP UMP中没有容易看见的fork元素。但它不需要。每个状态块都可以作为多叉运行。从一个州到另一个州的所有箭头都是这样的情况,“如果......会发生什么变化”。条件的文本在箭头上。箭头可以有多于一个条件。 所以,答案是 YES!

你也可以使用叉子。它们隐藏在“初始伪状态”下。但是只有当一个事件来自某个状态而且它与状态无关时才会使用它们。或者,如果它开始流动。

答案 1 :(得分:1)

我还不能提交,因此对我的反馈不可能以另一种方式回答。我的答案取决于你的问题

  1. 如果您正在思考流程,可能应该使用活动图而不是状态机,功能和行为视图之间存在差异。

  2. 重新考虑您使用的状态

  3. 使用分层状态机(例如查看http://www.barrgroup.com/Embedded-Systems/How-To/Introduction-Hierarchical-State-Machines

答案 2 :(得分:0)

当然,在状态机中可以使用替代流程和并行执行。使用Shoice伪状态来定义替代转换。决定外包过渡的条件被定义为过渡保护。国家必须居住在同一地区。对于并发状态激活,请使用Fork伪状态。从fork伪状态输出的转换必须指向状态,所有状态都在不同的区域。