Failure is a Four-Letter Word: A Parody in Empirical Research

Background: The past years have seen a surge of techniques

predicting failure-prone locations based on more or less complex

metrics. Few of these metrics are actionable, though.

Aims: This paper explores a simple, easy-to-implement method

to predict and avoid failures in software systems. The IROP

method links elementary source code features to known software

failures in a lightweight, easy-to-implement fashion.

Method: We sampled the Eclipse data set mapping defects to

files in three Eclipse releases. We used logistic regression to as-

sociate programmer actions with defects, tested the predictive

power of the resulting classifier in terms of precision and recall,

and isolated the most defect-prone actions. We also collected

initial feedback on possible remedies.

Results: In our sample set, IROP correctly predicted up to 74% of

the failure-prone modules, which is on par with the most elaborate

predictors available. We isolated a set of four easy-to-remember

recommendations, telling programmers precisely what to do to

avoid errors. Initial feedback from developers suggests that these

recommendations are straightforward to follow in practice.

Conclusions: With the abundance of software development data,

even the simplest methods can produce “actionable” results.

zeller2011irop.pdf
PDF file

In  Proceedings of the 7th International Conference on Predictive Models in Software Engineering

Publisher  ACM

Details

TypeInproceedings
> Publications > Failure is a Four-Letter Word: A Parody in Empirical Research