Refactoring packages of object-oriented software using genetic algorithm based community detection technique

  • Authors:
  • Weifeng Pan;Bo Jiang;Youyang Xu

  • Affiliations:
  • School of Computer Science and Information Engineering, Zhejiang Gongshang University, Hangzhou 310018, China;School of Computer Science and Information Engineering, Zhejiang Gongshang University, Hangzhou 310018, China;School of Computer Science and Information Engineering, Zhejiang Gongshang University, Hangzhou 310018, China

  • Venue:
  • International Journal of Computer Applications in Technology
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

Refactoring is regarded as an effective way to address the software quality deterioration problem. Although many refactoring approaches have been proposed, there is little work at the package level. This paper proposes to use the community detection technique to refactor the packages of object-oriented software. It uses software class network to represent classes and their dependencies, proposes a genetic algorithm based community detection algorithm to obtain the optimised package structures, and finally provides a list of classes that should be moved by comparing the optimised package structures with the real package structures. The empirical evaluation of the proposed approach has been performed in two open source Java projects, and the benefits of our approach are illustrated in comparison with the only one software refactoring approach at the package level viz. adaptive k-nearest neighbour algorithm, and other five community detection algorithms used in the complex networks literature.