17.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 17.1, “ Typical model elements on a use case diagram.).

17.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 17.10.2, “ Include Property Toolbar and Section 17.10.3, “ Property Fields For Include below.

Documentation

Standard tab. See Section 13.4, “ Documentation Tab.

Presentation

Standard tab

[Note]Note

The values in the "bounds" field of the include relationships are not editable, since they are determined by the properties of the endpoints of the line.

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.

17.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 16.6, “ 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).

17.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.

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.