A Classification and Survey of Analysis Strategies for Software Product Lines

Abstract

Software-product-line engineering has gained considerable momentum in recent years, both in industry and in academia. A software product line is a family of software products that share a common set of features. Software product lines challenge traditional analysis techniques, such as type checking, model checking, and theorem proving, in their quest of ensuring correctness and reliability of software. Simply creating and analyzing all products of a product line is usually not feasible, due to the potentially exponential number of valid feature combinations. Recently, researchers began to develop analysis techniques that take the distinguishing properties of software product lines into account, for example, by checking feature-related code in isolation or by exploiting variability information during analysis. The emerging field of product-line analyses is both broad and diverse, so it is difficult for researchers and practitioners to understand their similarities and differences. We propose a classification of product-line analyses to enable systematic research and application. Based on our insights with classifying and comparing a corpus of 123 research articles, we develop a research agenda to guide future research on product-line analyses.

DOI: 10.1145/2580950

Extracted Key Phrases

13 Figures and Tables

020406020132014201520162017
Citations per Year

166 Citations

Semantic Scholar estimates that this publication has 166 citations based on the available data.

See our FAQ for additional information.

Cite this paper

@article{Thm2014ACA, title={A Classification and Survey of Analysis Strategies for Software Product Lines}, author={Thomas Th{\"{u}m and Sven Apel and Christian K{\"a}stner and Ina Schaefer and Gunter Saake}, journal={ACM Comput. Surv.}, year={2014}, volume={47}, pages={6:1-6:45} }