Abstract
System requirement specification (SRS) documents specify the client’s requirements and specifications in the software systems. Requirement engineering is a mandatory phase of the Software Development Life Cycle (SDLC) that includes defining, documenting, and maintaining system requirements. As the complexity increases it becomes difficult to categorize and prioritize the various Software Requirements (SR). Different natural language processing methods such as tokenization, lemmatization is used in the text pre-processing phase followed by Term frequency-inverse document frequency (TF-IDF). The aim of this research is to compare existing Machine Learning algorithms to evaluate which algorithm is able to efficiently classify the system requirements. The algorithms are assessed on two parameters precision and accuracy. The results obtained showed Decision Tree (DT) could identify all types of requirements except portability. But the accuracy of Support Vector Machine (SVM) is highest with 78.57% for the publicly available dataset than that of DT which has an accuracy of 61.42%
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Talele PV, Phalnikar R (2021) Software requirements classification and prioritisation using machine learning. In: Joshi A, Khosravy M, Gupta N (eds) Machine learning for predictive analysis. Lecture notes in networks and systems, vol 141. Springer, Singapore. https://doi.org/10.1007/978-981-15-7106-0_26
Alrumaih H, Mirza A, Alsalamah H (2018) Toward automated software requirements classification. In: 2018 21st Saudi computer society national computer conference (NCC), pp 1–6. https://doi.org/10.1109/NCG.2018.8593012
https://www.cio.com/article/255253/developer-fixing-the-software-requirements-mess.html
https://simpleisbetterthancomplex.com/media/2016/10/chaos-report.pdf
Binkhonain M, Zhao L (2019) A review of machine learning algorithms for identification and classification of non-functional requirements. Exp Syst Appl X 1:100001. ISSN25901885. https://doi.org/10.1016/j.eswax.2019.100001
Khan A, Baharudin B, Lee LH, Khan K (2010) A review of machine learning algorithms for text-documents classification. J Adv Inform Technol 1(1):4–20. https://doi.org/10.4304/jait.1.1.4-20
Talele P, Phalnikar R (2021) Classification and prioritisation of software requirements using machine learning—a systematic review. In: 2021 11th international conference on cloud computing, data science & engineering (confluence), pp 912–918. https://doi.org/10.1109/Confluence51648.2021.9377190
Jindal R, Malhotra R, Jain A (2016) Automated classification of security requirements. Presented at the international conference on advances in computing, communications and informatics (ICACCI), pp 2027–2033
Haque MA, Abdur Rahman M, Siddik MS (2019) Non-functional requirements classification with feature extraction and machine learning: an empirical study. In: 2019 1st international conference on advances in science, engineering and robotics technology (ICASERT), pp 1–5. https://doi.org/10.1109/ICASERT.2019.8934499
Dias Canedo E, Cordeiro Mendes B (2020) Software requirements classification using machine learning algorithms. Entropy 22(9):1057. https://doi.org/10.3390/e22091057
Slankas J, Williams L (2013) Automated extraction of non-functional requirements in available documentation. In: 2013 1st international workshop on natural language analysis in software engineering (NaturaLiSE). IEEE, pp 9–16
KurtanovÃc Z, Maalej W (2017) Automatically classifying functional and non-functional requirements using supervised machine learning. In: 2017 IEEE 25th international requirements engineering conference (RE). IEEE, pp 490–495
Althanoon AAA, Younis YS (2021) Supporting classification of software requirements system using intelligent technologies algorithms. Technium 3(11):32–39
Taj S, Arain Q, Memon I, Zubedi A (2019) To apply data mining for classification of crowd sourced software requirements. In: Proceedings of the 2019 8th international conference on software and information engineering (ICSIE '19). Association for Computing Machinery, New York, NY, USA, pp 42–46. https://doi.org/10.1145/3328833.3328837
Quba GY, Al Qaisi H, Althunibat A, AlZu’bi S (2021) Software requirements classification using machine learning algorithm’s. In: 2021 international conference on information technology (ICIT), pp 685–690. https://doi.org/10.1109/ICIT52682.2021.9491688
https://www.kaggle.com/datasets/iamsouvik/softwarerequirementsdataset
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Singapore Pte Ltd.
About this paper
Cite this paper
Apte, S., Honrao, Y., Shinde, R., Talele, P., Phalnikar, R. (2023). Automatic Extraction of Software Requirements Using Machine Learning. In: Choudrie, J., Mahalle, P.N., Perumal, T., Joshi, A. (eds) ICT with Intelligent Applications. ICTIS 2023. Lecture Notes in Networks and Systems, vol 719. Springer, Singapore. https://doi.org/10.1007/978-981-99-3758-5_33
Download citation
DOI: https://doi.org/10.1007/978-981-99-3758-5_33
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-99-3757-8
Online ISBN: 978-981-99-3758-5
eBook Packages: Intelligent Technologies and RoboticsIntelligent Technologies and Robotics (R0)