{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,5,2]],"date-time":"2026-05-02T04:49:22Z","timestamp":1777697362759,"version":"3.51.4"},"reference-count":17,"publisher":"SAGE Publications","issue":"4","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["IDT"],"published-print":{"date-parts":[[2021,1,6]]},"abstract":"<jats:p>A considerable percentage of software costs are usually related to its maintenance. Program comprehension is a prerequisite of the software maintenance and a considerable time of maintainers is spent to comprehend the structure and behavior of the software when the source code is the only product available. Program comprehension is one of difficult and challenging task especially in the absence of design documents of the software system. Clustering of software modules is an effective reverse-engineering method for extracting the software architecture and structural model from the source code. Finding the best clustering is considered to be a multi-objective NP hard optimization-problem and different meta-heuristic algorithms have been used for solving this problem. Local optimum, insufficient quality, insufficient performance and insufficient stability are the main shortcomings of the previous methods. Attaining higher values for software clustering quality, attaining higher success rate in clustering of software modules, attaining higher stability of the obtained results and attaining the higher convergence (speed) to generate optimal clusters are the main goals of this study. In this study, a hybrid meta heuristic method (ARAZ) includes particle swarm optimization algorithm and genetic algorithm (PSO-GA) is proposed to find the best clustering of software modules. An extensive series of experiments on 10 standard benchmark programs have been conducted. Regarding the results of experiments, the proposed method outperforms the other methods in terms of clustering quality, stability, success rate and convergence speed.<\/jats:p>","DOI":"10.3233\/idt-200070","type":"journal-article","created":{"date-parts":[[2020,12,15]],"date-time":"2020-12-15T12:38:13Z","timestamp":1608035893000},"page":"449-462","source":"Crossref","is-referenced-by-count":21,"title":["ARAZ: A software modules clustering method using the combination of particle swarm optimization and genetic algorithms"],"prefix":"10.1177","volume":"14","author":[{"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":"179","reference":[{"key":"10.3233\/IDT-200070_ref2","doi-asserted-by":"crossref","unstructured":"Mancoridis S., Mitchell B.S., Chen Y.F., Gansner E.R. Bunch: a clustering tool for the recovery and maintenance of software system structures, in: Proceedings of the IEEE International Conference Software Maintenance, 1999.","DOI":"10.1109\/ICSM.1999.792498"},{"key":"10.3233\/IDT-200070_ref4","doi-asserted-by":"crossref","unstructured":"Praditwong K., Harman M., Yao X. Software module clustering as a multi-objective search problem, IEEE Transactions on Software Engineering, 37(Issue 2) (2011).","DOI":"10.1109\/TSE.2010.26"},{"key":"10.3233\/IDT-200070_ref5","doi-asserted-by":"crossref","unstructured":"Kumari A.C., Srinivas K. Hyper-heuristic approach for multi-objective software module clustering, Systems and Software, 117 (July 2016).","DOI":"10.1016\/j.jss.2016.04.007"},{"key":"10.3233\/IDT-200070_ref7","doi-asserted-by":"crossref","unstructured":"Huang J., Liu J. Asimilarity-based modularization quality measure for software module clustering problems, Information Sciences, 342 (2016).","DOI":"10.1016\/j.ins.2016.01.030"},{"key":"10.3233\/IDT-200070_ref8","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","author":"Mohammadi","year":"2019","journal-title":"Information and Software Technology"},{"key":"10.3233\/IDT-200070_ref9","doi-asserted-by":"crossref","unstructured":"Prajapati A., Kumar Chhabra J. A particle swarm optimization-based heuristic for software module clustering problem, Arabian Journal For Science And Engineering, 43(Issue 12) (2017).","DOI":"10.1007\/s13369-017-2989-x"},{"key":"10.3233\/IDT-200070_ref10","doi-asserted-by":"crossref","unstructured":"Sun J., Ling B. Software module clustering algorithm using probability selection, Wuhan University Journal of Natural Sciences, 23(Issue 2) (2018).","DOI":"10.1007\/s11859-018-1299-9"},{"key":"10.3233\/IDT-200070_ref11","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","author":"Prajapati","year":"2018","journal-title":"J. Intelligent Systems"},{"key":"10.3233\/IDT-200070_ref12","doi-asserted-by":"crossref","unstructured":"Kennedy J., Eberhart R. Particle Swarm Optimization, in: Proceedings of IEEE International Conference on Neural Networks, 1995, pp. 1942\u20131948.","DOI":"10.1109\/ICNN.1995.488968"},{"key":"10.3233\/IDT-200070_ref13","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","author":"Hatami","year":"2020","journal-title":"Journal of Supercomputing"},{"key":"10.3233\/IDT-200070_ref14","unstructured":"Doval D., Mancoridis S., Mitchell B.S. Automatic Clustering of Software Systems Using a Genetic Algorithm, in: Proceedings of the IEEE Conference on Software Technology and Engineering Practice, 1999."},{"key":"10.3233\/IDT-200070_ref15","doi-asserted-by":"crossref","unstructured":"Storey M. Theories, methods and tools in program comprehension: past, present and future, in: 13th International Workshop on Program Comprehension (IWPC\u201905), USA, 2005, pp. 181\u2013191.","DOI":"10.1109\/WPC.2005.38"},{"key":"10.3233\/IDT-200070_ref16","doi-asserted-by":"crossref","unstructured":"Xie T., Gong M., Tang Z., Lei Y., Liu J., Wang Z. Enhancing Evolutionary Multifactorial Optimization Based On Particle Swarm Optimization, in: IEEE Congress on Evolutionary Computation (CEC), 2016.","DOI":"10.1109\/CEC.2016.7743987"},{"key":"10.3233\/IDT-200070_ref17","doi-asserted-by":"crossref","unstructured":"Amarjeet P., Chhabra J.K. FP-ABC: Fuzzy-Pareto Dominance Driven Artificial Bee Colony Algorithm for Many-Objective Software Module Clustering, in: Computer Languages, Systems & Structures, Vol. 52, 2018, pp. 1\u201321.","DOI":"10.1016\/j.cl.2017.08.001"},{"key":"10.3233\/IDT-200070_ref18","doi-asserted-by":"crossref","unstructured":"Amarjeet, P., Chhabra J.K. Improving modular structure of software system using structural and lexical dependency, Information and Software Technology, 82 (2017).","DOI":"10.1016\/j.infsof.2016.09.011"},{"key":"10.3233\/IDT-200070_ref19","unstructured":"Austin M.A., Samadzadeh M.H. Software comprehension\/maintenance: an introductory course, in: 18th International Conference on Systems Engineering (ICSEng\u201905), Las Vegas, USA, 2005, pp. 414\u2013419."},{"key":"10.3233\/IDT-200070_ref21","doi-asserted-by":"crossref","unstructured":"McCall J. Genetic algorithms for modelling and optimization, Journal of Computational and Applied Mathematics, 184(Issue 1) (2005).","DOI":"10.1016\/j.cam.2004.07.034"}],"container-title":["Intelligent Decision Technologies"],"original-title":[],"link":[{"URL":"https:\/\/content.iospress.com\/download?id=10.3233\/IDT-200070","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2026,4,29]],"date-time":"2026-04-29T09:22:48Z","timestamp":1777454568000},"score":1,"resource":{"primary":{"URL":"https:\/\/journals.sagepub.com\/doi\/full\/10.3233\/IDT-200070"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2021,1,6]]},"references-count":17,"journal-issue":{"issue":"4"},"URL":"https:\/\/doi.org\/10.3233\/idt-200070","relation":{},"ISSN":["1872-4981","1875-8843"],"issn-type":[{"value":"1872-4981","type":"print"},{"value":"1875-8843","type":"electronic"}],"subject":[],"published":{"date-parts":[[2021,1,6]]}}}