<p>Documents outlining software requirements are among the most critical and frequently utilized components of software engineering. Identifying ambiguities and determining both functional and non-functional requirements within these documents is a challenging and time-consuming task for humans. Previous studies have proposed automatic software requirement classification using deep learning (DL) approaches in conjunction with text embedding techniques. However, the selection of the optimal combination of these approaches still warrants investigation, particularly in the context of non-functional requirement classification problem. In this paper, we investigated how various combinations of embedding techniques and deep learning models impact the classification performance. Having held several experiments, we reported the best approach for the task. We used three datasets namely. PROMISE_exp, FNFC for classifying functional and non-functional requirements, and Fault-prone SRS for classifying ambiguities. Initially, we pre-processed the texts and then extracted the embeddings through TF-IDF, Word2Vec, GloVe, and BERT techniques. Then, most popular DL algorithms are employed to classify the requirements. This work performs a deep empirical study on the DL and embedding approaches and find out the best combination of the approaches in the field of software requirements classification. In contrary to what may be expected, we have found that considering accuracy as the performance measure, the Glove model combined with Bidirectional Long Short-Term Memory (BiLSTM) outperforms any combinations. This better performance of the aforementioned approach in comparison with transformer-based models such as BERT may be due to the lower complexity and number of parameter and therefore unnecessity of parameter fine-tuning.</p>

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Enhancing software requirements classification: a comparative study of deep learning model integration with embedding techniques

  • Mahdi Kabootari,
  • Younes Abdeahad,
  • Yalda Kheirkhah,
  • Esmaeil Kheirkhah

摘要

Documents outlining software requirements are among the most critical and frequently utilized components of software engineering. Identifying ambiguities and determining both functional and non-functional requirements within these documents is a challenging and time-consuming task for humans. Previous studies have proposed automatic software requirement classification using deep learning (DL) approaches in conjunction with text embedding techniques. However, the selection of the optimal combination of these approaches still warrants investigation, particularly in the context of non-functional requirement classification problem. In this paper, we investigated how various combinations of embedding techniques and deep learning models impact the classification performance. Having held several experiments, we reported the best approach for the task. We used three datasets namely. PROMISE_exp, FNFC for classifying functional and non-functional requirements, and Fault-prone SRS for classifying ambiguities. Initially, we pre-processed the texts and then extracted the embeddings through TF-IDF, Word2Vec, GloVe, and BERT techniques. Then, most popular DL algorithms are employed to classify the requirements. This work performs a deep empirical study on the DL and embedding approaches and find out the best combination of the approaches in the field of software requirements classification. In contrary to what may be expected, we have found that considering accuracy as the performance measure, the Glove model combined with Bidirectional Long Short-Term Memory (BiLSTM) outperforms any combinations. This better performance of the aforementioned approach in comparison with transformer-based models such as BERT may be due to the lower complexity and number of parameter and therefore unnecessity of parameter fine-tuning.