A generic weaver for supporting product lines

Aspects have gained attention in the earlier steps of the software life-cycle leading to the creation of numerous ad-hoc Aspect-Oriented Modeling (AOM) approaches. These approaches mainly focus on architecture diagrams, class diagrams, state-charts, scenarios or requirements and generally propose Aspect-Oriented composition mechanisms specific to a given kind of models defined by its own meta-model. Recently, some generic AOM approaches propose to extend the notion of aspect to any domain specific modelling language (DSML). In this trend, this paper presents GeKo. GeKo has the following properties. i) It is a generic AOM approach easily adaptable to any DSML with no need to modify the domain meta-model or to generate domain-specific frameworks. ii) It keeps a graphical representation of the weaving between an aspect model and the base model. iii) It is a tool-supported approach with a clear semantics of the different operators used to define the weaving. GeKo relies on the definition of mappings between the different views of an aspect, based on the concrete (graphical) syntax associated to the DSML. To illustrate GeKo, we derive, from the Arcade Game Maker Pedagogical Product Line, a new product in which new features are woven into the Product Line models.

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

[2]  Gregor Kiczales,et al.  Aspect-oriented programming , 2001, ESEC/FSE-9.

[3]  Gregor Kiczales,et al.  D: A Language Framework for Distributed Programming , 1997 .

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

[5]  Jon Whittle,et al.  Model composition in product lines and feature interaction detection using critical pair analysis , 2007, MODELS'07.

[6]  Brice Morin,et al.  Weaving Aspect Configurations for Managing System Variability , 2008, VaMoS.

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

[8]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

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

[10]  Robert B. France,et al.  A Generic Approach for Automatic Model Composition , 2008, MoDELS.

[11]  Robert B. France,et al.  Providing Support for Model Composition in Metamodels , 2007, 11th IEEE International Enterprise Distributed Object Computing Conference (EDOC 2007).

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

[13]  Robert B. France,et al.  Model Composition Directives , 2004, UML.

[14]  Jean-Marc Jézéquel,et al.  Weaving executability into object-oriented meta-languages , 2005, MoDELS'05.

[15]  Robert B. France,et al.  Directives for Composing Aspect-Oriented Design Class Models , 2006, LNCS Trans. Aspect Oriented Softw. Dev..