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

被引:7
作者
Pan, Weifeng [1 ]
Li, Bing [1 ,2 ]
Ma, Yutao [1 ]
Liu, Jing [1 ]
Qin, Yeyi [1 ]
机构
[1] Wuhan Univ, State Key Lab Software Engn, Wuhan 430072, Peoples R China
[2] Wuhan Univ, Sch Comp, Wuhan 430072, Peoples R China
来源
FRONTIERS OF COMPUTER SCIENCE IN CHINA | 2009年 / 3卷 / 03期
基金
高等学校博士学科点专项科研基金; 中国国家自然科学基金;
关键词
object-oriented (OO) software; software refactoring; class refactoring; complex networks; software dependency networks; community detection;
D O I
10.1007/s11704-009-0054-y
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
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.
引用
收藏
页码:396 / 404
页数:9
相关论文
共 28 条
  • [1] [Anonymous], 2005, MSRTR200594
  • [2] [Anonymous], 1998, AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis
  • [3] Emergence of scaling in random networks
    Barabási, AL
    Albert, R
    [J]. SCIENCE, 1999, 286 (5439) : 509 - 512
  • [4] Architecture-aware adaptive clustering of OO systems
    Bauer, M
    Trifu, M
    [J]. CSMR 2004: EIGHTH EUROPEAN CONFERENCE ON SOFTWARE MAINTENANCE AND REENGINEERING, PROCEEDINGS, 2004, : 3 - 14
  • [5] Borgatti S. P., 2002, Ucinet 6 for Windows: Software for social network analysis (version 6.766) Computer software, DOI DOI 10.1111/J.1439-0310.2009.01613.X
  • [6] USING METRICS TO EVALUATE SOFTWARE SYSTEM MAINTAINABILITY
    COLEMAN, D
    ASH, D
    LOWTHER, B
    OMAN, P
    [J]. COMPUTER, 1994, 27 (08) : 44 - 49
  • [7] Czibula IG, 2006, INT J COMPUT SCI NET, V6, P40
  • [8] Dudzikan T, 2002, THESIS TU BERLIN BER
  • [9] FIEDLER M, 1973, CZECH MATH J, V23, P298
  • [10] Resolution limit in community detection
    Fortunato, Santo
    Barthelemy, Marc
    [J]. PROCEEDINGS OF THE NATIONAL ACADEMY OF SCIENCES OF THE UNITED STATES OF AMERICA, 2007, 104 (01) : 36 - 41