190 likes | 498 Views
Lidia Fuentes-Fernández and Antonio Vallecillo-Moreno. An Introduction to UML Profiles. Presented By Aditi Barua. Introduction. Purpose of the paper is to: Introduce UML profiles. Discuss on the usefulness and importance of UML profile in Model-driven Architecture(MDA) context. .
E N D
Lidia Fuentes-Fernández and Antonio Vallecillo-Moreno An Introduction to UML Profiles Presented By Aditi Barua
Introduction Purpose of the paper is to: • Introduce UML profiles. • Discuss on the usefulness and importance of UML profile in Model-driven Architecture(MDA) context.
Background … • Model is a description of system or part of a system using well-defined language. • Software models provide abstraction of systems which help deal with large and complex application. • UML(Unified Modeling Language) is most widely used modeling language. • UML is a general-purpose language which can be applied in all application domain and implementation platform.
Motivation … • A general-purpose language(UML) cannot describe applications of specific domain. • Two possible solutions: • Introduction of new language • Extension of the existing UML syntax and semantics. • New modeling language can not be supported by the commercial UML tools.
4-layered Conceptual Architecture • Layer M0: Instances: • Models running system and its elements whose instances actually exist in the system. • EX; define instances of class. • Layer M1:Model of the system: • Defines the classes with their attributes. • EX; defines Class “Customer” with its attribute “address” • Layer M2: The model of the model(metamodel, modeling language) • Defines the concepts that are used to model an element of layer M1 • EX; defines classes, attributes and associations, etc • Layer M3: The model of M2(meta-metamodel, MOF) • Defines the concepts that can be used to define modeling languages. • EX; defines what is a class and its relationship with the rest of the UML concepts
Example Scenario • M0: • M1: • M2: • M3:
UML Profiles • UML profile package defines a set of UML artifacts that allow the specifications of an MOF model • These artifacts deal with the specific concepts and notations for particular application domain and implementation platform. • UML profiles have three basic mechanisms: • Stereotypes • Constraints • Tagged value
UML Profiles(Example …) • Two new elements- Colours and Weights • Properties: the actual colour of a colouredelement, the weight of a weighed element • Restrictions: coloured associations can only be defined between classes of the same colour as that of the association.
UML Profiles(Example …) Constraints in OCL
How to define UML Profile Meta model Actual system
Part of OCL UML profile
Exercise • Define a UML profile to support the notations used in the following UML class diagram.