21.4.  Association End Role

An association end role is a specialization of an association end, used to describe an association end's behavior in a particular context. In the UML metamodel AssociationEndRole is a sub-class of AssociationEnd.

Two or more association end roles are associated with each association role (see Section 21.3, “ Association Role), although for ArgoUML, the number of ends can only be two.

The association end role has no direct access on any diagram, although its stereotype, name and multiplicity is shown at the relevant end of the parent association role (see Figure 21.1, “ Possible model elements on a collaboration diagram.), and some of its properties can be directly adjusted with button 2 click. Where shared or composite aggregation is selected for one association end role, the opposite end is shown as a solid diamond (composite aggregation) or hollow diamond (shared aggregation).

[Note]Note

ArgoUML does not currently (V0.18) support showing qualifiers on the diagram, as described in the UML 1.4 standard.

[Caution]Caution

An association end role should have the same, or “stricter” attribute values than its base association end. In particular its navigability should be no more general. There is as yet no critic in ArgoUML to offer advice on this rule.

21.4.1.  Association End Role Details Tabs

The details tabs that are active for association end roles are as follows.

ToDoItem

Standard tab.

Properties

See Section 21.4.2, “ Association End Role Property Toolbar and Section 21.4.3, “ Property Fields For Association End Role below.

Documentation

Standard tab.

Source

Standard tab. There is no code generated for an association end role.

Tagged Values

Standard tab. In the UML metamodel, AssociationEndRole has the following standard tagged values defined.

  • derived (from the superclass, ModelElement). Values true, meaning the association end role is redundant -it can be formally derived from other elements, or false meaning it cannot.

    [Tip]Tip

    Derived association end roles still have their value in analysis to introduce useful names or concepts, and in design to avoid re-computation. However the tag only makes sense for an association end role if it is also applied to the parent association role.

[Note]Note

The UML Element metaclass from which all other model elements are derived includes the tagged element documentation which is handled by the documentation tab under ArgoUML

21.4.2.  Association End Role Property Toolbar

Go up

Navigate up to the association role to which this end role belongs.

Go Opposite

This navigates to the other end of the association role.

New Qualifier

This creates a new Qualifier for the selected association-end role, navigating immediately to the properties tab for that qualifier.

[Warning]Warning

Qualifiers are only partly supported in ArgoUML V0.18. Hence, activating this button creates a qualifier in the model, which is not shown on the diagram. Also, the properties panel for a qualifier equals that of a regular attribute.

New Stereotype

This creates a new Stereotype (see Section 16.6, “ Stereotype) for the selected association-end role, navigating immediately to the properties tab for that stereotype.

Delete

This deletes the selected association-end from the model.

[Note]Note

This button is downlighted for binary association roles, since an association needs at least two ends. Only for N-ary associations, this button is accessable, and deletes just one end from the association.

21.4.3.  Property Fields For Association End Role

Name

Text box. The name of the association end role, which provides a role name for this end of the association role. This role name can be used for navigation, and in an implementation context, provides a name by which the source end of an association role can reference the target end.

[Note]Note

ArgoUML does not enforce any naming convention for association end roles.

Stereotype

Drop down selector. Association end role is provided by default with the UML standard stereotypes for AssociationEndRole (association, global, local, parameter, self).

Navigate Stereotype

icon. If a stereotype has been selected, this will navigate to the stereotype property panel (see Section 16.6, “ Stereotype).

Base

Text field that shows the name of the corresponding association end. Button 1 double click navigates to the association end.

AssociationRole

Text box. Records the parent association role for this association end role. Button 1 double click navigates to the association role.

Type

Drop down selector providing access to all standard UML types provided by ArgoUML and all new classes created within the current model.

This is the type of the entity attached to this end of the association role.

Multiplicity

Editable drop down text entry. Allows to alter the multiplicity of this association end role (with respect to the other end), i.e. how many instances of this end may be associated with an instance of the other end. The multiplicity is shown on the diagram at that end of the association role.

All remaining properties

See Section 18.13.3, “ Property Fields For Association End . Since these are completely equal to the fields of an association end, they are not repeated here.