An Empirical Study on Factors Impacting Bug Fixing Time

Feng Zhang, Foutse Khomh, Ying Zou, Ahmed E. Hassan
2012 2012 19th Working Conference on Reverse Engineering  
Fixing bugs is an important activity of the software development process. A typical process of bug fixing consists of the following steps: 1) a user files a bug report; 2) the bug is assigned to a developer; 3) the developer fixes the bug; 4) changed code is reviewed and verified; and 5) the bug is resolved. Many studies have investigated the process of bug fixing. However, to the best of our knowledge, none has explicitly analyzed the interval between bug assignment and the time when bug
more » ... starts. After a bug assignment, some developers will immediately start fixing the bug while others will start bug fixing after a long period. We are blind on developer's delays when fixing bugs. This paper explores such delays of developers through an empirical study on three open source software systems. We examine factors affecting bug fixing time along three dimensions: bug reports, source code involved in the fix, and code changes that are required to fix the bug. We further compare different factors by descriptive logistic regression models. Our results can help development teams better understand factors behind delays, and then improve bug fixing process.
doi:10.1109/wcre.2012.32 dblp:conf/wcre/ZhangKZH12 fatcat:7ofqxwsfibcfbbbeqzkrh566qy