【发布时间】:2014-03-28 09:07:35
【问题描述】:
考虑以下状态图:
客户获得状态已确认,资源处于未分配状态。没有为从 Confirmed 到 Join 伪状态的转换定义保护。
在这种情况下,状态 Confirmed 是否会保持活动状态,直到 NotAssigned 转换为 Assigned? (即我可以发送触发器“取消”,以便客户进入“未确认”状态,这是我想要获得的行为)。还是我没有使用正确的方法来建模? (然后状态图会是什么样子)
编辑(在评论 Gangnus 之后) 我追求的是理解
- 连接伪状态如何发挥作用
- 连接到连接的状态何时会失去其活动状态
所以我想要获得的是对连接状态的更深入的了解。我查看了 UML 规范(formal-1108-06.pdf 第 15 章),但没有找到上面提到的我的场景的清晰描述:如果我输入 Confirmed,并且 Confirmed 使用没有保护的转换连接到 Join 或指定了触发器,当资源区域中的 NotAssigned 处于活动状态时,何时确认其活动状态:
- 进入状态后立即
- 当 NotAssigned 转换为 Assigned 时(然后两个状态都变为非活动状态并转换为 ExecutionAllowed。
【问题讨论】:
-
您将客户的状态与客户造成的状态或如您所说的输入的状态混合在一起......什么是“这种情况”? “..behaviour I would like to get..” 你应该知道: 1. 你有什么。 (定义所有条款!) 2. 你想得到什么。 3. 你做了什么。 4. 出了什么问题。您应该向我们解释所有这 4 点。对不起,我看不懂你的文字。只有你的nooby状态才能让你免于结束问题。
-
@Gangnus 见帖子中的编辑。我希望你现在更清楚。解决你的4点。 1)我不明白 Join 状态是如何运作的 2)更好的理解 3)我阅读了规范...... 4)......但没有找到我想要的东西
标签: uml statechart