On the relationship between process maturity and geographic distribution: an empirical analysis of their impact on software quality

An extensive body of research has developed in the area of software processes improvement and maturity models. Despite being a quite influential body of work, little is known about how software process maturity models and improvement activities relate to a major trend in the software industry: geographic distribution of development activities. In this paper, we seek to achieve a better understanding of the relationship between software process maturity and geographic distribution. In particular, we studied their combined impact on software quality. Using data from a multi-national software development organization, our analyses revealed that process maturity and the multiple dimensions of distribution have a significant impact on the quality of software components. More importantly, our analyses showed that the benefits of increases in process maturity diminish as the development work becomes more distributed, a result that has major implications for future research work in the process and the global software engineering literature as well as important implications for practitioners.

[1]  Jonathon N. Cummings,et al.  The Spatial, Temporal, and Configurational Characteristics of Geographic Dispersion in Teams , 2007, MIS Q..

[2]  Rajesh Krishna Balan,et al.  Globally distributed software development project performance: an empirical analysis , 2007, ESEC-FSE '07.

[3]  Rafael Prikladnicki,et al.  Distributed Software Development: Toward an Understanding of the Relationship Between Project Team, Users and Customers , 2003, ICEIS.

[4]  Dale Walter Karolak Global Software Development: Managing Virtual Teams and Environments , 1999 .

[5]  Robert D. Austin,et al.  The Effects of Time Pressure on Quality in Software Development: An Agency Model , 2001, Inf. Syst. Res..

[6]  J. Alberto Espinosa,et al.  Do Gradations of Time Zone Separation Make a Difference in Performance? A First Laboratory Study , 2007, International Conference on Global Software Engineering (ICGSE 2007).

[7]  Harvey P. Siy,et al.  Predicting Fault Incidence Using Software Change History , 2000, IEEE Trans. Software Eng..

[8]  Erran Carmel,et al.  Global software teams: collaborating across borders and time zones , 1999 .

