Class structure refactoring of object-oriented softwares using community detection in dependency networks

Weifeng PAN 1, Yutao MA 1, Jing LIU 1, Yeyi QIN 1, Bing LI 2,

PDF(801 KB)
PDF(801 KB)
Front. Comput. Sci. ›› 2009, Vol. 3 ›› Issue (3) : 396-404. DOI: 10.1007/s11704-009-0054-y
Research articles

Class structure refactoring of object-oriented softwares using community detection in dependency networks

  • Weifeng PAN 1, Yutao MA 1, Jing LIU 1, Yeyi QIN 1, Bing LI 2,
Author information +
History +

Abstract

The quality of a software system is largely determined by its internal structures which always degrade over the software evolution. Therefore, the structures have to be reconditioned from time to time. However, the existing methods are very complex and resource-consuming when doing this task. In this paper, we present an approach to recondition the class structures of object-oriented (OO) software systems. It uses attribute-method networks and method-method networks to represent attributes, methods and dependencies between them; It proposes a guided community detection algorithm to obtain the optimized community structures in the method-method networks, which also correspond to the optimized class structures; It also provides a list of refactorings by comparing the optimized class structures with the real class structure in software systems and inspecting the attribute-method networks. The approach is evaluated using the open-source case study, JHotDraw 5.1, and the advantages of our approach are illustrated in comparison with existing methods.

Keywords

object-oriented (OO) software / software refactoring / class refactoring / complex networks / software dependency networks / community detection

Cite this article

Download citation ▾
Weifeng PAN , Yutao MA , Jing LIU , Yeyi QIN , Bing LI ,. Class structure refactoring of object-oriented softwares using community detection in dependency networks. Front. Comput. Sci., 2009, 3(3): 396‒404 https://doi.org/10.1007/s11704-009-0054-y
AI Summary AI Mindmap
PDF(801 KB)

Accesses

Citations

Detail

Sections
Recommended

/