Queuing Models for Field Defect Resolution Process

This paper explores a novel application of queuing theory to the corrective software maintenance problem to support quantitative balancing between resources and responsiveness. Initially, we provide a detailed description of the states a defect traverses from find to fix and a definition and justification of mean time to resolution as a useful process metric. We consider the effect of queuing system structures, priority levels and priority disciplines on the differential mean times to resolution of defects of different severities. We find that modeling the defect resolution capacity of a software engineering group as n identical M/M/1 servers provides a flexible and realistic approximation to the queuing behavior of four different organizations. We consider three queuing disciplines. Though purely preemptive and non-preemptive priority disciplines may be suited for other groups, our data was best fit by a mixed discipline, one in which only the most severe defects preempt ongoing service activities of lesser severities. We provide two examples of the utility of such a model: given the reasonable assumption that the most severe defects have the highest impact on reliability, we find that the reduction of the resolution time for these defects must come from changes reducing the service time. On the other hand the effect of additional engineering resources on the resolution time of less severe defects is easily computed and can be significant

[1]  Wilhelm Kremer,et al.  Birth-Death and Bug Counting , 1983, IEEE Transactions on Reliability.

[2]  M. Di Penta,et al.  Modeling Web maintenance centers through queue models , 2001, Proceedings Fifth European Conference on Software Maintenance and Reengineering.

[3]  Ytzhak H. Levendel Reliability Analysis of Large Software Systems: Defect Data Modeling , 1990, IEEE Trans. Software Eng..

[4]  Carol S. Smidts,et al.  A stochastic model of fault introduction and removal during software development , 2001, IEEE Trans. Reliab..

[5]  Swapna S. Gokhale,et al.  Software defect rediscoveries: a discrete lognormal model , 2005, 16th IEEE International Symposium on Software Reliability Engineering (ISSRE'05).

[6]  Swapna S. Gokhale,et al.  Analysis of Software Fault Removal Policies Using a Non-Homogeneous Continuous Time Markov Chain , 2004, Software Quality Journal.

[7]  Kishor S. Trivedi Probability and Statistics with Reliability, Queuing, and Computer Science Applications , 1984 .

[8]  D. Gregory,et al.  Infinite-failure models for a finite world: a simulation study of fault discovery , 1994 .

[9]  Siddhartha R. Dalal,et al.  Some Graphical Aids for Deciding When to Stop Testing Software , 1990, IEEE J. Sel. Areas Commun..

[10]  Norman F. Schneidewind Assessing reliability risk using fault correction profiles , 2004, Eighth IEEE International Symposium on High Assurance Systems Engineering, 2004. Proceedings..

[11]  Giuliano Antoniol,et al.  A queue theory-based approach to staff software maintenance centers , 2001, Proceedings IEEE International Conference on Software Maintenance. ICSM 2001.

[12]  14th International Symposium on Software Reliability Engineering , 2003, 14th International Symposium on Software Reliability Engineering, 2003. ISSRE 2003..

[13]  Ramkumar Ramaswamy,et al.  How to staff business-critical maintenance projects , 2000, IEEE Software.

[14]  Roger S. Pressman,et al.  Software Engineering: A Practitioner's Approach , 1982 .