Generating Software Architectural Model from Source Code Using Module Clustering

Đã lưu trong:
Chi tiết về thư mục
Xuất bản năm:Symmetry vol. 17, no. 9 (2025), p. 1523-1547
Tác giả chính: Arasteh Bahman
Tác giả khác: Sefati Seyed Salar, Kusetogullari Huseyin, Kiani Farzad
Được phát hành:
MDPI AG
Những chủ đề:
Truy cập trực tuyến:Citation/Abstract
Full Text + Graphics
Full Text - PDF
Các nhãn: Thêm thẻ
Không có thẻ, Là người đầu tiên thẻ bản ghi này!

MARC

LEADER 00000nab a2200000uu 4500
001 3254653797
003 UK-CbPIL
022 |a 2073-8994 
024 7 |a 10.3390/sym17091523  |2 doi 
035 |a 3254653797 
045 2 |b d20250101  |b d20251231 
084 |a 231635  |2 nlm 
100 1 |a Arasteh Bahman  |u Department of Software Engineering, Faculty of Engineering and Natural Science, Istinye University, Istanbul 34396, Türkiye; sefati.seyedsalar@upb.ro 
245 1 |a Generating Software Architectural Model from Source Code Using Module Clustering 
260 |b MDPI AG  |c 2025 
513 |a Journal Article 
520 3 |a Software maintenance is one of the most expensive phases in software development, especially when complex source code is the only available artifact. Clustering software modules and generating a structured architectural model can significantly reduce the effort and cost of maintenance. This study aims to achieve high-quality modularization by maximizing intra-cluster cohesion, minimizing inter-cluster coupling, and optimizing overall modular quality. Since finding optimal clustering is an NP-complete problem, many existing methods suffer from poor modular structures, instability, and inconsistent results. To overcome these limitations, this paper proposes a module clustering method using a discrete bedbug optimizer. In software architecture, symmetry refers to the balanced and structured arrangement of modules. In the proposed method, module clustering aims to identify and group related modules based on structural and behavioral similarities, reflecting symmetrical properties in the source code. Conversely, asymmetries, such as modules with irregular dependencies, can indicate architectural flaws. The method was evaluated on ten widely used real-world software datasets. The experimental results show that the proposed algorithm consistently delivers superior modularization quality, with an average score of 2.806 and a well-balanced trade-off between cohesion and coupling. Overall, this research presents an effective solution for software module clustering and provides better architecture recovery and more maintainable systems. 
653 |a Software quality 
653 |a Machine learning 
653 |a Modularization 
653 |a Source code 
653 |a Maintenance costs 
653 |a Success 
653 |a Clustering 
653 |a Optimization techniques 
653 |a Genetic algorithms 
653 |a Optimization 
653 |a Insects 
653 |a Cohesion 
653 |a Architecture 
653 |a Methods 
653 |a Modules 
653 |a Modular structures 
653 |a Performance evaluation 
653 |a Heuristic 
653 |a Neighborhoods 
653 |a Optimization algorithms 
653 |a Software development 
653 |a Efficiency 
653 |a Semantics 
653 |a Coupling 
700 1 |a Sefati Seyed Salar  |u Department of Software Engineering, Faculty of Engineering and Natural Science, Istinye University, Istanbul 34396, Türkiye; sefati.seyedsalar@upb.ro 
700 1 |a Kusetogullari Huseyin  |u Department of Computer Science, Blekinge Institute of Technology, 371 79 Karlskrona, Sweden; huseyin.kusetogullari@bth.se 
700 1 |a Kiani Farzad  |u Data Science Application and Research Center (VEBIM), Fatih Sultan Mehmet Vakif University, Istanbul 34445, Türkiye; fanka@fsm.edu.tr 
773 0 |t Symmetry  |g vol. 17, no. 9 (2025), p. 1523-1547 
786 0 |d ProQuest  |t Engineering Database 
856 4 1 |3 Citation/Abstract  |u https://www.proquest.com/docview/3254653797/abstract/embedded/7BTGNMKEMPT1V9Z2?source=fedsrch 
856 4 0 |3 Full Text + Graphics  |u https://www.proquest.com/docview/3254653797/fulltextwithgraphics/embedded/7BTGNMKEMPT1V9Z2?source=fedsrch 
856 4 0 |3 Full Text - PDF  |u https://www.proquest.com/docview/3254653797/fulltextPDF/embedded/7BTGNMKEMPT1V9Z2?source=fedsrch