Abstract
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 theweaving 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.
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 theweaving 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.