Tampere University of Technology

TUTCRIS Research Portal

On the Relationship Between Coupling and Refactoring: An Empirical Viewpoint

Research output: Chapter in Book/Report/Conference proceedingConference contributionScientificpeer-review

Details

Original languageEnglish
Title of host publication2019 ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM)
PublisherIEEE
Number of pages6
ISBN (Electronic)978-1-7281-2968-6
ISBN (Print)978-1-7281-2969-3
DOIs
Publication statusPublished - 17 Oct 2019
Publication typeA4 Article in a conference publication
EventInternational Symposium on Empirical Software Engineering and Measurement -
Duration: 1 Jan 1900 → …

Publication series

NameInternational Symposium on Empirical Software Engineering and Measurement
ISSN (Print)1949-3770
ISSN (Electronic)1949-3789

Conference

ConferenceInternational Symposium on Empirical Software Engineering and Measurement
Abbreviated titleESEM
Period1/01/00 → …

Abstract

Background: Refactoring has matured over the past twenty years to become part of a developer's toolkit. However, many fundamental research questions still remain largely unexplored. Aim: The goal of this paper is to investigate the highest and lowest quartile of refactoring-based data using two coupling metrics - the Coupling between Objects metric and the more recent Conceptual Coupling between Classes metric to answer this question. Can refactoring trends and patterns be identified based on the level of class coupling? Method: In this paper, we analyze over six thousand refactoring operations drawn from releases of three open-source systems to address one such question. Results: Results showed no meaningful difference in the types of refactoring applied across either lower or upper quartile of coupling for both metrics; refactorings usually associated with coupling removal were actually more numerous in the lower quartile in some cases. A lack of inheritance-related refactorings across all systems was also noted. Conclusions: The emerging message (and a perplexing one) is that developers seem to be largely indifferent to classes with high coupling when it comes to refactoring types - they treat classes with relatively low coupling in almost the same way.

Keywords

  • public domain software, software maintenance, software metrics, developer, fundamental research questions, refactoring-based data, recent Conceptual Coupling, refactoring trends, class coupling, refactoring operations, open-source systems, coupling removal, inheritance-related refactorings, high coupling, relatively low coupling, empirical viewpoint, Couplings, Measurement, Tools, Open source software, Java, Software engineering, Refactoring, coupling, metrics, empirical

Publication forum classification

Field of science, Statistics Finland