The Unified Modeling Language (UML) allows to visualize, to specify, to build and to document the devices of a system that involves a great quantity of software. It provides a standard form for writing the models of a system, covering so much of the conceptual aspects (such as processes of the business and functions of the system) as the concrete ones (such as the classes written in a specific programming language, schemas of databases and software components). In 1997, UML 1.1 was approved by the OMG becoming the standard notation for the analysis and the design oriented to objects. UML is the first language of modelling in which a metamodel in its own notation has been published. It is a strict subset called Core. It is a self-referential metamodel. It is a very expressive language that covers all of the necessary views to develop and to deploy systems. UML is a language that provides three extension mechanisms (Booch, Rumbaugh, & Jacobson, 1999): stereotypes, tag values, and constrains. The stereotypes allow to create new types of elements of model based on the elements that form the metamodel UML extending the semantics of the same one, the tag values are an extension of the properties of an element of UML, allowing to add new information to the specification of the same one, and the constrains are an extension of the semantics of UML that allow to add new rules or to modify the existent ones. The organization of this overview is given in the following way: first, we present the stereotypes according to the standard of OMG; second, we expose the analysis of works that extend UML using stereotypes in diverse real domains; third, we make an analysis of the stereotypes of UML; and we finish giving a general conclusion where we focus ourselves in the distinction of the works according to their inclusion or not of the created stereotypes in the metamodel of UML.
Stereotype According To The Standard Of Omg
A stereotype provides a form of classifying elements in such a way that they work in some aspects as if they were instances of a new constructor of the “virtual”
metamodel. A stereotype could also be used to indicate a meaning or different use between two elements with identical structure. A stereotype can also specify a geometric icon to be used to present elements with the stereotype.Top
Using Stereotypes In Diverse Real Domains
UML adapts to any technique, because it has extension mechanisms that don’t need to redefine the nucleus UML, allowing to obtain a modeling more appropriate to the different particular domains. All of the extensions should follow the standard proposed by the OMG (2001).
Modeling of Business with UML
UML was initially designed to describe aspects of a software system. For the modeling of business, UML needed to be extended to identify and to visualize resources, processes, objectives and rules more clearly. These are the primary concepts that define a business system. The Eriksson-Penker Business Extensions (Eriksson & Penker, 1999) provide new stereotypes for their model. In a diagram of class of UML, they represent a process through a specific symbol that corresponds to an activity stereotyped in an activity diagram. The resources used by the process are modeled with a stereotyped dependence «supply» and the resources controlled by the process are modeled with a stereotyped dependence «control».
Key Terms in this Chapter
Class Diagram: Show the classes of the system, their interrelationships, and the collaboration between those classes.
Metamodel: An abstraction which defines the structure for a UML model. A model is an instance of a metamodel. Defines a language to describe an information domain.
OMG: Has been “Setting The Standards For Distributed Computing™ through its mission to promote the theory and practice of object technology for the development of distributed computing systems. The goal is to provide a common architectural framework for object-oriented applications based on widely available interface specifications ( OMG, 2001 ).
Stereotype: Allows to create new types of elements of modeling, based on the elements that form the goal-pattern UML, extending its semantics. ENDNOTE 1 See www.puml.org for the document “A Feasibility Study in Rearchitecting UML as a Family of Languages using a Precise OO Meta- Modeling Approach” (Clark, Evans, Kent, Brodsky, Cook) and associated tools.
Real Domains (Particular or Specific): The different application areas that can require to be modeled with UML. For example: Web applications, real-time system, XML, business modeling, frameworks, communication protocols, workflows, geographical information systems, and so forth.
Extension Mechanisms: Specify how model elements are customized and extended with new semantics.