How Does Software Process Improvement Address Global Software Engineering?

For decades, Software Process Improvement (SPI) programs have been implemented, inter alia, to improve quality and speed of software development. To set up, guide, and carry out SPI projects, and to measure SPI state, impact, and success, a multitude of different SPI approaches and considerable experience are available. SPI addresses many aspects ranging from individual developer skills to entire organizations. It comprises for instance the optimization of specific activities in the software lifecycle as well as the creation of organization awareness and project culture. In the course of conducting a systematic mapping study on the state-of-the-art in SPI from a general perspective, we observed Global Software Engineering (GSE) becoming a topic of interest in recent years. Therefore, in this paper, we provide a detailed investigation of those papers from the overall systematic mapping study that were classified as addressing SPI in the context of GSE. From the main study's result set, a set of 30 papers dealing with GSE was selected for an in-depth analysis using the systematic review instrument to study the contributions and to develop an initial picture of how GSE is considered from the perspective of SPI. Our findings show the analyzed papers delivering a substantial discussion of cultural models and how such models can be used to better address and align SPI programs with multi-national environments. Furthermore, experience is shared discussing how agile approaches can be implemented in companies working at the global scale. Finally, success factors and barriers are studied to help companies implementing SPI in a GSE context.

[1]  Carolyn B. Seaman,et al.  Why do programmers avoid metrics? , 2008, ESEM '08.

[2]  Martin Höst,et al.  A review of methods for evaluation of maturity models for process improvement , 2012, J. Softw. Evol. Process..

[3]  Barry W. Boehm,et al.  Improving quality through software process improvement in Thailand: initial analysis , 2005, WoSQ@ICSE.

[4]  Ita Richardson,et al.  Crafting a Global Teaming Model for Architectural Knowledge , 2010, 2010 5th IEEE International Conference on Global Software Engineering.

[5]  Kai Petersen,et al.  Systematic Mapping Studies in Software Engineering , 2008, EASE.

[6]  D. Scott McCrickard,et al.  Project management for the 21st century: supporting collaborative design through risk analysis , 2005, ACM Southeast Regional Conference.

[7]  Ravi Ranjan,et al.  Continuous Improvement through Iterative Development in a Multi-Geography , 2008, 2008 IEEE International Conference on Global Software Engineering.

[8]  Mark Staples,et al.  Systematic review of organizational motivations for adopting CMM-based SPI , 2008, Inf. Softw. Technol..

[9]  Tony Gorschek,et al.  A method for evaluating rigor and industrial relevance of technology evaluations , 2011, Empirical Software Engineering.

[10]  Bernard Wong,et al.  Cultural influences and differences in software process improvement programs , 2008, WoSQ '08.

[11]  Fei Peng,et al.  Analyzing project risks within a cultural and organizational setting , 2009, 2009 ICSE Workshop on Leadership and Management in Software Architecture.

[12]  Kirsi Korhonen Evaluating the impact of an agile transformation: a longitudinal case study in a distributed context , 2012, Software Quality Journal.

[13]  Narayan Ramasubbu,et al.  Leveraging global resources: a process maturity framework for managing distributed development , 2005, IEEE Software.

[14]  Andreas S. Andreou,et al.  Evidence of Agile Adoption in Software Organizations: An Empirical Survey , 2013, EuroSPI.

[15]  Marco Kuhrmann,et al.  Global Software Engineering: An Industry Perspective , 2016, IEEE Softw..

[16]  Cornelia Boldyreff,et al.  Managing process improvement in virtual software corporations , 1996, Proceedings of WET ICE '96. IEEE 5th Workshop on Enabling Technologies; Infrastucture for Collaborative Enterprises.

[17]  Tony Gorschek,et al.  Empirical evidence in global software engineering: a systematic review , 2010, Empirical Software Engineering.

[18]  Watts S. Humphrey,et al.  Managing the software process , 1989, The SEI series in software engineering.

[19]  Shaheed Zulfikar,et al.  Defect Prevention and Process Improvement Methodology for Outsourced Software Projects , 2014 .

[20]  Pearl Brereton,et al.  Performing systematic literature reviews in software engineering , 2006, ICSE.

[21]  D. Ross Jeffery,et al.  An exploratory study of why organizations do not adopt CMMI , 2007, J. Syst. Softw..

[22]  Elli Georgiadou,et al.  Empirical Measurement of the Effects of Cultural Diversity on Software Quality Management , 2002, Software Quality Journal.

[23]  Muhammad Ali Babar,et al.  Implementing Software Process Improvement Initiatives: An Analysis of Vietnamese Practitioners' Views , 2008, 2008 IEEE International Conference on Global Software Engineering.

[24]  Christof Ebert Technical controlling and software process improvement , 1999, J. Syst. Softw..

