Assessing the applicability of fault-proneness models across object-oriented software projects
- 7 August 2002
- journal article
- research article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Software Engineering
- Vol. 28 (7), 706-720
- https://doi.org/10.1109/tse.2002.1019484
Abstract
A number of papers have investigated the relationships between design metrics and the detection of faults in object-oriented software. Several of these studies have shown that such models can be accurate in predicting faulty classes within one particular software product. In practice, however, prediction models are built on certain products to be used on subsequent software development projects. How accurate can these models be, considering the inevitable differences that may exist across projects and systems? Organizations typically learn and change. From a more general standpoint, can we obtain any evidence that such models are economically viable tools to focus validation and verification effort? This paper attempts to answer these questions by devising a general but tailorable cost-benefit model and by using fault and design data collected on two mid-size Java systems developed in the same environment. Another contribution of the paper is the use of a novel exploratory analysis technique - MARS (multivariate adaptive regression splines) to build such fault-proneness models, whose functional form is a-priori unknown. The results indicate that a model built on one system can be accurately used to rank classes within another system according to their fault proneness. The downside, however, is that, because of system differences, the predicted fault probabilities are not representative of the system predicted. However, our cost-benefit model demonstrates that the MARS fault-proneness model is potentially viable, from an economical standpoint. The linear model is not nearly as good, thus suggesting a more complex model is required.Keywords
This publication has 9 references indexed in Scilit:
- Exploring the relationships between design measures and software quality in object-oriented systemsJournal of Systems and Software, 2000
- Investigating quality factors in object-oriented designsPublished by Association for Computing Machinery (ACM) ,1999
- Polymorphism measures for early risk predictionPublished by Association for Computing Machinery (ACM) ,1999
- Managerial use of metrics for object-oriented software: an exploratory analysisIEEE Transactions on Software Engineering, 1998
- Property-based software engineering measurementIEEE Transactions on Software Engineering, 1996
- A metrics suite for object oriented designIEEE Transactions on Software Engineering, 1994
- A comparison of two nonparametric estimation schemes: MARS and neural networksComputers & Chemical Engineering, 1993
- Multivariate Adaptive Regression SplinesThe Annals of Statistics, 1991
- Principal Components AnalysisPublished by SAGE Publications ,1989