Refactorings detection using hierarchical clustering

  • Authors:
  • Istvan Gergely Czibula;Gabriela Czibula

  • Affiliations:
  • Babes - Bolyai University, Department of Computer Science, Cluj-Napoca, Romania;Babes - Bolyai University, Department of Computer Science, Cluj-Napoca, Romania

  • Venue:
  • ECC'08 Proceedings of the 2nd conference on European computing conference
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Refactoring is a process that helps to maintain the internal software quality, during the whole software lifecycle. This paper aims at introducing a new hierarchical clustering algorithm that can be used for improving software systems design, by identifying the appropriate refactorings. The algorithm is named HARD (Hierarchical Clustering Algorithm for Refactorings Determination) and uses a newly introduced measure that estimates the "quality" of a software system. Clustering is used in order to recondition the class structure of a software system. The proposed approach can be useful for assisting software engineers in their daily works of refactoring software systems. We evaluate our approach using the open source case study JHotDraw and a real software system, providing a comparison with previous approaches.