Investigating deep learning approach for automated software requirement classification
Main Article Content
Abstract
Requirement engineering has a critical role in software development. Various techniques have been invented to improve requirements quality. Recently, natural language processing (NLP) has drawn attention to the software engineering community, due to its capacity for automated requirements elicitation which accelerates software development. However, NLP through machine learning approaches has been discovered to be ineffective, caused by the variability in natural language, unbalanced dataset, heavy preprocessing tasks, and issues in hyperparameter tuning. A deep learning approach on the other hand has been found to handle enormous dataset without sophisticated preprocessing task and to improve classification quality for unstructured data such as images and text. This paper investigates how automated software requirements classification can be improved and how well deep learning approaches work. We aim to contribute an approach to minimize preprocessing requirements to improve classification accuracy from OpenScience tera-PROMISE repository. We also compare our approach with several techniques that have been previously tested. We find that our technique may improve the performance of an existing classification method. Finally, we present significant differences in the performance of approaches, such as for the sub-classification of nonfunctional requirements.
Downloads
Article Details
Al-Saqqa, S., Sawalha, S., & AbdelNabi, H. (2020). Agile software development: Methodologies and trends. International Journal of Interactive Mobile Technologies, 14(11).
Alzubaidi, L., Zhang, J., Humaidi, A. J., Al-Dujaili, A., Duan, Y., Al-Shamma, O., ... & Farhan, L. (2021). Review of deep learning: Concepts, CNN architectures, challenges, applications, future directions. Journal of big Data, 8, 1-74.
Amershi, S., Begel, A., Bird, C., DeLine, R., Gall, H., Kamar, E., ... & Zimmermann, T. (2019, May). Software engineering for machine learning: A case study. In 2019 IEEE/ACM 41st International Conference on Software Engineering: Software Engineering in Practice (ICSE-SEIP) (pp. 291-300). IEEE.
Armouty, B., & Tedmori, S. (2019, April). Automated keyword extraction using support vector machine from Arabic news documents. In 2019 IEEE Jordan International Joint Conference on Electrical Engineering and Information Technology (JEEIT) (pp. 342-346). IEEE.
Braz, R. D. S., Merlin, J. R., Freitas Guilhermino Trindade, D., Eduardo Ribeiro, C., Sgarbi, E. M., & Junior, F. D. S. (2019). Design thinking and scrum in software requirements elicitation: A case study. In Design, User Experience, and Usability. Design Philosophy and Theory: 8th International Conference, DUXU 2019, Held as Part of the 21st HCI International Conference, HCII 2019, Orlando, FL, USA, July 26–31, 2019, Proceedings, Part I 21 (pp. 179-194). Springer International Publishing.
Chatterjee, R., Ahmed, A., Anish, P. R., Suman, B., Lawhatre, P., & Ghaisas, S. (2021, September). A Pipeline for Automating Labeling to Prediction in Classification of NFRs. In 2021 IEEE 29th International Requirements Engineering Conference (RE) (pp. 323-323). IEEE.
Day, L. B., Miles, A., Ginsburg, S., & Melvin, L. (2020). Resident perceptions of assessment and feedback in competency-based medical education: a focus group study of one internal medicine residency program. Academic Medicine, 95(11), 1712-1717.
Dwitama, F., & Rusli, A. (2020). User stories collection via interactive chatbot to support requirements gathering. TELKOMNIKA (Telecommunication Computing Electronics and Control), 18(2), 890-898.
Fatima, R., Yasin, A., Liu, L., Wang, J., Afzal, W., & Yasin, A. (2019). Improving software requirements reasoning by novices: a story?based approach. IET Software, 13(6), 564-574.
Ghalyan, I. F. J. (2020). Estimation of ergodicity limits of bag-of-words modeling for guaranteed stochastic convergence. Pattern Recognition, 99, 107094.
Giray, G. (2021). A software engineering perspective on engineering machine learning systems: State of the art and challenges. Journal of Systems and Software, 180, 111031.
Hadj-Mabrouk, H. (2020). Application of Case-Based Reasoning to the safety assessment of critical software used in rail transport. Safety science, 131, 104928.
Jang, B., Kim, I., & Kim, J. W. (2019). Word2vec convolutional neural networks for classification of news articles and tweets. PloS one, 14(8), e0220976.
Kasauli, R., Knauss, E., Horkoff, J., Liebel, G., & de Oliveira Neto, F. G. (2021). Requirements engineering challenges and practices in large-scale agile system development. Journal of Systems and Software, 172, 110851.
Khraisat, A., & Alazab, A. (2021). A critical review of intrusion detection systems in the internet of things: techniques, deployment strategy, validation strategy, attacks, public datasets and challenges. Cybersecurity, 4, 1-27.
Kipper, L. M., Iepsen, S., Dal Forno, A. J., Frozza, R., Furstenau, L., Agnes, J., & Cossul, D. (2021). Scientific mapping to identify competencies required by industry 4.0. Technology in Society, 64, 101454.
Laplante, P. A., & Kassab, M. (2022). Requirements engineering for software and systems. Auerbach Publications.
Liu, X., Zhou, G., Kong, M., Yin, Z., Li, X., Yin, L., & Zheng, W. (2023). Developing multi-labelled corpus of twitter short texts: a semi-automatic method. Systems, 11(8), 390.
Lwakatare, L. E., Kilamo, T., Karvonen, T., Sauvola, T., Heikkilä, V., Itkonen, J., ... & Lassenius, C. (2019). DevOps in practice: A multiple case study of five companies. Information and Software Technology, 114, 217-230.
Martinez, B., Reaser, J. K., Dehgan, A., Zamft, B., Baisch, D., McCormick, C., ... & Selbe, S. (2020). Technology innovation: advancing capacities for the early detection of and rapid response to invasive species. Biological Invasions, 22(1), 75-100.
Melegati, J., Goldman, A., Kon, F., & Wang, X. (2019). A model of requirements engineering in software startups. Information and software technology, 109, 92-107.
Mohapatra, H., & Rath, A. K. (2020). Fundamentals of software engineering: designed to provide an insight into the software engineering concepts. BPB Publications.
Narkhede, M. V., Bartakke, P. P., & Sutaone, M. S. (2022). A review on weight initialization strategies for neural networks. Artificial intelligence review, 55(1), 291-322.
Pinto, R., Silva, L., & Valentim, R. (2020, March). Managing sessions of creative requirements elicitation and assessment. In Proceedings of the 35th Annual ACM Symposium on Applied Computing (pp. 1355-1362).
Rachman, F. H. (2020, October). Twitter sentiment analysis of Covid-19 using term weighting TF-IDF and logistic regresion. In 2020 6th Information Technology International Seminar (ITIS) (pp. 238-242). IEEE.
Rahat, A. M., Kahir, A., & Masum, A. K. M. (2019, November). Comparison of Naive Bayes and SVM Algorithm based on sentiment analysis using review dataset. In 2019 8th International Conference System Modeling and Advancement in Research Trends (SMART) (pp. 266-270). IEEE.
Seroka?Stolka, O., & Fijorek, K. (2020). Enhancing corporate sustainable development: Proactive environmental strategy, stakeholder pressure and the moderating effect of firm size. Business Strategy and the Environment, 29(6), 2338-2354.
Shastri, Y., Hoda, R., & Amor, R. (2021). The role of the project manager in agile software development projects. Journal of Systems and Software, 173, 110871.
Stoudt, S., Vásquez, V. N., & Martinez, C. C. (2021). Principles for data analysis workflows. PLOS Computational Biology, 17(3), e1008770.
Sueno, H. T., Gerardo, B. D., & Medina, R. P. (2020). Multi-class document classification using support vector machine (SVM) based on improved Naïve bayes vectorization technique. International Journal of Advanced Trends in Computer Science and Engineering, 9(3).
Tam, C., da Costa Moura, E. J., Oliveira, T., & Varajão, J. (2020). The factors influencing the success of on-going agile software development projects. International Journal of Project Management, 38(3), 165-176.
Vogelsang, A., & Borg, M. (2019, September). Requirements engineering for machine learning: Perspectives from data scientists. In 2019 IEEE 27th International Requirements Engineering Conference Workshops (REW) (pp. 245-251). IEEE.
Wang, G., Teoh, J. Y. C., Lu, J., & Choi, K. S. (2020). Least squares support vector machines with fast leave-one-out AUC optimization on imbalanced prostate cancer data. International Journal of Machine Learning and Cybernetics, 11(8), 1909-1922.
Watson, C., Cooper, N., Palacio, D. N., Moran, K., & Poshyvanyk, D. (2022). A systematic literature review on the use of deep learning in software engineering research. ACM Transactions on Software Engineering and Methodology (TOSEM), 31(2), 1-58.
Welikala, R. A., Remagnino, P., Lim, J. H., Chan, C. S., Rajendran, S., Kallarakkal, T. G., ... & Barman, S. A. (2020). Automated detection and classification of oral lesions using deep learning for early detection of oral cancer. IEEE Access, 8, 132677-132693.
Yathiraju, N. (2022). Investigating the use of an Artificial Intelligence Model in an ERP Cloud-Based System. International Journal of Electrical, Electronics and Computers, 7(2), 1-26.
Zorzetti, M., Signoretti, I., Salerno, L., Marczak, S., & Bastos, R. (2022). Improving agile software development using user-centered design and lean startup. Information and Software Technology, 141, 106718.

This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.