Deep Meta-modelling with MetaDepth

Meta-modelling is at the core of Model-Driven Engineering, where it is used for language engineering and domain modelling. The OMG's Meta-Object Facility is the standard framework for building and instantiating meta-models. However, in the last few years, several researchers have identified limitations and rigidities in such a scheme, most notably concerning the consideration of only two meta-modelling levels at the same time. In this paper we present METADEPTH, a novel framework that supports a dual linguistic/ontological instantiation and permits building systems with an arbitrary number of meta-levels through deep metamodelling. The framework implements advanced modelling concepts allowing the specification and evaluation of derived attributes and constraints across multiple meta-levels, linguistic extensions of ontological instance models, transactions, and hosting different constraint and action languages.

[1]  Don S. Batory,et al.  Multilevel models in model-driven engineering, product lines, and metaprogramming , 2006, IBM Syst. J..

[2]  Jean Bézivin,et al.  KM3: A DSL for Metamodel Specification , 2006, FMOODS.

[3]  Tomi Männistö,et al.  Nivel: a metamodelling language with a formal semantics , 2009, Software & Systems Modeling.

[4]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[5]  Frank Budinsky,et al.  EMF: Eclipse Modeling Framework 2.0 , 2009 .

[6]  Uwe Glässer,et al.  Rigorous Methods for Software Construction and Analysis, Essays Dedicated to Egon Börger on the Occasion of His 60th Birthday , 2009, Rigorous Methods for Software Construction and Analysis.

[7]  Colin Atkinson,et al.  Reducing accidental complexity in domain models , 2008, Software & Systems Modeling.

[8]  Colin Atkinson,et al.  Rearchitecting the UML infrastructure , 2002, TOMC.

[9]  Rob Miller,et al.  The Amulet Environment: New Models for Effective User Interface Software Development , 1997, IEEE Trans. Software Eng..

[10]  Richard F. Paige,et al.  The Epsilon Object Language (EOL) , 2006, ECMDA-FA.

[11]  Colin Atkinson,et al.  A Flexible Infrastructure for Multilevel Language Engineering , 2009, IEEE Transactions on Software Engineering.

[12]  Brian Henderson-Sellers,et al.  Metamodelling for software engineering , 2008 .

[13]  Arend Rensink Model Driven Architecture - Foundations and Applications, 5th European Conference, ECMDA-FA 2009, Enschede, The Netherlands, June 23-26, 2009. Proceedings , 2009, ECMDA-FA.

[14]  Perdita Stevens,et al.  Modelling Recursive Calls with UML State Diagrams , 2003, FASE.

[15]  Juan de Lara,et al.  Pattern-Based Model-to-Model Transformation: Handling Attribute Conditions , 2009, ICMT@TOOLS.

[16]  Frank Budinsky,et al.  Eclipse Modeling Framework , 2003 .

[17]  Perdita Stevens A Simple Game-Theoretic Approach to Checkonly QVT Relations , 2009, ICMT@TOOLS.

[18]  Andy Evans,et al.  Mapping between Levels in the Metamodel Architecture , 2001, UML.

[19]  Axel Uhl,et al.  MDA Distilled , 2004 .

[20]  Stéphane Ducasse,et al.  Meta-environment and executable meta-language using smalltalk: an experience report , 2009, Software & Systems Modeling.

[21]  Daniel Schreiber,et al.  Can programming be liberated from the two-level style: multi-level programming with deepjava , 2007, OOPSLA.

[22]  Juan de Lara,et al.  AToM3: A Tool for Multi-formalism and Meta-modelling , 2002, FASE.

[23]  Brian Henderson-Sellers,et al.  A powertype-based metamodelling framework , 2006, Software & Systems Modeling.

[24]  Richard F. Paige,et al.  On the Evolution of OCL for Capturing Structural Constraints in Modelling Languages , 2009, Rigorous Methods for Software Construction and Analysis.