Studi Perbandingan Algoritma Fuzzy C-Means, DBScan, Dan Mean-Shift Dalam Mendeteksi Cacat Dalam Modul Perangkat Lunak

Hidayat, Frederick (2025) Studi Perbandingan Algoritma Fuzzy C-Means, DBScan, Dan Mean-Shift Dalam Mendeteksi Cacat Dalam Modul Perangkat Lunak. Other thesis, Institut Teknologi Sepuluh Nopember.

[thumbnail of 5025211152-Undergraduate_Thesis.pdf] Text
5025211152-Undergraduate_Thesis.pdf - Accepted Version

Download (9MB)

Abstract

Deteksi cacat dalam perangkat lunak merupakan aspek penting dalam proses pengembangan untuk menjamin kualitas dan menekan biaya pemeliharaan di masa mendatang. Pendeteksian cacat dengan menggunakan data tak berlabel (unsupervised defect prediction) menjadi penting dan perlu untuk menunjang deteksi cacat pada projek yang tidak memiliki histori data berlabel. Penelitian mengenai deteksi cacat pada perangkat lunak dengan dataset NASA MDP Defect Dataset dijalankan dengan melakukan studi perbandingan terhadap tiga algoritma clustering yaitu Fuzzy C-Means (FCM), DBSCAN, dan Mean-Shift. Dataset ini mengandung metrik perangkat lunak yaitu kelompok fitur Halstead dan McCabe, kedua fitur akan dikombinasikan menjadi kelompok fitur dan digunakan sebagai kelompok fitur data yang diolah dalam penelitian. Evaluasi dilakukan menggunakan metrik Silhouette Score sebagai validasi internal dan metrik Accuracy, Precision, Recall, serta F1-Score sebagai validasi eksternal. Hasil eksperimen menunjukkan bahwa Fuzzy C-Means menghasilkan performa terbaik dibandingkan dua model lainnya dengan perbedaan nilai pada rentang 0,01 sampai 0,5, terutama setelah dilakukan seleksi fitur berbasis metrik Halstead yang selanjutnya dilakukan hyperparameter tuning dengan mengatur parameter m, error, dan max_iter. DBSCAN unggul dalam mendeteksi outlier dan noise, namun dalam mendeteksi cacat pada perangkat lunak dengan dataset terkait, model ini mengalami kesulitan karna data yang distribusinya tidak sejalan dengan prinsip pengelompokkan dari DBSCAN. Mean-Shift mampu menemukan jumlah klaster optimal tanpa inisialisasi awal, tetapi performanya terpengaruhi oleh dataset yang persebarannya tidak sejalan dengan prinsip model ini. Dengan demikian, Fuzzy C-Means dengan kelompok fitur Halstead menjadi model paling baik diantara ketiga model unsupervised dalam konteks deteksi cacat perangkat lunak pada dataset NASA dengan nilai recall tertinggi pada angka 0,8, namun performa tertinggi masih pada supervised model dengan recall pada nilai 1.
===================================================================================================================================
Defect detection in software is a crucial aspect of the development process to ensure quality and reduce future maintenance costs. Detecting defects using unlabeled data (unsupervised defect prediction) is important and necessary to support defect detection in projects that lack labeled data history. This study investigates defect detection in software using the NASA MDP Defect Dataset by conducting a comparative study of three clustering algorithms: Fuzzy C-Means (FCM), DBSCAN, and Mean-Shift. The dataset contains software metrics, specifically Halstead and McCabe feature groups, which are combined and used as the feature set for processing in this study. Evaluation is carried out using the Silhouette Score as an internal validation metric, and Accuracy, Precision, Recall, and F1-Score as external validation metrics. Experimental results show that Fuzzy C-Means yields the best performance compared to the other two models, with differences ranging from 0.01 to 0.5, especially after feature selection based on Halstead metrics and subsequent hyperparameter tuning by adjusting the parameters m, error, and max_iter. DBSCAN excels at detecting outliers and noise but struggles to detect defects in this dataset due to distribution characteristics that do not align with DBSCAN's clustering principles. Mean-Shift can determine the optimal number of clusters without initial initialization, but its performance is affected by datasets whose distributions do not align well with the model's principles. Thus, Fuzzy C-Means with the Halstead feature group emerges as the best unsupervised model among the three for software defect detection on the NASA dataset, achieving the highest recall value of 0.7778. However, the highest overall performance is still achieved by supervised models, with a recall value of 1.

Item Type: Thesis (Other)
Uncontrolled Keywords: Deteksi cacat perangkat lunak, DBSCAN, Fuzzy C-Means, Halstead, McCabe, Mean-Shift, DBSCAN, Fuzzy C-Means, Halstead, McCabe, Mean-Shift, Software defect detection
Subjects: Q Science > Q Science (General) > Q325.5 Machine learning. Support vector machines.
Q Science > QA Mathematics > QA76.758 Software engineering
Divisions: Faculty of Intelligent Electrical and Informatics Technology (ELECTICS) > Informatics Engineering > 55201-(S1) Undergraduate Thesis
Depositing User: Frederick Hidayat
Date Deposited: 30 Jul 2025 09:50
Last Modified: 30 Jul 2025 09:50
URI: http://repository.its.ac.id/id/eprint/124012

Actions (login required)

View Item View Item