Proceedings Seventh Working Conference on Reverse Engineering (2000)
Nov. 23, 2000 to Nov. 25, 2000
Magdalena Balazinska , ?cole Polytechnique de Montr?al
Ettore Merlo , ?cole Polytechnique de Montr?al
Michel Dagenais , ?cole Polytechnique de Montr?al
Bruno Lagüe , Bell Canada
Kostas Kontogiannis , University of Waterloo
Programmers often use manual source code copy and modification as an easy means for functionality reuse. Nevertheless, such practice produces duplicated pieces of code or clones whose consistent maintenance might be difficult to achieve. It also creates implicit links between classes sharing functionality. Clones are therefore good candidates for system redesign. This paper presents a novel approach for computer-aided clone-based object-oriented system refactoring. The approach is based on an advanced clone analysis, which focuses on the extraction of clone differences and their interpretation in terms of programming language entities. It also focuses on the study of contextual dependencies of cloned methods. The clone analysis has been applied to JDK 1.1.5, a large-scale system of 150 KLOC.
Clone analysis, refactoring, redesign, maintenance
B. Lagüe, M. Dagenais, E. Merlo, M. Balazinska and K. Kontogiannis, "Advanced Clone-Analysis to Support Object-Oriented System Refactoring," Proceedings Seventh Working Conference on Reverse Engineering(WCRE), Brisbane, Australia, 2000, pp. 98.