Achieving Practical Genericity in Model Weaving through Extensibility

Many tasks in Model-Driven Engineering (MDE) involve cross-cutting model modifications that are bound to certain conditions. These transformation tasks may affect numerous model elements and appear in different forms, such as refactoring, model completions or aspect-oriented model weaving. Although the operations at the heart of these tasks are domain-independent, generic solutions that can easily be used and customized are rare. General-purpose model transformation languages as well as existing model weavers exhibit metamodel-specific restrictions and introduce accidental complexity. In this paper, we present a model weaver that addresses these problems using an extensible approach that is defined for metamodelling languages and therefore generic. Through examples of different formalisms we illustrate how our weaver manages homogeneous in-place model transformations that may involve the duplication, merge, and removal of model elements in a generic way. Possibilities to extend and customize our weaver are exemplified for the non-software domain of Building Information Modelling (BIM).

[1]  Jochen Ludewig,et al.  Models in software engineering – an introduction , 2003, Software and Systems Modeling.

[2]  Jacques Klein,et al.  Semantic-based weaving of scenarios , 2006, AOSD.

[3]  Steffen Becker,et al.  The Palladio component model for model-driven performance prediction , 2009, J. Syst. Softw..

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

[5]  Ralf H. Reussner,et al.  Application of Advanced Model-Driven Techniques in Performance Engineering , 2010, EPEW.

[6]  Tetsuo Tomiyama,et al.  Advanced Engineering Informatics , 2007, Adv. Eng. Informatics.

[7]  Jim Steel,et al.  A Transformation Workbench for Building Information Models , 2011, ICMT@TOOLS.

[8]  On the Formalisation of GeKo: a Generic Aspect Models Weaver , 2012 .

[9]  Brice Morin,et al.  Towards a Generic Aspect-Oriented Modeling Framework , 2007 .

[10]  Juan de Lara,et al.  Generic Model Transformations: Write Once, Reuse Everywhere , 2011, ICMT@TOOLS.

[11]  Kevin Lano,et al.  Slicing of UML models using model transformations , 2010, MODELS'10.

[12]  Awais Rashid,et al.  Transactions on Aspect-Oriented Software Development V , 2009, Lecture Notes in Computer Science.

[13]  Philippe Lahire,et al.  New Perspective To Improve Reusability in Object-Oriented Languages , 2006, J. Object Technol..

[14]  Jacques Klein,et al.  Building specifications as a domain-specific aspect language , 2012, DSAL '12.

[15]  Steffen Zschaler,et al.  On Language-Independent Model Modularisation , 2009, LNCS Trans. Aspect Oriented Softw. Dev..

[16]  Allan Clark,et al.  State-Aware Performance Analysis with eXtended Stochastic Probes , 2008, EPEW.

[17]  Jacques Klein,et al.  Flexible model element introduction policies for aspect-oriented modeling , 2010, MODELS'10.

[18]  Lionel C. Briand,et al.  Modeling robustness behavior using aspect-oriented modeling to support robustness testing of industrial systems , 2011, Software & Systems Modeling.

[19]  Brice Morin,et al.  Introducing variability into aspect-oriented modeling approaches , 2007, MODELS'07.

[20]  Rob Howard,et al.  Building information modelling - Experts' views on standardisation and industry deployment , 2008, Adv. Eng. Informatics.

[21]  Richard F. Paige,et al.  Merging models with the epsilon merging language (EML) , 2006, MoDELS'06.

[22]  Olivier Barais,et al.  Matching model-snippets , 2007, MODELS'07.

[23]  Jacques Klein,et al.  A generic weaver for supporting product lines , 2008, EA '08.

[24]  Patrick Valduriez,et al.  Towards the efficient development of model transformations using model weaving and matching transformations , 2009, Software & Systems Modeling.

[25]  Charles L. Forgy,et al.  Rete: a fast algorithm for the many pattern/many object pattern match problem , 1991 .

[26]  Thomas Cottenier The Motorola WEAVR : Model Weaving in a Large Industrial Context , 2006 .

[27]  Lidia Fuentes,et al.  Aspect-Oriented Model Weaving Beyond Model Composition and Model Transformation , 2008, MoDELS.

[28]  Jon Whittle,et al.  MATA: A Tool for Aspect-Oriented Modeling Based on Graph Transformation , 2007, MoDELS Workshops.

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

[30]  Jean-Marc Jézéquel,et al.  Transactions on Aspect-Oriented Software Development VII , 2009 .

[31]  Gabriele Taentzer,et al.  Analysis of Aspect-Oriented Model Weaving , 2009, LNCS Trans. Aspect Oriented Softw. Dev..