Formalising model transformation rules for UML/MOF 2

Model-driven software development, today's state-of-the-art approach to the design of software, can be applied in various domains and thus demands a variety of domain-specific modelling languages. The specification of a domain-specific modelling language's syntax and semantics can in turn be specified based on models, which represent the approach of metamodelling as a special form of language engineering. The latest version of the unified modelling language 2 (UML 2) and its subset the meta object facility 2 (MOF 2) provide sufficient support for metamodelling, a modelling language's abstract syntax. Furthermore, based on the description of the abstract syntax, a language's static semantics can simply be specified by the object constraint language (OCL) as UML/MOF's natural constraint language, whereas the description of an MOF compliant language's dynamic semantics is still not covered. The authors try to close this gap by integrating MOF/OCL with graph transformations for the specification of dynamic aspects of modelling languages and tools. The formalisation of such an integration is non-trivial because of the fact that UML/MOF 2 offer a rather unusual and sophisticated association concept (graph model). Although there are many approaches, which formalise graph transformations in general and first approaches that offer a precise specification of the semantics of the association concepts of UML/MOF 2, there is still a lack in bringing both together. Here, the authors close this gap by formalising graph transformations that work on a UML/MOF 2 compatible graph model.

[1]  David A. Carrington,et al.  Formalizing the UML Class Diagram Using Object-Z , 1999, UML.

[2]  M. Broy,et al.  2nd UML 2 semantics symposium: formal semantics for UML , 2006, MoDELS'06.

[3]  Gabor Karsai,et al.  Graph Transformations on Domain-Specific Models , 2003 .

[4]  Hartmut Ehrig,et al.  Handbook of graph grammars and computing by graph transformation: vol. 2: applications, languages, and tools , 1999 .

[5]  Grzegorz Rozenberg,et al.  Handbook of Graph Grammars and Computing by Graph Transformations, Volume 1: Foundations , 1997 .

[6]  Hartmut Ehrig,et al.  Fundamentals of Algebraic Graph Transformation , 2006, Monographs in Theoretical Computer Science. An EATCS Series.

[7]  Bernhard Rumpe,et al.  The UML as a formal modeling notation , 1998, Comput. Stand. Interfaces.

[8]  Hartmut Ehrig,et al.  Fundamentals of Algebraic Graph Transformation (Monographs in Theoretical Computer Science. An EATCS Series) , 1992 .

[9]  Perdita Stevens On Associations in the Unified Modelling Language , 2001, UML.

[10]  Hartmut Ehrig,et al.  Handbook of graph grammars and computing by graph transformation: vol. 3: concurrency, parallelism, and distribution , 1999 .

[11]  Jim Steel,et al.  MOF QVT final adopted specification: meta object facility (MOF) 2.0 query/view/transformation specification. , 2005 .

[12]  Tobias Rötschke,et al.  MOFLON: A Standard-Compliant Metamodeling Framework with Graph Transformations , 2006, ECMDA-FA.

[13]  Krzysztof Czarnecki,et al.  Classification of Model Transformation Approaches , 2003 .

[14]  Andy Schürr,et al.  PROGRES: Language and Environment , 1999 .

[15]  James E. Rumbaugh,et al.  Relations as semantic constructs in an object-oriented language , 1987, OOPSLA '87.

[16]  Robert B. France,et al.  Towards a formalization of UML class structures in Z , 1997, Proceedings Twenty-First Annual International Computer Software and Applications Conference (COMPSAC'97).

[17]  Tobias Rötschke,et al.  MOSL: Composing a Visual Language for a Metamodeling Framework , 2006, Visual Languages and Human-Centric Computing (VL/HCC'06).

[18]  Jürgen Dingel,et al.  Mappings, maps and tables: towards formal semantics for associations in UML2 , 2006, MoDELS'06.

[19]  Andy Schürr,et al.  Programmed Graph Replacement Systems , 1997, Handbook of Graph Grammars.

[20]  Ivan Porres,et al.  Basic operations over models containing subset and union properties , 2006, MoDELS'06.