Share on Facebook Tweet on Twitter Share on LinkedIn Share by email
Mining Metrics to Predict Component Failures

Nachiappan Nagappan, Thomas Ball, and Andreas Zeller


What is it that makes software fail? In an empirical study of the post-release defect history of five Microsoft software systems, we found that failure-prone software entities are statistically correlated with code complexity measures. However, there is no single set of complexity metrics that could act as a universally best defect predictor. Using principal component analysis on the code metrics, we built regression models that accurately predict the likelihood of post-release defects for new entities. The approach can easily be generalized to arbitrary projects; in particular, predictors obtained from one project can also be significant for new, similar projects.


Publication typeTechReport
InstitutionMicrosoft Research
> Publications > Mining Metrics to Predict Component Failures