Publication: Genetic algorithms and heuristics hybridized for software architecture recovery
dc.contributor.author | Elyasi, Milad | |
dc.contributor.author | Simitcioğlu, Muhammed Esad | |
dc.contributor.author | Saydemir, Abdullah | |
dc.contributor.author | Ekici, Ali | |
dc.contributor.author | Özener, Okan Örsan | |
dc.contributor.author | Sözer, Hasan | |
dc.contributor.department | Industrial Engineering | |
dc.contributor.department | Computer Science | |
dc.contributor.ozuauthor | EKİCİ, Ali | |
dc.contributor.ozuauthor | ÖZENER, Okan Örsan | |
dc.contributor.ozuauthor | SÖZER, Hasan | |
dc.contributor.ozugradstudent | Simitcioğlu, Muhammed Esad | |
dc.contributor.ozugradstudent | Saydemir, Abdullah | |
dc.contributor.ozugradstudent | Elyasi, Milad | |
dc.date.accessioned | 2023-08-11T12:37:28Z | |
dc.date.available | 2023-08-11T12:37:28Z | |
dc.date.issued | 2023-06-26 | |
dc.description.abstract | Large scale software systems must be decomposed into modular units to reduce maintenance efforts. Software Architecture Recovery (SAR) approaches have been introduced to analyze dependencies among software modules and automatically cluster them to achieve high modularity. These approaches employ various types of algorithms for clustering software modules. In this paper, we discuss design decisions and variations in existing genetic algorithms devised for SAR. We present a novel hybrid genetic algorithm that introduces three major differences with respect to these algorithms. First, it employs a greedy heuristic algorithm to automatically determine the number of clusters and enrich the initial population that is generated randomly. Second, it uses a different solution representation that facilitates an arithmetic crossover operator. Third, it is hybridized with a heuristic that improves solutions in each iteration. We present an empirical evaluation with seven real systems as experimental objects. We compare the effectiveness of our algorithm with respect to a baseline and state-of-the-art hybrid genetic algorithms. Our algorithm outperforms others in maximizing the modularity of the obtained clusters. | en_US |
dc.description.sponsorship | TÜBİTAK | |
dc.identifier.doi | 10.1007/s10515-023-00384-y | en_US |
dc.identifier.issn | 0928-8910 | en_US |
dc.identifier.issue | 2 | en_US |
dc.identifier.scopus | 2-s2.0-85163341762 | |
dc.identifier.uri | http://hdl.handle.net/10679/8642 | |
dc.identifier.uri | https://doi.org/10.1007/s10515-023-00384-y | |
dc.identifier.volume | 30 | en_US |
dc.identifier.wos | 001016798700001 | |
dc.language.iso | eng | en_US |
dc.peerreviewed | yes | en_US |
dc.publicationstatus | Published | en_US |
dc.publisher | Springer | en_US |
dc.relation | info:turkey/grantAgreement/TUBITAK/120E488 | |
dc.relation.ispartof | Automated Software Engineering | |
dc.relation.publicationcategory | International Refereed Journal | |
dc.rights | info:eu-repo/semantics/restrictedAccess | |
dc.subject.keywords | Genetic algorithms | en_US |
dc.subject.keywords | Reverse engineering | en_US |
dc.subject.keywords | Software architecture recovery | en_US |
dc.subject.keywords | Software modularity | en_US |
dc.subject.keywords | Software module clustering | en_US |
dc.title | Genetic algorithms and heuristics hybridized for software architecture recovery | en_US |
dc.type | Article | en_US |
dspace.entity.type | Publication | |
relation.isOrgUnitOfPublication | 5dd73c02-fd2d-43e0-9a23-71bab9ae0b6b | |
relation.isOrgUnitOfPublication | 85662e71-2a61-492a-b407-df4d38ab90d7 | |
relation.isOrgUnitOfPublication.latestForDiscovery | 5dd73c02-fd2d-43e0-9a23-71bab9ae0b6b |
Files
License bundle
1 - 1 of 1
- Name:
- license.txt
- Size:
- 1.45 KB
- Format:
- Item-specific license agreed upon to submission
- Description: