Pemeliharaan perangkat lunak merupakan fase paling mahal dan panjang dalam siklus hidup perangkat lunak. Namun ironisnya, bidang ini masih belum tersentuh secara maksimal oleh perkembangan teknologi terkini seperti machine learning (ML). Sebuah studi pemetaan sistematis terbaru yang mengeksplorasi hubungan antara software maintenance dan machine learning menyajikan fakta menarik sekaligus mengejutkan: potensi ML sangat besar, tetapi belum dimanfaatkan secara optimal.
Studi ini menganalisis 81 publikasi yang relevan dari hampir 4000 artikel yang disaring, dan menemukan bahwa sebagian besar penelitian ML dalam konteks pemeliharaan perangkat lunak hanya berfokus pada masalah teknis dan cenderung mengabaikan aspek manajerial atau strategis. Ini menunjukkan bahwa dunia akademik masih terjebak dalam lingkup sempit, sementara dunia industri menanti solusi nyata yang bisa langsung digunakan.
Potensi Machine Learning dalam Maintenance
Machine learning memiliki banyak peluang aplikasi dalam pemeliharaan perangkat lunak. Misalnya, ML dapat digunakan untuk:
Memprediksi bug sebelum muncul.
Mengidentifikasi code smell untuk refactoring otomatis.
Menganalisis pola commit untuk memahami dampak perubahan kode.
Mengklasifikasikan jenis kesalahan berdasarkan histori proyek.
Namun, dari sekian banyak potensi itu, sebagian besar penelitian yang ada masih berfokus pada pendekatan supervised learning tradisional, seperti penggunaan Artificial Neural Network (ANN), Support Vector Machine (SVM), atau Naive Bayes. Padahal, metode lain seperti unsupervised learning, reinforcement learning, atau transfer learning bisa membuka pintu bagi solusi yang lebih adaptif dan fleksibel.
Mengapa Perkembangan Ini Lambat?