前页 | 后页 |
选择
描述
选择伪状态用于在例如状态机图中构成复杂的过渡路径,其中传出过渡路径由动态的运行时条件决定。运行时条件由状态机在导致选择的路径上执行的操作确定。
这个例子描述了选择元素。在达到过滤器伪状态时,根据传递给过滤器的运行时值触发到适当状态的转换。在形式上与连接点伪状态非常相似,选择伪状态的区别在于在运行时决定转换路径。
工具箱icon
了解更多
OMG UML规范:
OMG Unified Modeling Language规范 (v2.5. 1 , p.313) 指出:
这种类型的 Pseudostate 类似于 junction Pseudostate (...) 并用于类似的目的,不同之处在于,当复合转换遍历到达此 Pseudostate 时,动态评估所有传出转换的保护约束。因此,选择用于实现动态条件分支。它允许将复合转换拆分为多个替代路径,从而决定采用哪条路径可能取决于在到达选择点之前在同一复合转换中执行的行为执行的结果。如果不止一个守卫评估为真,则选择相应的转换之一。未定义进行此选择的算法。如果没有一个守卫评估为真,则认为模型不正确。为避免这种情况,建议定义一个传出转移
为每个选择 Pseudostate 使用预定义的“else”保护。