Object Oriented Software Engineering   View all facts   Glossary   Help
subject > representation > abstraction > data abstraction > association
Next data abstractionattribute    Updata abstraction    Previous data abstractionstructure   

association
subjectfact 
associationcan have a label which is an association name or a role name2001-08-30 14:54:35.0
cannot be drawn as a hierarchy2001-08-30 14:54:35.0
has definition A relationship between two classes that represents the existence of a set of links between objects of the two classes2001-08-30 14:54:35.0
describes a relationship that will exist between instances at run time2001-08-30 14:54:35.0
has default name "has" if it has neither an association name nor a role name2001-08-30 14:54:35.0
has example class Person in a business application might have the following relationships supervisor (association to class Manager) and tasksToDo (association to class Task)2001-08-30 14:54:35.0
has part association name2001-08-30 14:54:35.0
has part role name2001-08-30 14:54:35.0
is bi-directional unless it has an arrow at one end indicating directionality2001-08-30 14:54:35.0
is legitimate only if its links will survive beyond the execution of any particular operation2001-08-30 14:54:35.0
is a subtopic of 2.2 - Classes and Objects2001-08-30 14:54:35.0
is a subtopic of 5.3 - Associations and Multiplicity2001-08-30 14:54:35.0
is drawn as a line, or set of connected lines, between two classes in a UML class diagram2001-08-30 14:54:35.0
is usually implemented using instance variables in Java: you divide each two-way association into two one-way associations - so each associated class has an instance variable2001-08-30 14:54:35.0
is a kind of data abstraction2001-08-30 14:54:35.0
may be implemented in several ways in Java2001-08-30 14:54:35.0
must not be added to a model unless it is relevant to the application - it will be needed to implement some requirement2001-08-30 14:54:35.0
normally represents something that will be stored in a database2001-08-30 14:54:35.0
represents all the links between two classes that may ever exist2001-08-30 14:54:35.0
should exist if a class possesses, controls, is connected to, is related to, is a part of, has as parts, is a member of, or has as members, some class in your model2001-08-30 14:54:35.0
should have sufficient names to make the association clear and unambiguous2001-08-30 14:54:35.0
shows how two classes are related to each other2001-08-30 14:54:35.0
data abstractiongroups the pieces of data that describe some entity, so that programmers can manipulate that data as a unit2001-08-30 14:55:09.0
helps a programmer to cope with the complexity of data2001-08-30 14:55:09.0
hides the details of data2001-08-30 14:55:09.0

Kinds of association :

Next data abstractionattribute    Updata abstraction    Previous data abstractionstructure