Linear Complexity Object-Oriented Similarity for Clone Detection and Software Evolution Analyses

  • Authors:
  • E. Merlo;G. Antoniol;M. Di Penta;V. F. Rollo

  • Affiliations:
  • École Polytechnique de Montréal;University of Sannio;University of Sannio;University of Sannio

  • Venue:
  • ICSM '04 Proceedings of the 20th IEEE International Conference on Software Maintenance
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

With the widespread adoption of object-oriented technologies, the lack of computationally efficient and scalable approaches is limiting the ability to model and analyze the history of large object-oriented software systems. This paper proposes an approximate representation of object-oriented code characteristics, inspired by pattern recognition centroids for clustering. An interesting application of such a representation is a linear-time complexity algorithm to detect duplicate or nearly duplicated code in object-oriented systems. The algorithm accuracy and time complexity were assessed on 11 releases of a large software system, the Eclipse Framework.