Towards a Metamodel Design Methodology Experiences from a model transformation metamodel design

Software engineering makes extensive use of models to provide a better understanding of artifacts produced during system development. Models are specified in modeling languages such as UML or using Domain Specific Languages. In this paradigm of development, metamodeling is essential because it is usually used to specify the abstract syntax of these languages. However, the design of metamodels is not a trivial task, it requires expertise in specific domains, language definition and abstraction capabilities. This paper provides a guide for metamodel design towards a metamodel development methodology based on some lessons learned from metamodel design experiences.

[1]  Tony Clark,et al.  Model-driven development - Guest editor's introduction , 2003 .

[2]  Jesús Sánchez Cuadrado,et al.  Building Domain-Specific Languages for Model-Driven Development , 2007, IEEE Software.

[3]  Jordi Cabot,et al.  Model-Driven Software Engineering in Practice , 2017, Synthesis Lectures on Software Engineering.

[4]  Rini van Solingen,et al.  Goal Question Metric (GQM) Approach , 2002 .

[5]  Rita Suzana Pitangueira Maciel,et al.  MTP: Model Transformation Profile , 2013, 2013 VII Brazilian Symposium on Software Components, Architectures and Reuse.

[6]  Rita Suzana Pitangueira Maciel,et al.  An Integrated Approach for Model Driven Process Modeling and Enactment , 2009, 2009 XXIII Brazilian Symposium on Software Engineering.

[7]  Gabor Karsai,et al.  Design Guidelines for Domain Specific Languages , 2014, ArXiv.

[8]  Steven Kelly,et al.  Defining Domain-Specific Modeling Languages: Collected Experiences , 2004 .

[9]  Jack P. C. Kleijnen,et al.  A methodology for fitting and validating metamodels in simulation , 2000, Eur. J. Oper. Res..

[10]  Martin Gogolla,et al.  Model transformations? transformation models! , 2006, MoDELS'06.

[11]  Antonio Cicchetti,et al.  A Test-Driven Approach for Metamodel Development , 2011 .

[12]  Jeffrey G. Gray,et al.  Design patterns for metamodels , 2011, SPLASH Workshops.

[13]  Juan de Lara,et al.  Generic meta-modelling with concepts, templates and mixin layers , 2010, MODELS'10.

[14]  Martin Fowler,et al.  Domain-Specific Languages , 2010, The Addison-Wesley signature series.

[15]  Claes Wohlin,et al.  Towards a decision-making structure for selecting a research design in empirical software engineering , 2014, Empirical Software Engineering.

[16]  Tom Mens,et al.  A Taxonomy of Model Transformation , 2006, GRaMoT@GPCE.

[17]  Rita Suzana Pitangueira Maciel,et al.  Modden: An Integrated Approach for Model Driven Development and Software Product Line Processes , 2011, 2011 Fifth Brazilian Symposium on Software Components, Architectures and Reuse.

[18]  Tom Mens,et al.  04101 Discussion - A Taxonomy of Model Transformations , 2004, Language Engineering for Model-Driven Software Development.

[19]  Maria-Eugenia Iacob,et al.  Reusable Model Transformation Patterns , 2008, 2008 12th Enterprise Distributed Object Computing Conference Workshops.

[20]  Rita Suzana Pitangueira Maciel,et al.  Supporting model-driven development using a process-centered software engineering environment , 2013, Automated Software Engineering.

[21]  M Mernik,et al.  When and how to develop domain-specific languages , 2005, CSUR.