Removing clones from the code

Richard Fanta, Václav Rajlich · Journal of Software Maintenance Research and Practice · 1999

This paper reports on a process for eliminating function clones and class clones from industrial object-oriented code. Clone removal can decrease system code size and facilitate maintenance. We eliminate clones by re-engineering scenarios that are based on using automated restructuring tools. The clone elimination process described includes function insertion, function expulsion, function encapsulation, function and variable renaming, and argument reordering. The paper presents examples of clones, re-engineering scenarios and restructuring tools. The usefulness of the approach is demonstrated by experience from a case study. Copyright © 1999 John Wiley & Sons, Ltd.

Read the paper · More papers on PaperTik