Classification and Comprehension of Software Requirements Using Ensemble Learning
Source abstract
Abstract
The software development process mostly depends on accurately identifying both essential and optional features. Initially, user needs are typically expressed in free-form language, requiring significant time and human resources to translate these into clear functional and non-functional requirements. To address this challenge, various machine learning (ML) methods have been explored to automate the understanding of these requirements, aiming to reduce time and human effort. However, existing techniques often struggle with complex instructions and large-scale projects. In our study, we introduce an innovative approach known as the Functional and Non-functional Requirements Classifier (FNRC). By combining the traditional random forest algorithm with the Accuracy Sliding Window (ASW) technique, we develop optimal sub-ensembles that surpass the initial classifier’s accuracy while using fewer trees. Experimental results demonstrate that our FNRC methodology performs robustly across different datasets, achieving a balanced Precision of 75% on the PROMISE dataset and an impressive Recall of 85% on the CCHIT dataset. Both datasets consistently maintain an F-measure around 64%, highlighting FNRC’s ability to effectively balance precision and recall in diverse scenarios. These findings contribute to more accurate and efficient software development processes, increasing the probability of achieving successful project outcomes.
Source: openalex_inverted_index · Quality: baseline
Research context
OpenAlex topics: Software Engineering Research
SciVX discovery tags are terminology-based. OpenAlex topics are source-provided classifications.
References (45)
Show source-provided references
1. Quintessence of traditional and agile requirement engineering10.4236/jsea.2016.93005 ↗
2. Classification of non-functional requirements from IoT oriented healthcare requirement document10.3389/fpubh.2022.860536 ↗
3. A conceptual model to address the communication and coordination challenges during requirements change management in global software development
4. Software functional and non-functional requirement classification using word-embedding
5. Mining non-functional requirements using machine learning techniques10.37190/e-Inf210105 ↗
6. Semi-automated classification of Arabic user requirements into functional and non-functional requirements using NLP tools
7. Smola · Introduction to Machine Learning · 2008 · 32
8. Framework for prediction and classification of non-functional requirements: A novel vision10.1007/s10586-021-03484-0 ↗
9. A non-exclusive multi-class convolutional neural network for the classification of functional requirements in AUTOSAR software requirement specification text10.1109/ACCESS.2022.3217752 ↗
10. An ensemble machine learning technique for functional requirement classification10.3390/sym12101601 ↗
11. Synthesizing secure software development activities for linear and agile lifecycle models10.1002/spe.3072 ↗
12. A review of machine learning algorithms for identification and classification of non-functional requirements
13. Identifying functional and non-functional software requirements from user app reviews
14. Can app changelogs improve requirements classification from app reviews? An exploratory study
15. A comparative study on vectorization methods for non-functional requirements classification10.1016/j.infsof.2022.106991 ↗
16. The detection and classification of non-functional requirements with application to early aspects
17. A classification approach for software requirements towards maintainable security
18. An NLP-based quality attributes extraction and prioritization framework in Agile-driven software development10.1007/s10515-022-00371-9 ↗
19. Detecting, classifying, and tracing non-functional software requirements10.1007/s00766-016-0252-8 ↗
20. MMU-OCR-21: Towards end-to-end Urdu text recognition using deep learning10.1109/ACCESS.2021.3110787 ↗
21. Automatic classification of non-functional requirements from augmented app user reviews
22. Automatic classification of non-functional requirements in app user reviews based on system model
23. Non-functional requirements classification with feature extraction and machine learning: An empirical study
24. Software requirements classification using machine learning algorithms10.3390/e22091057 ↗
25. Classifying non-functional requirements using RNN variants for quality software development
26. Comparative study of the performance of various classifiers in labeling non-functional requirements10.5755/j01.itc.48.3.21973 ↗
27. Requirement prioritization based on non-functional requirement classification using hierarchy AHP10.1088/1757-899X/769/1/012060 ↗
28. Using recurrent neural networks for classification of natural language-based non-functional requirements
29. Mining non-functional requirements from app store reviews10.1007/s10664-019-09716-7 ↗
30. Extraction of non-functional requirement using semantic similarity distance10.1007/s00521-019-04226-5 ↗
31. An inclusive study of several machine learning based non-functional requirements prediction techniques
32. Detecting intra-conflicts in non-functional requirements10.1142/S0218488521500197 ↗
33. Non-functional requirements classification using artificial neural networks
34. An ontological approach to specify conflicts among non-functional requirements
35. Towards the formalization of non-functional requirements in conceptual design10.1007/s00163-020-00345-6 ↗
36. A novel intelligent model for classifying and evaluating non-functional security requirements from scenarios
37. A comparative study on requirements analysis techniques using natural language processing and machine learning
38. Software requirements classification using machine learning algorithm’s
39. Non-functional requirements for machine learning: Challenges and new directions
40. An empirical comparison of machine learning algorithms for classification of software requirements
41. Retrieval of interactive requirements for data intensive applications using random forest classifier
42. When do random forests fail?
43. SE requirements classification
44. US Certification Authority for Electronic Health Records (EHR) and Networks, Certification Commission for Health Information Technology (CCHIT). Accessed: Jun. 05, 2024. [Online]. Available: http://www.cchit.org
45. Random Forest Algorithm, “Machine learning random forest algorithm,” Accessed: Jun. 05, 2024. [Online]. Available: https://www.javatpoint.com/machine-learning-random-forest-algorithm10.58496/BJML/2024/007 ↗