【发布时间】:2015-07-28 20:49:47
【问题描述】:
我构建了一个 UML 状态图,并且有一个案例,其中大多数其他状态都存在到特定状态的相同转换。 绘制它的最优雅的解决方案是什么? 目前我有两个选择: 1)使用结点伪状态退出到我的目标状态 2) 将源状态包装在一个组合中并从中进行转换
感谢更好的想法
【问题讨论】:
-
如果您发布当前图表的图片会有所帮助
标签: uml state-diagram
我构建了一个 UML 状态图,并且有一个案例,其中大多数其他状态都存在到特定状态的相同转换。 绘制它的最优雅的解决方案是什么? 目前我有两个选择: 1)使用结点伪状态退出到我的目标状态 2) 将源状态包装在一个组合中并从中进行转换
感谢更好的想法
【问题讨论】:
标签: uml state-diagram
这两种解决方案都是合适的,具体取决于它们在图表上的易读性。太多的转换往往会使图表混乱并使其难以阅读。 因此,如果您只有几个源状态(比如少于 4 个),使用转换到连接伪状态(不是连接伪状态 - 不同的语义!),应该没问题。该解决方案的缺点是,如果您想返回原始源状态,则必须存储信息(例如,作为信号的一部分)。 如果您有更多,您可以考虑所有源状态的复合状态。请注意,如果您这样做,您还可以转换到历史以返回到留下的子状态,这可能会使您的状态图逻辑更易于实现(无需存储剩余状态)并且图更容易阅读。
我希望这会有所帮助。
【讨论】: