Predicting faults using the complexity of code changes

AE Hassan - 2009 IEEE 31st international conference on …, 2009 - ieeexplore.ieee.org
2009 IEEE 31st international conference on software engineering, 2009ieeexplore.ieee.org
Predicting the incidence of faults in code has been commonly associated with measuring
complexity. In this paper, we propose complexity metrics that are based on the code change
process instead of on the code. We conjecture that a complex code change process
negatively affects its product, ie, the software system. We validate our hypothesis empirically
through a case study using data derived from the change history for six large open source
projects. Our case study shows that our change complexity metrics are better predictors of …
Predicting the incidence of faults in code has been commonly associated with measuring complexity. In this paper, we propose complexity metrics that are based on the code change process instead of on the code. We conjecture that a complex code change process negatively affects its product, i.e., the software system. We validate our hypothesis empirically through a case study using data derived from the change history for six large open source projects. Our case study shows that our change complexity metrics are better predictors of fault potential in comparison to other well-known historical predictors of faults, i.e., prior modifications and prior faults.
ieeexplore.ieee.org