umlsequence-diagramactivity-diagramargouml

UML activity diagram combined join and fork nodes


Is it valid to have the following combined join and fork nodes in a UML activity diagram or is it wrong?

I searched online and in some UML books but I cannot find a clear answer or a similar example.

The idea is to have two actions (1 and 2) that need to be completed and then synchronised before the start of actions 3 and 4.

Should I just introduce a sync action between a join and a fork node to be on the safe side?

enter image description here


Solution

  • Yes, that is valid.

    In the UML specifications version 2.5.1 you'll find on page 391

    The functionality of a JoinNode and a ForkNode can be combined by using the same node symbol, as illustrated in Figure 15.31. This notation maps to a model containing a JoinNode with all the incoming ActivityEdges shown in the diagram and one outgoing ActivityEdge to a ForkNode that has all the outgoing ActivityEdges shown in the diagram.

    enter image description here