2

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:

enter image description here

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?

hasanghaforian
  • 13,858
  • 11
  • 76
  • 167

1 Answers1

4

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.

Community
  • 1
  • 1
qwerty_so
  • 35,448
  • 8
  • 62
  • 86