|
|
Projectional Language Workbenches as a Foundation for Product Line Engineering
Product line engineering deals with managing and implementing the variability among a set of related products. We distinguish between two kinds of variability: configuration and customiza-tion. Customization variability can be described using program-ming language code or creative construction DSLs, whereas configuration variability is described using configuration based approaches, such as feature models. Many product lines have both kinds of variability, and they need to be integrated efficiently. This paper describes an approach for product line engineering using projectional language workbenches. These represent code and models with the same fundamental technology, enabling the mixing of models and code. They make the tight integration be-tween several domain-specific languages possible and simple. Since they can store arbitrary information in models, it is possible to overlay configuration variability over customization variability (i.e. apply feature model-based configuration to code and models). Because of the projectional approach to editing, programs can be shown with or without the dependencies on feature models, they can even be rendered (and edited) for a specific variant. This ap-proach leads to highly integrated and productive tools for product line development. The paper explains the approach, outlines the implementation of a prototype tool based on Jetbrains MPS and illustrates the benefits using a small product line for embedded systems.
[Pos. Paper]
23.02.2010
Download...
Abstract...
|
Projectional Language Workbenches as a Foundation for Product Line Engineering
|
Conference: GPCE 2010
Workshop: Feature Oriented Software Development (FOSD) 2010
|
|