Pemanfaatan Pembelajaran Mesin untuk Klasifikasi Kebutuhan Perangkat Lunak - Setiawan, Wahyu Fajar; Ariatama, Ilham Putra; Yuhana, Umi Laili; Alfian, Muhammad (Fakultas Ilmu Komputer, Universitas Brawijaya, 2026)
Klasifikasi kebutuhan perangkat lunak merupakan salah satu langkah terpenting dalam rekayasa perangkat lunak. Klasifikasi ini membantu pengembang untuk mengategorikan kebutuhan fungsional atau functional requirement (FR) dan kebutuhan non-fungsional atau non-functional requirement (NFR). Klasifikasi ini sangat penting untuk memastikan bahwa setiap aspek kebutuhan perangkat lunak terpenuhi dengan efisien sehingga perangkat lunak yang dikembangkan akhirnya dapat memenuhi harapan penggunanya. Namun, klasifikasi manual memerlukan waktu lama dan rentan terhadap kesalahan manusia, terutama pada proyek skala besar. Sehingga pada penelitian ini kami bertujuan mengotomatisasi proses klasifikasi kebutuhan perangkat lunak menggunakan beberapa algoritma pembelajaran mesin seperti Logistic regression, SVM, Multinomial Naive Bayes, KNN, Random Forest, dan Decision Tree dengan ekstraksi fitur seperti TF-IDF, BoW, dan BERT menggunakan dataset PROMISE_exp yang berisi 969 kebutuhan perangkat lunak (444 FR dan 525 NFR), untuk mengetahui kombinasi terbaik antara metode ekstraksi fitur dengan algoritma klasifikasi. Hasil eksperimen menunjukkan bahwa Logistic regression dengan fitur TF-IDF menghasilkan akurasi tertinggi sebesar 97% di antara semua pendekatan. Model ini juga cukup seimbang dalam hal precision, recall, dan F1-Score. Model tersebut terbukti menjadi pilihan yang sangat andal untuk mengklasifikasikan kebutuhan perangkat lunak. Decision Tree yang dikombinasikan dengan BERT ternyata memiliki kinerja yang lebih buruk, yang menyatakan bahwa model ini kurang mampu menangani fitur-fitur yang kompleks dari BERT. Kontribusi utama penelitian ini adalah pembuktian empiris bahwa model klasifikasi sederhana (Logistic Regression + TF-IDF) dapat mengungguli pendekatan kompleks berbasis transformer (BERT) untuk tugas klasifikasi kebutuhan perangkat lunak, memberikan panduan praktis bagi pengembang dalam memilih pendekatan otomatisasi yang efektif dan efisien. Abstract Software requirement classification is one of the most important steps in software engineering. This classification helps developers categorise functional requirements (FR) and non-functional requirements (NFR). This classification is very important to ensure that every aspect of software requirements is met efficiently so that the developed software can ultimately meet user expectations. However, manual classification is time-consuming and prone to human error, especially in large-scale projects. Therefore, in this study, we aim to automate the software requirement classification process using several machine learning algorithms such as Logistic regression, SVM, Multinomial Naive Bayes, KNN, Random Forest, and Decision Tree with feature extraction such as TF-IDF, BoW, and BERT using the PROMISE_exp dataset containing 969 software requirements (444 FR and 525 NFR), to determine the best combination of feature extraction methods with classification algorithms. The experimental results show that Logistic regression with TF-IDF features produces the highest accuracy of 97% among all approaches. This model is also quite balanced in terms of precision, recall, and F1-Score. The model proved to be a very reliable choice for classifying software requirements. Decision Tree combined with BERT turned out to have poorer performance, indicating that this model is less capable of handling the complex features of BERT. The main contribution of this research is the empirical proof that a simple classification model (Logistic Regression + TF-IDF) can outperform complex transformer-based approaches (BERT) for software requirement classification tasks, providing practical guidance for developers in choosing effective and efficient automation approaches.