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.

nameDirected association - A has permanent association with B

namePermanent association - A and B have permanent associations with each other

name(Bidirectional) association - A and B depend on each other

nameDependency - A depends on B

nameAggregation - A has reference to B; Destroying A doesn’t destroy B; “has-a”

nameAggregation - A has 0 to many reference(s) to B, B has 1 reference to A

nameComposition - A contains and owns B; Destroying A destroys B as well

nameGeneralization - A extends B; “is-a”

name(Interface) realization - A implements B