Tutorials - SBES

Title: Software Product Line Development

Vander Alves (UnB)
Dirk Muthig (Fraunhofer IESE)

A Software Product Line (SPL) is a set of applications sharing features in a domain and that are build systematically from a set of reusable artifacts. Possible benefits incurred by this approach in software development are reduced costs and time-to-market and increased quality when compared to single-product development. To achieve these, key issues are (1) addressing variability in the domain and (2) establishing adoption strategies. Variability exists at various abstraction levels spanning different lifecycle artifacts and may be handled by different mechanisms. Adoption strategies define how the SPL approach can be put into practice in an organization. This tutorial initially motivates the need for SPL, highlighting its key challenges. It then illustrates variability mechanisms as well as a metamodel for describing variability at various abstraction levels. Next, specific adoption strategies are presented and illustrated. Finally, academic and industrial SPL are described as well as supporting tools.


Phase I
Until 31 aug

Phase II
Until 29 sept

Phase III
After 29 sept

XXIV SBBD XXIII SBES - October, 05-09 2009