Melola Discovery

← Melola Discovery

Open access Jurnal SINTA 2

Pemanfaatan Pembelajaran Mesin untuk Klasifikasi Kebutuhan Perangkat Lunak

Jurnal Teknologi Informasi dan Ilmu Komputer (JTIIK) · Vol. 13 No. 1 (2026) · pp. 11–20

DOI
10.25126/jtiik.2026131
ISSN
2528-6579, 2355-7699
Published
2026-02-26
Publisher
Fakultas Ilmu Komputer, Universitas Brawijaya
Language
id
License
creativecommons.org/licenses/by-sa/4.0

Abstract

Bahasa Indonesia

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.

English

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.

Keywords

Collaboration network of the authors

20 authors · 36 co-authorship links

Hover or tap a name to highlight its co-authors. Double-click to open the author's page.

  • Institut Teknologi Sepuluh Nopember
  • Affiliation unknown
  • Different organisations
  • Same organisation
  • Affiliation unknown
  • Thicker line = more joint articles · bigger circle = more articles
Show as table
Co-authorOrganisationJoint articles
I Gusti Lanang Agung Oka Cahyadi PradiptaAffiliation unknown1
Ahmad SaikhuInstitut Teknologi Sepuluh Nopember1
Diana PurwitasariInstitut Teknologi Sepuluh Nopember1
Daniel SiahaanInstitut Teknologi Sepuluh Nopember1
Dian SaputraAffiliation unknown1
Esti YuniarAffiliation unknown1
Joko Lianto BulialiInstitut Teknologi Sepuluh Nopember1
Dwi SunaryonoInstitut Teknologi Sepuluh Nopember1
Hazna At ThooriqohInstitut Teknologi Sepuluh Nopember1
Tiara Nur AnnisaInstitut Teknologi Sepuluh Nopember1
Eka Alifia KusnantiInstitut Teknologi Sepuluh Nopember1
Lauretha Devi Fajar VantieInstitut Teknologi Sepuluh Nopember1
Ary Mazharuddin ShiddiqiInstitut Teknologi Sepuluh Nopember1
Muhammad Faisal FananiInstitut Teknologi Sepuluh Nopember1
Amelia Devi Putri AriyantoInstitut Teknologi Sepuluh Nopember1
Lutfiyatul †̃AzizahInstitut Teknologi Sepuluh Nopember1

Affiliations come from OpenAlex; journal OAI-PMH metadata carries none. Authors without an OpenAlex ID are matched by name, which can merge or split people.

Metadata source: OAI-PMH (metadata jurnal) https://jtiik.ub.ac.id/index.php/jtiik/en/oai, first harvested 27 Okt 2026, last seen 27 Okt 2026.
Original metadata (oai_dc)
<oai_dc:dc xmlns="http://www.openarchives.org/OAI/2.0/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:oai_dc="http://www.openarchives.org/OAI/2.0/oai_dc/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/oai_dc/  http://www.openarchives.org/OAI/2.0/oai_dc.xsd">
	<dc:title xml:lang="id">Pemanfaatan Pembelajaran Mesin untuk Klasifikasi Kebutuhan Perangkat Lunak</dc:title>
	<dc:title xml:lang="en">Pemanfaatan Pembelajaran Mesin untuk Klasifikasi Kebutuhan Perangkat Lunak</dc:title>
	<dc:creator xml:lang="en">Setiawan, Wahyu Fajar</dc:creator>
	<dc:creator xml:lang="id">Setiawan, Wahyu Fajar</dc:creator>
	<dc:creator xml:lang="id">Ariatama, Ilham Putra</dc:creator>
	<dc:creator xml:lang="id">Yuhana, Umi Laili</dc:creator>
	<dc:creator xml:lang="id">Alfian, Muhammad</dc:creator>
	<dc:subject xml:lang="en">klasifikasi kebutuhan perangkat lunak</dc:subject>
	<dc:subject xml:lang="en">pembelajaran mesin</dc:subject>
	<dc:subject xml:lang="en">logistic regression</dc:subject>
	<dc:subject xml:lang="en">TF-IDF</dc:subject>
	<dc:subject xml:lang="en">BERT</dc:subject>
	<dc:description xml:lang="id">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.</dc:description>
	<dc:description xml:lang="en">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.</dc:description>
	<dc:publisher xml:lang="en">Fakultas Ilmu Komputer, Universitas Brawijaya</dc:publisher>
	<dc:date>2026-02-26</dc:date>
	<dc:type>info:eu-repo/semantics/article</dc:type>
	<dc:type>info:eu-repo/semantics/publishedVersion</dc:type>
	<dc:format>application/pdf</dc:format>
	<dc:identifier>https://jtiik.ub.ac.id/index.php/jtiik/article/view/9484</dc:identifier>
	<dc:identifier>10.25126/jtiik.2026131</dc:identifier>
	<dc:source xml:lang="id">Jurnal Teknologi Informasi dan Ilmu Komputer; Vol 13 No 1: Februari 2026; 11-20</dc:source>
	<dc:source xml:lang="en">Jurnal Teknologi Informasi dan Ilmu Komputer; Vol. 13 No. 1: Februari 2026; 11-20</dc:source>
	<dc:source>2528-6579</dc:source>
	<dc:source>2355-7699</dc:source>
	<dc:source>10.25126/jtiik.2026131</dc:source>
	<dc:language>id</dc:language>
	<dc:relation>https://jtiik.ub.ac.id/index.php/jtiik/article/view/9484/1534</dc:relation>
	<dc:rights xml:lang="en">Copyright (c) 2026 Wahyu Fajar Setiawan, Ilham Putra Ariatama, Umi Laili Yuhana, Muhammad Alfian</dc:rights>
	<dc:rights xml:lang="en">https://creativecommons.org/licenses/by-sa/4.0</dc:rights>
</oai_dc:dc>