Previous UML Classes Table of Contents UML Packages Next

16.3.4 ExtensionPoint


   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


   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.


   No additional attributes


Issue 8466 -add entry for useCase

   • useCase : UseCase [1] References the use case that owns this extension point. {Subsets NamedElement ::namespace}


   [1] An ExtensionPoint must have a name.>notEmpty ()


   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.


   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.


    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 .