UML Associations: A Structural and Contextual View

The different kinds of communication links that can exist in an interaction among objects pose the question of whether every link is or is not an instance of an association, and whether an association must exist whenever there is a communication path between objects. The distinction between static and dynamic associations is not adequate to solve this problem, since in object-orientation every association has static and dynamic features, so that these two aspects do not serve to define two disjoint subtypes of association. Instead, we propose the distinction between structural and contextual associations, which, with an adequate redefinition of association and link stereotypes, helps to maintain the principle that every link is an instance of an association, avoiding the baseless link problem.