Confused with a symbol in an UML diagram

121 views Asked by At

What does the black arrow with a small circle that points from the Subject to the Observer mean?

I have tried searching for it on Google but could not find the desired explanation. Any help is appreciated. Thank you very much.

enter image description here

2

There are 2 answers

1
Jim L. On

This diagram does not conform to the UML spec. The white triangles should be arrowheads at the ends of the lines that point to the superclasses, and the black arrows look wrong. A ball at the end indicates property ownership in UML, and that property name is missing. Where did you find this?

2
Christophe On

This diagram, was originally published on page 294 of the GoF looks like UML but is not UML. And there is a good reason for this: this book was written before UML was adopted. As explained in the same book p. 363 to 367, the notation used is a variant of James Rumbaugh's OMT notation.

So here all possible point of view of your question:

  1. What does the notation mean in this diagram (in OMT)?

    The black circle in OMT means the multiplicity "zero or more". OMT knows only bidirectional association. The GoF variant introduced the black plain arrow to indicate a unidirectional association. So, this diagram means a navigable one-to-many association, i.e. there could be several observer instances for the same subject instance, and the subjects keep references to their observers.

  2. How would you express the same meaning in UML?

    In UML, this directional aspect would be indicated with an open-headed navigation arrow, although the dot notation would better reflect GoF's intention (see point 3). The circle would be replaced with a * multiplicity near the arrow head. Btw, the role observers would be on the opposite side than it is here.

  3. What would this circle mean in an UML diagram?

    UML uses the little circle at the end of an association, the so-called "dot notation", to tell that the end of the association is owned by the class at the opposite side. As explained in the linked article, the dot notation can be combined with the navigability notation but the arrow-head would have to be open-headed.