Title :
Predicting faults using the complexity of code changes
Author :
Hassan, Ahmed E.
Author_Institution :
Software Anal. & Intell. Lab. (SAIL), Queen´´s Univ., Kingston, ON
Abstract :
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.
Keywords :
program diagnostics; program verification; software fault tolerance; software metrics; code change process; code changes complexity; complexity measurement; complexity metrics; fault incidence; fault prediction; Delay; Entropy; History; Information theory; Lab-on-a-chip; Predictive models; Project management; Software measurement; Software systems;
Conference_Titel :
Software Engineering, 2009. ICSE 2009. IEEE 31st International Conference on
Conference_Location :
Vancouver, BC
Print_ISBN :
978-1-4244-3453-4
DOI :
10.1109/ICSE.2009.5070510