Sunday, 1 July 2012

Characterizing and Predicting Which Bugs Get Reopened

T. Zimmermann, N. Nagappan, P. Guo, B. Murphy, Characterizing and Predicting Which Bugs Get Reopened, in:  International Conference on Software Engineering, IEEE, Zurich, Switzerland, 2012, pp. 1074-1083.

This paper was deservedly awarded an ACM Distinguished Paper award at ICSE 2012. From a team at Microsoft Research it looks at the effectiveness of bug fixes by examining bug reports that are 'reopened' after having been closed. The study presents the results of a large survey of Microsoft engineers and an analysis of bug reports, combining quantitative and qualitative approaches. It also includes a very thorough account of related work on the lifecycle of bugs that is worth reading in itself. Many of the causes of bug reopens are what you might expect: difficulties in reproducing and understanding the bug, or process errors such as fixing the bug in a wrong version and similar (these appear more frequently than you might expect). More interesting is that failures in prioritising bugs frequently results in 'bad closes'. In the associated analysis of the factors that influence bug reopens it is clear that the better the initial prioritisation, specifically if it involves a customer or an experienced developer, or if it is handled by a co-located team, the less likely the bug will be reopened. Take Home: If you want to avoid costly bug reopens ensure you have a good initial prioritisation process and keep the branching structure of the development as tight as possible to avoid process errors.

No comments:

Post a Comment