I'm beginner in UML
and try understand it. Now I read UML Demystified
. There is this sentence:
A merge node doesn't exit until all flows have arrived at the merge node.
But there is a figure titled as Figure 15.12 Activity node example (where the arrowed lines are the only non-activity node symbols)
in www.omg.org/spec/UML/2.5/Beta2:
Now I think if above sentence is true, above diagram says Activity
will be block by merge
node; because arriving all flows is impossible; because an order only can be rejected or accepted.
Now I want to know is quoted sentence is incorrect or am I misunderstanding somethings?
From the UML 2.5 specs:
15.7.21 MergeNode [Class]
A merge node is a control node that brings together multiple alternate flows. It is not used to synchronize concurrent flows but to accept one among several alternate flows.
So it accepts a single token at any time and passes it to its outgoing flows. Generally, what book authors write is their interpretation - which might be wrong. In any case you need to stick to what the UML spec says.