skip to main content
10.1145/2764979.2764986acmotherconferencesArticle/Chapter ViewAbstractPublication PagesxpConference Proceedingsconference-collections
research-article

On experimenting refactoring tools to remove code smells

Published: 25 May 2015 Publication History

Abstract

When we develop a software project of a certain complexity, source code maintainability could become a problem, in particular if developers do not use a consolidate development process that simplifies the management of the entire project. When source code becomes very complex, it is difficult for developers to share and modify it. We can improve internal software qualities such as reusability, maintainability and readability through refactoring. Refactoring can be applied to remove possible problems in the code, as code smells. Identifying code smells and removing them through refactoring results in better code maintainability, but it can be an overwhelming task. In this paper, we describe our experimentation on using four refactoring tools to remove code smells in four systems, with the aim to outline advantages and disadvantages of the tools with respect to the accomplishment of this task, and to identify the smells easier to be removed among the ones we considered in this paper.

References

[1]
F. Arcelli Fontana, P. Braione, and M. Zanoni. Automatic detection of bad smells in code: An experimental assessment. Journal of Object Technology, 11(2):5: 1--38, 2012.
[2]
F. Arcelli Fontana, V. Ferme, and M. Zanoni. Towards assessing software architecture quality by exploiting code smell relations. In to appear in IEEE Proceedings of SAM 2015 workshop, co-located with ICSE 2015, May 2015.
[3]
F. Arcelli Fontana and S. Spinelli. Impact of refactoring on quality code evaluation. In Proceedings of the 4th Workshop on Refactoring Tools (WRT '11), pages 37--40, Waikiki, Honolulu, HI, USA, May 2011. ACM.
[4]
F. Arcelli Fontana, M. Zanoni, and F. Zanoni. A duplicated code refactoring advisor. In Proceedings of the 16th International Conference on Agile Software Development (XP 2015). Springer, May 2015.
[5]
R. Arcoverde, A. Garcia, and E. Figueiredo. Understanding the longevity of code smells: preliminary results of an explanatory survey. In Proceedings of the 4th Workshop on Refactoring Tools (WRT '11), pages 33--36, Waikiki, Honolulu, HI, USA, May 2011. ACM.
[6]
K. Beck, M. Fowler, and G. Beck. Bad smells in code. Refactoring: Improving the design of existing code. Addison-Wesley Object Technology Series, pages 75--88, 1999.
[7]
S. Counsell, R. Hierons, H. Hamza, S. Black, and M. Durrand. Is a strategy for code smell assessment long overdue? In Proceedings of the 2010 ICSE Workshop on Emerging Trends in Software Metrics (WETSoM '10), pages 32--38, Cape Town, South Africa, 2010. ACM.
[8]
M. Z. Drozdz. A critical analysis of two refactoring tools. 2008. Master Thesis. University of Pretoria.
[9]
A. Hamid, M. Ilyas, M. Hummayun, and A. Nawaz. A comparative study on code smell detection tools. International Journal of Advanced Science and Technology, 2013.
[10]
M. Kim, M. Gee, A. Loh, and N. Rachatasumrit. Ref-finder: a refactoring reconstruction tool based on logic query templates. In Proceedings of the 18th ACM SIGSOFT international symposium on Foundations of software engineering (FSE '10), pages 371--372, Santa Fe, New Mexico, USA, Nov. 2010. ACM.
[11]
M. Lanza, R. Marinescu, and S. Ducasse. Object-oriented metrics in practice. Springer, 2006.
[12]
T. Mens and T. Tourwé. A survey of software refactoring. IEEE Transactions on Software Engineering, 30(2):126--139, 2004.
[13]
E. Murphy-Hill, C. Parnin, and A. P. Black. How we refactor, and how we know it. IEEE Transactions on Software Engineering, 38(1):5--18, 2012.
[14]
J. Pérez and Y. Crespo. Perspectives on automated correction of bad smells. In Proceedings of the joint international and annual ERCIM workshops on Principles of software evolution (IWPSE) and software evolution (Evol) workshops (IWPSE-Evol '09), pages 99--108. ACM, Aug. 2009.
[15]
J. Simmonds and T. Mens. A comparison of software refactoring tools. Technical report, 2002.
[16]
G. Szőke, C. Nagy, R. Ferenc, and T. Gyimóthy. Case study of refactoring large-scale industrial systems to efficiently improve source code quality. In Computational Science and Its Applications--ICCSA 2014, pages 524--540. Springer, 2014.
[17]
E. Tempero, C. Anslow, J. Dietrich, T. Han, J. Li, M. Lumpe, H. Melton, and J. Noble. Qualitas corpus: A curated collection of java code for empirical studies. In 2010 Asia Pacific Software Engineering Conference (APSEC2010), pages 336--345, Dec. 2010.
[18]
W. C. Wake. Refactoring workbook. Addison-Wesley Professional, 2004.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
XP '15 workshops: Scientific Workshop Proceedings of the XP2015
May 2015
76 pages
ISBN:9781450334099
DOI:10.1145/2764979
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 25 May 2015

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. code smells
  2. refactoring

Qualifiers

  • Research-article

Conference

XP 2015 Workshops

Acceptance Rates

XP '15 workshops Paper Acceptance Rate 11 of 15 submissions, 73%;
Overall Acceptance Rate 11 of 15 submissions, 73%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)43
  • Downloads (Last 6 weeks)5
Reflects downloads up to 23 Dec 2024

Other Metrics

Citations

Cited By

View all

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media