答案 0 :(得分:2)
在UML状态图中,每个转换都由一个且仅一个事件触发。在您的情况下,似乎一个事件将导致转换到两个不同的状态,或者,如您所述,具有可选路径。我个人建议如下:
我所做的是使用Pseudostate在您提到的条件下进行分支。因此,如果您的条件成立,则转换到最底部的最终状态,如果不是,则转换到正确状态。虽然结束状态是相同的,但您的图表现在清楚地概述了每次转换的不同行为。
我为没有使用正确的圆形框而道歉,我使用的在线绘图工具没有提供这些。正如您所看到的,我使用了两个最终状态,但您只能使用一个,UML中都允许使用它们。
答案 1 :(得分:0)
事实上,根据UML psecification,只有一个"效果"或者行动可以通过给定的过渡来实现。因此,为了使你的两个动作模拟两个转换(内部或外部)。 对我来说,你的病情应该像你已经理解的那样表现为一个警卫。 所以你真的有两个可选的行动,或根据一个特定的警卫,你有一个或另一个行动!?你能描述一下你的用例吗?