Spotted hyena optimizer: a novel bio-inspired based metaheuristic technique for engineering applications

G Dhiman, V Kumar - Advances in Engineering Software, 2017 - Elsevier
This paper presents a novel metaheuristic algorithm named as Spotted Hyena Optimizer
(SHO) inspired by the behavior of spotted hyenas. The main concept behind this algorithm is …

Mopisde: A collaborative multi-objective information-sharing de algorithm for software clustering

Y Kang, W Xie, X Wang, H Wang, X Wang… - Expert Systems with …, 2023 - Elsevier
The software module clustering problem (SMCP) aims to improve the internal quality of
software while helping software engineers understand the system architecture and …

Savalan: Multi objective and homogeneous method for software modules clustering

B Arasteh, A Fatolahzadeh… - Journal of Software …, 2022 - Wiley Online Library
Reverse engineering is used for extracting and understanding software architecture models
from source code when the source code is the only available software product. Software …

Clustered design-model generation from a program source code using chaos-based metaheuristic algorithms

B Arasteh - Neural Computing and Applications, 2023 - Springer
Comprehension of the structure of software will facilitate maintaining the software more
efficiently. Clustering software modules, as a reverse engineering technique, is assumed to …

Software component identification and selection: A research review

S Gholamshahi… - Software: Practice and …, 2019 - Wiley Online Library
Nowadays, with the development of software reuse, software developers are paying more
attention to component‐related technologies, which have been mostly applied in the …

Program source code comprehension by module clustering using combination of discretized gray wolf and genetic algorithms

B Arasteh, M Abdi, A Bouyer - Advances in Engineering Software, 2022 - Elsevier
Maintenance is a critical and costly phase of software lifecycle. Understanding the structure
of software will make it much easier to maintain the software. Clustering the modules of …

A graph-based clustering algorithm for software systems modularization

B Pourasghar, H Izadkhah, A Isazadeh… - Information and Software …, 2021 - Elsevier
Context: Clustering algorithms, as a modularization technique, are used to modularize a
program aiming to understand large software systems as well as software refactoring. These …

Program source-code re-modularization using a discretized and modified sand cat swarm optimization algorithm

B Arasteh, A Seyyedabbasi, J Rasheed… - Symmetry, 2023 - mdpi.com
One of expensive stages of the software lifecycle is its maintenance. Software maintenance
will be much simpler if its structural models are available. Software module clustering is …

A fast clustering algorithm for modularization of large-scale software systems

N Teymourian, H Izadkhah… - IEEE Transactions on …, 2020 - ieeexplore.ieee.org
A software system evolves over time in order to meet the needs of users. Understanding a
program is the most important step to apply new requirements. Clustering techniques …

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

B Arasteh, R Sadegi, K Arasteh, P Gunes… - Journal of King Saud …, 2023 - Elsevier
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 …