Classifying Software Changes: Clean or Buggy?
Massachusetts Institute of Technology · University of California, Santa Cruz
Abstract
This paper introduces a new technique for finding latent software bugs called change classification. Change classification uses a machine learning classifier to determine whether a new software change is more similar to prior buggy changes, or clean changes. In this manner, change classification predicts the existence of bugs in software changes. The classifier is trained using features (in the machine learning sense) extracted from the revision history of a software project, as stored in its software configuration management repository. The trained classifier can classify changes as buggy or clean with 78% accuracy and 65% buggy change recall (on average). Change classification has several desirable…
Citation impact
- FWCI
- 49.02
- Percentile
- 100%
- References
- 75
Authors
3Topics & keywords
- Computer science
- Classifier (UML)
- Software
- Source code
- Machine learning
- Precision and recall
- Artificial intelligence
- Software bug