Weaving variability into domain metamodels

Gilles Perrouin, Gilles Vanwormhoudt, Brice Morin, Philippe Lahire, Olivier Barais, Jean-Marc Jézéquel

Research output: Contribution to journalArticlepeer-review


Domain-specific modeling languages (DSMLs) are the essence of MDE. A DSML describes the concepts of a particular domain in a metamodel, as well as their relationships. Using a DSML, it is possible to describe a wide range of different models that often share a common base and vary on some parts. On the one hand, some current approaches tend to distinguish the variability language from the DSMLs themselves, implying greater learning curve for DSMLs stakeholders and a significant overhead in product line engineering. On the other hand, approaches integrating variability in DSMLs lack generality and tool support. We argue that aspect-oriented modeling techniques enabling flexible metamodel composition and results obtained by the software product line community to manage and resolve variability form the pillars for a solution for integrating variability into DSMLs. In this article, we consider variability as an independent and generic aspect to be woven into the DSML. In particular, we detail how variability is woven and how to perform product line derivation. We validate our approach through the weaving of variability into two different metamodels: Ecore—widely used for DSML definition—and SmartAdapters, our aspect model weaver. These results emphasize how new abilities of the language can be provided by this means.
Original languageEnglish
Pages (from-to)361-383
JournalSoftware and Systems Modeling
Issue number3
Early online date15 Dec 2010
Publication statusPublished - 1 Jul 2012


  • Domain specific languages
  • Model weaving
  • Variability and software product lines


Dive into the research topics of 'Weaving variability into domain metamodels'. Together they form a unique fingerprint.

Cite this