Stereotype (UML)

A stereotype is one of three types of extensibility mechanisms in the Unified Modeling Language (UML), the other two being tags and constraints.[1]: 73  They allow designers to extend the vocabulary of UML in order to create new model elements, derived from existing ones, but that have specific properties that are suitable for a particular domain or otherwise specialized usage. The nomenclature is derived from the original meaning of stereotype, used in printing. For example, when modeling a network you might need to have symbols for representing routers and hubs. By using stereotyped nodes you can make these things appear as primitive building blocks.

Graphically, a stereotype is rendered as a name enclosed by guillemets (« » or, if guillemets proper are unavailable, << >>) and placed above the name of another element.[1]: 73  In addition or alternatively it may be indicated by a specific icon. The icon image may even replace the entire UML symbol. For instance, in a class diagram stereotypes can be used to

  1. classify method behavior, e.g. with «constructor» and «getter» and
  2. refine the classifier itself, e.g. with «interface».[2]

One alternative to stereotypes, suggested by Peter Coad in his book Java Modeling in Color with UML: Enterprise Components and Process is the use of colored archetypes. The archetypes indicated by different-colored UML boxes can be used in combination with stereotypes. This added definition of meaning indicates the role that the UML object plays within the larger software system.

  1. ^ a b Booch, Grady; Rumbaugh, James; Jacobson, Ivar (2005). The unified modeling language user guide: covers UML 2.0. The Addison-Wesley object technologies series (2 ed.). Upper Saddle River, NJ Munich: Addison-Wesley. ISBN 978-0-321-26797-9.
  2. ^ Object Management Group, OMG® Unified Modeling Language® (OMG UML®), v2.5.1, p. 170, December 2017.