[25]  M. Elizabeth C. Hull,et al.  Software development processes - an assessment , 2002, Inf. Softw. Technol..

[26]  Kerstin V. Siakas,et al.  What has culture to do with SPI? , 2002, Proceedings. 28th Euromicro Conference.

[27]  Ivan Rozman,et al.  Managing the complexity of SPI in small companies , 2000 .

[28]  Inge van de Weerd,et al.  Incremental method evolution in global software product management: A retrospective case study , 2010, Inf. Softw. Technol..

[29]  Khaled El Emam,et al.  An empirical review of software process assessments , 2000, Adv. Comput..

[30]  Ping Zhang,et al.  Goal-oriented software assessment , 2002, ICSE '02.

[31]  Káthia Marçal de Oliveira,et al.  Defining a catalog of indicators to support process performance analysis , 2011, J. Softw. Maintenance Res. Pract..

[32]  Richard Foley,et al.  Software process improvement in geographically distributed software engineering: an initial evaluation , 1997, EUROMICRO 97. Proceedings of the 23rd EUROMICRO Conference: New Frontiers of Information Technology (Cat. No.97TB100167).

[33]  Rafael Prikladnicki,et al.  Usage of SCRUM Practices within a Global Company , 2008, 2008 IEEE International Conference on Global Software Engineering.

[34]  Marco Kuhrmann,et al.  Software process improvement: a systematic mapping study on the state of the art , 2016, PeerJ Comput. Sci..

[35]  Marco Kuhrmann,et al.  Software process improvement: where is the evidence? , 2016, Software Engineering.

[36]  Hans Christian Benestad,et al.  Perceived productivity threats in large agile development projects , 2010, ESEM '10.

[37]  Paul G. Sorenson,et al.  Continuous SPA: Continuous Assessing and Monitoring Software Process , 2007, 2007 IEEE Congress on Services (Services 2007).

[38]  Tihana Galinac Grbac Empirical evaluation of selected best practices in implementation of software process improvement , 2009, Inf. Softw. Technol..

[39]  Sune Dueholm Müller,et al.  Improvement as organizational change : A metaphorical nalysis of the literature une , 2010 .

[40]  Sune Dueholm Müller,et al.  Managing Cultural Variation in Software Process Improvement: A Comparison of Methods for Subculture Assessment , 2008, IEEE Transactions on Engineering Management.

[41]  Claes Wohlin,et al.  A Whisper of Evidence in Global Software Engineering , 2011, IEEE Software.

[42]  Sussy Bayona Oré,et al.  Critical success factors taxonomy for software process deployment , 2012, Software Quality Journal.

[43]  Muhammad Ali Babar,et al.  Software Process Improvement barriers: A cross-cultural comparison , 2010, Inf. Softw. Technol..

[44]  Ivan Rozman,et al.  Managing the complexity of SPI in small companies , 2000, Softw. Process. Improv. Pract..

[45]  Anita D. Carleton,et al.  Case studies of software-process-improvement measurement , 1994, Computer.

[46]  C. lo Storto,et al.  CMM Implementation and Organizational Learning: Findings from a Case Study Analysis , 2006, 2006 Technology Management for the Global Future - PICMET 2006 Conference.

[47]  Tony Gorschek,et al.  Software development in startup companies: A systematic mapping study , 2014, Inf. Softw. Technol..

[48]  David Lorge Parnas,et al.  A rational design process: How and why to fake it , 1986, IEEE Transactions on Software Engineering.

[49]  Narayan Ramasubbu,et al.  Governing Software Process Improvementsin Globally Distributed Product Development , 2014, IEEE Transactions on Software Engineering.

[50]  Roel Wieringa,et al.  Requirements engineering paper classification and evaluation criteria: a proposal and a discussion , 2005, Requirements Engineering.

[51]  Vajirasak Vanijja,et al.  A Push for Software Process Improvement in Thailand , 2009, 2009 16th Asia-Pacific Software Engineering Conference.

[52]  Eric Knauss,et al.  An experience base with rights management for global software engineering , 2011, i-KNOW '11.

[53]  Philippe Kruchten,et al.  Contextualizing agile software development , 2013, J. Softw. Evol. Process..

[54]  Marco Kuhrmann,et al.  Is Water-Scrum-Fall Reality? On the Use of Agile and Traditional Development Practices , 2015, PROFES.

[55]  Tore Dybå,et al.  An Instrument for Measuring the Key Factors of Success in Software Process Improvement , 2000, Empirical Software Engineering.

[56]  Sun-Jen Huang,et al.  Exploring the relationship between organizational culture and software process improvement deployment , 2010, Inf. Manag..

[57]  Austen Rainer,et al.  Implementing software process improvement: an empirical study , 2002, Softw. Process. Improv. Pract..