16.10. Include

Include is a relationship between two use cases. Where A includes B, it means B described behavior that is to be included in the description of the behavior of A at some point (defined internally by A).

Examples for a travel agent sales system might be the use case for booking travel, which includes use cases for booking flights and taking payment.

Within the UML metamodel, Include is a sub-class of Relationship.

An include relationship is represented as a dotted link with an open arrow head and a label «include» (see Figure 16.1, “Possible artifacts on a use case diagram.”).

16.10.1. Include Details Tabs

The details tabs that are active for include relationships are as follows.

[Note]Note

There is no source tab, since there is no source code that could be generated for an include relationship.

ToDoItem

Standard tab.

Properties

See Section 16.10.2, “Include Property Toolbar” and Section 16.10.3, “Property Fields For Include” below.

Documentation

Standard tab. See Section 12.4, “Documentation Tab”.

Presentation

Standard tab

[Note]Note

The values for the bounds of the include relationships are downlighted, since the include relationship is represented by a line between a particular pair of use cases.

Tagged Values

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

  • derived (from the superclass, ModelElement). Values true, meaning the include relationship is redundant—it can be formally derived from other elements, or false meaning it cannot.

    [Note]Note

    Derived include relationships could have their value in analysis to introduce useful names or concepts.

16.10.2. Include Property Toolbar

Go up

Navigate up through the package structure of the model. For a include this will be the package containing the include.

New Stereotype

This creates a new Stereotype (see Section 15.5, “Stereotype”) for the selected include relationship, navigating immediately to the properties tab for that stereotype.

Delete

This deletes the selected include relationship from the model.

[Warning]Warning

This is a deletion from the model not just the diagram. To delete a include from the diagram, but keep it within the model, use the main menu Remove From Diagram (or press the Delete key).

16.10.3. Property Fields For Include

Name

Text box. The name of the include relationship.

[Tip]Tip

It is quite common to leave include relationships unnamed in use case analysis.

[Note]Note

ArgoUML does not enforce any naming convention for include relationships.

Stereotype

Drop down selector. ArgoUML does not provide any stereotypes for include relationships.

[Tip]Tip

Stereotyping does not have great value on an include relationship.

[Note]Note

There is no representation of the stereotype of an include relationship on the diagram.

Navigate Stereotype

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

Namespace

Text box. Records the namespace for the include. This is the package hierarchy.

Button 1 click on the entry will navigate to the package defining this namespace (or the model for the top level namespace).

Base Use Case

Drop down selector. Records the use case that is doing the including in this include relationship. Button 1 click on this entry will give a drop down menu of all available use cases which may be selected by button 1 click.

Included Use Case

Drop down selector. Records the use case that is being included by this include relationship. Button 1 click on this entry will give a drop down menu of all available use cases (and an empty entry) which may be selected by button 1 click.