Characterizing and Predicting Which Bugs Get Fixed: An Empirical Study of Microsoft Windows – ICSE 2010

by Philip J. Guo, Thomas Zimmermann, Nachiappan Nagappan, Brendan Murphy

We performed an empirical study to characterize factors that affect which bugs get fixed in Windows Vista and Windows 7, focusing on factors related to bug report edits and relationships between people involved in handling the bug. We found that bugs reported by people with better reputations were more likely to get fixed, as were bugs handled by people on the same team and working in geographical proximity. We reinforce these quantitative results with survey feedback from 358 Microsoft employees who were involved in Windows bugs. Survey respondents also mentioned additional qualitative influences on bug fixing, such as the importance of seniority and interpersonal skills of the bug reporter.
 
Informed by these findings, we built a statistical model to predict the probability that a new bug will be fixed (the first known one, to the best of our knowledge). We trained it on Windows Vista bugs and got a precision of 68% and recall of 64% when predicting Windows 7 bug fixes. Engineers could use such a model to prioritize bugs during triage, to estimate developer workloads, and to decide which bugs should be closed or migrated to future product versions.

Download as PDF.

Reference

Philip J. Guo, Thomas Zimmermann, Nachiappan Nagappan, Brendan Murphy. Characterizing and Predicting Which Bugs Get Fixed: An Empirical Study of Microsoft Windows. In Proceedings of the 32th International Conference on Software Engineering (ICSE 2010), Cape Town, South Africa, May 2010.

BibTeX Entry

@inproceedings{guo-icse-2010,
    title = "Characterizing and Predicting Which Bugs Get Fixed: An Empirical Study of Microsoft Windows",
    author = "Philip J. Guo and Thomas Zimmermann and Nachiappan Nagappan and Brendan Murphy",
    year = "2010",
    month = "May",
    booktitle = "Proceedings of the 32th International Conference on Software Engineering",
    location = "Cape Town, South Africa",
}