Investigating software testing and maintenance reports: Case study

Abstract Context Although many papers have been published on software development and defect prediction techniques, problem reports in real projects quite often differ from those described in the literature. Hence, there is still a need for deeper exploration of case studies from industry. Objective The aim of this study is to present the impact of fine-grained problem reports on improving evaluation of testing and maintenance processes. It is targeted at projects involving several releases and complex schemes of problem handling. This is based on our experience gained while monitoring several commercial projects. Method Extracting certain features from detailed problem reports, we derive various measures and present analysis models which characterize and visualize the effectiveness of testing and problem resolution processes. The considered reports describe types of problems (e.g. defects), their locations in project versions and software modules, ways of their resolution, etc. The performed analysis is related to eleven projects developed in the same company. This study is an exploratory research with some explanatory features. Moreover, having identified some drawbacks, we present extensions of problem reports and their analysis which have been verified in another industrial case study project. Results Fine-grained (accurate) problem handling reports provide a wider scope of possible measures to assess the relevant development processes. This is helpful in controlling single projects (local perspective) as well as in managing these processes in the whole company (global perspective). Conclusion Detailed problem handling reports extend the space and quality of statistical analysis, they provide significant enhancement in evaluation and refinement of software development processes as well as in reliability prediction.

[1]  Cristina V. Lopes,et al.  Trendy bugs: Topic trends in the Android bug reports , 2012, 2012 9th IEEE Working Conference on Mining Software Repositories (MSR).

[2]  Dayang N. A. Jawawi,et al.  Increasing the accuracy of software development effort estimation using projects clustering , 2012, IET Softw..

[3]  Peter Middleton,et al.  Lean Software Management Case Study: Timberline Inc , 2005, XP.

[4]  Hongli Wu,et al.  Construct operation model based on process database for software reliability prediction , 2010, 2010 2nd IEEE International Conference on Information Management and Engineering.

[5]  Rachel Harrison,et al.  A study of subgroup discovery approaches for defect prediction , 2013, Inf. Softw. Technol..

[6]  Ross Jeffery,et al.  AREION: Software effort estimation based on multiple regressions with adaptive recursive data partitioning , 2013, Inf. Softw. Technol..

[7]  Zigmund Bluvband,et al.  Advanced models for software reliability prediction , 2011, 2011 Proceedings - Annual Reliability and Maintainability Symposium.

[8]  Peter Axel Nielsen,et al.  Accessing Software Processes: Low Maturity or Sensible Practice , 2001, Scand. J. Inf. Syst..

[9]  Tihana Galinac Grbac,et al.  Optimized Software Process for Fault Handling in Global Software Development , 2008, ICSP.

[10]  Ingunn Myrtveit,et al.  Reliability and validity in comparative studies of software prediction models , 2005, IEEE Transactions on Software Engineering.

[11]  Jouni Markkula,et al.  Assessing maintainability change over multiple software releases , 2008 .

[12]  Claes Wohlin,et al.  Faults-slip-through - a concept for measuring the efficiency of the test process , 2006, Softw. Process. Improv. Pract..

[13]  Barbara Kitchenham,et al.  What's up with software metrics? - A preliminary mapping study , 2010, J. Syst. Softw..

[14]  Michael R. Lyu,et al.  Estimation and Analysis of Some Generalized Multiple Change-Point Software Reliability Models , 2011, IEEE Transactions on Reliability.

[15]  Henryk Krawczyk,et al.  Monitoring Event Logs within a Cluster System , 2013 .

[16]  Dewayne E. Perry,et al.  A case study in root cause defect analysis , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[17]  Daniel Lucrédio,et al.  The bug report duplication problem: an exploratory study , 2011, Software Quality Journal.

[18]  Ralf H. Reussner,et al.  Reliability prediction for component-based software architectures , 2003, J. Syst. Softw..

[19]  Enrique Alba,et al.  Estimating software testing complexity , 2013, Inf. Softw. Technol..

[20]  Peter Middleton,et al.  Lean Software Development: Two Case Studies , 2001, Software Quality Journal.

[21]  Xiaohui Zeng,et al.  A Prototype System of Software Reliability Prediction and Estimation , 2010, 2010 Third International Symposium on Intelligent Information Technology and Security Informatics.

[22]  Claes Wohlin,et al.  Measuring the flow in lean software development , 2011, Softw. Pract. Exp..

[23]  Richard Torkar,et al.  Software fault prediction metrics: A systematic literature review , 2013, Inf. Softw. Technol..

[24]  Kai Petersen A Palette of Lean Indicators to Detect Waste in Software Maintenance: A Case Study , 2012, XP.

[25]  Joseph Gil,et al.  An empirical investigation of changes in some software properties over time , 2012, 2012 9th IEEE Working Conference on Mining Software Repositories (MSR).

[26]  Steve Counsell,et al.  Code smells as system-level indicators of maintainability: An empirical study , 2013, J. Syst. Softw..

[27]  Mutsumi Komuro,et al.  Experiences of applying SPC techniques to software development processes , 2006, ICSE.

[28]  Moataz A. Ahmed,et al.  Probabilistic size proxy for software effort prediction: A framework , 2013, Inf. Softw. Technol..

[29]  Tadashi Dohi,et al.  Towards quantitative software reliability assessment in incremental development processes , 2011, 2011 33rd International Conference on Software Engineering (ICSE).

[30]  Janusz Sosnowski,et al.  Multidimensional Monitoring of Computer Systems , 2009, 2009 Symposia and Workshops on Ubiquitous, Autonomic and Trusted Computing.

[31]  Tadashi Dohi,et al.  Estimating software reliability via pseudo maximum likelihood method , 2012, SAC '12.

[32]  Robyn R. Lutz,et al.  Predicting failure-proneness in an evolving software product line , 2013, Inf. Softw. Technol..

[33]  Claes Wohlin,et al.  Experimentation in Software Engineering , 2012, Springer Berlin Heidelberg.

[34]  Mark Harman,et al.  Not going to take this anymore: Multi-objective overtime planning for Software Engineering projects , 2013, 2013 35th International Conference on Software Engineering (ICSE).

[35]  J. Borcsok,et al.  New scientific contributions to the prediction of the reliability of critical systems which based on imperfect debugging method and the increase of quality of service , 2012, 2012 IX International Symposium on Telecommunications (BIHTEL).

[36]  Hoang Pham Software Reliability , 1999 .

[37]  Austen Rainer,et al.  Case Study Research in Software Engineering - Guidelines and Examples , 2012 .

[38]  Yung-Chung Chen,et al.  Neueural-Network-based approach on reliability prediction of software in the maintenance phase , 2009, 2009 IEEE International Conference on Industrial Engineering and Engineering Management.

[39]  Stephen H. Kan,et al.  Metrics and Models in Software Quality Engineering , 1994, SOEN.

[40]  José Alberto Fernández-Zepeda,et al.  A framework for evaluation and control of the factors that influence the software process improvement in small organizations , 2013, J. Softw. Evol. Process..

[41]  Daniela E. Damian,et al.  An Empirical Study of the Complex Relationships between Requirements Engineering Processes and Other Processes that Lead to Payoffs in Productivity, Quality, and Risk Management , 2006, IEEE Transactions on Software Engineering.

[42]  Per Runeson,et al.  Journal of Software Maintenance and Evolution: Research and Practice Test Processes in Software Product Evolution—a Qualitative Survey on the State of Practice , 2022 .