Projects per year
Abstract
Identifying bug origins – the point where erroneous code was introduced – is crucial for many software engineering activities, from identifying process weaknesses to gathering data to support bug detection tools. Unfortunately, this information is not usually recorded when fixing bugs, and recovering it later is challenging. Recently, the text approach and the dependence approach have been developed to tackle this problem. Respectively, they examine textual and dependence-related changes that occurred prior to a bug fix. However, only limited evaluation has been carried out, partially because of a lack of available implementations and of datasets linking bugs to origins. To address this, origins of 174 bugs in three projects were manually identified and compared to a simulation of the approaches. Both approaches were partially successful across a variety of bugs – achieving 29–79% precision and 40–70% recall. Results suggested the precise definition of program dependence could affect performance, as could whether the approaches identified a single or multiple origins. Some potential improvements are explored in detail and identify pragmatic strategies for combining techniques along with simple modifications. Even after adopting these improvements, there remain many challenges: large commits, unrelated changes and long periods between origins and fixes all reduce effectiveness.
Original language | English |
---|---|
Pages (from-to) | 107-139 |
Number of pages | 23 |
Journal | Journal of Software: Evolution and Process |
Volume | 26 |
Issue number | 1 |
Early online date | 4 Oct 2013 |
DOIs | |
Publication status | Published - Jan 2014 |
Keywords
- software maintenance
- bug tracking systems
- version control
- program dependence graph
- mining software repositories
- bug origins
Fingerprint
Dive into the research topics of 'Comparing text-based and dependence-based approaches for determining the origins of bugs'. Together they form a unique fingerprint.Projects
- 1 Finished
-
Doctoral Training Grant 2010
McFarlane, A.
EPSRC (Engineering and Physical Sciences Research Council)
1/10/10 → 30/09/14
Project: Research - Studentship