Studi Dampak Refactoring terhadap Kompleksitas Kode Moodle
DOI:
https://doi.org/10.55382/jurnalpustakadata.v6i3.1959Kata Kunci:
Refactoring, Kompleksitas Kode, PDepend, CNN, WMCAbstrak
Sistem manajemen pembelajaran berskala besar seperti Moodle memiliki struktur kode yang sangat kompleks. Refactoring merupakan teknik yang digunakan secara luas untuk memperbaiki struktur internal kode tanpa mengubah perilaku eksternalnya guna mengatasi masalah kompleksitas tersebut. Penelitian ini bertujuan untuk menganalisis dampak kuantitatif dari penerapan teknik Extract Method dan Pull Up Method terhadap kompleksitas kode di dalam modul assignment Moodle versi 5.1.2. Metodologi penelitian melibatkan analisis statis menggunakan alat PDepend untuk mengukur Weighted Methods per Class (WMC) dan Lines of Code (LOC) pada tingkat kelas, serta Cyclomatic Complexity Number (CCN) pada tingkat metode terhadap lima kelas event target. Hasil penelitian menunjukkan bahwa teknik Pull Up Method berhasil menurunkan nilai WMC dan LOC pada kelas feedback_viewed dan grading_form_viewed, sekaligus mengurangi nilai CCN pada metode validasinya sebesar 33% (dari 3 menjadi 2). Sebaliknya, teknik Extract Method yang diterapkan pada kelas assessable_submitted menurunkan nilai CCN metode utamanya sebesar 66% (dari 3 menjadi 1). Meskipun memperkenalkan overhead struktural yang meningkatkan LOC tingkat kelas hingga 14% dan menaikkan WMC akibat deklarasi metode pembantu baru, alur logika program menjadi jauh lebih linear. Sementara itu, kelas base menyentralisasikan kompleksitas validasi bersama, sehingga meningkatkan nilai WMC kelas tersebut dari 10 menjadi 12. Penelitian ini menyimpulkan bahwa walaupun refactoring memperkenalkan overhead struktural, teknik ini sukses memitigasi kompleksitas logis pada tingkat metode, sehingga meningkatkan modularitas kode dan keterpeliharaan jangka panjang.
Unduhan
Referensi
Hakim, A. F. N., & Prismana, I. G. L. P. E. (2023). Refactoring Arsitektur Microservice Pada Aplikasi Absensi PT. Graha Usaha Teknik. Jurnal Informatika Dan Sistem Informasi (JIFOSI), 4(1), 38-45.
Mardiana, B. D., & Rochimah, S. (2024). Large Class Refactoring in PHP Program to Improve Modularity Based on ISO/IEC 25023 Metrics. 2024 IEEE 10th Information Technology International Seminar (ITIS), 1-6. https://doi.org/10.1109/ITIS63013.2024.10845243.
Aldya, A. P., & Hartono, H. L. G. S. (2022). Peningkatan Kualitas Maintainability Sistem PPID DINKES Cimahi Menggunakan Metode Refactoring. Jurnal Tekno Kompak, 16(1), 121-133. https://doi.org/10.33365/jtk.v16i1.1548.
Panjaitan, L. A. S., Aldya, A. P., & Hartono, H. L. G. S. (2022). Optimalisasi Kualitas Integrity Pada Sistem Dinas Kesehatan Kota Cimahi Menggunakan Teknik Refactoring. Jurnal Ilmiah Teknologi Informasi Terapan (JITTER), 8(2), 241-247. https://doi.org/10.33197/jitter.vol8.iss2.2022.810.
Setiawan, H., & Emanuel, A. W. R. (2021). Pengaruh Refactoring Extract Method terhadap Pengembangan Aplikasi menggunakan Test Driven Development. Jurnal RESTI (Rekayasa Sistem Dan Teknologi Informasi), 5(5), 903 - 910. https://doi.org/10.29207/resti.v5i5.3400.
Sitinjak, D. A. N., & Suwita, J. (2021). Metode Refactoring Untuk Meningkatkan Kualitas Maintainability Pada Sistem Informasi Puskesmas. Jurnal Informatika Terpadu (JIT), 7(1), 1 - 8. https://doi.org/10.54914/jit.v7i1.303.
Sudrajat, S., & Kurniawan, D. (2021). Pengembangan Sistem Informasi P3M Terintegrasi Melalui Refactoring dan Penambahan Fitur dengan Metode R&D. Informatic: Jurnal Ilmu Komputer, 17(2), 108-118. https://doi.org/10.52958/iftk.v17i2.2355.
Singh, R. S. K., & Kaswidjanti, W. (2020). Optimalisasi Perangkat Lunak Menggunakan Metode Refactoring. Jurnal Informatika, 14(1), 18-27. https://doi.org/10.31315/inf.v14i1.3468.
Sadiyah, S. H., & Qoiriah, A. (2024). Pengaruh Refactoring Terhadap Tingkat Pemeliharaan Perangkat Lunak Pada Aplikasi Permainan “Infection Defender”. JINACS: Journal of Informatics and Computer Science, 5(03), 400-413. https://doi.org/10.26740/jinacs.v5n03.p400-413.
Ghifari, R. B. M., Fitri, S., Ardhyandoko, A., & Yaqin, M. A. (2024). Analisis dan Perancangan Software Pengukuran Matriks Skala dan Kompleksitas Kode Program. JACIS: Journal Automation Computer Information System, 4(1), 42–49. https://doi.org/10.47134/jacis.v4i1.72
Khaleel, S. I., & Al-Khatouni, G. K. (2023). Measuring Maintainability Index Before and After Code Refactoring. MINAR International Journal of Applied Sciences and Technology, 5(3), 18-36.
Washizaki, H. (Ed.). (2025). Guide to the Software Engineering Body of Knowledge (SWEBOK Guide), Version 4.0. IEEE Computer Society.
Almogahed, A., Othman, M., Omar, M., Barraood, S. O., & Gilal, A. R. (2025). Improving Code Effectiveness Through Refactoring: A Case Study. Journal of Informatics and Web Engineering (JIWE), 4(3), 426–440. https://doi.org/10.33093/jiwe.2025.4.3.26.
Cordeiro, J., Noei, S., & Zou, Y. (2024). An Empirical Study on the Code Refactoring Capability of Large Language Models. https://doi.org/10.48550/arXiv.2411.02320
Lestari, W. F., Chrisnanto, Y. H., & Yuniarti, R. (2024). Teknik Refactoring untuk Kualitas Usability Sistem Informasi SPP dan Tunggakan SDIT Nuralima. Reslaj: Religion Education Social Laa Roiba Journal, 6(8), 4066–4078. https://doi.org/10.47476/reslaj.v6i8.3388.
##submission.downloads##
Diterbitkan
Cara Mengutip
Terbitan
Bagian
Lisensi
Hak Cipta (c) 2026 Muhammad Haikal Fikri, Ahmad Daffa Febrian, Muhammad Ainul Yaqin

Artikel ini berlisensi Creative Commons Attribution 4.0 International License.






