Dear Readers!
In this post I’d like to present a short but concise cheat sheet for UML class diagram associations, as I found a short description to be better than a simple name for these. Please enjoy.
Directed association - A has permanent association with B
Permanent association - A and B have permanent associations with each other
(Bidirectional) association - A and B depend on each other
Dependency - A depends on B
Aggregation - A has reference to B; Destroying A doesn’t destroy B; “has-a”
Aggregation - A has 0 to many reference(s) to B, B has 1 reference to A
Composition - A contains and owns B; Destroying A destroys B as well
Generalization - A extends B; “is-a”
(Interface) realization - A implements B