Using Software Archaeology to Measure Knowledge Loss in Software Projects Due to Developer Turnover

Developer turnover can result in a major problem when developing software. When senior developers abandon a software project, they leave a knowledge gap that has to be managed. In addition, new (junior) developers require some time in order to achieve the desired level of productivity. In this paper, we present a methodology to measure the effect of knowledge loss due to developer turnover in software projects. For a given software project, we measure the quantity of code that has been authored by developers that do not belong to the current development team, which we define as orphaned code. Besides, we study how orphaned code is managed by the project. Our methodology is based on the concept of software archaeology, a derivation of software evolution. As case studies we have selected four FLOSS (free, libre, open source software) projects, from purely driven by volunteers to company-supported. The application of our methodology to these case studies will give insight into the turnover that these projects suffer and how they have managed it and shows that this methodology is worth being augmented in future research.

[1]  C.S. Hutchison Personal knowledge, team knowledge, real knowledge , 2001, EUROCON'2001. International Conference on Trends in Communications. Technical Program, Proceedings (Cat. No.01EX439).

[2]  David Lorge Parnas,et al.  Software aging , 1994, Proceedings of 16th International Conference on Software Engineering.

[3]  Kun Huang,et al.  Shared knowledge construction process in an open-source software development community: an investigation of the Gallery community , 2006 .

[4]  Serge Demeyer,et al.  Studying software evolution information by visualizing the change history , 2004, 20th IEEE International Conference on Software Maintenance, 2004. Proceedings..

[5]  Martin Michlmayr Quality and the Reliance on Individuals in Free Software Projects , 2011 .

[6]  Jesús M. González-Barahona,et al.  Contributor Turnover in Libre Software Projects , 2006, OSS.

[7]  Liguo Yu Indirectly predicting the maintenance effort of open-source software: Research Articles , 2006 .

[8]  Gregorio Robles,et al.  Evolution of Volunteer Participation in Libre Software Projects: Evidence from Debian , 2005 .

[9]  Tom DeMarco,et al.  Peopleware: Productive Projects and Teams , 1987 .

[10]  Heinz D. Knoell,et al.  Applied Quality Assurance Methods under the Open Source Development Model , 2008, 2008 32nd Annual IEEE International Computer Software and Applications Conference.

[11]  Daniel M. Germán,et al.  Using software trails to reconstruct the evolution of software , 2004, J. Softw. Maintenance Res. Pract..

[12]  Gregorio Robles,et al.  Volunteers in Large Libre Software Projects: A Quantitative Analysis Over Time , 2007 .

[13]  Audris Mockus,et al.  Does Code Decay? Assessing the Evidence from Change Management Data , 2001, IEEE Trans. Software Eng..

[14]  Daniel M. Germán,et al.  The GNOME project: a case study of open source, global software development , 2003, Softw. Process. Improv. Pract..

[15]  Stéphane Ducasse,et al.  How developers drive software evolution , 2005, Eighth International Workshop on Principles of Software Evolution (IWPSE'05).

[16]  Karl Fogel,et al.  Producing open source software - how to run a successful free software project , 2005 .

[17]  Gregorio Robles,et al.  The processes of joining in global distributed software projects , 2006, GSD '06.

[18]  Dave Thomas,et al.  Software Archaeology , 2002, IEEE Softw..

[19]  P. Oman,et al.  Metrics for assessing a software system's maintainability , 1992, Proceedings Conference on Software Maintenance 1992.

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

[21]  B. Boehm Software risk management: principles and practices , 1991, IEEE Software.

[22]  Barry W. Boehm,et al.  Guest Editors' Introduction: Software Risk Management , 1997, IEEE Softw..

[23]  Sue A. Conger,et al.  The new software engineering , 1993, notThenot Wadsworth series in management information series.

[24]  Jan Sandred Managing Open Source Projects: A Wiley Tech Brief , 2001 .