Savalan: Multi objective and homogeneous method for software modules clustering. Issue 1 (19th November 2021)
- Record Type:
- Journal Article
- Title:
- Savalan: Multi objective and homogeneous method for software modules clustering. Issue 1 (19th November 2021)
- Main Title:
- Savalan: Multi objective and homogeneous method for software modules clustering
- Authors:
- Arasteh, Bahman
Fatolahzadeh, Ahmad
Kiani, Farzad - Abstract:
- Abstract: 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 module clustering is a reverse engineering method which decomposes software modules into several clusters (subsystems) by using module dependency graph. Finding the best clusters for the modules of software is a multi‐objective and NP‐hard problem; maximizing the cohesion among the modules, minimizing the coupling among different clusters, and maximizing the software modularization quality are considered as the main objectives of software module clustering. Some of these objectives, such as cohesion and coupling, are in contradiction with each other. Simultaneous improvement of all clustering objectives (cohesion, coupling, modularization quality, size, and number of clusters) is the main goal of this study. In this paper, by capitalizing on multi objective genetic algorithm and a new combination of objective functions, we proposed a homogeneous method, namely, Savalan, for clustering software modules. The proposed method generates high‐quality clusters with strong cohesion within clusters and weak connections between clusters for the input source code. The results of conducted experiments on the 14 benchmark programs indicate that simultaneous improvement of all clustering objectives is the main merit of this method. According to the experimental results, the proposed algorithm was able toAbstract: 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 module clustering is a reverse engineering method which decomposes software modules into several clusters (subsystems) by using module dependency graph. Finding the best clusters for the modules of software is a multi‐objective and NP‐hard problem; maximizing the cohesion among the modules, minimizing the coupling among different clusters, and maximizing the software modularization quality are considered as the main objectives of software module clustering. Some of these objectives, such as cohesion and coupling, are in contradiction with each other. Simultaneous improvement of all clustering objectives (cohesion, coupling, modularization quality, size, and number of clusters) is the main goal of this study. In this paper, by capitalizing on multi objective genetic algorithm and a new combination of objective functions, we proposed a homogeneous method, namely, Savalan, for clustering software modules. The proposed method generates high‐quality clusters with strong cohesion within clusters and weak connections between clusters for the input source code. The results of conducted experiments on the 14 benchmark programs indicate that simultaneous improvement of all clustering objectives is the main merit of this method. According to the experimental results, the proposed algorithm was able to outperform the previous multi objective methods. Abstract : Finding the best clusters for the modules of software is a multi‐objective and NP‐hard problem. Simultaneous improvement of all clustering objectives (cohesion, coupling, modularization quality, size, and number of clusters) is the main goal of this study. A multi‐objective and homogeneous method using genetic algorithm has been proposed, namely, Savalan, for clustering the software modules. The results of conducted experiments on the 14 benchmark programs indicate that simultaneous improvement of all clustering objectives is the main merit of this method. … (more)
- Is Part Of:
- Journal of software. Volume 34:Issue 1(2022)
- Journal:
- Journal of software
- Issue:
- Volume 34:Issue 1(2022)
- Issue Display:
- Volume 34, Issue 1 (2022)
- Year:
- 2022
- Volume:
- 34
- Issue:
- 1
- Issue Sort Value:
- 2022-0034-0001-0000
- Page Start:
- n/a
- Page End:
- n/a
- Publication Date:
- 2021-11-19
- Subjects:
- homogenous clustering -- module clustering -- multi objective genetic algorithm -- software maintenance
Software engineering -- Periodicals
Computer software -- Development -- Periodicals
Software maintenance -- Periodicals
005.1 - Journal URLs:
- http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)2047-7481 ↗
http://onlinelibrary.wiley.com/ ↗ - DOI:
- 10.1002/smr.2408 ↗
- Languages:
- English
- ISSNs:
- 2047-7473
- Deposit Type:
- Legaldeposit
- View Content:
- Available online (eLD content is only available in our Reading Rooms) ↗
- Physical Locations:
- British Library DSC - BLDSS-3PM
British Library HMNTS - ELD Digital store - Ingest File:
- 20401.xml