Fine-Grained Software Metrics in Practice

  • Authors:
  • Michael English;Jim Buckley;Tony Cahill

  • Affiliations:
  • University of Limerick, Ireland;University of Limerick, Ireland;University of Limerick, Ireland

  • Venue:
  • ESEM '07 Proceedings of the First International Symposium on Empirical Software Engineering and Measurement
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

Modularity is one of the key features of the Object- Oriented (OO) paradigm. Low coupling and high cohesion help to achieve good modularity. Inheritance is one of the core concepts of the OO paradigm which facilitates modularity. Previous research has shown that the use of the friend construct as a coupling mechanism in C++ software is extensive. However, measures of the friend construct are scarse in comparison with measures of inheritance. In addition, these existing measures are coarse-grained, in spite of the widespread use of the friend mechanism. In this paper, a set of software metrics are proposed that measure the actual use of the friend construct, inheritance and other forms of coupling. These metrics are based on the interactions for which each coupling mechanism is necessary and sufficient. Previous work only considered the declaration of a relationship between classes. The software metrics introduced are empirically assessed using the LEDA software system. Our results indicate that the friend mechanism is used to a very limited extent to access hidden methods in classes. However, access to hidden attributes is more common.