A bioinspired discrete heuristic algorithm to generate the effective structural model of a program source code

被引:9
作者
Arasteh, Bahman [1 ]
Sadegi, Razieh [2 ]
Arasteh, Keyvan [1 ]
Gunes, Peri [3 ]
Kiani, Farzad [4 ]
Torkamanian-Afshar, Mahsa [5 ]
机构
[1] Istinye Univ, Fac Engn & Nat Sci, Dept Software Engn, Istanbul, Turkiye
[2] Islamic Azad Univ, Dept Comp Engn, Tabriz Branch, Tabriz, Iran
[3] Yildiz Tech Univ, Fac Engn, Dept Software Engn, Istanbul, Turkiye
[4] Fatih Sultan Mehmet Vakif Univ, Fac Engn, Comp Engn Dept, TR-34445 Istanbul, Turkiye
[5] Nisantasi Univ, Fac Engn & Architecture, Comp Engn Dept, TR-34398 Istanbul, Turkiye
关键词
Olympiad optimization algorithm; Software module clustering; Cohesion; Modularization quality; PARTICLE SWARM OPTIMIZATION; SOFTWARE;
D O I
10.1016/j.jksuci.2023.101655
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
When the source code of a software is the only product available, program understanding has a substantial influence on software maintenance costs. The main goal in code comprehension is to extract information that is used in the software maintenance stage. Generating the structural model from the source code helps to alleviate the software maintenance cost. Software module clustering is thought to be a viable reverse engineering approach for building structural design models from source code. Finding the optimal clustering model is an NP-complete problem. The primary goals of this study are to minimize the number of connections between created clusters, enhance internal connections inside clusters, and enhance clustering quality. The previous approaches' main flaws were their poor success rates, instability, and inadequate modularization quality. The Olympiad optimization algorithm was introduced in this paper as a novel population-based and discrete heuristic algorithm for solving the software module clustering problem. This algorithm was inspired by the competition of a group of students to increase their knowledge and prepare for an Olympiad exam. The suggested algorithm employs a divide-and-conquer strategy, as well as local and global search methodologies. The effectiveness of the suggested Olympiad algorithm to solve the module clustering problem was evaluated using ten real-world and standard software benchmarks. According to the experimental results, on average, the modularization quality of the generated clustered models for the ten benchmarks is about 3.94 with 0.067 standard deviations. The proposed algorithm is superior to the prior algorithms in terms of modularization quality, convergence, and stability of results. Furthermore, the results of the experiments indicate that the proposed algorithm can be used to solve other discrete optimization problems efficiently. (c) 2023 The Author(s). Published by Elsevier B.V. on behalf of King Saud University. This is an open access article under the CC BY-NC-ND license (http://creativecommons.org/licenses/by-nc-nd/4.0/).
引用
收藏
页数:17
相关论文
共 30 条
  • [1] TA-ABC: Two-Archive Artificial Bee Colony for Multi-objective Software Module Clustering Problem
    Amarjeet
    Chhabra, Jitender Kumar
    [J]. JOURNAL OF INTELLIGENT SYSTEMS, 2018, 27 (04) : 619 - 641
  • [2] Amarjeet, 2017, J KING SAUD UNIV-COM, V29, P349, DOI 10.1016/j.jksuci.2015.09.004
  • [3] Harmony search based remodularization for object-oriented software systems
    Amarjeet
    Chhabra, Jitender Kumar
    [J]. COMPUTER LANGUAGES SYSTEMS & STRUCTURES, 2017, 47 : 153 - 169
  • [4] Improving modular structure of software system using structural and lexical dependency
    Amarjeet
    Chhabra, Jitender Kumar
    [J]. INFORMATION AND SOFTWARE TECHNOLOGY, 2017, 82 : 96 - 120
  • [5] Program Source-Code Re-Modularization Using a Discretized and Modified Sand Cat Swarm Optimization Algorithm
    Arasteh, Bahman
    Seyyedabbasi, Amir
    Rasheed, Jawad
    Abu-Mahfouz, Adnan M.
    [J]. SYMMETRY-BASEL, 2023, 15 (02):
  • [6] Clustered design-model generation from a program source code using chaos-based metaheuristic algorithms
    Arasteh, Bahman
    [J]. NEURAL COMPUTING & APPLICATIONS, 2023, 35 (04) : 3283 - 3305
  • [7] Program source code comprehension by module clustering using combination of discretized gray wolf and genetic algorithms
    Arasteh, Bahman
    Abdi, Mohammad
    Bouyer, Asgarali
    [J]. ADVANCES IN ENGINEERING SOFTWARE, 2022, 173
  • [8] Duzen: generating the structural model from the software source code using shuffled frog leaping algorithm
    Arasteh, Bahman
    Karimi, Mohammad Bagher
    Sadegi, Razieh
    [J]. NEURAL COMPUTING & APPLICATIONS, 2023, 35 (03) : 2487 - 2502
  • [9] Savalan: Multi objective and homogeneous method for software modules clustering
    Arasteh, Bahman
    Fatolahzadeh, Ahmad
    Kiani, Farzad
    [J]. JOURNAL OF SOFTWARE-EVOLUTION AND PROCESS, 2022, 34 (01)
  • [10] ARAZ: A software modules clustering method using the combination of particle swarm optimization and genetic algorithms
    Arasteh, Bahman
    Sadegi, Razieh
    Arasteh, Keyvan
    [J]. INTELLIGENT DECISION TECHNOLOGIES-NETHERLANDS, 2020, 14 (04): : 449 - 462