[9]  James D. Herbsleb,et al.  Global Software Engineering: The Future of Socio-technical Coordination , 2007, Future of Software Engineering (FOSE '07).

[10]  Didar Zowghi,et al.  A Maturity Model for the Implementation of Software Process Improvement: an Empirical Study , 2022 .

[11]  Dorina C. Gumm,et al.  Distribution Dimensions in Software Development Projects: A Taxonomy , 2006, IEEE Software.

[12]  Nachiappan Nagappan,et al.  Predicting defects using network analysis on dependency graphs , 2008, 2008 ACM/IEEE 30th International Conference on Software Engineering.

[13]  Didar Zowghi,et al.  Critical success factors for software process improvement implementation: an empirical study , 2006, Softw. Process. Improv. Pract..

[14]  James D. Herbsleb,et al.  Team Knowledge and Coordination in Geographically Distributed Software Development , 2007, J. Manag. Inf. Syst..

[15]  J. Alberto Espinosa,et al.  Learning from Experience in Software Development: A Multilevel Analysis , 2007, Manag. Sci..

[16]  Victor R. Basili,et al.  The influence of organizational structure on software quality , 2008, 2008 ACM/IEEE 30th International Conference on Software Engineering.

[17]  Lionel C. Briand,et al.  Exploring the relationships between design measures and software quality in object-oriented systems , 2000, J. Syst. Softw..

[18]  Pär J. Ågerfalk,et al.  Session details: Flexible and distributed software processes: old petunias in new bowls? , 2006 .

[19]  Alfred V. Aho,et al.  Do Crosscutting Concerns Cause Defects? , 2008, IEEE Transactions on Software Engineering.

[20]  Pamela J. Hinds,et al.  Distributed Work , 2002 .

[21]  Audris Mockus,et al.  An Empirical Study of Speed and Communication in Globally Distributed Software Development , 2003, IEEE Trans. Software Eng..

[22]  J. Herbsleb,et al.  Two case studies of open source software development: Apache and Mozilla , 2002, TSEM.

[23]  James D. Herbsleb,et al.  Familiarity, Complexity, and Team Performance in Geographically Distributed Software Development , 2007, Organ. Sci..

[24]  Mayuram S. Krishnan,et al.  Effects of Process Maturity on Quality, Cycle Time, and Effort in Software Product Development , 2000 .

[25]  Paul Clements,et al.  Software architecture in practice , 1999, SEI series in software engineering.

[26]  Nachiappan Nagappan,et al.  Using Software Dependencies and Churn Metrics to Predict Field Failures: An Empirical Case Study , 2007, First International Symposium on Empirical Software Engineering and Measurement (ESEM 2007).

[27]  Victor R. Basili,et al.  Software errors and complexity: an empirical investigation0 , 1984, CACM.

[28]  Li-Te Cheng,et al.  How a good software practice thwarts collaboration: the multiple roles of APIs in software development , 2004, SIGSOFT '04/FSE-12.

[29]  Pamela J. Hinds,et al.  Out of Sight, Out of Sync: Understanding Conflict in Distributed Teams , 2003, Organ. Sci..

[30]  James D. Herbsleb,et al.  Socio-technical congruence: a framework for assessing the impact of technical and work dependencies on software development productivity , 2008, ESEM '08.

[31]  James D. Herbsleb,et al.  On Coordination Mechanisms in Global Software Development , 2007, International Conference on Global Software Engineering (ICGSE 2007).

[32]  Daniel J. Paulish,et al.  An empirical investigation of software fault distribution , 1993, [1993] Proceedings First International Software Metrics Symposium.

[33]  James D. Herbsleb,et al.  Identification of coordination requirements: implications for the Design of collaboration and awareness tools , 2006, CSCW '06.

[34]  James D. Herbsleb,et al.  Collaboration In Software Engineering Projects: A Theory Of Coordination , 2006, ICIS.

[35]  Victor R. Basili,et al.  Analyzing Error-Prone System Structure , 1991, IEEE Trans. Software Eng..

[36]  Pamela J. Hinds,et al.  Managing Distances and Differences in Geographically Distributed Work Groups , 2002 .

[37]  Victor R. Basili,et al.  Software errors and complexity: an empirical investigation , 1993 .

[38]  James D. Herbsleb,et al.  The geography of coordination: dealing with distance in R&D work , 1999, GROUP.

[39]  D HerbslebJames,et al.  Two case studies of open source software development , 2002 .

[40]  James D. Herbsleb,et al.  Benefits of CMM-Based Software Process Improvement: Initial Results , 1994 .

[41]  W. Buxton Human-Computer Interaction , 1988, Springer Berlin Heidelberg.

[42]  J. A. Calvin Regression Models for Categorical and Limited Dependent Variables , 1998 .

[43]  J. Roberto Evaristo,et al.  Geographically distributed project teams: a dimensional analysis , 2000, Proceedings of the 33rd Annual Hawaii International Conference on System Sciences.

[44]  Raghvinder S. Sangwan,et al.  Global software development handbook , 2006 .

[45]  M. S. Krishnan,et al.  An Empirical Analysis of Productivity and Quality in Software Products , 2000 .

[46]  Robert E. Kraut,et al.  Coordination in software development , 1995, CACM.

[47]  Judith S. Olson,et al.  Distance Matters , 2000, Hum. Comput. Interact..

[48]  Ian Sommerville,et al.  Human, Social and Organisational Influences on the Software Process , 2007 .

[49]  Bill Curtis,et al.  A field study of the software design process for large systems , 1988, CACM.

[50]  Norman E. Fenton,et al.  A Critique of Software Defect Prediction Models , 1999, IEEE Trans. Software Eng..

[51]  Audris Mockus,et al.  Globalization by Chunking: A Quantitative Approach , 2001, IEEE Softw..

[52]  J. Neter,et al.  Applied Linear Regression Models , 1983 .

[53]  Alfonso Fuggetta,et al.  Software process: a roadmap , 2000, ICSE '00.