Abstract
Software variability is an ability to change (configure, customize, extend) software artefacts (e.g. code, product, domain requirements, models, design, documentation, test cases) for a specific context. Optimized variability management can lead a software company to 1) shorter development lead time, 2) improved customer and improved user satisfaction, 3) reduced complexity of product management (more variability, same $) and 4) reduced costs (same variability, less $). However, it is not easy for software companies, especially small and medium size of enterprises to deal with variability. In this paper we present variability challenges and used practices collected from five SMEs. Our study indicates that increased product complexity can lead growing SMEs to the time-consuming decision-making. Many of the analyzed medium size of companies also expect improved tool support to help them to boost their productivity when managing increasingly complex products and increasing amount of variants In fact, in many of the analysed SMEs, a high level of automation in design, release management and testing are or become a key factor for market success By introducing the challenges and used practices related to variability the paper deepens understanding of this highly relevant but relatively under-researched phenomenon and contributes to the literature on software product line engineering.
Similar content being viewed by others
Notes
In this paper we are using US definition of the SMEs.
References
Ali Babar M, Chen L, Shull F (2010) Managing variability in software product lines. IEEE Softw 27(3):89–94
Asikainen T, Mannisto T, Soininen T (2007) Kumbang: A domain ontology for modelling variability in software product families. Adv Eng Inform 21(1):23–40
Bachmann F, Clements PC (2005) Variability in software product lines. SEI CMU, Pittsburgh, Technical Report CMU/SEI-2005-TR-012
Bosch J (2006) The challenges of broadening the scope of software product families the challenges of broading the cope of software product families. Commun ACM 49(12):41–44
Bosch J, Florijn G, Greefhorst D, Kuusela J, Obbink H, Pohl K (2001) Variability issues in software product lines. In: van def Linden F (ed) Fourth International Workshop on Product Family Engineering (PFE-4). Springer-Verlag, Bilbao, pp 13–21
Chen L, Ali Babar M (2010) Variability management in software product lines: an investigation of contenporary industrial challenges. Proceeding SPLC'10 Proceedings of the 14th international conference on Software product lines
Chen L, Ali Babar M (2011) A systematic review of evaluation of variability management approaches in software product lines. Inf Softw Technol 53: 344–362
Clements P, Northrop L (2001) Software product lines. Addison-Wesley, New York
Codenie W, Gonzalez-Deleito N, Deleu J, Blagojevic V, Kuvaja P, Similä J (2010) Managing flexibility and variability: a road to competitive advantage. In: Kang K, Sugumaran V, Park S (eds) Applied software product line engineering. CRC Press, New York, pp 269–313
Eisenhardt KM (1989) Building theories from case study research. Acad Manag Rev 14(4):532–550
Eisenhardt KM, Graebner ME (2007) Theory building from cases: opportunities and challenges. Acad Manag J 50(1):25–32
Fillis I (2001) Small firm internationalisation: an investigative survey and future research directions. Manag Decis 39(9):767–783
Galster M, Avgeriou P (2011) Handling variability in software architecture: problems and implications. Proceedings of the ninth working IEEE/IFIP Conference on Software Architecture pp 171–180
Groves L, Nickson R, Reeve G, Reeves S, Utting M (2000) A survey of software development practices in New Zeland software industry. Aswec (Australian Software Engineering Conference) 00, pp 189–202
Gurp J, Bosch J, Svahnberg M (2001) On the notion of variability in software product lines. Proc Work IEEE/IFIP Conf Softw Archit 2001:45–55
Hallsteinsen S, Hinchey M, Park S, Schmid K (2008) Dyn Softw Prod Lines Comput 2008:93–95
Halmans G, Pohl K (2003) Communicating the variability of a software-product family to customers. Softw Syst Model 2(1):15–36
Info-Tech (2004) Stage 7 >build a strategic decision making framework. In: Strategic IT planning and governance, info-tech research group (www.infotech.com)
Jaejoon L, Kotonya G, Robinson D (2012) Engineering service-based dynamic software product lines. IEEE Comput 45(10):49–54
Kamsties E, Hörmann K, Schlich M (1998) Requirements engineering in small and medium enterprises. Requir Eng 3(2):84–90
Karlström D, Runeson P (2006) Integrating agile software development into stage-gate managed product development. Empir Softw Eng 11(2):203–225
Kim KS, Knotts TL, Jones SC (2008) Characterizing viability of small manufacturing enterprises (SME) in the market. Expert Syst Appl 34(2008):128–134
Kratochvíl M, Carson C (2005) Growing modular: mass customization of complex products, services and software. Springer
Krueger C (2001) Variation management for software production lines. In: Chastek G (Ed) SPLC2 2002, LNCS 2379, pp 37–48
Krueger C (2002) Eliminating the adoption barrier. IEEE Softw 19(4):29–31
Laporte CY, Alexandre S, O’Connor RV (2008) A software engineering lifecycle standard for very small enterprises. Proceedings of the 15th European Software Process Improvement Conference, EuroSPI 2008. EuroSPI 2008, Dublin, pp 129–141. doi:10.1007/978-3-540-85936-9_12
Manolova T, Brush C, Edelman L, Greene P (2002) Internationalization of small firms: personal factors revisited. Int Small Bus J 20(1):9–31
Metha A, Heineman GT (2002) Evolving legacy system features into fine grained components. ICSE 2002:417–427
Mohagheghi P, Conradi R (2007) Quality, productivity and economic benefits of software reuse: a review of industrial studies. Empir Softw Eng 12(5):471–516
Mtigwe B (2005) The entrepreneurial firm internationalization process in the Southern African context: a comparative approach. Int J Entrep Behav Res 11(5):358–377
Nikula U, Sajaniemi J, Kälviäinen H (2000) A state-of-the-practice survey on requirements engineering in small- and medium-sized enterprises, research report 1. Telecom Business Research Center, Lappeenranta University of Technology, Lappeenranta, 20 p
Northrop L (2010) Maximizing the investment from your software product portfolio. Software Engineering Institute. Available at http://www.sei.cmu.edu/library
Patton MQ (2002) Qualitative research & evaluation methods. Sage Publications, London
Pohl K, Böckle G, van der Linden F (2005) Software product-line engineering—foundations. Principles and Techniques, Springer
Rech J, Bogner C, Haas V (2007) Using wikis to tackle reuse in software projects. IEEE Softw 24(6):99–104
Reinhartz-Berger I, Sturm A (2009) Utilizing domain models for application design and validation. Inf Softw Technol 51:1275–1289
Runeson P, Höst M (2009) Guidelines for conducting and reporting case studies in software engineering. Empir Softw Eng 14:131–164
Stallinger F, Neumann R, Schossleitner R, Stephan Kriener S (2011) Migrating towards evolving software product lines: challenges of an SME in a core customer-driven industrial systems engineering context. Proceedings of PLEASE’11, May 22–23, 2011, Waikiki, Honolulu, pp. 20–24
Svahnberg M, van Gurp J, Bosch A (2005) A taxonomy of variability realization techniques. Softw Pract Experience 35(8):705–754
Thörn C (2010) Current state and potential of variability management practices in software-intensive SMEs: results from a regional survey. Inf Softw Technol 52:411–421
van der Linden FJ, Schmid K, Rommes E (2007) Software product lines in action. Springer, Berlin, 333 p
Verlage M, Kiesgen T (2005) Five years of product engineering in small company, ICSE, pp 534–543
Yin RK (2002) Case study research design and methods, 3rd edn. Sage Publications, Thousand Oaks
Acknowledgments
The research leading to these results has received funding from the ARTEMIS Joint Undertaking under grant agreement n° 295397 and from Tekes (the Finnish Funding Agency for Technology and Innovation) and IWT.
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by: Dieter Rombach
Rights and permissions
About this article
Cite this article
Ihme, T., Pikkarainen, M., Teppola, S. et al. Challenges and industry practices for managing software variability in small and medium sized enterprises. Empir Software Eng 19, 1144–1168 (2014). https://doi.org/10.1007/s10664-013-9253-0
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10664-013-9253-0