Measuring the Impact of Friends on the Internal Attributes of Software Systems

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

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

  • Venue:
  • SCAM '05 Proceedings of the Fifth IEEE International Workshop on Source Code Analysis and Manipulation
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

Differing views have been expressed on the appropriateness of the friend construct in the design and implementation of object-oriented software in C++. However, little empirical analysis of its usage in the development of systems has taken place. This paper describes an empirical study of the top 100 most downloaded open-source software systems from sourceforge.net, to assess the design implications of the use of the friend construct. On a larger cohort of systems our results provide further evidence that classes declared as friends are coupling hotspots. Our findings also indicate that class size does not seem to have the confounding effect on this relationship that has been suggested in previous research. In addition, there seems to be no indication that friendship is used as an alternative to inheritance although a small number of systems seem to use friendship as an alternative to multiple inheritance and vice versa.