Exploring the relationships between design measures and software quality in object-oriented systems

Lionel C. Briand, Jürgen Wüst, John W. Daly, D. Victor Porter

Research output: Contribution to journalArticlepeer-review

Abstract

One goal of this paper is to empirically explore the relationships between existing object-oriented (OO) coupling, cohesion, and inheritance measures and the probability of fault detection in system classes during testing. In other words, we wish to better understand the relationship between existing design measurement in OO systems and the quality of the software developed. The second goal is to propose an investigation and analysis strategy to make these kind of studies more repeatable and comparable, a problem which is pervasive in the literature on quality measurement. Results show that many of the measures capture similar dimensions in the data set, thus reflecting the fact that many of them are based on similar principles and hypotheses. However, it is shown that by using a subset of measures, accurate models can be built to predict which classes most of the faults are likely to lie in. When predicting fault-prone classes, the best model shows a percentage of correct classifications higher than 80% and finds more than 90% of faulty classes. Besides the size of classes, the frequency of method invocations and the depth of inheritance hierarchies seem to be the main driving factors of fault-proneness.

Original languageEnglish
Pages (from-to)245-273
Number of pages29
JournalJournal of Systems and Software
Volume51
Issue number3
DOIs
Publication statusPublished - 1 May 2000
Externally publishedYes

Fingerprint

Dive into the research topics of 'Exploring the relationships between design measures and software quality in object-oriented systems'. Together they form a unique fingerprint.

Cite this