A New Metaheuristic-Based Hierarchical Clustering Algorithm for Software Modularization

被引:5
|
作者
Aghdasifam, Masoud [1 ]
Izadkhah, Habib [1 ]
Isazadeh, Ayaz [1 ]
机构
[1] Univ Tabriz, Fac Math Sci, Dept Comp Sci, Tabriz, Iran
关键词
GENETIC ALGORITHM; OPTIMIZATION; FRAMEWORK; IMPACT;
D O I
10.1155/2020/1794947
中图分类号
O1 [数学];
学科分类号
0701 ; 070101 ;
摘要
Software refactoring is a software maintenance action to improve the software internal quality without changing its external behavior. During the maintenance process, structural refactoring is performed by remodularizing the source code. Software clustering is a modularization technique to remodularize artifacts of source code aiming to improve readability and reusability. Due to the NP hardness of the clustering problem, evolutionary approaches such as the genetic algorithm have been used to solve this problem. In the structural refactoring literature, there exists no search-based algorithm that employs a hierarchical approach for modularization. Utilizing global and local search strategies, in this paper, a new search-based top-down hierarchical clustering approach, named TDHC, is proposed that can be used to modularize the system. The output of the algorithm is a tree in which each node is an artifact composed of all artifacts in its subtrees and is a candidate to be a software module (i.e., cluster). This tree helps a software maintainer to have better vision on source code structure to decide appropriate composition points of artifacts aiming to create modules (i.e., files, packages, and components). Experimental results on seven folders of Mozilla Firefox with different functionalities and five other software systems show that the TDHC produces modularization closer to the human expert's decomposition (i.e., directory structure) than the other existing algorithms. The proposed algorithm is expected to help a software maintainer for better remodularization of a source code. The source codes and dataset related to this paper can be accessed at https://github.com/SoftwareMaintenanceLab.
引用
收藏
页数:25
相关论文
共 50 条
  • [21] Metaheuristic-based possibilistic fuzzy k-modes algorithms for categorical data clustering
    Kuo, R. J.
    Zheng, Y. R.
    Thi Phuong Quyen Nguyen
    INFORMATION SCIENCES, 2021, 557 : 1 - 15
  • [22] A Metaheuristic Search Algorithm Based on Sampling and Clustering
    Harita, Maria
    Wong, Alvaro
    Suppi, Remo
    Rexachs, Dolores
    Luque, Emilio
    IEEE ACCESS, 2024, 12 : 15493 - 15508
  • [23] Electrical Search Algorithm: A New Metaheuristic Algorithm for Clustering Problem
    Demirci, Hueseyin
    Yurtay, Niluefer
    Yurtay, Yueksel
    Zaimoglu, Esin Ayse
    ARABIAN JOURNAL FOR SCIENCE AND ENGINEERING, 2023, 48 (08) : 10153 - 10172
  • [24] Electrical Search Algorithm: A New Metaheuristic Algorithm for Clustering Problem
    Hüseyin Demirci
    Nilüfer Yurtay
    Yüksel Yurtay
    Esin Ayşe Zaimoğlu
    Arabian Journal for Science and Engineering, 2023, 48 : 10153 - 10172
  • [25] A Metaheuristic-Based Modularity Optimization Algorithm Driven by Edge Directionality for Directed Networks
    Xiao, Jing
    Zou, Yu-Cheng
    Xu, Xiao-Ke
    IEEE TRANSACTIONS ON NETWORK SCIENCE AND ENGINEERING, 2023, 10 (06): : 3804 - 3817
  • [26] Thermal variables estimation by a metaheuristic-based method: Cases of New Zealand
    Su, Zhe-yi
    Wu, Jun-min
    Berti, Stephen
    ENERGY REPORTS, 2021, 7 : 5045 - 5058
  • [27] A metaheuristic-based method for analysis of tensegrity structures
    Bekdas, Gebrail
    Ocak, Ayla
    Nigdeli, Sinan Melih
    Toklu, Yusuf Cengiz
    STRUCTURAL DESIGN OF TALL AND SPECIAL BUILDINGS, 2024, 33 (07):
  • [28] Software Modularization by Combining Genetic and Hierarchical Algorithms
    Tabrizi, Amir Hossein Farajpour
    Izadkhah, Habib
    2019 IEEE 5TH CONFERENCE ON KNOWLEDGE BASED ENGINEERING AND INNOVATION (KBEI 2019), 2019, : 454 - 459
  • [29] Metaheuristic-based optimization applied to GAPID controller
    Bassetto, Priscilla
    Puchta, Erickson D. P.
    Biuk, Lucas H.
    Itaborahy Filho, Marco A.
    Kaster, Mauricio
    Siqueira, Hugo Valadares
    2021 14TH IEEE INTERNATIONAL CONFERENCE ON INDUSTRY APPLICATIONS (INDUSCON), 2021, : 820 - 827
  • [30] Software Modularization Using Combination of Multiple Clustering
    Naseem, Rashid
    Deris, Mustafa Bin Mat
    Maqbool, Onaiza
    17TH IEEE INTERNATIONAL MULTI TOPIC CONFERENCE 2014, 2014, : 277 - 281