ARAZ: A software modules clustering method using the combination of particle swarm optimization and genetic algorithms

被引:25
作者
Arasteh, Bahman [1 ]
Sadegi, Razieh [1 ]
Arasteh, Keyvan [1 ]
机构
[1] Islamic Azad Univ, Tabriz Branch, Dept Comp Engn, Tabriz, Iran
来源
INTELLIGENT DECISION TECHNOLOGIES-NETHERLANDS | 2020年 / 14卷 / 04期
关键词
Software maintenance; software module clustering; particle swarm optimization algorithm; clustering quality; convergence speed;
D O I
10.3233/IDT-200070
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
A considerable percentage of software costs are usually related to its maintenance. Program comprehension is a prerequisite of the software maintenance and a considerable time of maintainers is spent to comprehend the structure and behavior of the software when the source code is the only product available. Program comprehension is one of difficult and challenging task especially in the absence of design documents of the software system. Clustering of software modules is an effective reverse-engineering method for extracting the software architecture and structural model from the source code. Finding the best clustering is considered to be a multi-objective NP hard optimization-problem and different meta-heuristic algorithms have been used for solving this problem. Local optimum, insufficient quality, insufficient performance and insufficient stability are the main shortcomings of the previous methods. Attaining higher values for software clustering quality, attaining higher success rate in clustering of software modules, attaining higher stability of the obtained results and attaining the higher convergence (speed) to generate optimal clusters are the main goals of this study. In this study, a hybrid meta heuristic method (ARAZ) includes particle swarm optimization algorithm and genetic algorithm (PSO-GA) is proposed to find the best clustering of software modules. An extensive series of experiments on 10 standard benchmark programs have been conducted. Regarding the results of experiments, the proposed method outperforms the other methods in terms of clustering quality, stability, success rate and convergence speed.
引用
收藏
页码:449 / 462
页数:14
相关论文
共 21 条
[1]  
Akhlaq U, 2010, THESIS SCH COMPUTING
[2]   TA-ABC: Two-Archive Artificial Bee Colony for Multi-objective Software Module Clustering Problem [J].
Amarjeet ;
Chhabra, Jitender Kumar .
JOURNAL OF INTELLIGENT SYSTEMS, 2018, 27 (04) :619-641
[3]   FP-ABC: Fuzzy-Pareto dominance driven artificial bee colony algorithm for many-objective software module clustering [J].
Amarjeet ;
Chhabra, Jitender Kumar .
COMPUTER LANGUAGES SYSTEMS & STRUCTURES, 2018, 51 :1-21
[4]  
Amarjeet P., 2017, INFORM SOFTWARE TECH, V82
[5]  
[Anonymous], 1999, P IEEE INT C SOFTW M
[6]  
Arasteh B, 2020, DATA TECHNOLOGIES AP
[7]   Software comprehension/maintenance: An introductory course [J].
Austin, MA ;
Samadzadeh, MH .
18TH INTERNATIONAL CONFERENCE ON SYSTEMS ENGINEERING, PROCEEDINGS, 2005, :414-419
[8]  
Doval D., 1999, P IEEE C SOFTW TECHN
[9]   An efficient and stable method to cluster software modules using ant colony optimization algorithm [J].
Hatami, Elmira ;
Arasteh, Bahman .
JOURNAL OF SUPERCOMPUTING, 2020, 76 (09) :6786-6808
[10]  
Kennedy J, 1995, 1995 IEEE INTERNATIONAL CONFERENCE ON NEURAL NETWORKS PROCEEDINGS, VOLS 1-6, P1942, DOI 10.1109/icnn.1995.488968