Extend

Description

An Extend connector is used to indicate that an element extends the behavior of another, mainly in Use Case models where one Use Case (optionally) extends the behavior of another Use Case. An extending Use Case often expresses alternative flows that are integrated with the behavior of the extended Use Case, at a specific point in the behavior flow identified within the element by an extension point. The extension point is represented by a text string such as 'on startup' or 'before connection is established'.

A Use Case can have more than one extension point, and can extend or be extended by more than one other Use Case. The precise relationship between the extending Use case, extended Use Case and the point at which the extension applies can be identified on the Extend relationship, as shown.

Identify Extension Point

Step

Action

See also

1

Right-click on the Extend connector and select the 'Advanced | Extension Point | Set Extension Point' option.

The 'Element Usage' dialog displays, listing the Extension Points currently defined in the target Use Case element.

2

Click on the Extension Point on which the source Use Case acts, and click on the Open button.

The dialog closes and the Extend connector shows a small circle at the mid-point, with a Notelink to a Note element that identifies the selected Extension Point.

(The Note might not initially display close to the Extend connector - check the upper left corner of the diagram and drag the Note to the position you want it to occupy.)

Use these same steps to change the extension point identified in the Note.

Show/Hide Extension Point Note

Step

Action

See also

1

Right-click on the Extend connector and select the 'Advanced | Extension Point | Show Extension Point' option.

If there are any Extension Points identified on the selected Extend connector, they are displayed as shown.

2

Right-click on the Extend connector and deselect the 'Advanced | Extension Point | Show Extension Point' option.

Any Extension Points identified on the selected Extend connector are hidden, as shown:

Toolbox icon

Notes

  • The Extend connector is not the same as the Extension connector used in Profile diagrams to indicate that a Stereotype element extends a Metaclass or another Stereotype element; the two types of connector have different appearances

Learn more

OMG UML Specification

The OMG UML specification (UML Superstructure Specification, v2.1.1, p.587) states:

This relationship specifies that the behavior of a Use Case may be extended by the behavior of another (usually supplementary) Use Case. The extension takes place at one or more specific extension points defined in the extended Use Case. Note, however, that the extended Use Case is defined independently of the extending Use Case and is meaningful independently of the extending Use Case. On the other hand, the extending Use Case typically defines behavior that may not necessarily be meaningful by itself. Instead, the extending Use Case defines a set of modular behavior increments that augment an execution of the extended Use Case under specific conditions.

Note that the same extending Use Case can extend more than one Use Case. Furthermore, an extending Use Case may itself be extended.