UML状态机图 - 并行进程

时间:2017-11-09 21:12:05

标签: uml diagram state-machine

我正在尝试为以下问题开发UML状态机图:

自动售货机有3个按钮:R用于'返还钱,A& B选择饮料。 当自动售货机收到金额x时,用户可以在饮料之间进行选择。按R退还钱而不喝酒。

如果在插入任何钱之前按下按钮 - 机器会发出警报信号。 如果按下A或B并且插入> = x,则将提供饮料。

服务完成后,会发出警报声通知用户。变更金钱归来了。取出饮料后,机器进入最终状态。

enter image description here

我的问题是我正在使用并行'流程'我相信这种情况必须有一个简单的配置。有人可以提供/引导我以正确的方式解决这个问题吗?

编辑:在使用了@Chris Reynolds的建议后,我想出了这个:

state machine

2 个答案:

答案 0 :(得分:2)

实际上这台状态机没有并行处理*:

enter image description here

Return money期间按R按钮并等待Collect moneyA,即可达到状态B。如果钱存在,这听起来很惊人。如果没有针对其他警报的信用,或者只是向自己的新转换,您可以为Collect money的转换添加行为。

*:假设一旦插入足够的钱,就会阻止进一步接受硬币。

答案 1 :(得分:1)

因此,如果所有产品价格相同,那么状态机就会大不相同。它可以在此表中捕获: enter image description here