Abstract
Software product lines have proven to empower industry to develop a diversity of similar software-intensive systems at lower cost, in shorter time, and with higher quality when compared with the development of single systems. In this chapter, we describe the key differences between software product line engineering and the development of single software systems: the two complementary development processes and the explicitly managed product line variability. Looking ahead, we sketch some applications of the product line variability modeling principles and techniques in non-SPLE settings.
Chapter PDF
Similar content being viewed by others
References
Pohl, K., Böckle, G., van der Linden, F.: Software product line engineering: foundations, principles, and techniques. Springer, Berlin (2005)
Metzger, A., Pohl, K.: Software product line engineering and variability management: achievements and challenges. In: International Conference on Software Engineering (ICSE) – Future of Software Engineering Track (FOSE 2014), Hyderabad, India (2014)
Clements, P., Northrop, L.: Software product lines: practices and patterns, reading. Addison-Wesley, Upper Saddle River, NJ (2001)
Coplien, J., Hoffmann, D., Weiss, D.: Commonality and variability in software engineering. IEEE Soft. 15(6), 37–45 (1998)
Metzger, A., Heymans, P., Pohl, K., Schobbens, P.-Y., Saval, G.: Disambiguating the documentation of variability in software product lines: a separation of concerns, formalization and automated analysis. In: 15th Int’l Requirements Engineering Conference (RE 2007), New Delhi, India (2007)
van der Linden, F., Schmid, K., Rommes, E.: Software product lines in action. Springer, Berlin (2007)
Halmans, G., Pohl, K., Sikora, E.: Documenting application-specific adaptations in software product line engineering. In: 20th Int’l Conference on Advanced Information Systems Engineering (CAiSE 2008), Montpellier, France (2008)
Galster, M., Weyns, D., Tofan, D., Michalek, B. and Avgeriou, P.: Variability in software systems: a systematic literature review. In: IEEE Transactions on Software Engineering. available online (2013)
Helferich, A., Schmid, K., Herzwurm, G.: Product management for software product lines: an unsolved problem? Commun. ACM. 49(12), 66–67 (2006)
van Ommering, R., Bosch, J.: Widening the scope of software product lines: from variation to composition. In: 2nd Int’l Software Product Line Conference (SPLC), San Diego, USA (2002)
Bühne, S., Lauenroth, K., Pohl, K., Weber, M.: Modelling features for multi-criteria product-lines in the automotive industry. In: ICSE Workshop on Software Engineering for Automotive Systems (SEAS 2004), Edinburgh, UK (2004)
Pohl, K.: Requirements engineering: fundamentals, principles, and techniques. Springer, Heidelberg (2010)
Niu, N., Easterbrook, S.: Extracting and modeling product line functional requirements. In: 16th Int’l Requirements Engineering Conference (RE 2008), Barcelona, Spain (2008)
Figueiredo, E., Cacho, N., Sant’Anna, C., et al.: Evolving software product lines with aspects: an empirical study on design stability. In 30th Int’l Conference on Software Engineering (ICSE 2008), Leipzig, Germany (2008)
Mohabbati, B., Asadi, M., Gasevic, D., Hatala, M., Müller, H.: Combining service-orientation and software product line engineering: a systematic mapping study. Inf. Soft. Technol. 55(11), 1845–1859 (2013)
Di Nitto, E., Ghezzi, C., Metzger, A., Papazoglou, M.P., Pohl, K.: A journey to highly dynamic, self-adaptive service-based applications. Autom. Softw. Eng. 15(3–4), 313–341 (2008)
Capilla, R., Bosch, J., Kang, K.-C.: Systems and software variability management. Springer, Heidelberg (2013)
Batory, D., Höfner, P., Kim, J.: Feature interactions, products, and composition. In: 10th Int’l Conference on Generative Programming and Component Engineering (GPCE 2011), Portland, USA (2011)
Haber, A., Hölldobler, K., Kolassa, C., Look, M., Rumpe, B., Müller, K., Schaefer, I.: Engineering delta modeling languages. In 17th Int’l Software Product Line Conference (SPLC 2013), Tokyo, Japan (2013)
Lauenroth, K., Metzger, A., Pohl, K.: Quality assurance in the presence of variability. In: Intentional perspectives on information systems engineering, pp. 319–334. Springer, Heidelberg (2010)
Lee, J., Kang, S., Lee, D.: A survey on software product line testing. In 16th Int’l Software Product Line Conference (SPLC 2012), Salvador, Brazil (2012)
Pohl, K., Metzger, A.: Software product line testing. Commun. ACM. 49(12), 78–81 (2006)
Benavides, D., Segura, S., Ruiz-Cortés, A.: Automated analysis of feature models 20 years later: a literature review. Inform. Sys. 35(6), 615–636 (2010)
Pohl, R., Stricker, V., Pohl, K.: Measuring the structural complexity of feature models. In 28th Int’l Conference on Automated Software Engineering (ASE 2013), Palo Alto, USA (2013)
Dhungana, D., Grünbacher, P., Rabiser, R.: The DOPLER meta-tool for decision-oriented variability modeling: a multiple case study. Autom. Softw. Eng. 18(1), 77–114 (2011)
Engström, E., Runeson, P.: Software product line testing: a systematic mapping study. Inf. Softw. Technol. 53(1), 2–13 (2011)
Stricker, V., Metzger, A., Pohl, K.: Avoiding redundant testing in application engineering. In: 14th Int’l Software Product Line Conference (SPLC 2010), Jeju Island, South Korea (2010).
Berger, T., Rublack, R., Nair, D., Atlee, J., Becker, M., Czarnecki, K., Wasowski, A.: A survey of variability modeling in industrial practice. In 7th Int’l Workshop on Variability Modelling of Software-intensive Systems (VaMoS 2013), Pisa, Italy (2013)
Rubin, J., Kirshin, A., Botterweck, G., Chechik, M.: Managing forked product variants. In: 16th Int’l Software Product Line Conference (SPLC 2012), Salvador, Brazil (2012)
Pohl, K., Broy, M., Daembkes, H., Hönninger, H.: Advanced model-based engineering of embedded systems. Springer, Cham (2016)
Atzori, L., Iera, A., Morabito, G.: The internet of things: a survey. Comput. Netw. 54(15), 2787–2805 (2010)
Bosch, J.: Building products as innovation experiment systems. In: 3rd Int’l Conference on Software Business (ICSOB 2012), Cambridge, USA (2012)
Cooper, K., Franch, X.: Editorial. J. Syst. Softw. 81(6), 841–842 (2008)
DÃaz, J., Pérez, J., Alarcón, P.P., Garbajosa, J.: Agile product line engineering: a systematic literature review. Softw. Pract. Exp. 41(8), 921–941 (2011)
Metzger, A., Bayer, A., Doyle, D., Molzam Sharifloo, A., Pohl, K., Wessling, F.: Coordinated run-time adaptation of variability-intensive systems: an application in cloud computing. In ICSE 2016 1st Int’l Workshop on Variability and Complexity in Software Design (VACE), Austin, Texas (2016)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Open Access This chapter is licensed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license and indicate if changes were made.
The images or other third party material in this chapter are included in the chapter's Creative Commons license, unless indicated otherwise in a credit line to the material. If material is not included in the chapter's Creative Commons license and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder.
Copyright information
© 2018 The Author(s)
About this chapter
Cite this chapter
Pohl, K., Metzger, A. (2018). Software Product Lines. In: Gruhn, V., Striemer, R. (eds) The Essence of Software Engineering. Springer, Cham. https://doi.org/10.1007/978-3-319-73897-0_11
Download citation
DOI: https://doi.org/10.1007/978-3-319-73897-0_11
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-73896-3
Online ISBN: 978-3-319-73897-0
eBook Packages: Computer ScienceComputer Science (R0)