Tendean, Sandi (2026) Multi Graph Convolutional Normalizing Flows Network Untuk Klasterisasi Kelas Dalam Perangkat Lunak. Doctoral thesis, Institut Teknologi Sepuluh Nopember.
|
Text
7025221015-Doctoral.pdf - Accepted Version Restricted to Repository staff only Download (3MB) | Request a copy |
Abstract
Pengklasteran modul perangkat lunak bertujuan untuk mempartisi sistem yang kompleks menjadi modul-modul yang memiliki kohesi tinggi dan kopling rendah. Keberhasilan proses ini sangat bergantung pada representasi hubungan antar kelas dalam perangkat lunak berorientasi objek, yaitu asosiasi, agregasi, komposisi, dan dependensi. Pendekatan yang ada umumnya hanya memanfaatkan satu jenis graf atau menggabungkan semua relasi secara sederhana sehingga menghasilkan klaster yang kurang optimal. Penelitian ini mengembangkan metode Multi Graph Convolutional Normalizing Flows Network (MGCNFN) yang merepresentasikan hubungan antar kelas dalam multi graf. Penggunaan representasi multi graf secara terpisah untuk menangkap kekayaan semantik setiap jenis relasi. Setiap graf diproses melalui Graph Convolutional Network (GCN) secara paralel, dilanjutkan dengan mekanisme attention untuk memberikan bobot adaptif pada setiap simpul dan graf. Selanjutnya, normalizing flows memetakan distribusi representasi hasil fusi ke dalam ruang laten mendekati Gaussian Mixture Model. Langkah ini membentuk ruang laten yang lebih teratur sehingga proses klasterisasi menghasilkan modul yang lebih kohesif. Metode yang diusulkan diuji pada lima proyek perangkat lunak berbasis Java dan dibandingkan dengan K-means, GC-Flow, BMGC, dan MGCCN serta dievaluasi menggunakan delapan metrik. MGCNFN mencapai Silhouette tertinggi pada empat dari lima dataset (0,89–0,93) dan DB Index terendah pada seluruh dataset (0,44–0,67), dengan peningkatan Silhouette rata rata 0,48 poin dibandingkan MGCCN. Uji Wilcoxon menghasilkan p < 0,001 dan interval kepercayaan 95% tidak tumpang tindih yang mengonfirmasi signifikansi secara statistik. Pada metrik modularitas, MGCNFN meningkatkan TurboMQ hingga 0,50 poin dan kohesi hingga tiga kali lipat. Tanpa normalizing flows, Silhouette turun rata rata 0,42 poin dan DB Index naik 0,54 poin. Terdapat trade off dengan GC-Flow yang lebih unggul dalam MQ karena graf tunggal, sementara MGCNFN mempertahankan fleksibilitas semantik dan pemisahan geometris yang lebih baik. MGCNFN terbukti efektif menghasilkan modul yang kohesif dan berkopling rendah, serta berkontribusi pada pemeliharaan dan restrukturisasi perangkat lunak.
===========================================================================================================================
Software module clustering aims to partition complex systems into modules that exhibit high cohesion and low coupling. The success of this process heavily depends on the representation of inter-class relationships in object-oriented software, namely association, aggregation, composition, and dependency. Existing approaches typically utilize only a single graph or combine all relationships naively, which leads to suboptimal clustering results. This research develops the Multi Graph Convolutional Normalizing Flows Network (MGCNFN) that represents inter class relationships as multi graphs. The use of separate multi graph representations captures the semantic richness of each relationship type. Each graph is processed in parallel through Graph Convolutional Networks (GCN), followed by an attention mechanism that assigns adaptive weights to each node and graph. Subsequently, normalizing flows map the fused representation distribution into a latent space that approximates a Gaussian Mixture Model. This step forms a more regular latent space, enabling the clustering process to produce more cohesive modules. The proposed method is evaluated on five Java based software projects and compared against K-means, GC-Flow, BMGC, and MGCCN using eight evaluation metrics. MGCNFN achieves the highest Silhouette scores on four of the five datasets (0.89–0.93) and the lowest DB Index across all datasets (0.44–0.67), with an average Silhouette improvement of 0.48 points over MGCCN. The Wilcoxon test yields p < 0.001 and 95% confidence intervals do not overlap, confirming statistical significance. In terms of modularity metrics, MGCNFN improves TurboMQ by up to 0.50 points and cohesion by up to threefold. Without normalizing flows, Silhouette decreases by an average of 0.42 points and DB Index increases by 0.54 points. A trade off is observed with GC-Flow, which achieves higher MQ due to its single graph approach, while MGCNFN preserves semantic flexibility and achieves better geometric separation. MGCNFN is proven effective in producing cohesive, low coupling modules and contributes to software maintenance and restructuring.
| Item Type: | Thesis (Doctoral) |
|---|---|
| Uncontrolled Keywords: | Pengklasteran modul perangkat lunak, Multi graf, Graph convoltional network, Normalizing flows, Software module clustering, Multi-graph, Graph convolutional network, Normalizing flows |
| Subjects: | Q Science > QA Mathematics > QA278.55 Cluster analysis Q Science > QA Mathematics > QA76.754 Software architecture. Computer software Q Science > QA Mathematics > QA76.758 Software engineering |
| Divisions: | Faculty of Intelligent Electrical and Informatics Technology (ELECTICS) > Informatics Engineering > 55001-(S3) PhD Thesis (Comp Science) |
| Depositing User: | Sandi Tendean |
| Date Deposited: | 05 Aug 2026 01:18 |
| Last Modified: | 05 Aug 2026 01:18 |
| URI: | http://repository.its.ac.id/id/eprint/143534 |
Actions (login required)
![]() |
View Item |
