Analysis of Natural Language Processing Techniques and Tools for Requirements Elicitation: A Systematic Literature Review
María José Torres-Igartua, Ángel J. Sánchez-García, Jorge Octavio Ocharán-Hernández, Sodel Vázquez-Reyest · 2024
Requirements Engineering (RE) encompasses ac-tivities such as requirements elicitation, analysis, specification, and validation, which are essential in software development for defining and aligning stakeholder needs and expectations. However, these processes are often laborious and prone to errors and misunderstandings, resulting in systems that fail to meet expectations and require costly revisions. This study specifically focuses on requirements elicitation, as accurate and comprehensive gathering of requirements is vital for the success of subsequent activities. The aim is to explore how Natural Language Processing (NLP) techniques and tools can enhance requirements elicitation, emphasizing their adapt-ability to diverse linguistic contexts. A Systematic Literature Review (SLR) identified the most commonly used Artificial Intelligence (AI) techniques in NLP, such as Support Vector Machine (SVM), Random Forest (RF), and Transformer-based approaches like Bidirectional Encoder Representations from Transformers (BERT). The Natural Language Toolkit (NLTK) is recognized as a prominent tool in the broader NLP domain, while the ELICitation Aid (ELICA) tool stands out for its application in requirement elicitation. Despite the advantages offered by these approaches, it is crucial to acknowledge and address their limitations. Further research is recommended to enhance their effectiveness, particularly in adapting to languages other than English.