DocumentCode
2303191
Title
Parameter-Based Refactoring and the Relationship with Fan-in/Fan-out Coupling
Author
Murgia, A. ; Marchesi, M. ; Concas, G. ; Tonelli, R. ; Counsell, S.
Author_Institution
Dept. of Electr. & Electron. Eng., Univ. of Cagliari, Cagliari, Italy
fYear
2011
fDate
21-25 March 2011
Firstpage
430
Lastpage
436
Abstract
Refactoring is an activity which, in theory, should have minimal impact on the overall structure of a system. That said, certain refactorings change the coupling profile of a system and over time those cumulative changes in coupling can have serious implications for system maintenance effort. In this paper, we analyse effect of the fan-in and fan-out metrics from the perspective of two refactorings - namely ´Add parameter´ to, and ´Remove Parameter´ from, a method. We developed a bespoke pattern-matching tool to collect these two refactorings from multiple releases of the Tomcat open-source system using the Evolizer tool to extract method signature data and the JHawk metrics tool to collect the two coupling metrics. Results point to significant differences in the profiles of fan-in and fan-out between refactored and non-refactored classes. We describe how software company can take advantage from this knowledge by defining a priority list of classes which could require a refactoring. A strong over-arching theme emerged: developers seemed to focus on the refactoring of classes with relatively high fan-in and fan-out rather than classes with high values in any one. The study is the first that we know of to analyse the direct effect of a subset of Fowler´s refactorings on fan-in and fan-out - relevant metrics of the overall structure of a system.
Keywords
public domain software; software maintenance; Evolizer tool; JHawk metrics tool; Tomcat open-source system; add parameter refactoring; coupling metrics; coupling profile; fan-in metrics; fan-in/fan-out coupling; fan-out metrics; parameter-based refactoring; pattern matching tool; remove parameter refactoring; signature data; software company; system maintenance; system structure; Conferences; Helium; Software testing; Refactoring; fan-in; fan-out; parameters;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Testing, Verification and Validation Workshops (ICSTW), 2011 IEEE Fourth International Conference on
Conference_Location
Berlin
Print_ISBN
978-1-4577-0019-4
Electronic_ISBN
978-0-7695-4345-1
Type
conf
DOI
10.1109/ICSTW.2011.26
Filename
5954443
Link To Document