An association role is a specialization of an
association, used to describe an associations behavior in a
particular context. In the UML metamodel Association
Role
is a sub-class of
Association
.
An association role is represented on a collaboration diagram in ArgoUML as a line connecting the instances concerned. However on a sequence diagram the representation is modified to reflect the type of action associated with the stimulus carried on the link (see Section 19.3, “ Stimulus ”).
The association role is labeled with the association role name (if any).
An association role shows its name and the association name according the following syntax:
/ AssociationRoleName : AssociationName
in the same manner as a classifier role. The more generic syntax is:
I / R : C
which stands for an Instance named I originating from the Classifier C playing the role R.
The details tabs that are active for association roles are as follows.
ToDoItem
Standard tab.
Standard-Register.
Properties
See Section 21.3.2, “ Association Role Property Toolbar ” and Section 21.3.3, “ Property Fields For Association Role ” below.
Documentation
Standard tab.
Presentation
Standard tab.
![]() | Note |
---|---|
The values in the "bounds" field of the association role are not editable, since they are determined by the properties of the endpoints of the line. |
Source
Standard tab, but with no contents.
![]() | Caution |
---|---|
An association role should not generate any code, so having this tab active is probably a mistake. |
Tagged Values
Standard tab. In the UML metamodel,
AssociationRole
has the following standard
tagged values defined.
persistence
(from the
superclass, Association
). Values
transitory
, indicating state is
destroyed when an instance is destroyed or
persistent
, marking state is preserved
when an instance is destroyed.
derived
(from the
superclass, ModelElement
).
Values true
, meaning the
association is redundant -it can be formally derived
from other elements, or false
meaning it cannot.
![]() | Note |
---|---|
Derived association roles still have their value in analysis to introduce useful names or concepts, and in design to avoid re-computation. |
![]() | Note |
---|---|
The UML |
Checklist
Standard tab for an Association Role.
Go up
Navigate up through the package structure.
Delete
This deletes the association role from the model
![]() | Warning |
---|---|
This is a deletion from the model
not just the diagram. To delete
an association role from the diagram, but keep it
within the model, use the main menu |
Name
Text box. The name of the association role, which is shown on the diagram. By convention association role names start with a lower case letter and use bumpy caps to divide words within the name.
![]() | Note |
---|---|
ArgoUML does not enforce this naming convention. |
Stereotype
Drop down selector. Association role is provided
by default with the UML standard stereotype from the
superclass Association:
implicit
.
Navigate Stereotype
icon. If a stereotype has been selected, this will
navigate to the stereotype property panel (see
Section 18.5, “
Stereotype
”).
Namespace
Text box. Records the namespace for the association role. This is the package hierarchy.
Button 1 double click on the entry will navigate to the item showm.
Base
Drop down selector. Records the association that is the base for the association role.
The drop down selector shows all associations that exist between the classifiers that correspond with the connected classifier roles.
Association End Roles
Text area. Lists the ends of this association role. An association role can have any number of ends, but two is generally the only useful number (link objects can led to a third end on instance level diagrams, but this is not supported by ArgoUML). For more on association end roles see Section 21.4, “ Association End Role ”.
The names are listed, unless the association end
role has no name, then it is shown as (Unnamed
AssociationEndRole)
.
Button 1 double click on an association end role will navigate to that end.
Messages
Text area. Lists the messages that are associated with this association role.
Button 1 double click navigates to the selected entry