Variability Modeling in the Real - An Empirical Journey from Software Product Lines to Software Ecosystems (Dr. Thorsten Berger)
Sprache des Titels:
Variability modeling is one of the key disciplines in software product line engineering. Since the introduction of feature models more than twenty years ago, many variability modeling languages have been proposed both in academia and industry, followed by hundreds of publications on techniques that build upon these theoretical foundations. Surprisingly, there are few empirical studies about the actual use of such languages. What variability modeling concepts are used in practice? Are real-world variability models similar to those considered in research? In what technical and organizational contexts are variability models applicable? We present an empirical study on variability modeling that analyzes concepts and semantics of real-world variability modeling languages, and their use in large-scale models. We extend our empirical discourse to the emerging field of software ecosystems, which manage huge variability among and within their software assets. Our studied systems comprise eleven highly configurable software systems, two ecosystems with closed platforms, and three software ecosystems relying on open platforms. We provide empirical data on the use of variability modeling in practice. We confirm that the flagship concepts of feature modeling are used in practice, but also that more advanced concepts are needed to scale models and configurators. Our datasets can be used for benchmarking and for deriving realistic assumptions about scale, structure, content, and complexity of real-world models.