Salmanjannah, Muhammad Budhi (2026) Klasifikasi Peran Komponen Arsitektur Perangkat Lunak Menggunakan Model Codebert. Other thesis, Institut Teknologi Sepuluh Nopember.
|
Text
5025201084-Muhammad-Budhi-Salmanjannah-Buku.pdf Download (2MB) |
Abstract
Clean Architecture (CA) merupakan gaya arsitektural yang memisahkan logika bisnis dari detail teknis untuk meningkatkan pemeliharaan (maintainability). Namun, modernisasi perangkat lunak legacy menjadi CA melalui migrasi manual memerlukan waktu dan usaha yang signifikan. Penelitian ini bertujuan membangun model otomatis untuk mengklasifikasikan 10 peran komponen arsitektur (seperti Entity, Repository, Controller, dll.) menggunakan model pembelajaran representasi kode CodeBERT. Eksperimen membandingkan dua skenario: model CodeBERT Standar dan EL-CodeBERT yang menggunakan mekanisme Weighted Aggregated Embedding (WAE) untuk mengakses informasi dari seluruh 12 lapisan transformer. Dataset yang digunakan terdiri dari 1525 sampel kode Java dari 19 proyek open-source. Hasil penelitian menunjukkan bahwa model CodeBERT Standar mencapai performa optimal dengan akurasi 72,20% dan F1-Score 0,72, mengungguli EL-CodeBERT yang memperoleh akurasi 65,81%. Model pre-trained tanpa fine-tuning mengalami Output Degeneracy dengan akurasi hanya 13,10%. Pada pengujian sistem legacy, model standar menunjukkan generalisasi yang baik dengan akurasi 64,29%. Performa EL-CodeBERT yang lebih rendah disebabkan oleh keterbatasan data (Data Scarcity) dan noise (bising) sintaksis dari lapisan awal yang mengaburkan fitur semantik (Feature Dilution). Kesimpulan penelitian ini menunjukkan bahwa pada dataset terbatas, model yang lebih sederhana (CodeBERT Standar) lebih kokoh sesuai prinsip Occam’s Razor.
=====================================================================================================================================
Clean Architecture (CA) is an architectural style that separates business logic from technical details to enhance software maintainability. However, modernizing legacy software into CA through manual migration requires significant time and effort. This research aims to build an automated model to classify 10 architectural component roles (e.g., Entity, Repository, Controller, etc.) using the CodeBERT code representation learning model. The experiment compares two scenarios: the Standard CodeBERT model and EL-CodeBERT, which employs a Weighted Aggregated Embedding (WAE) mechanism to access information from all 12 transformer layers. The dataset consists of 1,525 Java code samples from 19 open-source projects. The results show that the Standard CodeBERT model achieved optimal performance with 72.20% accuracy and a 0.72 F1-Score, outperforming EL-CodeBERT, which obtained 65.81% accuracy. Pre-trained models without fine-tuning suffered from Output Degeneracy, with only 13.10% accuracy. In legacy system testing, the standard model demonstrated good generalization with 64.29% accuracy. The lower performance of EL-CodeBERT was attributed to Data Scarcity and syntactic noise from early layers that obscured semantic features (Feature Dilution). This study concludes that on limited datasets, simpler models (Standard CodeBERT) are more robust, consistent with the Occam’s Razor principle.
| Item Type: | Thesis (Other) |
|---|---|
| Uncontrolled Keywords: | Clean Architecture, Machine Learning, CodeBERT, Java, Role Classification, Klasifikasi Peran |
| Subjects: | T Technology > T Technology (General) > T57.5 Data Processing T Technology > T Technology (General) > T57.8 Nonlinear programming. Support vector machine. Wavelets. Hidden Markov models. T Technology > T Technology (General) > T58.5 Information technology. IT--Auditing T Technology > T Technology (General) > T58.8 Productivity. Efficiency |
| Divisions: | Faculty of Intelligent Electrical and Informatics Technology (ELECTICS) > Informatics Engineering > 55201-(S1) Undergraduate Thesis |
| Depositing User: | Muhammad Budhi Salmanjannah |
| Date Deposited: | 01 Aug 2026 03:30 |
| Last Modified: | 01 Aug 2026 03:30 |
| URI: | http://repository.its.ac.id/id/eprint/140657 |
Actions (login required)
![]() |
View Item |
