{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,1,23]],"date-time":"2026-01-23T09:27:25Z","timestamp":1769160445172,"version":"3.49.0"},"reference-count":26,"publisher":"Emerald","issue":"2","license":[{"start":{"date-parts":[[2020,11,27]],"date-time":"2020-11-27T00:00:00Z","timestamp":1606435200000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.emerald.com\/insight\/site-policies"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["DTA"],"published-print":{"date-parts":[[2021,4,12]]},"abstract":"<jats:sec><jats:title content-type=\"abstract-subheading\">Purpose<\/jats:title><jats:p>Software module clustering is one of the reverse engineering techniques, which is considered to be an effective technique for presenting software architecture and structural information. The objective of clustering software modules is to achieve minimum coupling among different clusters and create maximum cohesion among the modules of each cluster. Finding the best clustering is considered to be a multi-objective <jats:italic>N<\/jats:italic>-<jats:italic>P<\/jats:italic> hard optimization-problem, and for solving this problem, different meta-heuristic algorithms have been previously proposed. Achieving higher module lustering quality (MQ), obtaining higher success rate for achieving the best clustering quality and improving convergence speed are the main objectives of this study.<\/jats:p><\/jats:sec><jats:sec><jats:title content-type=\"abstract-subheading\">Design\/methodology\/approach<\/jats:title><jats:p>In this study, a method (B\u00f6len) is proposed for clustering software modules which combines the two algorithms of shuffled frog leaping and genetic algorithm.<\/jats:p><\/jats:sec><jats:sec><jats:title content-type=\"abstract-subheading\">Findings<\/jats:title><jats:p>The results of conducted experiments using traditional data sets confirm that the proposed method outperforms the previous methods in terms of convergence speed, module clustering quality and stability of the results.<\/jats:p><\/jats:sec><jats:sec><jats:title content-type=\"abstract-subheading\">Originality\/value<\/jats:title><jats:p>The study proposes SFLA_GA algorithm for optimizing software module clustering, implementing SFLA algorithm in a discrete form by two operators of the genetic algorithm and achieving the above-mentioned purposes in this study. The aim is to achieve higher performance of the proposed algorithm in comparison with other algorithms.<\/jats:p><\/jats:sec>","DOI":"10.1108\/dta-08-2019-0138","type":"journal-article","created":{"date-parts":[[2020,11,27]],"date-time":"2020-11-27T03:00:24Z","timestamp":1606446024000},"page":"251-279","source":"Crossref","is-referenced-by-count":20,"title":["B\u00f6len: software module clustering method using the combination of shuffled frog leaping and genetic algorithm"],"prefix":"10.1108","volume":"55","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-5202-6315","authenticated-orcid":false,"given":"Bahman","family":"Arasteh","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Razieh","family":"Sadegi","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Keyvan","family":"Arasteh","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"140","published-online":{"date-parts":[[2020,11,27]]},"reference":[{"key":"key2021043009424115100_ref001","volume-title":"Impact of Software Comprehension in Software Maintenance and Evolution","year":"2010"},{"key":"key2021043009424115100_ref002","doi-asserted-by":"crossref","first-page":"96","DOI":"10.1016\/j.infsof.2016.09.011","article-title":"Improving modular structure of software system using structural and lexical dependency","volume":"82","year":"2017","journal-title":"Information and Software Technology"},{"issue":"2","key":"key2021043009424115100_ref003","first-page":"153","article-title":"Harmony search based remodularization for object-oriented software systems","volume":"47","year":"2017","journal-title":"Computer Languages, Systems and Structures"},{"key":"key2021043009424115100_ref004","first-page":"1","article-title":"FP-ABC: Fuzzy-Pareto dominance driven artificial Bee colony algorithm for many-objective software module clustering","volume":"52","year":"2018","journal-title":"Computer Languages, Systems and Structures"},{"key":"key2021043009424115100_ref005","doi-asserted-by":"crossref","first-page":"412","DOI":"10.1016\/j.ins.2009.12.019","article-title":"Co-evolutionary automatic programming for software development","volume":"259","year":"2014","journal-title":"Information Science"},{"key":"key2021043009424115100_ref006","first-page":"414","article-title":"Software comprehension\/maintenance: an introductory course","year":"2005"},{"key":"key2021043009424115100_ref007","article-title":"Automatic clustering of software systems using a genetic algorithm","year":"1999"},{"issue":"2","key":"key2021043009424115100_ref008","doi-asserted-by":"crossref","first-page":"129","DOI":"10.1080\/03052150500384759","article-title":"Shuffled frog-leaping algorithm -- A memetic metaheuristic for discrete","volume":"38","year":"2006","journal-title":"Engineering Optimization"},{"key":"key2021043009424115100_ref009","volume-title":"Genetic Algorithms in Search, Optimization and Machine Learning","year":"1989"},{"issue":"9","key":"key2021043009424115100_ref010","doi-asserted-by":"crossref","first-page":"6786","DOI":"10.1007\/s11227-019-03112-0","article-title":"An efficient and stable method to cluster software modules using ant colony optimization algorithm","volume":"76","year":"2020","journal-title":"The Journal of Supercomputing"},{"key":"key2021043009424115100_ref011","doi-asserted-by":"crossref","first-page":"96","DOI":"10.1016\/j.ins.2016.01.030","article-title":"Asimilarity-based modularization quality measure for software module clustering problems","volume":"342","year":"2016","journal-title":"Information Sciences"},{"key":"key2021043009424115100_ref012","first-page":"1942","article-title":"Particle swarm optimization","year":"1995"},{"key":"key2021043009424115100_ref013","doi-asserted-by":"crossref","first-page":"384","DOI":"10.1016\/j.jss.2016.04.007","article-title":"Hyper-heuristic approach for multi-objective software module clustering","volume":"117","year":"2016","journal-title":"Systems and Software"},{"key":"key2021043009424115100_ref014","first-page":"45","article-title":"Using automatic clustering to produce high-level system organizations of source code","year":"1998"},{"key":"key2021043009424115100_ref015","article-title":"Bunch: a clustering tool for the recovery and maintenance of software system structures","year":"1999"},{"key":"key2021043009424115100_ref016","article-title":"A heuristic search approach to solving the software clustering problem","year":"2003"},{"key":"key2021043009424115100_ref017","doi-asserted-by":"crossref","first-page":"252","DOI":"10.1016\/j.infsof.2018.09.001","article-title":"A new algorithm for software clustering considering the knowledge of dependency between artifacts in the source code","volume":"105","year":"2019","journal-title":"Information and Software Technology"},{"key":"key2021043009424115100_ref018","doi-asserted-by":"crossref","first-page":"92","DOI":"10.1016\/j.cor.2017.10.004","article-title":"Large neighborhood search applied to the software module clustering problem","volume":"91","year":"2018","journal-title":"Computers and Operations Research"},{"key":"key2021043009424115100_ref019","first-page":"154","article-title":"Solving software module clustering problem by evolutionary algorithms","year":"2011"},{"issue":"2","key":"key2021043009424115100_ref020","doi-asserted-by":"crossref","first-page":"264","DOI":"10.1109\/TSE.2010.26","article-title":"Software module clustering as a multi-objective search problem","volume":"37","year":"2011","journal-title":"IEEE Transactions on Software Engineering"},{"issue":"12","key":"key2021043009424115100_ref021","first-page":"7083","article-title":"A particle Swarm optimization-based heuristic for software module clustering problem","volume":"43","year":"2017","journal-title":"Arabian Journal for Science and Engineering"},{"issue":"4","key":"key2021043009424115100_ref022","doi-asserted-by":"crossref","first-page":"619","DOI":"10.1515\/jisys-2016-0253","article-title":"TA-ABC: two-archive artificial bee colony for multi-objective software module clustering problem","volume":"27","year":"2018","journal-title":"Journal of Intelligent Systems"},{"key":"key2021043009424115100_ref023","volume-title":"Methods for Evaluating, Selecting and Improving Software","year":"2010"},{"key":"key2021043009424115100_ref024","first-page":"181","article-title":"Theories, methods and tools in program comprehension: past, present and future","year":"2005"},{"issue":"2","key":"key2021043009424115100_ref025","doi-asserted-by":"crossref","first-page":"93","DOI":"10.1007\/s11859-018-1299-9","article-title":"Software module clustering algorithm using probability selection","volume":"23","year":"2018","journal-title":"Wuhan University Journal of Natural Sciences"},{"key":"key2021043009424115100_ref026","article-title":"Enhancing evolutionary multifactorial optimization based on particle swarm optimization","year":"2016"}],"container-title":["Data Technologies and Applications"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.emerald.com\/insight\/content\/doi\/10.1108\/DTA-08-2019-0138\/full\/xml","content-type":"application\/xml","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/www.emerald.com\/insight\/content\/doi\/10.1108\/DTA-08-2019-0138\/full\/html","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,7,24]],"date-time":"2025-07-24T23:15:17Z","timestamp":1753398917000},"score":1,"resource":{"primary":{"URL":"http:\/\/www.emerald.com\/dta\/article\/55\/2\/251-279\/510007"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2020,11,27]]},"references-count":26,"journal-issue":{"issue":"2","published-online":{"date-parts":[[2020,11,27]]},"published-print":{"date-parts":[[2021,4,12]]}},"alternative-id":["10.1108\/DTA-08-2019-0138"],"URL":"https:\/\/doi.org\/10.1108\/dta-08-2019-0138","relation":{},"ISSN":["2514-9288"],"issn-type":[{"value":"2514-9288","type":"print"}],"subject":[],"published":{"date-parts":[[2020,11,27]]}}}