Abstract
Understanding the challenges faced by real projects in evolving variability models, is a prerequisite for providing adequate support for such undertakings. We study the evolution of a model describing features and configurations in a large product line—the Linux kernel variability model. We analyze this evolution quantitatively and qualitatively.
Our primary finding is that the Linux kernel model appears to evolve surprisingly smoothly. In the analyzed period, the number of features had doubled, and still the structural complexity of the model remained roughly the same. Furthermore, we provide an in-depth look at the effect of the kernel’s development methodologies on the evolution of its model. We also include evidence about edit operations applied in practice, evidence of challenges in maintaining large models, and a range of recommendations (and open problems) for builders of modeling tools.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
She, S., Lotufo, R., Berger, T., Wąsowski, A., Czarnecki, K.: The variability model of the linux kernel. In: VaMoS, Linz, Austria (2010)
Thüm, T., Batory, D.S., Kästner, C.: Reasoning about edits to feature models. In: ICSE, pp. 254–264 (2009)
Janota, M., Kuzina, V., Wąsowski, A.: Model construction with external constraints: An interactive journey from semantics to syntax. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 431–445. Springer, Heidelberg (2008)
Alves, V., Gheyi, R., Massoni, T., Kulesza, U., Borba, P., de Lucena, C.J.P.: Refactoring product lines. In: GPCE, pp. 201–210 (2006)
Kästner, C., Apel, S.: Type-checking software product lines - a formal approach, pp. 258–267 (2008)
Janota, M., Botterweck, G.: Formal approach to integrating feature and architecture models. In: Fiadeiro, J.L., Inverardi, P. (eds.) FASE 2008. LNCS, vol. 4961, pp. 31–45. Springer, Heidelberg (2008)
Tartler, R., Sincero, J., Schröder-Preikschat, W., Lohmann, D.: Dead or alive: finding zombie features in the linux kernel. In: FOSD, pp. 81–86 (2009)
Kroah-Hartman, G., Inc., S.L., Corbet, J., LWN.net, McPherson, A.: Linux kernel development: How fast it is going, who is doing it, what they are doing, and who is sponsoring it (2009)
Sincero, J., Schröder-Preikschat, W.: The linux kernel configurator as a feature modeling tool. In: ASPL, pp. 257–260 (2008)
Bird, C., Rigby, P.C., Barr, E.T., Hamilton, D.J., German, D.M., Devanbu, P.: The promises and perils of mining git. In: Mining Software Repositories (2009)
Godfrey, M.W., Tu, Q.: Evolution in open source software: A case study. In: ICSM, pp. 131–142 (2000)
Israeli, A., Feitelson, D.G.: The Linux kernel as a case study in software evolution. Journal of Systems and Software, 485–501 (2010)
Adams, B., De Schutter, K., Tromp, H., De Meuter, W.: The evolution of the Linux build system. ECEASST (2007)
Svahnberg, M., Bosch, J.: Evolution in software product lines: two cases. Journal of Software Maintenance: Research and Practice, 391–422 (1999)
Dhungana, D., Neumayer, T., Grunbacher, P., Rabiser, R.: Supporting evolution in Model-Based product line engineering. In: SPLC, pp. 319–328 (2008)
Hubaux, A., Heymans, P., Benavides, D.: Variability modeling challenges from the trenches of an open source product line re-engineering project. In: SPLC (2008)
Jepsen, H.P., Beuche, D.: Running a software product line - standing still is going backwards. In: SPLC (2009)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Lotufo, R., She, S., Berger, T., Czarnecki, K., Wąsowski, A. (2010). Evolution of the Linux Kernel Variability Model. In: Bosch, J., Lee, J. (eds) Software Product Lines: Going Beyond. SPLC 2010. Lecture Notes in Computer Science, vol 6287. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-15579-6_10
Download citation
DOI: https://doi.org/10.1007/978-3-642-15579-6_10
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-15578-9
Online ISBN: 978-3-642-15579-6
eBook Packages: Computer ScienceComputer Science (R0)