Abstract
A crucial step in understanding the life cycle of software bugs is identifying their origin. Unfortunately this information is not usually recorded and recovering it at a later date is challenging. Recently two approaches have been developed that attempt to solve this problem: the text approach and the dependency approach. However only limited evaluation has been carried out on their effectiveness so far, partially due to the lack of data sets linking bugs to their introduction. Producing such data sets is both time-consuming and challenging due to the subjective nature of the problem. To improve this, the origins of 166 bugs in two open-source projects were manually identified. These were then compared to a simulation of the approaches. The results show that both approaches were partially successful across a variety of different types of bugs. They achieved a precision of 29%{79% and a recall of 40%{70%, and could perform better when combined. However there remain a number of challenges to overcome in future development|large commits, unrelated changes and large numbers of versions between the origin and the x all reduce their effectiveness.
Original language | English |
---|---|
Title of host publication | 18th Working Conference on Reverse Engineering (WCRE 2011) |
Publisher | IEEE |
Pages | 201-210 |
Number of pages | 10 |
ISBN (Print) | 978-1-4577-1948-6 |
DOIs | |
Publication status | Published - Oct 2011 |
Event | 18th Working Conference on Reverse Engineering (WCRE), 2011 - Limerick, Ireland Duration: 17 Oct 2011 → 20 Oct 2011 |
Conference
Conference | 18th Working Conference on Reverse Engineering (WCRE), 2011 |
---|---|
Country/Territory | Ireland |
City | Limerick |
Period | 17/10/11 → 20/10/11 |
Keywords
- software maintenance
- bug-introducing changes
- mining software repositories