Duplication for the removal of duplication

Ran Ettinger, Shmuel Tyszberowicz

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

3 Scopus citations

Abstract

A semantics-preserving code-motion refactoring transformation by Komondoor and Horwitz (KH) had been shown to be effective in the elimination of type-3 clones, partly thanks to its successful combination of statement reordering with duplication of predicates. According to a recent clone refactorability definition by Tsantalis, however, such a transformation is considered unacceptable whenever the given code fragments contain any statement that cannot be moved. We propose an adaptation of the KH transformation that yields refactorable results according to the definition of Tsantalis. An evaluation of this approach on real-world type-3 clones from the Java portion of the Tiarks benchmark produces promising results, demonstrating how code motion with the duplication of predicates forms an effective step towards the removal of duplication in source code.

Original languageEnglish
Title of host publication2016 IEEE 23rd International Conference on Software Analysis, Evolution, and Reengineering, SANER 2016
PublisherInstitute of Electrical and Electronics Engineers
Pages53-59
Number of pages7
ISBN (Electronic)9781509018550
DOIs
StatePublished - 20 May 2016
Event10th International Workshop on Software Clones, IWSC 2016 - Osaka, Japan
Duration: 15 Mar 2016 → …

Publication series

Name2016 IEEE 23rd International Conference on Software Analysis, Evolution, and Reengineering, SANER 2016

Conference

Conference10th International Workshop on Software Clones, IWSC 2016
Country/TerritoryJapan
CityOsaka
Period15/03/16 → …

Keywords

  • duplication elimination
  • method extraction
  • refactoring

ASJC Scopus subject areas

  • Software

Fingerprint

Dive into the research topics of 'Duplication for the removal of duplication'. Together they form a unique fingerprint.

Cite this