如何在UML中合并决策/分支节点

时间:2011-04-18 16:54:03

标签: uml activity-diagram

我有一个购物车用例的下面的UML活动图。它有几个决策和fork节点,但没有相应的连接/合并节点。你能告诉我一下:

  • 如何通过引入合并/连接节点来更正图表。
  • 如何修改图表以便客户可以重复此过程(向购物车添加更多产品)。

谢谢。 enter image description here

2 个答案:

答案 0 :(得分:0)

您是否在任何地方都有初始活动元素?使它更容易阅读。对于您的问题,应该使用合并,而不是让多个连接器进入同一个活动。例如,“Acknowledge Msg”应该在其上方有一个合并,其他分支可以流入。

至于如何使其可重复,您可能需要“添加到购物车”操作,并在“结帐”操作之前,与“购物完成”(进入结帐操作)和“继续购物”(可以追溯到“输入产品#”)。

答案 1 :(得分:0)

您应该查看令牌概念。它在Petri网中引入,也用于UML活动图。

决策节点仅生成一个令牌,即它们只跟随一个传出路径。要合并此类路径(仅遵循此路径),您可以使用合并节点。这看起来像一个反向决策节点,并且只能使用一个令牌。钻石有多个进入边缘。

如果使用并行化节点来启动并发执行路径,则会有多个令牌离开并行化节点。要合并这些路径,可以使用同步节点,它看起来像一个反向并行化节点,每个传入边需要使用一个令牌。

Both, decision and merge, and pararellization and synchronization nodes http://www.lcc.uma.es/~amg/ISE/OOP-Java-UML/Chapter%204_archivos/4-ActivityUML.gif