Presentation: "Managing Variability in Product-Lines"

Time: Tuesday 13:00 - 14:00

Location: Conference Hall

Abstract:

Managing variability is a major challenge in product line engineering. The commonalities and differences between products must be described accurately, both in the problem space as well as in the solution space. It is also critical to be able to trace variability in the problem space to implementation decisions used to implement that variability in the code.

In this session I will illustrate how model-driven and aspect oriented software development help addressing these challenges. Both the problem space and the solution space are described by models, using a model-to-model transformation to map problem space variability to solution space variability. Since models are less detailed than code, it is much easier to implement the variability in solution space models. Tracing can be done between model elements rather than between artifacts.

The following techniques will be illustrated:

  • combining modelling languages for customization and configuration
  • using model-to-model transformations to formally describe the mapping from problem space to solution space
  • integrating runtime variability based on models
  • handling traceability on model-level
  • the importance of a powerful platform as a basis for the product line
  • developing families of code generators and model transformations
  • aspect-oriented modelling as a way of defining variants of models
  • using aspect-oriented programming to adapt product code for unexpected variability

The approach shown in the tutorial is based on a concrete case study and completely example-driven. Concepts are illustrated with a running example using tools based on Eclipse and openArchitectureWare.

Password protected Download slides

Track host: Markus Völter, Independent

 Track host: Markus  Völter

Markus Völter works as an independent consultant and coach for software technology and engineering. He focuses on software architecture, middleware as well as model-driven software development.

Markus is the author of several magazine articles, patterns and books on middleware and model-driven software development. He is a regular speaker at conferences world wide. Markus can be reached via voelter.de