Empirical validation of software metrics used to predict software quality attributes is important to ensure their practical relevance in software organizations. The aim of this work is to find the relation of object-oriented (OO) metrics with fault proneness at different severity levels of faults. For this purpose, different prediction models have been developed using regression and machine learning methods. We evaluate and compare the performance of these methods to find which method performs better at different severity levels of faults and empirically validate OO metrics given by Chidamber and Kemerer. The results of the empirical study are based on public domain NASA data set. The performance of the predicted models was evaluated using Receiver Operating Characteristic (ROC) analysis. The results show that the area under the curve (measured from the ROC analysis) of models predicted using high severity faults is low as compared with the area under the curve of the model predicted with respect to medium and low severity faults. However, the number of faults in the classes correctly classified by predicted models with respect to high severity faults is not low. This study also shows that the performance of machine learning methods is better than logistic regression method with respect to all the severities of faults. Based on the results, it is reasonable to claim that models targeted at different severity levels of faults could help for planning and executing testing by focusing resources on fault-prone parts of the design and code that are likely to cause serious failures.
The importance of software measurement is increasing, leading to the development of new measurement techniques. Many metrics have been proposed related to the various objectoriented (OO) constructs like class, coupling, cohesion, inheritance, information hiding and polymorphism. The purpose of this article is to explore relationships between the existing design metrics and probability of fault detection in classes. The study described here is a replication of an analogous study conducted by Briand et al. The aim is to provide empirical evidence to draw the strong conclusions across studies. We used the data collected from Java applications for constructing a prediction model. Results of this study show that many metrics capture the same dimensions in the metric set, hence are based on comparable ideas and provides redundant information. It is shown that by using a subset of metrics prediction models can be built to identify faulty classes. The model predicts faulty classes with more than 90% accuracy. The predicted model shows that import coupling and size metrics are strongly related to fault proneness, confirming the results from previous studies. However, there are also differences reported in this study with respect to previous studies such as inheritance metric which counts methods inherited in a class is also included in the predicted model.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.