A method for forecasting defect backlog in large streamline software development projects and its industrial evaluation

Context: Predicting a number of defects to be resolved in large software projects (defect backlog) usually requires complex statistical methods and thus is hard to use on a daily basis by practitioners in industry. Making predictions in simpler and more robust way is often required by practitioners in software engineering industry. Objective: The objective of this paper is to present a simple and reliable method for forecasting the level of defect backlog in large, lean-based software development projects. Method: The new method was created as part of an action research project conducted at Ericsson. In order to create the method we have evaluated multivariate linear regression, expert estimations and analogy-based predictions w.r.t. their accuracy and ease-of-use in industry. We have also evaluated the new method in a life project at one of the units of Ericsson during a period of 21weeks (from the beginning of the project until the release of the product). Results: The method for forecasting the level of defect backlog uses an indicator of the trend (an arrow) as a basis to forecast the level of defect backlog. Forecasts are based on moving average which combined with the current level of defect backlog was found to be the best prediction method (Mean Magnitude of Relative Error of 16%) for the level of future defect backlog. Conclusion: We have found that ease-of-use and accuracy are the main aspects for practitioners who use predictions in their work. In this paper it is concluded that using the simple moving average provides a sufficiently-good accuracy (much appreciated by practitioners involved in the study). We also conclude that using the indicator (forecasting the trend) instead of the absolute number of defects in the backlog increases the confidence in our method compared to our previous attempts (regression, analogy-based, and expert estimates).

[1]  Alain Abran,et al.  Software Process and Product Measurement, International Conference, IWSM-Mensura 2007, Palma de Mallorca, Spain, November 5-8, 2007. Revised Papers , 2008, IWSM/Mensura.

[2]  Ken Schwaber,et al.  Agile Software Development with SCRUM , 2001 .

[3]  Shari Lawrence Pfleeger,et al.  Status Report on Software Measurement , 1997, IEEE Softw..

[4]  Mary Shaw,et al.  Experiences and results from initiating field defect prediction and product test prioritization efforts at ABB Inc. , 2006, ICSE.

[5]  Westley Weimer,et al.  Modeling bug report quality , 2007, ASE '07.

[6]  Shari Lawrence Pfleeger,et al.  Software Metrics : A Rigorous and Practical Approach , 1998 .

[7]  Olayele Adelakun Quality - What Does it Mean for Strategic Information Systems , 1997, IQ.

[8]  B. Clark Eight Secrets of Software Measurement , 2002, IEEE Softw..

[9]  Audris Mockus,et al.  Predicting risk of software changes , 2000, Bell Labs Technical Journal.

[10]  Miroslaw Staron,et al.  Ensuring Reliability of Information Provided by Measurement Systems , 2009, IWSM/Mensura.

[11]  Reidar Conradi,et al.  An empirical study of software reuse vs. defect-density and stability , 2004, Proceedings. 26th International Conference on Software Engineering.

[12]  Stephen G. MacDonell,et al.  What accuracy statistics really measure , 2001, IEE Proc. Softw..

[13]  Mary Poppendieck,et al.  Implementing Lean Software Development: From Concept to Cash (The Addison-Wesley Signature Series) , 2006 .

[14]  G. Susman,et al.  An Assessment of the Scientific Merits of Action Research. , 1978 .

[15]  Dorothy R. Graham,et al.  Incremental development and delivery for large software systems , 1992 .

[16]  Alistair Cockburn,et al.  Agile Software Development , 2001 .

[17]  Trevor Wood-Harper,et al.  A critical perspective on action research as a method for information systems research , 1996, J. Inf. Technol..

[18]  Kent L. Beck,et al.  Extreme programming explained - embrace change , 1990 .

[19]  Bev Littlewood,et al.  Software Reliability and Metrics , 2007 .

[20]  Francisca Losavio,et al.  Characterizing a data model for software measurement , 2005, J. Syst. Softw..

[21]  N. Nagappan,et al.  Use of relative code churn measures to predict system defect density , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[22]  Claes Wohlin,et al.  Experimentation in software engineering: an introduction , 2000 .

[23]  Daniel Roos,et al.  The machine that changed the world : based on the Massachusetts Institute of Technology 5-million dollar 5-year study on the future of the automobile , 1990 .

[24]  Joseph P. Cavano Software reliability measurement: Prediction, estimation, and assessment , 1984, J. Syst. Softw..

[25]  Miroslaw Staron,et al.  Predicting Short-Term Defect Inflow in Large Software Projects - An Initial Evaluation , 2007, EASE.

[26]  Alfred Bröckers,et al.  The role of software process modeling in planning industrial measurement programs , 1996, Proceedings of the 3rd International Software Metrics Symposium.

[27]  Miroslaw Staron,et al.  Predicting weekly defect inflow in large software projects based on project planning and test status , 2008, Inf. Softw. Technol..

[28]  Miroslaw Staron,et al.  Defect Inflow Prediction in Large Software Projects , 2010, e Informatica Softw. Eng. J..

[29]  C. A. Dekkers,et al.  The dangers of using software metrics to (mis)manage , 2002 .

[30]  P. Tran,et al.  On incremental delivery with functionality , 1991, [1991 Proceedings] Tenth Annual International Phoenix Conference on Computers and Communications.

[31]  Tapani Kilpi,et al.  Implementing a Software Metrics Program at Nokia , 2001, IEEE Softw..

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

[33]  Miroslaw Staron,et al.  A framework for developing measurement systems and its industrial evaluation , 2009, Inf. Softw. Technol..

[34]  Patrik Berander,et al.  From Traditional to Streamline Development — opportunities and challenges , 2008 .

[35]  Tim Menzies,et al.  Automated severity assessment of software defect reports , 2008, 2008 IEEE International Conference on Software Maintenance.

[36]  Egon Berghout,et al.  The Goal/Question/Metric Method: , 2000 .

[37]  Mary Shaw,et al.  Empirical evaluation of defect projection models for widely-deployed production software systems , 2004, SIGSOFT '04/FSE-12.

[38]  Kent Beck,et al.  Extreme Programming Explained: Embrace Change (2nd Edition) , 2004 .

[39]  Linda M. Laird,et al.  Software Measurement and Estimation: A Practical Approach , 2006 .

[40]  Hans van Vliet,et al.  Measuring where it matters: Determining starting points for metrics collection , 2008, J. Syst. Softw..

[41]  A. M. Neufelder How to predict software defect density during proposal phase , 2000, Proceedings of the IEEE 2000 National Aerospace and Electronics Conference. NAECON 2000. Engineering Tomorrow (Cat. No.00CH37093).

[42]  William M. Evanco,et al.  Projecting Software Defects From Analyzing Ada Designs , 1992, IEEE Trans. Software Eng..

[43]  J. H. Bailey,et al.  Reliability-growth analysis for an Ada-coding process , 1992, Annual Reliability and Maintainability Symposium 1992 Proceedings.

[44]  N. Nagappan,et al.  Static analysis tools as early indicators of pre-release defect density , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[45]  Horst Zuse,et al.  A Framework of Software Measurement , 1998 .

[46]  Yashwant K. Malaiya,et al.  Module size distribution and defect density , 2000, Proceedings 11th International Symposium on Software Reliability Engineering. ISSRE 2000.