Thresholds for Object-Oriented Measures

  • Authors:
  • Saida Benlarbi;Khaled El Emam;Nishith Goel;Shesh Rai

  • Affiliations:
  • -;-;-;-

  • Venue:
  • ISSRE '00 Proceedings of the 11th International Symposium on Software Reliability Engineering
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

A practical application of object-oriented measures is to predict which classes are likely to contain a fault. This is contended to be meaningful because object-oriented measures are believed to be indicators of psychological complexity, and classes that are more complex are likely to be faultyRecently, a cognitive theory has been proposed suggesting that there are threshold effects for many object-oriented measures. This means that object-oriented classes are easy to understand as long as their complexity is below a threshold. Above that threshold, their understandability decreases rapidly, leading to an increased probability of a fault. This occurs, according to the theory, due to an overflow of short-term human memory. If this theory were confirmed, then it would provide a mechanism that would explain the introduction of faults into object-oriented systems, and would provide some practical guidance on how to design object-oriented programs. In this paper, we empirically test this theory on two C++ telecommunications systems.We test for threshold effects in a subset of the Chidamber and Kemerer (CK) suite of measures. The dependent variable was the incidence of faults that lead to field failures. Our results indicate that there are no threshold effects for any of the measures studied. This means that there is no value for the studied CK measures where the fault-proneness changes from being steady to rapidly increasing. The results are consistent across the two systems. Therefore, we can provide no support to the posited cognitive theory.