Seminar Series

When is a Software Defect not a Defect? Different Classifiers Find Different Defects although with Different Level of Consistency


David Bowes


The University of Hertfordshire

Time & Place

Tue, 16 Aug 2016 13:00:00 NZST in Erskine 315.


During the last 10 years hundreds of different defect prediction models have been published. The performance of the classifiers used in these models is reported to be similar with models rarely performing above the predictive performance ceiling of about 80% recall.

We investigate the individual defects that four classifiers predict and analyse the level of prediction uncertainty produced by these classifiers.

We perform a sensitivity analysis to compare the performance of Random Forest, Naive Bayes, RPart and SVM classifiers when predicting defects in 12 NASA data sets. The defect predictions that each classifier makes is captured in a confusion matrix and the prediction uncertainty is compared against different classifiers.

Despite similar predictive performance values for these four classifiers, each detects different sets of defects. Some classifiers are more consistent in predicting defects than others.

Our results confirm that a unique sub-set of defects can be detected by specific classifiers. However, while some classifiers are consistent in the predictions they make, other classifiers vary in their predictions. Classifier ensembles with decision making strategies not based on majority voting are likely to perform best.


David Bowes is a senior lecturer (associate professor in US speak) at the University of Hertfordshire. He has had a varied career so far??sheep farmer, secondary school teacher, assistant head teacher and now University lecturer. His area of expertise is using machine learning to predict defects in software code. He is currently collaborating with Brunel University to understand the nature of faults better with the aim of identifying the features which make faults learnable. David also collaborates with Mark Harmon and Federica Sarro from University College London on developing mutation metrics which assist in predicting defects.
David is a keen coder who develops enterprise applications to support teaching, learning, assessment and day to day management of the department at Hertfordshire. He is the main author of SLuRp, a tool for managing systematic literature reviews. David is currently an Erskine visitor in the Department of Computer Science and Software Engineering.

Note that this seminar is sponsored by the IEEE NZ Computer Society.