A study of variability spaces in open source software
Author:
- 1 May 2013
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- No. 02705257,p. 1353-1356
Abstract
Configurable software systems allow users to customize them according to their needs. Supporting such variability is commonly divided into three parts: configuration space, build space, and code space. In this research abstract, we describe our work in exploring what information these spaces contain in practice, and if this information is consistent. This involves investigating how these spaces work together to ensure that variability is correctly implemented, and to avoid any inconsistencies or anomalies. Our work identifies how variability is implemented in several configurable systems, and initially focuses on less studied parts such as the build system. Our goals include: 1) investigating what information each space provides, 2) quantifying the variability in the build system, 3) studying the effect of build system constraints on variability anomalies, and 4) analyzing how variability anomalies are introduced and fixed. Achieving these goals would help developers make informed decisions when designing variable software, and improve maintainability of existing configurable systems.Keywords
This publication has 14 references indexed in Scilit:
- A robust approach for variability extraction from the Linux build system2012
- Understanding linux feature distribution2012
- The evolution of Java build systemsEmpirical Software Engineering, 2011
- Feature consistency in compile-time-configurable system software2011
- Variability modeling in the real2010
- An analysis of the variability in forty preprocessor-based software product lines2010
- Learning from bug-introducing changes to prevent fault prone code2007
- Automatic Identification of Bug-Introducing Changes2006
- When do changes induce fixes?2005
- Components and Generative Programming1999