Previous | UML Classes | Table of Contents | UML Packages | Next |
An extension point identifies a point in the behavior of a use case where that behavior can be extended by the behavior of
some other (extending) use case, as specified by an extend relationship.
•
RedefinableElement (from Kernel ) on page 132
Description
An ExtensionPoint is a feature of a use case that identifies a point where the behavior of a use case can be augmented with
elements of another (extending) use case.
Attributes
No additional attributes
Associations
Issue 8466 -add entry for useCase
• useCase : UseCase [1] References the use case that owns this extension point. {Subsets NamedElement ::namespace}
Constraints
[1] An ExtensionPoint must have a name.
self.name->notEmpty ()
Semantics
An extension point is a reference to a location within a use case at which parts of the behavior of other use cases may be
inserted. Each extension point has a unique name within a use case.
Semantic Variation Points
The specific manner in which the location of an extension point is defined is left as a semantic variation point.
Notation
Extension points are indicated by a text string within in the use case oval symbol or use case rectangle according to the
syntax below:
<extension point> ::= <name> [: <explanation>]
Note that explanation, which is optional, may be any informal text or a more precise definition of the location in the behavior
of the use case where the extension point occurs.
See
Figure 16.3 on page 617 and Figure 16.9 on page 624.
Rationale
ExtensionPoint supports the use case extension mechanism (see Extend (from UseCases ) on page 615).
Changes from previous UML
In 1.x, ExtensionPoint was modeled as a kind of ModelElement, which due to a multiplicity constraint, was always associated
with a specific use case. This relationship is now modeled as an owned feature of a use case. Semantically, this is equivalent
and the change will not be visible to users.
ExtensionPoint s in 1.x had an attribute called location, which was a kind of LocationReference. Since the latter had no specific
semantics it was relegated to a semantic variation point. When converting to UML 2.0, models in which ExtensionPoint s had
a location attribute defined, the contents of the attribute should be included in a note attached to the ExtensionPoint .