Abstract

Excessive coupling between object-oriented classes is widely acknowledged as a maintenance problem that can result in a higher propensity for faults in systems and a ‘stored up’ future problem. This paper explores the relationship between ‘fan-in’ and ‘fan-out’ coupling metrics over multiple versions of open-source software. More specifically, the relationship between the two metrics is explored to determine patterns of growth in each over the course of time. The JHawk tool was used to extract the two metrics from five open-source systems. Results show a wide range of traits in the classes to explain both high and low levels of fan-in and fan-out. Evidence was also found of certain ‘key’ classes (with both high fan-in and fan-out) and ‘client’ and ‘server’-type classes with high fan-out and fan-in, respectively. This paper provides an explanation of the composition and existence of such classes as well as for disproportionate increases in each of the two metrics over time. Finally, it was found that high fan-in class values tended to be associated with small classes; classes with high fan-out on the other hand tended to be relatively large classes.

Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.