同一触发事件的多个动作UML状态图

同一触发事件的多个动作UML状态图,uml,statechart,Uml,Statechart,我是UML状态图表示法的新手,我试图模拟在同一触发事件上有两个触发动作,但根据条件,其中一个动作是可选的 以下只是我需要的模拟,那么以下符号是真还是假 事实上,根据UML规范,给定的转换只能触发一个“效果”或动作。因此,为了触发您的两个动作,您必须对两个转换(内部或外部)进行建模。 对我来说,你的情况应该像你已经理解的那样,作为一名警卫来表达。 那么,你真的有两个动作是可选的吗?或者根据给定的守卫,你有一个动作还是另一个!?您能再描述一下您的用例吗?在UML状态图中,每个转换都是由一个且只有一个

我是UML状态图表示法的新手,我试图模拟在同一触发事件上有两个触发动作,但根据条件,其中一个动作是可选的

以下只是我需要的模拟,那么以下符号是真还是假

事实上,根据UML规范,给定的转换只能触发一个“效果”或动作。因此,为了触发您的两个动作,您必须对两个转换(内部或外部)进行建模。 对我来说,你的情况应该像你已经理解的那样,作为一名警卫来表达。
那么,你真的有两个动作是可选的吗?或者根据给定的守卫,你有一个动作还是另一个!?您能再描述一下您的用例吗?

在UML状态图中,每个转换都是由一个且只有一个事件触发的。在您的案例中,一个事件似乎会导致转换到两个不同的状态,或者,正如您所指出的,有一个可选路径。我个人的建议如下:

我所做的是在你提到的条件下使用伪状态进行分支。因此,如果你的条件成立,你将过渡到最底层的最终状态,如果不是,你将过渡到正确的状态。虽然结束状态是相同的,但您的图表现在清楚地概括了每个转换的不同行为


我很抱歉没有使用正确的圆角框,我使用的在线绘图工具没有提供这些。正如您所看到的,我使用了两个最终状态,但您只能使用一个,这两个状态在UML中都是允许的。

非常感谢您的关注,我确实有两个操作,一个是可选的,另一个将在收到事件后被触发。执行可选操作的原因是什么?