Next Article in Journal
Adaptive Mobility-Based IoT LoRa Clustering Communication Scheme
Next Article in Special Issue
An Approach to Deepfake Video Detection Based on ACO-PSO Features and Deep Learning
Previous Article in Journal
Research on a Personalized Decision Control Algorithm for Autonomous Vehicles Based on the Reinforcement Learning from Human Feedback Strategy
Previous Article in Special Issue
Design and Evaluation of CPU-, GPU-, and FPGA-Based Deployment of a CNN for Motor Imagery Classification in Brain-Computer Interfaces
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Review

A Systematic Literature Review on Using Natural Language Processing in Software Requirements Engineering

by
Sabina-Cristiana Necula
*,
Florin Dumitriu
* and
Valerică Greavu-Șerban
*
Department of Accounting, Business Information Systems and Statistics, Faculty of Economics and Business Administration, Alexandru Ioan Cuza University of Iasi, 700506 Iași, Romania
*
Authors to whom correspondence should be addressed.
Electronics 2024, 13(11), 2055; https://doi.org/10.3390/electronics13112055
Submission received: 25 March 2024 / Revised: 28 April 2024 / Accepted: 21 May 2024 / Published: 24 May 2024

Abstract

:
This systematic literature review examines the integration of natural language processing (NLP) in software requirements engineering (SRE) from 1991 to 2023. Focusing on the enhancement of software requirement processes through technological innovation, this study spans an extensive array of scholarly articles, conference papers, and key journal and conference reports, including data from Scopus, IEEE Xplore, ACM Digital Library, and Clarivate. Our methodology employs both quantitative bibliometric tools, like keyword trend analysis and thematic mapping, and qualitative content analysis to provide a robust synthesis of current trends and future directions. Reported findings underscore the essential roles of advanced computational techniques like machine learning, deep learning, and large language models in refining and automating SRE tasks. This review highlights the progressive adoption of these technologies in response to the increasing complexity of software systems, emphasizing their significant potential to enhance the accuracy and efficiency of requirement engineering practices while also pointing to the challenges of integrating artificial intelligence (AI) and NLP into existing SRE workflows. The systematic exploration of both historical contributions and emerging trends offers new insights into the dynamic interplay between technological advances and their practical applications in SRE.

1. Introduction

Software Requirements Engineering (SRE) includes essential activities such as elicitation, specification, modeling, and validation, which are important for ensuring good final software quality. Traditionally, these activities have relied heavily on manual interpretation and analysis, often leading to ambiguity, misunderstanding, and inefficiency [1,2]. Natural language is prone to ambiguity, leading to incompleteness and inconsistencies in requirement specifications. As software systems increase in complexity, there is a corresponding need for more advanced techniques to efficiently manage requirements. Formal and constrained languages have been proposed to mitigate ambiguity, but they lack the expressiveness of natural language and are time-consuming and complex to use.
In response to these challenges, NLP and machine learning offer more efficient, albeit semi-automatic, solutions for detecting ambiguities [3,4,5,6]. The integration of NLP and AI into software engineering represents a significant paradigm shift, promising not only to automate but also to enhance the accuracy and effectiveness of these processes. NLP, an important component of AI, bridges the gap between human and machine language, enabling machines to process, analyze, and understand human language data, and to generate human-like responses [7,8]. This integration is particularly impactful in SRE, where NLP combined with AI can improve the quality of software requirements by analyzing their lexical and syntactic attributes [9], automating the mapping to formal representations [10], and refining specifications by extracting relevant domain knowledge [11].
Despite its potential, the adoption of NLP and AI in software engineering is accompanied by challenges related to the accuracy and reliability of automated systems, the complexity of processing nuanced human languages, and concerns about reducing human oversight in critical development phases [9,10,11]. Existing tools such as Visual Narrator [12], QuARS [13], QVScribe [14], Qualicen Requirements Scout [15], and IBM Engineering Requirements Quality Assistant [16] addressed these issues by enhancing the clarity and quality of requirement specifications through automated or semi-automated analysis. However, these tools often focus on specific aspects of the requirement lifecycle or are limited by the scope of their technological implementation.
This paper aims to systematically review the literature on the integration of NLP with SRE from 1991 to 2023; to understand its evolution, current trends and future directions; to identify the main research themes; and to explore other AI technologies used in conjunction with NLP in SRE activities.
Previous systematic reviews on this area have often concentrated on isolated aspects of NLP’s application in SRE or focused on specific technological implementations. For instance, Abdelnabi et al. (2021) [17] provided a comprehensive survey of methods for generating UML diagrams from natural language requirements, focusing on the automation and efficiency of these processes. Similarly, Mornie et al. (2023) [18] and Perez-Verdejo et al. (2020) [19] have systematically reviewed the application of NLP in visualizing UML models from user stories and classifying software requirements, respectively, highlighting the evolving challenges and the technologies employed [19].
Unlike earlier reviews that focused narrowly, our paper spans a broader spectrum of challenges and integrates recent AI technologies that are co-applied with NLP in SRE. Our systematic literature review aims to bridge these gaps by offering a holistic analysis of the impact of NLP on SRE, thus covering a broader spectrum of applications and integrating a detailed thematic evolution that traces the shifts in research focus, methodologies, and technology use over the past three decades. This comprehensive approach not only underscores the depth and breadth of the field’s expansion but also provides a nuanced understanding of the practical implications and theoretical advancements in SRE, thus contributing original insights into the ongoing integration of AI technologies in this domain.
Through our hybrid research methodology—combining quantitative bibliometric techniques like keyword trend analysis, thematic evolution, and co-citation analysis with a qualitative content analysis of impactful articles—we aim to enhance the validity of our findings. We also include case studies and practical examples throughout this review to illustrate the real-world application and impact of NLP and AI technologies in enhancing software requirements engineering practices.
The remainder of the article is organized as follows: Section 2 explains the research methodology, Section 3 briefly presents our results, Section 4 discusses these results, and Section 5 concludes the paper with our contributions.

2. Materials and Methods

Our systematic literature review (SLR) aims to methodically identify, assess, and synthesize relevant studies in the fields of NLP and AI as applied to SRE. The research was guided by the following questions:
RQ1: How has SRE evolved in the context of NLP and AI technologies?
RQ2: What are the key themes of applying NLP in SRE?
RQ3: What other AI technologies have been used in conjunction with NLP in the field of SRE?
RQ4: What are the current trends and main future directions in the application of NLP in SRE?
Our systematic review followed a structured process based on PRISMA guidelines to ensure comprehensive coverage and systematic analysis of the literature. We defined explicit inclusion and exclusion criteria that guided the selection of studies, thus ensuring relevance and minimizing bias. Our search strategy included a comprehensive set of databases to capture a broad spectrum of interdisciplinary research conducted at the intersection of NLP, AI, and SRE from 1991 to 2023. Each study was assessed for quality and relevance through a dual-review process, where two researchers independently reviewed and cross-validated the inclusion of each article to mitigate selection bias.
The methodological foundation for our review is influenced by the pioneering work of Lethbridge et al. [20], who provided initial insights into how NLP could be utilized in object-oriented software engineering to enhance the comprehensibility and management of software requirements. This early application of NLP sets a critical theoretical basis for our review’s focus on NLP technologies.
Moreover, the systematic review by Mornie et al. [18] offers a methodological model for our analysis. Their comprehensive approach to reviewing the literature on the use of NLP for generating UML models from user stories provides a structured framework that we adapt to explore broader applications of NLP in SRE.

2.1. Search Strategy and Data Sources

Our approach to this comprehensive review involved a meticulous search strategy, encompassing multiple databases such as Scopus, Clarivate Analytics, IEEE Xplore, SpringerLink, and the ACM Digital Library. The selection of these databases was guided by their prominence in the fields of computer science and engineering, thus ensuring a wide-ranging and the relevant corpus of peer-reviewed literature. The search used a combination of keywords: (“Natural Language Processing” OR “NLP”) AND “Software Requirements”. The chosen terms, ‘Natural Language Processing’ and ‘Software Requirements’, directly address the core areas of our research questions, aiming to capture a broad spectrum of interdisciplinary studies that intersect with these fields. This search strategy was designed to be inclusive yet specific to the research question.
SRE is a multifaceted process that includes various activities such as elicitation, analysis, documentation, validation, and management of software requirements [21]. “Software Requirements” focuses on the initial stages of the software engineering process, emphasizing the gathering and analysis of what the software is supposed to do.
In many software development methodologies, requirements gathering and software modeling are deeply interconnected activities [22]. The requirements inform the models, and the models, in turn, provide a structured representation that aids in the clarification and validation of requirements. We ensured that we captured the literature that addresses both the descriptive (requirements) and prescriptive aspects of software development.
Some studies might focus more narrowly on either requirements or modeling, whereas others might address them in tandem [23]. This second approach increases the likelihood of capturing a diverse range of studies relevant to NLP’s role in different stages of the software development process. The inclusion of both terms can be justified by current trends and practices in software development, where there is an increasing emphasis on integrating SRE and software modeling. This integration is particularly relevant in agile methodologies and model-driven development, where the lines between these two areas are often blurred.
This review goes beyond mere bibliographic analysis. We delve into trends, authorship patterns, keyword occurrences, and thematic evolutions, using tools like Zotero 6.0.37 for data management and Biblioshiny 4.0.1 for thematic mapping. The aim of this review is to present a holistic view of the field, identifying key themes, influential works, and emerging trends. We explore the interconnections between various concepts through co-occurrence network analysis and thematic maps, offering insights into the evolution of thought and practice in NLP applications for SRE.
The details of the search results, including the number of relevant documents retrieved from each database and pertinent notes regarding the nature of these sources, are summarized in Table 1. This table provides a snapshot of the search strategy’s effectiveness and the resulting corpus of literature that forms the foundation for our systematic review.
A flow diagram of the different phases of our systematic review is depicted in Figure 1.
We used exclusion criteria in the selection of the final articles. Documents not written in English, such as those in Chinese, Portuguese, and Spanish, were excluded to maintain consistency in language for analysis. Additionally, we filtered out documents categorized as retracted publications, editorials, and errata to ensure the integrity and relevance of the data.
To ensure focus and relevance to our study objectives, our exclusion criteria specifically targeted documents that could introduce inconsistencies or biases in our analysis. By excluding non-English papers, we aimed to avoid the complexities of translation inaccuracies. Although this choice may limit the scope to primarily English-centric research, we mitigated this potential bias by including studies from diverse international databases. Additionally, excluding retracted publications, editorials, and errata helped to maintain the quality and credibility of the data analyzed.
After deduplication using Zotero 6.0.37, a reference management tool, we obtained a dataset comprising 199 sources, including journals and book chapters, comprising 309 relevant documents. The number of included documents exhibited an annual growth rate of 10.58%, with an average citation rate of 9.799 per document, indicating a robust and expanding field of study. The characteristics of the resultant dataset are presented in Table 2.
The corpus of literature included various types of documents, predominantly conference papers (215), articles (77), conference reviews (11), book chapters (3), and reviews (3). This distribution highlights the prominence of conference proceedings in the dissemination of research within this research field.
The core journal sources of our systematic literature review include IEEE Access (6 articles), Information and Software Technology (5 articles), IEEE Transactions on Software Engineering (4 articles), Applied Sciences (3 articles), and IEEE Software (2 articles). These journals are categorized under Zone 1 in Bradford’s distribution (as derived by Bibliometrix 4.0.1), reflecting their central importance and frequent citation within our review. Table A1 from Appendix A presents detailed information on the categorization of these journals.
The conferences play an important role in shaping the ongoing discussions and innovations within the field. The conference proceedings Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) with 20 articles, ACM International Conference Proceeding Series (19 articles), CEUR Workshop Proceedings (12 articles), Proceedings of the IEEE International Conference on Requirements (9 articles), and Communications in Computer and Information Science (7 articles) represent the main conference sources in this field of research. Table A2 from Appendix A contains data about the respective conferences.
Our analysis identified a total of 743 authors, with a subset of 15 authors having contributed to single-authored documents. The average number of co-authors per document was 2.94, reflecting a moderate level of collaboration. Notably, 15.26% of the documents were the result of international collaborations, underscoring the global interest and cross-border partnerships in NLP applications for SRE.
The dataset extracted from major databases such as Clarivate Analytics, Scopus, and others included 691 ‘Author’s Keywords’ provided directly by the authors, and 1480 ‘Keywords Plus’, which are indexed keywords derived from the titles and abstracts of cited articles that are already available in the extracted list of articles. This comprehensive collection of keywords was managed using Zotero 6.0.37 and analyzed with Biblioshiny 4.0.1 software.
The dataset includes a total of 7615 references, which will be examined to understand the foundational works and influential studies in the field.
The final list of articles, post-elimination of duplicates and irrelevant documents, consists of 309 documents spanning from 1991 to 2023, sourced from 199 journals and from conference proceedings.
We categorized the articles from the point of view of the study type. Notably, 32 studies are identified solely as case studies, whereas 2 studies combine case study approaches with tool or prototype development, and another 2 integrate case studies with both tool development and empirical research. The majority of studies, with 221 entries, fall under empirical research emphasizing systematic data collection and analysis. Additionally, there is one study that merges empirical research with conceptual methodology, there is another that combines empirical research with tool development, and there are 4 that incorporate empirical research, tool development, and literature reviews. Literature reviews and surveys account for 7 entries, and tool or prototype development is highlighted in 40 studies. For a detailed breakdown of each category and the specific studies included, Table S1 from the Supplementary Materials (openly available in https://shorturl.at/EHMrf, accessed on 20 May 2024) provides comprehensive information.

2.2. Data Analysis Approach

In our systematic literature review focusing on applying NLP in SRE, we employed a variety of tools and techniques for comprehensive data management and analysis. Zotero 6.0.37 played an important role in managing and deduplicating our data, ensuring an organized and streamlined review process. To delve deeper into the thematic aspects of our research, we utilized Biblioshiny, a powerful tool for thematic mapping and trend analysis [25].
Our analytical approach was multifaceted. We conducted trend analysis to explore the trajectory of various topics and themes over time, gaining insights into their evolution within the field. The use of thematic maps allowed us to visually represent the interconnectedness of different themes and topics, providing a clear and concise overview of the relationships within our research domain. Additionally, thematic evolution analysis helped us to trace the development and shifts in themes across different time periods, offering a longitudinal perspective of the field’s progression [26].
We also incorporated historiograph analysis to examine the citation landscape and assess the impact of key studies. This approach shed light on the influential works and how they shaped the direction of research into the application of NLP and AI to SRE. Furthermore, co-occurrence network analysis was instrumental in exploring the relationships and connections between various concepts, highlighting the intricate web of ideas that define the field.
In analyzing the articles, we adopted a cluster-based approach. Each article was evaluated based on specific criteria relevant to its thematic cluster. In our study, we utilized the Walktrap algorithm within Biblioshiny to generate thematic maps. The Walktrap algorithm is designed to identify community structures in networks, making it ideal for analyzing keyword co-occurrence data in bibliometric studies. It works by simulating random walks, with the underlying assumption that walks are more likely to stay within the same thematic cluster [27]. By applying this algorithm, we were able to discern clusters of closely related topics based on the frequency and patterns of keyword co-occurrences in our literature dataset. This method effectively grouped keywords into distinct themes, each representing a specific research area within our field of study. The resulting thematic map visually displayed these clusters, offering insights into the dominant research themes and their interconnections, thus aiding in the identification of prevailing trends and potential research directions.
To supplement our bibliometric findings, we conducted a qualitative content analysis of the most impactful articles, synthesizing results to suggest future research directions [28]. Content analysis helped us to identify objective characteristics of the conveyed messages, enhancing the validity of our findings [29].
Our presentation of results and discussion is structured to provide a comprehensive view of the field, from its historical context to current trends and potential future directions. This systematic review is both retrospective and forward-looking, capturing the dynamic and ever-evolving nature of NLP and AI in the realm of SRE. Through this approach, we aim to offer a holistic understanding of the field, its trajectory, and the seminal works that have contributed to its growth and development.

3. Results

In the comprehensive exploration of NLP applications within SRE, our analysis adopted a multi-pronged approach to dissect and understand the evolving landscape of this interdisciplinary field. This section presents the results of our systematic analysis, by using the following key techniques:
  • Trend Analysis: Through the temporal mapping of key terms and concepts, we unveil the chronological evolution of NLP in SRE, highlighting shifts in research focus and the emergence of new technologies.
  • Citation Landscape: Employing historiograph network analysis, we delineate the citation dynamics within the field, identifying seminal works and the interplay between influential studies over time.
  • Thematic Map Analysis: With the aid of Biblioshiny for thematic mapping, we visually represent the interconnectedness of research themes, offering insights into the core and peripheral areas of study within the NLP and requirements-engineering nexus.
  • Cluster-Based Analysis: By categorizing articles into thematic clusters and applying the Walktrap algorithm, we discern the community structures of keywords, revealing the density and centrality of topics within this research domain.
  • Qualitative Content Analysis: A detailed review of the most impactful articles facilitates the synthesis of findings, enabling us to understand the major research themes, to delineate the main AI techniques used along with NLP in SRE, and also to shape the future research directions.
The integration of these methodologies allows for a nuanced understanding of the field’s trajectory, influential works, and thematic intersections, thus setting the stage for identifying gaps and potential avenues for future investigation.

3.1. Temporal Mapping Data

In our systematic literature review focusing on the use of NLP for SRE, a critical component of our analysis is the examination of trends over time. This trend analysis aims to uncover the evolution and shifting priorities within this specialized domain.
To conduct the trend analysis, we meticulously extracted terms from the collected literature and cataloged them based on their occurrence frequency and their prominence across different time periods. The temporal mapping allows us to observe not only the popularity of specific concepts at given times but also their trajectory of relevance within the field. Such an approach provides a dynamic view of the NLP landscape in SRE, highlighting how certain ideas gain momentum, how they evolve, and how new concepts emerge in response to technological advancements and changing industry needs.
This part of our review provides a longitudinal perspective, showcasing the development of SRE in the context of NLP and AI over several years. This helps in identifying key milestones, technological shifts, and emerging areas of interest that have shaped the field (Figure 2).
The analysis revealed several insights grouped into time periods:
  • Period 1: Up to 2000—in the period leading up to 2000, “mathematical models” were a focal point, indicative of the foundational stage of software modeling, where abstract models and theoretical underpinnings were essential. During this time, the groundwork for future advancements in requirements engineering and NLP was being laid, though the data suggest a more nascent stage for NLP-related topics.
  • Period 2: 2001–2010—from 2001 to 2010, the field began to expand, with “computational linguistics” and “object-oriented programming” gaining notable attention. This period marked a shift from foundational theories to more applied methodologies in software development. The growth in “computational linguistics” during this decade points towards an increasing interest in integrating language processing techniques into software development, particularly in areas like “requirements analysis” and “computer software selection and evaluation”.
  • Period 3: 2011–2021—this decade witnessed significant growth in NLP applications within SRE. “Natural language processing systems”, “software requirements”, and “requirement engineering” saw substantial increases in focus, illustrating the industry’s push towards leveraging NLP for more effective requirement gathering, analysis, and management. The emergence of “deep learning” towards the end of this period signifies a shift towards more sophisticated AI techniques to address complex problems in software engineering.
  • Period 4: 2022–2023—In the most recent years, there has been a pronounced focus on cutting-edge AI technologies, with “deep learning”, “machine learning”, and “learning systems” taking center stage. This trend reflects the rapid advancements taking place in AI and its increasing application in software modeling and requirements engineering. The mention of “language model” and “requirements classifications” during this period highlights the ongoing efforts to refine NLP applications in software development, making them more accurate and efficient.
The presence and frequency of “language model” within the dataset, especially in recent years, underscore the advancements in this area. LLMs are at the forefront of this surge driving innovations in NLP and broader AI applications. The data’s reflection of this term not only indicates a concentrated scholarly and industry focus on such models but also aligns with the broader trend of integrating sophisticated language understanding and generation capabilities into the current and future state of computational technologies, emphasizing the impact of large language models (LLMs) in defining new frontiers in research and practical applications within the field.
To complete our temporal mapping analysis, we considered the distribution of articles published over the periods of time we previously identified as being relevant. Table 3 shows the evolving interest and research output in the fields related to software requirements and NLP.
Furthermore, we delve into the thematic evolution within the realm of NLP for SRE. Table 4 provides a detailed overview of the significant shifts and continuities in focus within the field over different time periods. This table encapsulates the transitions in thematic concentration from one era to another, which is highlighted by various metrics such as the weighted inclusion index, inclusion index, number of occurrences, and stability index. These metrics offer quantitative insights into the evolving trends and the emerging importance of certain themes over time.
Each row in the table indicates a shift or continuation of focus from one period to another, along with associated terms, their weighted inclusion index, occurrences, and stability index. The value 1 of the scores for weighted inclusion index or for the inclusion index represents perfect transitions with high thematic stability and prominence, reinforcing the significant shifts towards operationalizing NLP within computational systems. Here is an interpretation of the most significative entries:
  • Natural Languages to NLP Systems (1991–2000 to 2001–2010): The transition from “natural languages” to “natural language processing systems” with perfect scores (1.00) in both weighted inclusion index and inclusion index indicates a significant shift towards operationalizing natural language understanding within computational systems, reflecting an important movement in NLP research with only two occurrences but high stability.
  • Semantics in NLP Systems (2001–2010 to 2011–2020): The focus on “semantics” during these periods with maximum scores suggests a deepened interest in understanding and processing the meaning in language, which is important for effective NLP applications.
  • Syntactics to Formal Specification (2001–2010 to 2011–2020): The shift from “syntactics” to “formal specification” with top scores indicates a maturing interest in integrating syntactic analysis into more structured and formalized contexts, potentially influencing areas like software specifications and design. This shift and the previous one underscore the enduring importance of understanding the meaning and structure of natural language requirements in the literature.
  • Automation to Extraction (2001–2010 to 2011–2020): The move from “automation” to “extraction” shows a focus shift towards extracting valuable concepts from software requirements, which is essential for automating the software development process, though the indices suggest moderate emphasis and stability.
  • Extraction Continuity (2011–2021 to 2022–2023): The continued focus on “extraction” with a decent weighted inclusion index but lower inclusion index suggests an ongoing but slightly reduced interest in this area, possibly reflecting advancements or saturation in extraction methodologies.
  • NLP Systems to User Stories (2011–2021 to 2021–2023): The transition to “user stories” might indicate a growing interest in applying NLP to understanding and processing user requirements and narratives within agile software development processes.
  • Life Cycle to Quality Assessment and Data Mining (2011–2021 to 2021–2023): These transitions reflect an expanding interest in assessing quality and extracting insights from data throughout the lifecycles of systems or projects, indicating a broader application of these concepts in software engineering and data analysis.
  • Requirement Engineering to NLP Systems (1991–2000 to 2001–2010): This shift, with a moderate weighted inclusion index but a lower inclusion index indicates growing importance that is, however, not as pronounced as other topics, reflecting an integration of requirement engineering principles with NLP systems.
  • Computer-Aided Software Engineering to NLP Systems (1991–2000 to 2001–2010): A significant transition with a high weighted inclusion index, pointing toward the integration of computer-aided engineering tools with NLP to enhance software development processes.
Complementing Table 4, Figure 3 visually represents these thematic shifts, illustrating the dynamic trajectory of research focus in NLP applied to SRE. The figure aids in visualizing the progression and evolution of key themes, providing a clear depiction of how foundational concepts like computational linguistics and object-oriented programming have seamlessly integrated with emerging fields like NLP and AI, reshaping the landscape of software development research over the years. Together, the table and the figure offer a comprehensive view of thematic evolution, underlining the growing complexity and expanding scope of this interdisciplinary field.
Overall, these transitions illustrate the dynamic nature of software development research, highlighting how foundational concepts like computational linguistics and object-oriented programming have evolved and integrated with emerging fields like NLP and AI over time.

3.2. Citation-Landscape Data

In this section, we present our results based on historiograph network analysis in Figure 4, offering a detailed citation landscape of the influential papers in our review. This analysis provides insights into the interconnections and impacts of key studies in the realm of NLP as applied to software modeling and SRE.
The analysis of selected papers reveals several key trends and focus areas within this domain:
  • Enhancing Clarity and Precision in Software Requirements (Cluster 1—color green): Papers like Riaz MQ’s 2019 study [35] (Global Citation Score—7) and Osama M’s, 2020 work [36] (Global Citation Score—1) demonstrate a keen focus on detecting and resolving ambiguities in software requireme112nts using NLP techniques. This theme resonates across several papers, emphasizing the importance of clarity in requirement engineering and the role of NLP in achieving it.
  • Evolving Methods in Requirement Engineering (Cluster 2—color purple): Asyrofi R’s 2020 paper [37] on dependency extraction and Naufal Maulana MZ’s 2022 study [38] on requirements prioritization using the Analytical Hierarchy Process reflect a shift towards more sophisticated methods in requirement engineering. These approaches are increasingly integrating NLP for nuanced understanding and handling of software requirements.
  • Emergence of Automated UML Diagram Generation (Cluster 3—color orange): Maatuk AM’s 2021 [30] (Global Citation Score—10) and Abdelnabi EA’s 2021 [17] (Global Citation Score—8) papers, along with Ahmed S’s 2022 study [32], indicate a growing interest in automatically generating Unified Modeling Language (UML) diagrams from natural language requirements. This trend underscores the potential of NLP to bridge the gap between conceptual requirements and formal software design models.
  • Broadening the Scope of NLP Applications (Cluster 4—color blue): The papers by Limaylla-Lunarejo M-I from 2022 [33] and 2023 [34] highlight the expanding scope of NLP applications, including automatic classification of requirements and the use of advanced models like FastText and BETO for processing non-English languages like Spanish. This signifies the diversification of NLP techniques beyond traditional English-based systems, catering to a global, multilingual user base.
In summary, these papers collectively showcase the dynamic nature of NLP’s role in software modeling and SRE. From enhancing the precision of software requirements to automating complex modeling tasks and expanding into new linguistic territories, NLP is proving to be an invaluable asset in the evolving landscape of software development.

3.3. Thematic Map-Analysis Data

A thematic map (Figure 5) in the context of bibliometric analysis, such as those generated using Biblioshiny, is a visual representation that categorizes and displays the relationships between themes or topics within a body of literature. In our case, the thematic map focuses on “keywords plus” that resulted from our systematic literature review on NLP for SRE.
Each cluster on the map represents a group of related keywords or themes. These clusters are formed based on the frequency of keywords appearing together in the literature, indicating a thematic relationship or a shared research focus. Two key metrics often used in thematic maps are centrality and density. Centrality measures the degree of interaction between a theme and other themes in the network, indicating its influence or importance in the overall research landscape. Density, on the other hand, assesses the internal strength of the theme, reflecting how well-developed and cohesive the research within that theme is.
The thematic map allows researchers to visually interpret the structure and dynamics of a research field. High centrality but low density might indicate emerging or developing themes, whereas high density but lower centrality could point to well-established but possibly insular areas of research.
In Biblioshiny, a thematic map is particularly useful for exploring and understanding complex and multidisciplinary fields. By analyzing keywords plus, which are additional keywords provided by databases like Web of Science, the map offers a broader and more comprehensive view of the research area, transcending the limitations of author-assigned keywords.
The thematic analysis of the systematic literature review is presented through a thematic map consisting of six distinct clusters. Each cluster represents a convergence of topics based on their centrality and density within the field, providing insights into the relative importance and interconnectivity of these themes.
  • Cluster 1—Natural Language Processing Systems: With the highest centrality score, this cluster is central to the research network, indicating significant cross-cluster interactions. It has a high density, showing robust internal development and focus. Its high frequency suggests that it is a large and active research area (130 articles).
  • Cluster 2—Learning algorithms: This cluster has a notable centrality and density, suggesting that it is both influential and internally coherent. It is an active research area with considerable contributions, as indicated by its frequency (69 articles).
  • Cluster 3—Automation and extraction: With a high centrality score, this cluster is very influential, acting as a bridge connecting various research themes. It has a moderate density, suggesting a good level of internal coherence. Despite its centrality, it ranks fourth in centrality and first in density, showing that it is a well-established and influential theme with numerous inter-cluster connections (29 articles).
  • Cluster 4—Computer Programming Languages: Despite its lower frequency, this cluster ranks high in density but low in centrality, indicating a specialized, yet fundamental niche in software modeling (6 articles).
  • Cluster 5—Clustering: Although it ranks second in density, this cluster has a lower frequency, reflecting its specialized yet impactful role in the categorization and analysis of large datasets, which are key components in NLP applications (3 articles).
  • Cluster 6—Interactive Computer Systems: Ranked second in centrality but fourth in density, indicating that it is a central cluster with a moderate level of internal coherence (4 articles).
Overall, the thematic map illustrates the diverse yet interconnected nature of research and development in NLP for SRE. Although some clusters represent foundational and mature aspects of the field, others indicate emerging trends and areas of potential growth. This thematic analysis not only justifies the current research focus but also guides future exploration into NLP applications within software engineering.

3.4. Cluster-Based Analysis Data

In this section, the data obtained from the cluster-based analysis are presented. Each article was evaluated based on specific criteria relevant to its thematic cluster.
Table 5 encapsulates a comprehensive analysis of the articles clustered under ‘Natural Language Processing Systems’ (Figure 3) and their impacts on various domains within software engineering. This table categorizes the papers based on their themes and techniques, highlighting the common application areas and key insights derived from these studies. It provides a synthesized view of how NLP, coupled with other advanced technologies like machine learning and AI, is being utilized to address specific challenges and innovations in requirements engineering, technical documentation, and other important aspects of software development.
Table 6 presents a detailed breakdown of the most important studies within the ‘learning algorithms’ cluster, which focus on diverse themes and techniques. This table organizes key papers by their central themes and references their specific contributions to different areas of software engineering. It elucidates how various approaches, ranging from use-case analysis with Petri Nets to advanced NLP applications in technical documentation and stakeholder response analysis, have shaped methodologies and innovations in the field. This comprehensive overview offers insights into the evolution and application of software engineering practices, highlighting the integration of traditional and contemporary techniques to address complex challenges in this rapidly evolving domain.
The “Automation” cluster includes articles that highlight the diverse applications of automation in software engineering, particularly through the use of natural language processing (NLP) and other advanced technologies. Table 7 below categorizes these articles based on their main themes, common application areas, and key insights, offering a comprehensive view of how automation is being integrated to enhance various aspects of software development processes.
The decision to focus on these clusters is supported by their centrality and density positions, which align with the themes essential to understanding the integration of NLP in software engineering.

4. Discussion

To further elaborate our findings based on our research questions outlined in Section 2, we will discuss the results of our study.

4.1. RQ1: How Has SRE Evolved in the Context of NLP and AI Technologies?

Our results (Table 3 and Table 4, Figure 3) illustrate an SRE field that has been in constant evolution from 1991 to the present, growing from foundational linguistic studies to sophisticated, AI-integrated systems. This progression not only underlines the technological advancements in the realm of NLP applied to software modeling and requirements but also highlights the changing priorities and methodologies. For instance, the annual average number of relevant articles in the field has increased from 1 before 2000 and 3 in 2001–2010 to 20 in 2011–2021 and more than 30 in the last 2 years (Table 3).
Based on our topics-trend analysis in Figure 2, we have identified four distinct periods in the evolution of NLP and AI application in SRE. The period before 2000 is marked as a foundational stage of NLP application in SRE, where abstract models and theoretical underpinnings were essential. Although in the next period, 2001–2010, there was an increasing interest in integrating language processing techniques into requirements engineering, the period 2011–2021 witnessed significant growth in NLP applications within SRE, illustrating the industry’s push towards leveraging NLP for more effective requirement gathering, analysis, and management. In the past three years, there has been a pronounced focus on cutting-edge AI technologies, with “deep learning”, “machine learning”, and “language model” terms taking center stage.
Also, our findings indicate that, prior to 2018, the research interests within this domain were diverse, reflecting a broader exploration of foundational concepts such as object-oriented programming (OOP), Computational Linguistics, and Computer-Aided Software Engineering (CASE). However, post-2018, there has been a noticeable convergence towards more specialized themes, particularly emphasizing “requirements”, “software quality”, and “development processes”. This shift signifies a maturation in the field, moving from general explorations to targeted applications of NLP and AI in addressing specific challenges in SRE, such as requirements identification and classification, natural language requirements ambiguity, and complexity handling.
The thematic evolution analysis (Table 4 and Figure 3) highlights two important shifts from the period 2001–2010 to the period 2011–2020: “semantic” to “natural language processing systems” and “syntactic” to “formal specification”. These two shifts underscore the enduring importance of understanding the meaning and structure of natural language requirements in the literature. A variety of syntactic and semantic techniques were used within validation requirements tasks to automatically review requirements documents for clarity- and content-based issues [80]. Also, NLP can be used to evaluate the syntactic rules of conditions and actions for automatic software test-case generation [81]. Sonbol et al. [49] pointed out the importance of templates in facilitating the automation of requirements engineering tasks and propose an unsupervised approach based on NLP and Graph Theory to recognize templates from the requirements documents by extracting their common syntactic structures.
Another aspect revealed by the thematic evolution analysis is CASE’s continued relevance into the 2011–2020 period, while transitioning towards NLP systems, which illustrates the role of automation and computational tools in enhancing software development processes. This evolution marks the integration of NLP techniques in automating aspects of software engineering, from SRE to software design, indicating the fusion of computational linguistics with software engineering practices. Extracting concepts from the requirements documents is one of the first steps on the way to automating the software development process, and these concepts can be further formalized in the class model. In this context, Kuchta and Padhyar [82] proposed a method to extract concepts based on a grammatical analysis of software requirements without the need to refer to specialized ontologies as other methods do.
Notably, the last two years have underscored the significance of “language models” and “deep learning” within our dataset, highlighting the rapid advancement and application of these technologies in SRE. The prevalence of these terms not only points to the scholarly and industry focus on such models but also aligns with the broader trend towards integrating sophisticated language understanding and generation capabilities in this field. This period marks the definitive rise of LLMs, showcasing their potential to redefine the boundaries of research and practical applications within the SRE field.

4.2. RQ2: What Are the Key Themes in the Field of SRE Addressed by NLP?

The thematic map analysis (Figure 5) illustrates the diverse yet interconnected nature of research and development in NLP for SRE. Our data reveals two major themes: automating the SRE tasks and improving requirements quality and understanding. Two other themes emerged as relevant from our cluster-based analysis (Table 5 and Table 6) without being reflected by the other techniques applied: SRE in globally distributed development environment and empirical validation of various research results.

4.2.1. Focus on Automating the SRE Tasks

Many keywords in our analysis show that one of the main themes in our field of study concerns the focus on automating labor-intensive and complex tasks within SRE. This theme is suggested by our thematic evolution analysis (Table 4 and Table 7 and Figure 3), in which we can see the shifting of terms like automation and Computer-Aided Software Engineering to NLP. Furthermore, the focus on automation is revealed by the historiograph network (Figure 4), which underscores the emergence of Automated UML Diagram Generation as a distinct cluster, and the thematic map in Figure 5.
This automation aims to reduce manual effort, increase efficiency, and improve accuracy in various SRE activities. The main issues treated by the literature are as follows:
  • Raising efficiency: The work of Arora et al. (2017) [83] and Bakar et al. (2016) [84] focuses on automating aspects of SRE to improve software development’s efficiency and accuracy. Arora et al. (2017) [83] focus on automated extraction and clustering of requirements glossary terms from requirements documents. They reported that their method is more accurate than major generic term-extraction tools, achieving gains of 20% or more in recall compared to existing tools. Bakar et al. (2016) [84] present a semi-automated approach for extracting features from online software reviews to effectively identify reusable requirements features.
  • Leveraging NLP: Jubair et al. (2022) [85] describe a multi-agent K-means with case-based reasoning for automated quality assessment of Software Requirement Specifications (SRS). They achieved a 78% total agreement level between tested methods and software engineering experts.
  • Addressing Non-functional Requirements: The significance of non-functional requirements in software development is acknowledged and explored in studies by Zolotas et al. (2017) [86] and Lafi et al. (2021) [87]. The extraction and classification of non-functional requirements was studied by Shreda et al. (2021) [88] and Bajwa et al. (2009) [89].
  • Generating BPMN and UML diagrams from textual descriptions: Bajwa et al. [89] emphasized the potential of a rule-based NLP system to streamline the transition from user requirements to executable software. Improving the accuracy of BPMN diagrams derived from complex textual requirements by proposing a two-stage method involving NLP analysis and BPMN diagram generation through informal mapping rules was studied by [90]. Javed and Lin [91] presented an automated, iterative approach for extracting entity relationship models and business-process models from software requirement documents. Use-case specifications and their transformation into class diagrams was studied by [92].
These insights, drawn from the papers listed, demonstrate a field actively pursuing automation, accuracy, and efficiency in SRE that is heavily reliant on NLP and machine learning, and more recently on large language models.

4.2.2. Improving Requirements Quality and Understanding

This theme is revealed by the historiograph network (Figure 4) and the cluster-based analysis (Table 5, Table 6 and Table 7).
An important role of both AI and NLP technologies in SRE concerns enhancing the quality of software requirements specifications (SRS). Many studies underscore the effectiveness of NLP and AI tools in areas such as detecting omissions, classifying requirements, and reducing ambiguities. They highlight various strategies and AI technologies employed to improve SRS quality as well as the critical quality concerns addressed:
  • detecting omissions and logical inconsistencies by using NLP [93,94];
  • using AI tools and NLP for reducing ambiguity in the specification of software requirements [95];
  • identification and classification of software requirements by using machine learning and NLP [40];
  • using semantics and NLP to extract and classify non-functional requirements [88,89];
  • handling ambiguity and complexity in natural language requirements [96,97].
There is a discernible focus on leveraging AI to improve software quality, enhance process efficiency, and pioneer cutting-edge applications. Despite the remarkable progress seen, the integration of NLP and AI technologies within SRE also presents unique challenges and limitations that must be carefully managed.
One of the most significant challenges in using NLP for SRE is that of handling the inherent ambiguity and complexity of natural language. NLP tools often struggle to interpret context accurately, leading to potential misunderstandings in the elicitation and documentation of requirements. This issue is compounded in domain-specific applications, where jargon and technical terms may not be consistently interpreted by AI systems. As indicated by Sonbol et al. [49], despite advances in template recognition and syntactic parsing, precision in understanding and categorizing complex requirements remains a critical concern.
The rapid advancement in AI technologies, including deep learning and large language models, drives the need for continual learning and adaptation of the tools used in SRE. However, this dependence also poses risks associated with the black-box nature of many AI models, where decision-making processes are not transparent, making it difficult to debug and refine systems [85]. The lack of explainability in AI decisions can lead to challenges in trust and acceptance among stakeholders. Also, the effectiveness of these technologies heavily relies on the availability and quality of training data. In SRE, where requirements documents are highly domain-specific, there is often a scarcity of labeled data, which hampers the ability of machine learning models to learn effectively. This challenge is highlighted by the dependency on extensive and high-quality datasets for training robust models, as discussed by Arora et al. [83] and Bakar et al. [84].
Integrating NLP and AI technologies into existing SRE workflows poses significant technical and organizational challenges. The transition from traditional methods to AI-enabled processes requires not only technological adaptation but also significant changes in the organizational culture and processes [98]. This integration is crucial for ensuring that the benefits of automation and efficiency gains are realized without disrupting established practices [99].

4.2.3. Adaptability of Requirements Engineering in Distributed and Global Development Environments

The main subjects treated in this area concern distributed requirements engineering [100,101], collaboration of agents and services in distributed requirements management [102], multilingual programming model for coupled systems in distributed environments [103], semantic roles in text classification for distributed requirements management [104].
These studies serve as a clear indicator of the dynamic evolution in SRE, reflecting how the field is evolving to meet the challenges of modern, globally distributed software development. The NLP and AI play an important role in the context of the ongoing shift in software development practices towards accommodating varied team structures and embracing global collaborative approaches.

4.2.4. Empirical Validation and Industry Relevance

The fourth theme refers to the concerns of researchers related to empirical validation and industry relevance, underscoring the essential connection between theoretical research and practical applications in the field of SRE. Some studies, as shown in our cluster-based analysis in Table 5 and Table 6, exemplify the emphasis on empirical validation, ensuring that the advancements in NLP, machine learning, and other computational techniques are not only theoretically sound but also practically viable and relevant to current industry challenges. They employed empirical methods, such as case studies and controlled experiments, to validate their research in applying NLP to SRE. The main topics treated in these papers are automated quality assessment of SRS [85], controlled experiment for software requirements prioritization and selection [97], case study in RESTful Web Service design and implementation [86], empirical analysis of natural language requirements [105], evaluation of automated requirements glossary extraction [83], experiment on traditional vs. Reuse-Based Requirements Specification techniques [100].

4.3. RQ3: What Other AI Technologies Have Been Used Together with NLP in the Field of SRE?

The thematic evolution captured in Table 4 underscores a significant shift towards the use of other advanced AI technologies in SRE, a trend further evidenced by the historical network analysis in Figure 4. Moreover, the thematic map in Figure 5, particularly Cluster 2, highlights the pivotal role of learning algorithms in this evolution.
With this research question we delve into the integration of advanced AI technologies with NLP to enhance the field of SRE. The scrutinized studies illustrate a paradigm shift from traditional manual processes to more nuanced, AI-driven methodologies, thereby offering insights into the application of diverse AI techniques to improve the understanding and processing of natural language software requirements.
As evidenced by cluster 2 (Figure 5), the main employed AI techniques were machine learning, deep learning, large language models, and, additionally, chatbots. The use of chatbot solutions involved the automatic resolution of software requirements [106] and represented an innovative applications as it facilitated the communication with users and provided accurate requirement analyses. Machine learning and deep learning represent two areas of research that often intersect with each other, both being preoccupied with learning from big data sets.
Machine learning addressed various topics. Arora et al. (2017) [83] showcased the efficiency of automated requirements classification. Bakar et al. (2016) [84] approached requirements as a multilabel-classification problem. Moreover, NLP and machine learning were used to significantly aid in requirements categorization [65] while leveraging NLP for enhanced feature extraction [71,74]. Other studies were preoccupied with exploring software development feedback channels to form a comprehensive requirements ecosystem [103] and to investigate the interconnections between various channels [107].
Deep learning proved useful in many SRE activities. The identification of actors and actions through NLP and artificial neural networks (ANNs), with the aim of enhancing precision in requirement analysis, were studied by Cascini et al. (2004) [96], Imam et al. (2021) [47], and Al-Hroob et al. (2018) [51]. Convolutional neural networks (CNNs) were applied for functional requirements classification within SRS documents [36], for advancing categorization granularity [82,87] or even for SRS document classification [50]. Deep learning methods were also employed in SRS-quality-assessment activities [85] to automate these activities using K-means, NLP, case-based reasoning, and multi-agent systems [33,87], or to predict and understand SRS quality attributes [86,108].
The recent advancements in language models (LMs), especially large language models (LLMs), have been instrumental in pushing the boundaries of what is possible in NLP and AI applications within SRE. The application of BERT-based named entity recognition (NER) for enhancing IO-entity extraction in embedded systems [27,61,109], and the utilization of GPT-3 for automatic-use-case-model extraction [92] from software requirements underscores the transformative potential of LLMs in automating and refining requirement specification processes. These models facilitate more accurate entity recognition, multilingual requirement processing, automated requirement resolution, and efficient summarization of complex texts, presenting promising solutions to some of the most challenging aspects of requirement engineering.
Furthermore, the integration of various techniques such as NLP with clustering and machine learning algorithms—sometimes within a single study—exemplifies a multidisciplinary approach to solving complex problems in SRE. The collective insights from our results demonstrate a field in flux, where advanced computational techniques are not merely supplementary but are central to addressing the enduring challenges in SRE.

4.4. RQ4: What Are the Current Trends and Main Future Directions in the Application of NLP in SRE?

The integration of natural language processing (NLP) and various AI technologies within software requirements engineering (SRE) has had transformative impacts, especially with the advent of advanced methods such as ChatGPT and other large language models (LLMs). This section outlines current trends and potential future directions for NLP and AI in the domain of SRE, drawing on insights from recent advancements and their application within the field.
We used information from Table 3 and Table 4, which provide a detailed account of the historical development and thematic trends on the subject. Additionally, Figure 3, Figure 4 and Figure 5 provide a context for exploring how NLP is impacting the future of SRE.
The current landscape of applying NLP in SRE is characterized by a pronounced emphasis on deep learning and large language models, which have significantly advanced the capabilities of NLP systems. For example, the work of Arora et al. (2017) [83] and Bakar et al. (2016) [84] illustrate the integration of machine learning techniques to enhance the automation and efficiency of requirements engineering processes, particularly through the improved classification and extraction of software requirements. These advancements highlight a shift towards more sophisticated, AI-driven methodologies that promise greater accuracy and efficiency in handling complex SRE tasks.
The adoption of transformer-based models, such as those exemplified by ChatGPT, has significantly changed the processing and understanding of natural language. In SRE, these models facilitate the automated generation and interpretation of software requirements by enhancing interactions and documentation with their human-like text generation capabilities (Sonbol et al., 2022) [49]. They streamline the elicitation and documentation processes, significantly reducing manual effort and increasing efficiency.
Looking forward, the application of NLP in SRE is expected to tackle more complex and nuanced challenges, driven by several key directions:
  • Enhanced Integration with AI Technologies: The future will likely see deeper integration of NLP with cutting-edge AI technologies, such as reinforcement learning and artificial neural networks. This integration aims to create more adaptive and intelligent systems that can better understand and process the intricacies of natural language in software requirements. The potential for these technologies to improve the semantic analysis of requirements documents, as discussed by Sonbol et al. (2022) [49], signifies a move towards more contextually aware NLP systems.
  • Increased Emphasis on Customization and Context-Awareness: As the field matures, there will be a greater focus on developing NLP systems that are not only effective across general applications but are also customizable to specific domain needs. The challenges of domain-specific language and jargon, as highlighted by the studies of Ahmad et al. (2020) [40] and Mishra et al. (2019) [58], call for NLP solutions that can adapt to varying contexts and deliver precise interpretations tailored to specific industries.
  • Advancements in Multilingual NLP: The global nature of software development necessitates NLP systems that are capable of handling multiple languages. Future research will likely expand on the work of Limaylla-Lunarejo et al. (2022) [34] to develop multilingual NLP models that can cater to diverse linguistic requirements, reducing barriers in global software development projects.
  • Empirical Validation and Real-World Application: A critical future direction will involve the empirical validation of NLP techniques within SRE. As the field advances, there will be a growing need to substantiate theoretical models with practical, real-world applications and case studies. This validation is crucial for ensuring that NLP tools are not only theoretically sound but also are effective and reliable in practical scenarios.
In conclusion, the current and future directions of NLP in SRE point towards a landscape rich with opportunities for innovation and improvement. By continually integrating advanced AI technologies, focusing on customization and context-awareness, and expanding the capabilities of multilingual NLP, the field can look forward to overcoming existing limitations and unlocking new potentials in software requirements engineering. These directions not only reflect the evolving capabilities of NLP technologies but also underscore the growing complexity and sophistication of challenges in SRE, requiring robust, flexible, and efficient solutions.

5. Conclusions

Our systematic literature review of 309 documents, spanning from 1991 to 2023 and involving 743 authors, illustrates a clear trend: the intersection of natural language processing (NLP) and artificial intelligence (AI) with software requirements engineering (SRE) is an expanding field of research. The annual average number of relevant articles in the field has increased from 1 before 2000 and 3 in 2001–2010 to 20 in 2011–2021 and more than 30 in the last 2 years. The average of nearly three co-authors per document, coupled with over 15% of works stemming from international collaborations, emphasizes the global and cooperative nature of this research.
This systematic review reveals a significant evolution in the integration of NLP and AI within software requirements engineering over the four distinct periods. Initially, before 2000, focusing on foundational linguistic analysis and manual processes, the field gained an increasing interest in integrating NLP techniques into SRE between 2000 and 2010, and it witnessed significant growth of NLP and AI application in 2010–2020. In the last three years, the emergence of advanced machine learning and deep learning techniques has marked an important shift towards automating and enhancing precision in requirements engineering tasks. Also, our thematic evolution analysis highlighted the increasing importance of understanding the meaning and structure of natural language requirements in the literature over the period analyzed.
Our analysis identified two major and two additional themes where NLP and AI have made substantial contributions in the field of SRE. Firstly, NLP and AI technologies have been instrumental in automating labor-intensive tasks within SRE, significantly improving efficiency and accuracy. Secondly, the application of NLP and AI have enhanced the clarity, precision, and quality of software requirements, effectively addressing the challenges of ambiguity and complexity inherent in natural language descriptions. Thirdly, research has highlighted the role of NLP and AI in supporting the adaptability of requirements engineering processes, particularly within the context of globally distributed software development environments. Lastly, there is an emphasis on empirical validation through case studies and controlled experiments, underlining the importance of bridging theoretical research with practical applications to ensure the relevance of advancements in NLP and AI to the needs of the industry.
This review points out that, alongside NLP, a range of other technologies have been utilized to enhance requirements engineering. These include machine learning and deep learning for tasks such as requirements classification and extraction, semantic analysis for understanding and processing natural language requirements, and advanced algorithms for automating the generation of software models from textual descriptions. The integration of these technologies with NLP signifies a multidisciplinary approach to addressing the complexities of software requirements engineering that is paving the way for innovative solutions and methodologies.
Our literature review not only provides a thorough understanding of the current state of NLP and AI in software modeling and requirements engineering but also sets the stage for future research and innovation in this dynamic field. Emerging trends such as processing in multiple languages, the application of advanced technologies like deep learning and large language models (LLMs), and further automation indicate a dynamic future for the field. These trends underscore the ongoing evolution and potential for innovation in the integration of NLP and AI within SRE, promising to address existing challenges and uncover new opportunities for advancement.
Although our review was systematic and comprehensive within the defined scope, we acknowledge that the studies included, though extensive, do not represent the entirety of research published on these topics, as we considered only the mainstream research included in acknowledged scientific databases.

Supplementary Materials

The following supporting information can be downloaded at: https://www.mdpi.com/article/10.3390/electronics13112055/s1, Table S1. Research papers categorization by key findings, supported research question and type of study. Reference [110] is cited in the supplementary materials.

Author Contributions

Conceptualization, S.-C.N., F.D. and V.G.-Ș.; methodology, S.-C.N., F.D. and V.G.-Ș.; software, S.-C.N. and F.D.; validation, F.D. and V.G.-Ș.; formal analysis, S.-C.N. and F.D.; investigation, S.-C.N. and V.G.-Ș.; resources, S.-C.N., F.D. and V.G.-Ș. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Data Availability Statement

The original data presented in this study are openly available at https://shorturl.at/EHMrf, accessed on 20 May 2024.

Conflicts of Interest

The authors declare no conflicts of interest.

Appendix A

Table A1. Articles published in each scientific journal from the “Core 1” zone.
Table A1. Articles published in each scientific journal from the “Core 1” zone.
SourcesArticles
IEEE Access6
Information And Software Technology5
IEEE Transactions on Software Engineering4
Applied Sciences (Switzerland)3
ARPN Journal of Engineering and Applied Sciences2
Automated Software Engineering2
IEEE Software2
International Journal of Advanced Computer Science and Applications2
Jordanian Journal of Computers and Information Technology2
Journal Of Information Processing2
“Core 1” typically represents the most productive journals, which publish the highest number of articles on a specific topic. This segmentation is based on Bradford’s Law and implemented in Bibliometrix 4.0.1, which posits that a relatively small number of journals publish the majority of significant scientific papers.
Table A2. Articles published in each conference from the Core 1 zone.
Table A2. Articles published in each conference from the Core 1 zone.
SourcesArticles
Lecture Notes In Computer Science (Including subseries lecture notes in artificial intelligence and lecture notes in bioinformatics)20
ACM International Conference Proceeding Series19
CEUR Workshop Proceedings12
Proceedings Of the IEEE International Conference on Requirements Engineering9
Communications In Computer and Information Science7
2016 6th International Conference on Innovative Computing Technology, INTECH 20166
Advances In Intelligent Systems and Computing3
Lecture Notes In Networks and Systems3
2019 1st International Conference on Cybernetics and Intelligent System, ICORIS 20192
AIP Conference Proceedings2
“Core 1” typically represents the most productive journals, which publish the highest number of articles on a specific topic. This segmentation is based on Bradford’s Law and implemented in Bibliometrix 4.0.1, which posits that a relatively small number of conferences publish the majority of significant scientific papers.

References

  1. Dar, H.S.; Imtiaz, S.; Lali, M.I. Reducing Requirements Ambiguity via Gamification: Comparison with Traditional Techniques. Comput. Intell. Neurosci. 2022, 2022, 3183411. [Google Scholar] [CrossRef] [PubMed]
  2. Husain, M.S. Study of computational techniques to deal with ambiguity in SRS documents. In Computational Intelligence in Software Modeling; Jain, V., Chatterjee, J.M., Bansal, A., Kose, U., Jain, A., Eds.; De Gruyter: Berlin, Germany, 2022; pp. 107–120. [Google Scholar] [CrossRef]
  3. Bajceta, A.; Leon, M.; Afzal, W.; Lindberg, P.; Bohlin, M. Using NLP Tools to Detect Ambiguities in System Requirements—A Comparison Study. REFSQ Workshops, 2022. Available online: https://api.semanticscholar.org/CorpusID:248301758 (accessed on 20 May 2024).
  4. Kiyavitskaya, N.; Zeni, N.; Mich, L.; Berry, D.M. Requirements for tools for ambiguity identification and measurement in natural language requirements specifications. Requir. Eng. 2008, 13, 207–239. [Google Scholar] [CrossRef]
  5. Dawood, O.S.; Sahraoui, A.-E.-K. Toward Requirements and Design Traceability Using Natural Language Processing. Eur. J. Eng. Technol. Res. 2018, 3, 42–49. [Google Scholar] [CrossRef]
  6. Omar, M.; Baryannis, G. Semi-automated development of conceptual models from natural language text. Data Knowl. Eng. 2020, 127, 101796. [Google Scholar] [CrossRef]
  7. Market.us. Global Natural Language Processing Market by Type (Statistical NLP, Rule Based NLP, and Hybrid NLP), by Component (Solution and Services), by Deployment (On-Premises and Cloud), by Application (Sentiment Analysis, Data Extraction, Risk And Threat Detection), by Technology (Interactive Voice Response (IVR), Optical Character Recognition (OCR), Text Analytics), by Enterprise Size (Small and Medium-Sized Enterprises (SMEs) and Large Enterprises), by Industry Vertical (Healthcare, Retail, High Tech and Telecom, BFSI), by Region and Companies—Industry Segment Outlook, Market Assessment, Competition Scenario, Trends and Forecast. 2024. Available online: https://market.us/report/natural-language-processing-market/ (accessed on 20 May 2024).
  8. Howarth, J. 57 NEW AI Statistics (May 2024). Explod. Top. 2024. Available online: https://explodingtopics.com/blog/ai-statistics (accessed on 20 May 2024).
  9. Yalla, P.; Sharma, N. Integrating Natural Language Processing and Software Engineering. Int. J. Softw. Eng. Its Appl. 2015, 9, 127–136. [Google Scholar] [CrossRef]
  10. Pauzi, Z.; Capiluppi, A. Applications of natural language processing in software traceability: A systematic mapping study. J. Syst. Softw. 2023, 198, 111616. [Google Scholar] [CrossRef]
  11. Wong, M.-F.; Guo, S.; Hang, C.-N.; Ho, S.-W.; Tan, C.-W. Natural Language Generation and Understanding of Big Code for AI-Assisted Programming: A Review. Entropy 2023, 25, 888. [Google Scholar] [CrossRef] [PubMed]
  12. Lucassen, G.; Robeer, M.; Dalpiaz, F.; Van Der Werf, J.M.E.M.; Brinkkemper, S. Extracting conceptual models from user stories with Visual Narrator. Requir. Eng. 2017, 22, 339–358. [Google Scholar] [CrossRef]
  13. Lami, G. QuARS: A Tool for Analyzing Requirements; Carnegie Mellon University, Software Engineering Institute, 2005. Available online: https://apps.dtic.mil/sti/pdfs/ADA441307.pdf (accessed on 20 May 2024).
  14. QRA. QVscribe. 2024. Available online: https://qracorp.com/take-the-tour/try-qvscribe/ (accessed on 20 May 2024).
  15. Femmer, H. Requirements Quality Defect Detection with the Qualicen Requirements Scout. REFSQ Workshops, 2018. Available online: https://ceur-ws.org/Vol-2075/NLP4RE_paper2.pdf (accessed on 20 May 2024).
  16. IBM. IBM Engineering Requirements Quality Assistant (RQA). IBM Doc 2024. Available online: https://www.ibm.com/docs/en/erqa?topic=assistant-overview (accessed on 20 May 2024).
  17. Abdelnabi, E.A.; Maatuk, A.M.; Hagal, M. Generating UML Class Diagram from Natural Language Requirements: A Survey of Approaches and Techniques. In Proceedings of the 2021 IEEE 1st International Maghreb Meeting of the Conference on Sciences and Techniques of Automatic Control and Computer Engineering MI-STA, Tripoli, Libya, 25–27 May 2021; IEEE: Piscataway, NJ, USA, 2021; pp. 288–293. [Google Scholar] [CrossRef]
  18. Mornie, M.N.; Jali, N.; Junaini, S.N.; Mit, E.; Shiang, C.W.; Saee, S. Visualisation of User Stories in UML Models: A Systematic Literature Review. Acta Inform. Pragensia 2023, 12, 419–438. [Google Scholar] [CrossRef]
  19. Perez-Verdejo, J.M.; Sanchez-Garcia, A.J.; Ocharan-Hernandez, J.O. A systematic literature review on machine learning for automated requirements classification. In Proceedings of the 2020 8th International Conference in Software Engineering Research and Innovation (CONISOFT), Chetumal, Mexico, 4–6 November 2020; Juarez-Ramirez, R., Fernandez y Fernandez, C.A., Jimenez Calleros, S.P., Ramirez-Noriega, A., Guerra-Garcia, C., de los Angeles Navarrete Marneou, M., Sandoval, G.L., Oktaba, H., Perez-Gonzalez, H., Aguilar Vera, R.A., Eds.; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2020; pp. 21–28. [Google Scholar] [CrossRef]
  20. Lethbridge, T.C.; Laganière, R. Object-Oriented Software Engineering: Practical Software Development Using UML and Java, 2nd ed.; McGraw-Hill: London, UK, 2005. [Google Scholar]
  21. Pohl, K. Requirements Engineering: Fundamentals, Principles, and Techniques; Springer: Berlin/Heidelberg, Germany; New York, NY, USA, 2010. [Google Scholar]
  22. Altalbe, A. Software Requirements Management. Int. J. Adv. Res. Artif. Intell. 2015, 4, 40410. [Google Scholar] [CrossRef]
  23. Bozyiğit, F.; Aktaş, Ö.; Kılınç, D. Linking software requirements and conceptual models: A systematic literature review. Eng. Sci. Technol. Int. J. 2021, 24, 71–82. [Google Scholar] [CrossRef]
  24. Page, M.J.; McKenzie, J.E.; Bossuyt, P.M.; Boutron, I.; Hoffmann, T.C.; Mulrow, C.D.; Shamseer, L.; Tetzlaff, J.M.; Akl, E.A.; Brennan, S.E.; et al. The PRISMA 2020 statement: An updated guideline for reporting systematic reviews. BMJ 2021, 372, n71. [Google Scholar] [CrossRef] [PubMed]
  25. Bretas, V.P.G.; Alon, I. Franchising research on emerging markets: Bibliometric and content analyses. J. Bus. Res. 2021, 133, 51–65. [Google Scholar] [CrossRef]
  26. Zupic, I.; Čater, T. Bibliometric Methods in Management and Organization. Organ. Res. Methods 2015, 18, 429–472. [Google Scholar] [CrossRef]
  27. Pons, P.; Latapy, M. Computing Communities in Large Networks Using Random Walks. J. Graph Algorithms Appl. 2006, 10, 191–218. [Google Scholar] [CrossRef]
  28. Alon, I.; Anderson, J.; Munim, Z.H.; Ho, A. A review of the internationalization of Chinese enterprises. Asia Pac. J. Manag. 2018, 35, 573–605. [Google Scholar] [CrossRef]
  29. Neuendorf, K.A. The Content Analysis Guidebook; SAGE Publications, Inc.: Thousand Oaks, CA, USA, 2017. [Google Scholar] [CrossRef]
  30. Maatuk, A.M.; Abdelnabi, E.A. Generating UML Use Case and Activity Diagrams Using NLP Techniques and Heuristics Rules. In Proceedings of the International Conference on Data Science, E-Learning and Information Systems 2021, Ma’an, Jordan, 5–7 April 2021; ACM: New York, NY, USA, 2021; pp. 271–277. [Google Scholar] [CrossRef]
  31. Kumar, S.; Yadav, D. Natural Language Processing based Automatic Making of Use Case Diagram. In Proceedings of the 2023 5th International Conference on Inventive Research in Computing Applications (ICIRCA), Coimbatore, India, 3–5 August 2023; pp. 1026–1032. [Google Scholar] [CrossRef]
  32. Ahmed, S.; Ahmed, A.; Eisty, N.U. Automatic Transformation of Natural to Unified Modeling Language: A Systematic Review. In Proceedings of the 2022 IEEE/ACIS 20th International Conference on Software Engineering Research, Management and Applications (SERA), Las Vegas, NV, USA, 25–27 May 2022; IEEE: Piscataway, NJ, USA, 2022; pp. 112–119. [Google Scholar] [CrossRef]
  33. Limaylla-Lunarejo, M.-I.; Condori-Fernandez, N.; Luaces, M.R. Towards an automatic requirements classification in a new Spanish dataset. In Proceedings of the 2022 IEEE 30th International Requirements Engineering Conference (RE), Melbourne, Australia, 15–19 August 2022; IEEE: Piscataway, NJ, USA, 2022; pp. 270–271. [Google Scholar] [CrossRef]
  34. Limaylla-Lunarejo, M.-I.; Condori-Fernandez, N.; Luaces, M.R. Requirements Classification Using FastText and BETO in Spanish Documents. In Requirements Engineering: Foundation for Software Quality; Ferrari, A., Penzenstadler, B., Eds.; Lecture Notes in Computer Science; Springer Nature: Cham, Switzerland, 2023; Volume 13975, pp. 159–176. [Google Scholar] [CrossRef]
  35. Riaz, M.Q.; Butt, W.H.; Rehman, S. Automatic Detection of Ambiguous Software Requirements: An Insight. In Proceedings of the 2019 5th International Conference on Information Management (ICIM), Cambridge, UK, 24–27 March 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 1–6. [Google Scholar] [CrossRef]
  36. Osama, M.; Zaki-Ismail, A.; Abdelrazek, M.; Grundy, J.; Ibrahim, A. Score-Based Automatic Detection and Resolution of Syntactic Ambiguity in Natural Language Requirements. In Proceedings of the 2020 IEEE International Conference on Software Maintenance and Evolution (ICSME), Adelaide, Australia, 28 September–2 October 2020; IEEE: Piscataway, NJ, USA, 2020; pp. 651–661. [Google Scholar] [CrossRef]
  37. Asyrofi, R.; Siahaan, D.O.; Priyadi, Y. Extraction Dependency Based on Evolutionary Requirement Using Natural Language Processing. In Proceedings of the 2020 3rd International Seminar on Research of Information Technology and Intelligent Systems (ISRITI), Yogyakarta, Indonesia, 10 December 2020; IEEE: Piscataway, NJ, USA, 2020; pp. 332–337. [Google Scholar] [CrossRef]
  38. Maulana, M.Z.N.; Siahaan, D. Use Case-Based Analytical Hierarchy Process Method for Software Requirements Prioritization. In Proceedings of the 2022 6th International Conference on Information Technology, Information Systems and Electrical Engineering (ICITISEE), Yogyakarta, Indonesia, 13–14 December 2022; IEEE: Piscataway, NJ, USA, 2022; pp. 205–210. [Google Scholar] [CrossRef]
  39. Li, C.; Huang, L.; Ge, J.; Luo, B.; Ng, V. Automatically classifying user requests in crowdsourcing requirements engineering. J. Syst. Softw. 2018, 138, 108–123. [Google Scholar] [CrossRef]
  40. Ahmad, A.; Feng, C.; Khan, M.; Khan, A.; Ullah, A.; Nazir, S.; Tahir, A. A Systematic Literature Review on Using Machine Learning Algorithms for Software Requirements Identification on Stack Overflow. Secur. Commun. Netw. 2020, 2020, 8830683. [Google Scholar] [CrossRef]
  41. Younas, M.; Jawawi, D.N.A.; Ghani, I.; Shah, M.A. Extraction of non-functional requirement using semantic similarity distance. Neural Comput. Appl. 2020, 32, 7383–7397. [Google Scholar] [CrossRef]
  42. AlDhafer, O.; Ahmad, I.; Mahmood, S. An end-to-end deep learning system for requirements classification using recurrent neural networks. Inf. Softw. Technol. 2022, 147, 106877. [Google Scholar] [CrossRef]
  43. Rahman, K.; Ghani, A.; Alzahrani, A.; Tariq, M.U.; Rahman, A.U. Pre-Trained Model-Based NFR Classification: Overcoming Limited Data Challenges. IEEE Access 2023, 11, 81787–81802. [Google Scholar] [CrossRef]
  44. Fliedl, G.; Kop, C.; Mayr, H.C.; Salbrechter, A.; Vöhringer, J.; Weber, G.; Winkler, C. Deriving static and dynamic concepts from software requirements using sophisticated tagging. Data Knowl. Eng. 2007, 61, 433–448. [Google Scholar] [CrossRef]
  45. Ellis-Braithwaite, R.; Lock, R.; Dawson, R.; King, T. Repetition between stakeholder (user) and system requirements. Requir. Eng. 2017, 22, 167–190. [Google Scholar] [CrossRef]
  46. Liu, H.; Shen, M.; Zhu, J.; Niu, N.; Li, G.; Zhang, L. Deep Learning Based Program Generation From Requirements Text: Are We There Yet? IEEE Trans. Softw. Eng. 2022, 48, 1268–1289. [Google Scholar] [CrossRef]
  47. Imam, A.T.; Alhroob, A.; Jumah, W. SVM Machine Learning Classifier to Automate the Extraction of SRS Elements. Int. J. Adv. Comput. Sci. Appl. 2021, 12, 174–185. [Google Scholar] [CrossRef]
  48. Kaur, K.; Kaur, P. SABDM: A self-attention based bidirectional-RNN deep model for requirements classification. J. Softw. Evol. Process 2022, 36, e2430. [Google Scholar] [CrossRef]
  49. Sonbol, R.; Rebdawi, G.; Ghneim, N. Learning software requirements syntax: An unsupervised approach to recognize templates. Knowl.-Based Syst. 2022, 248, 108933. [Google Scholar] [CrossRef]
  50. Jp, S.; Menon, V.K.; Soman, K.; Ojha, A.K.R. A Non-Exclusive Multi-Class Convolutional Neural Network for the Classification of Functional Requirements in AUTOSAR Software Requirement Specification Text. IEEE Access 2022, 10, 117707–117714. [Google Scholar] [CrossRef]
  51. Al-Hroob, A.; Imam, A.T.; Al-Heisa, R. The use of artificial neural networks for extracting actions and actors from requirements document. Inf. Softw. Technol. 2018, 101, 1–15. [Google Scholar] [CrossRef]
  52. Hochstetter, J.; Diaz, C.; Dieguez, M.; Diaz, J.; Cares, C. Classification of Speech Acts in Public Software Tenders. IEEE Access 2022, 10, 41564–41573. [Google Scholar] [CrossRef]
  53. Oztekin, G.C.; Dalveren, G.G.M. Structured SRS for e-Government Services With Boilerplate Design and Interface. IEEE Access 2023, 11, 62906–62917. [Google Scholar] [CrossRef]
  54. Murugesh, S.; Jaya, A. Exploiting ontology to map requirements derived from informal descriptions. Int. J. Reason.-Based Intell. Syst. 2018, 10, 169. [Google Scholar] [CrossRef]
  55. Dalpiaz, F.; Van Der Schalk, I.; Brinkkemper, S.; Aydemir, F.B.; Lucassen, G. Detecting terminological ambiguity in user stories: Tool and experimentation. Inf. Softw. Technol. 2019, 110, 3–16. [Google Scholar] [CrossRef]
  56. Vlas, R.E.; Robinson, W.N. Two Rule-Based Natural Language Strategies for Requirements Discovery and Classification in Open Source Software Development Projects. J. Manag. Inf. Syst. 2012, 28, 11–38. [Google Scholar] [CrossRef]
  57. Nazir, F.; Butt, W.H.; Anwar, M.W.; Khattak, M.A.K. The Applications of Natural Language Processing (NLP) for Software Requirement Engineering—A Systematic Literature Review. In Information Science and Applications 2017; Kim, K., Joukov, N., Eds.; Lecture Notes in Electrical Engineering; Springer: Singapore, 2017; Volume 424, pp. 485–493. [Google Scholar] [CrossRef]
  58. Mishra, S.; Sharma, A. On the Use of Word Embeddings for Identifying Domain Specific Ambiguities in Requirements. In Proceedings of the 2019 IEEE 27th International Requirements Engineering Conference Workshops (REW), Jeju Island, Republic of Korea, 23–27 September 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 234–240. [Google Scholar] [CrossRef]
  59. Huertas, C.; Juárez-Ramírez, R. NLARE, a Natural Language Processing Tool for Automatic Requirements Evaluation; ACM International Conference Proceeding Series; ACM: New York, NY, USA, 2012; pp. 371–378. [Google Scholar] [CrossRef]
  60. Aceituna, D.; Do, H.; Lee, S.-W. Interactive requirements validation for reactive systems through virtual requirements prototype. In Proceedings of the Model-Driven Requirements Engineering MoDRE, Trento, Italy, 29 August 2011; pp. 1–10. [Google Scholar] [CrossRef]
  61. Subha, R.; Palaniswami, S. Quality factor assessment and text summarization of unambiguous natural language requirements. In Communications in Computer and Information Science; Springer: Berlin/Heidelberg, Germany, 2013; pp. 131–146. [Google Scholar] [CrossRef]
  62. Singh, M.; Walia, G.S.; Goswami, A. Validation of Inspection Reviews over Variable Features Set Threshold. In Proceedings of the 2017 International Conference on Machine Learning and Data Science (MLDS), Noida, India, 14–15 December 2017; pp. 128–135. [Google Scholar] [CrossRef]
  63. Tiwari, S.; Rathore, S.S.; Sagar, S.; Mirani, Y. Identifying Use Case Elements from Textual Specification: A Preliminary Study. In Proceedings of the 2020 IEEE 28th International Requirements Engineering Conference (RE), Zurich, Switzerland, 31 August–4 September 2020; Breaux, T., Zisman, A., Fricker, S., Glinz, M., Eds.; IEEE Computer Society: Piscataway, NJ, USA, 2020; pp. 410–411. [Google Scholar] [CrossRef]
  64. Al Kilani, N.; Tailakh, R.; Hanani, A. Automatic Classification of Apps Reviews for Requirement Engineering: Exploring the Customers Need from Healthcare Applications. In Proceedings of the 2019 Sixth International Conference on Social Networks Analysis, Management and Security (SNAMS), Granada, Spain, 22–25 October 2019; Alsmirat, M., Jararweh, Y., Eds.; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2019; pp. 541–548. [Google Scholar] [CrossRef]
  65. Talele, P.; Phalnikar, R.; Apte, S.; Talele, H. Semi-automated Software Requirements Categorisation using Machine Learning Algorithms. Int. J. Electr. Comput. Eng. Syst. 2023, 14, 1107–1114. [Google Scholar] [CrossRef]
  66. Halim, F.; Siahaan, D. Detecting Non-Atomic Requirements in Software Requirements Specifications Using Classification Methods. In Proceedings of the 1st International Conference on Cybernetics and Intelligent System (ICORIS), Denpasar, Indonesia, 22–23 August 2019; pp. 269–273. [Google Scholar] [CrossRef]
  67. Wang, Y.; Zhang, J. Experiment on automatic functional requirements analysis with the EFRFs semantic cases. In Proceedings of the International Conference on Progress in Informatics and Computing (PIC), Shanghai, China, 23–25 December 2016; Wang, Y., Sun, Y., Eds.; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2017; pp. 636–642. [Google Scholar] [CrossRef]
  68. Priyadi, Y.; Djunaidy, A.; Siahaan, D. Requirements Dependency Graph Modeling on Software Requirements Specification Using Text Analysis. In Proceedings of the 1st International Conference on Cybernetics and Intelligent System (ICORIS), Denpasar, Indonesia, 22–23 August 2019; pp. 221–226. [Google Scholar] [CrossRef]
  69. Ramesh, M.R.R.; Reddy, C.S. Metrics for software requirements specification quality quantification. Comput. Electr. Eng. 2021, 96, 107445. [Google Scholar] [CrossRef]
  70. Luo, X.; Xue, Y.; Xing, Z.; Sun, J. PRCBERT: Prompt Learning for Requirement Classification using BERT-based Pretrained Language Models. In Proceedings of the 37th IEEE/ACM International Conference on Automated Software Engineering, Rochester, MI, USA, 10–14 October 2022; Aehnelt, M., Kirste, T., Eds.; Association for Computing Machinery: New York, NY, USA, 2022. [Google Scholar] [CrossRef]
  71. Rossanez, A.; Carvalho, A.M.B.R. Semi-automatic checklist quality assessment of natural language requirements for space applications. In Proceedings of the Seventh Latin-American Symposium on Dependable Computing (LADC), Cali, Colombia, 19–21 October 2016; pp. 123–126. [Google Scholar] [CrossRef]
  72. Choi, S.; Park, S.; Sugumaran, V. Function point extraction method from goal and scenario based requirements text. In Natural Language Processing and Information Systems, Proceedings of the 11th International Conference on Applications of Natural Language to Information Systems, Klagenfurt, Austria, 31 May–2 June 2006; Springer: Berlin/Heidelberg, Germany, 2006; pp. 12–24. [Google Scholar] [CrossRef]
  73. Geetha, S.; Mala, G.S.A. Extraction of key attributes from natural language requirements specification text. In IET Semin Dig; Institution of Engineering and Technology: Hertfordshire, UK, 2013; pp. 374–379. [Google Scholar] [CrossRef]
  74. Shehadeh, K.; Arman, N.; Khamayseh, F. Semi-Automated Classification of Arabic User Requirements into Functional and Non-Functional Requirements using NLP Tools. In Proceedings of the International Conference on Information Technology (ICIT), Amman, Jordan, 14–15 July 2021; pp. 527–532. [Google Scholar] [CrossRef]
  75. Bhatia, J.; Breaux, T.D.; Schaub, F. Mining Privacy Goals from Privacy Policies Using Hybridized Task Recomposition. ACM Trans. Softw. Eng. Methodol. 2016, 25, 1–24. [Google Scholar] [CrossRef]
  76. Kochbati, T.; Gérard, S.; Li, S.; Mraidha, C. From word embeddings to text similarities for improved semantic clustering of functional requirements. In Proceedings of the 33rd International Conference on Software Engineering & Knowledge Engineering, SEKE, Pittsburgh, PA, USA, 1–10 July 2021; pp. 285–290. [Google Scholar] [CrossRef]
  77. Alhoshan, W.; Batista-Navarro, R.; Zhao, L. Using frame embeddings to identify semantically related software requirements. In CEUR Workshop Proceedings; Spoletini, P., Mader, P., Berry, D.M., Dalpiaz, F., Daneva, M., Ferrari, A., Franch, X., Gregory, S., Groen, E.C., Herrmann, A., et al., Eds.; CEUR-WS: Essen, Germany, 2019; Available online: https://www.scopus.com/inward/record.uri?eid=2-s2.0-85068085263&partnerID=40&md5=f69694214eacec0d57a8097e862dfe5f (accessed on 20 May 2024).
  78. Ahmed, M.A.; Ahsan, I.; Qamar, U.; Butt, W.H. A Novel Natural Language Processing approach to automatically Visualize Entity-Relationship Model from Initial Software Requirements. In Proceedings of the International Conference on Communication Technologies (ComTech), Rawalpindi, Pakistan, 21–22 September 2021; pp. 39–43. [Google Scholar] [CrossRef]
  79. Wein, S.; Briggs, P. A Fully Automated Approach to Requirement Extraction from Design Documents. In Proceedings of the IEEE Aerospace Conference (50100), Big Sky, MT, USA, 6–13 March 2021. [Google Scholar] [CrossRef]
  80. Verma, K.; Kass, A.; Vasquez, R. Using syntactic and semantic analyses to improve the quality of requirements documentation. Semant. Web 2014, 5, 405–419. [Google Scholar] [CrossRef]
  81. Masuda, S.; Matsuodani, T.; Tsuda, K. Syntactic Rules of Extracting Test Cases from Software Requirements; ACM International Conference Proceeding Series; Association for Computing Machinery: New York, NY, USA, 2016; pp. 12–17. [Google Scholar] [CrossRef]
  82. Kuchta, J.; Padhiyar, P. Extracting concepts from the software requirements specification using natural language processing. In Proceedings of the 11th International Conference on Human System Interaction (HSI), Gdansk, Poland, 4–6 July 2018; Kaczmarek, M., Bujnowski, A., Ruminski, J., Eds.; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2018; pp. 443–448. [Google Scholar] [CrossRef]
  83. Arora, C.; Sabetzadeh, M.; Briand, L. Zimmer. Automated Extraction and Clustering of Requirements Glossary Terms. IEEE Trans. Softw. Eng. 2017, 43, 918–945. [Google Scholar] [CrossRef]
  84. Bakar, N.H.; Kasirun, Z.M.; Salleh, N.; Jalab, H.A. Extracting features from online software reviews to aid requirements reuse. Appl. Soft Comput. 2016, 49, 1297–1315. [Google Scholar] [CrossRef]
  85. Jubair, M.A.; Mostafa, S.A.; Mustapha, A.; Salamat, M.A.; Hassan, M.H.; Mohammed, M.A.; Al-Dhief, F.T. A multi-agent K-means with case-based reasoning for an automated quality assessment of software requirement specification. IET Commun. 2022. early view. [Google Scholar] [CrossRef]
  86. Zolotas, C.; Diamantopoulos, T.; Chatzidimitriou, K.C.; Symeonidis, A.L. From requirements to source code: A Model-Driven Engineering approach for RESTful web services. Autom. Softw. Eng. 2017, 24, 791–838. [Google Scholar] [CrossRef]
  87. Lafi, M.; Hawashin, B.; AlZu’ Bi, S. Eliciting Requirements from Stakeholders’ Responses Using Natural Language Processing. Comput. Model. Eng. Sci. 2021, 127, 99–116. [Google Scholar] [CrossRef]
  88. Shreda, Q.A.; Hanani, A.A. Identifying Non-functional Requirements from Unconstrained Documents using Natural Language Processing and Machine Learning Approaches. IEEE Access 2021, 4, 1–12. [Google Scholar] [CrossRef]
  89. Bajwa, I.S. Object Oriented Software Modeling Using NLP Based Knowledge Extraction. 2009. Available online: https://api.semanticscholar.org/CorpusID:15512299 (accessed on 20 May 2024).
  90. Sholiq, S.; Sarno, R.; Astuti, E.S. Generating BPMN diagram from textual requirements. J. King Saud Univ. Comput. Inf. Sci. 2022, 34, 10079–10093. [Google Scholar] [CrossRef]
  91. Javed, M.; Lin, Y. iMER: Iterative process of entity relationship and business process model extraction from the requirements. Inf. Softw. Technol. 2021, 135, 106558. [Google Scholar] [CrossRef]
  92. Akour, M.; Falah, B.; Madi, B.; Bouali, N. An Effective Approach for Transforming Use Cases Specifications into Class Diagram. Adv. Sci. Lett. 2016, 22, 2972–2976. [Google Scholar] [CrossRef]
  93. Wakabayashi, T.; Morisaki, S.; Kasai, N.; Atsumi, N.; Yamamoto, S. Tool Supported Detection of Omissions by Comparing Words between Requirements and Design Document. J. Inf. Process. 2020, 28, 136–149. [Google Scholar] [CrossRef]
  94. Masuda, S.; Matsuodani, T.; Tsuda, K. Detecting Logical Inconsistencies by Clustering Technique in Natural Language Requirements. IEICE Trans. Inf. Syst. 2016, E99-D, 2210–2218. [Google Scholar] [CrossRef]
  95. Gupta, A.; Deraman, A.; Siddiqui, S.T. A survey of software requirements specification ambiguity. ARPN J. Eng. Appl. Sci. 2019, 14, 3046–3061. [Google Scholar]
  96. Cascini, G.; Fantechi, A.; Spinicci, E. Natural Language Processing of Patents and Technical Documentation. In Document Analysis Systems VI; Marinai, S., Dengel, A.R., Eds.; Lecture Notes in Computer Science; Springer: Berlin/Heidelberg, Germany, 2004; Volume 3163, pp. 508–520. [Google Scholar] [CrossRef]
  97. McZara, J.; Sarkani, S.; Holzer, T.; Eveleigh, T. Software requirements prioritization and selection using linguistic tools and constraint solvers—A controlled experiment. Empir. Softw. Eng. 2015, 20, 1721–1761. [Google Scholar] [CrossRef]
  98. Jorg, T.; Halfmann, M.C.; Stoehr, F.; Arnhold, G.; Theobald, A.; Mildenberger, P.; Müller, L. A novel reporting workflow for automated integration of artificial intelligence results into structured radiology reports. Insights Imaging 2024, 15, 80. [Google Scholar] [CrossRef]
  99. May, E. Integrating AI Tools into Your Workflow. Stackoverflow Blog. 2023. Available online: https://stackoverflow.blog/2023/10/12/integrating-ai-tools-into-your-workflow/ (accessed on 20 May 2024).
  100. De Gea Carrillo, J.M.; Nicolás, J.; Fernández Alemán, J.L.F.; Toval, A.; Ouhbi, S.; Idri, A. Co-located and distributed natural-language requirements specification: Traditional versus reuse-based techniques: Co-Located and Distributed Natural-Language Requirements Specification. J. Softw. Evol. Process 2016, 28, 205–227. [Google Scholar] [CrossRef]
  101. Corral, A.; Sánchez, L.E.; Antonelli, L. Building an integrated requirements engineering process based on Intelligent Systems and Semantic Reasoning on the basis of a systematic analysis of existing proposals. JUCS J. Univers. Comput. Sci. 2022, 28, 1136–1168. [Google Scholar] [CrossRef]
  102. Sinkie, M.; Gronli, T.M.; Midekso, D.; Lakhan, A. Joint Impact of Agents and Services in Enhancing Software Requirements Engineering. Electronics 2023, 12, 3955. [Google Scholar] [CrossRef]
  103. Ong, E.T.; Larson, J.W.; Norris, B.; Jacob, R.L.; Tobis, M.; Steder, M. A Multilingual Programming Model for Coupled Systems. Int. J. Multiscale Comput. Eng. 2008, 6, 39–51. [Google Scholar] [CrossRef]
  104. Rago, A.; Marcos, C.; Diaz-Pace, J.A. Using semantic roles to improve text classification in the requirements domain. Lang. Resour. Eval. 2018, 52, 801–837. [Google Scholar] [CrossRef]
  105. Diamantopoulos, T.; Roth, M.; Symeonidis, A.; Klein, E. Software requirements as an application domain for natural language processing. Lang. Resour. Eval. 2017, 51, 495–524. [Google Scholar] [CrossRef]
  106. Kersting, J.; Ahmed, M.; Geierhos, M. Chatbot-Enhanced Requirements Resolution for Automated Service Compositions. In Communications in Computer and Information Science; Stephanidis, C., Antona, M., Ntoa, S., Eds.; Springer Science and Business Media Deutschland GmbH: Berlin/Heidelberg, Germany, 2022; pp. 419–426. [Google Scholar] [CrossRef]
  107. Tizard, J.; Devine, P.; Wang, H.; Blincoe, K. A Software Requirements Ecosystem: Linking Forum, Issue Tracker, and FAQs for Requirements Management. IEEE Trans. Softw. Eng. 2023, 49, 2381–2393. [Google Scholar] [CrossRef]
  108. Airlangga, G.; Liu, A. Investigating Software Domain Impact in Requirements Quality Attributes Prediction. J. Inf. Sci. Eng. 2022, 38, 295–316. [Google Scholar] [CrossRef]
  109. Chow, M.Y. Analysis of Embedded System’s Functional Requirement using BERT-based Name Entity Recognition for Extracting IO Entities. J. Inf. Process. 2023, 31, 143–153. [Google Scholar] [CrossRef]
  110. Bajaj, D.; Goel, A.; Gupta, S.C.; Batra, H. MUCE: A multilingual use case model extractor using GPT-3. Int. J. Inf. Technol. 2022, 14, 1543–1554. [Google Scholar] [CrossRef]
Figure 1. PRISMA flow diagram for our research [24].
Figure 1. PRISMA flow diagram for our research [24].
Electronics 13 02055 g001
Figure 2. Trend topics in NLP for the SRE field in the period 1991–2023. Note: Each bubble on the graph represents a topic. Bubble size is proportional to the number of word occurrences. The gray bar indicates the first and third quartiles of the occurrence distribution. The reference year for each topic is identified using the median of the distribution of occurrences over the time considered.
Figure 2. Trend topics in NLP for the SRE field in the period 1991–2023. Note: Each bubble on the graph represents a topic. Bubble size is proportional to the number of word occurrences. The gray bar indicates the first and third quartiles of the occurrence distribution. The reference year for each topic is identified using the median of the distribution of occurrences over the time considered.
Electronics 13 02055 g002
Figure 3. Thematic evolution. Note: Each color represents a distinct cluster of research topics or themes. The size of each colored cluster reflects the volume of publications and research activity within that thematic area during the specified period.
Figure 3. Thematic evolution. Note: Each color represents a distinct cluster of research topics or themes. The size of each colored cluster reflects the volume of publications and research activity within that thematic area during the specified period.
Electronics 13 02055 g003
Figure 4. Historiograph network map for the citation landscape [17,30,31,32,33,34,35,36,37,38].
Figure 4. Historiograph network map for the citation landscape [17,30,31,32,33,34,35,36,37,38].
Electronics 13 02055 g004
Figure 5. The thematic map on NLP for SRE. Note: This thematic map was generated using Biblioshiny’s thematic mapping tool, part of the ‘bibliometrix’ 4.0.1 R package, which analyzes bibliometric networks based on data sourced from major academic databases. Clusters and connections reflect the analysis of keyword frequencies and their co-occurrence across the reviewed literature.
Figure 5. The thematic map on NLP for SRE. Note: This thematic map was generated using Biblioshiny’s thematic mapping tool, part of the ‘bibliometrix’ 4.0.1 R package, which analyzes bibliometric networks based on data sourced from major academic databases. Clusters and connections reflect the analysis of keyword frequencies and their co-occurrence across the reviewed literature.
Electronics 13 02055 g005
Table 1. Summary of database search results for NLP in software requirements engineering.
Table 1. Summary of database search results for NLP in software requirements engineering.
DatabaseResultsSearch PhraseNotes
Scopus320Article title, Abstract, keywords- (“Natural Language Processing” OR “NLP”) AND “Software Requirements”Comprehensive database with a wide coverage.
Clarivate135All fields: (“Natural Language Processing” OR “NLP”) AND “Software Requirements”Known for its Web of Science Core Collection.
IEEE Xplore157All fields: (“Natural Language Processing” OR “NLP”) AND “Software Requirements”Rich in engineering and technology papers.
ACM Digital Library14[[Abstract: “natural language processing”] OR [Abstract: “NLP”]] AND [Abstract: “software requirements”]Specialized in computing and information technology.
Table 2. Descriptive data regarding the documents included in the systematic literature review.
Table 2. Descriptive data regarding the documents included in the systematic literature review.
DescriptionResults
MAIN INFORMATION ABOUT DATA
Timespan1991:2023
Sources (Journals, Books, etc.)199
Documents309
Annual Growth Rate %10.58
Document Average Age6.45
Average Citations per Document9.799
References7615
DOCUMENT CONTENTS
Keywords Plus (ID)1480
Author’s Keywords (DE)691
AUTHORS
Authors743
Authors of Single-authored Documents15
AUTHORS COLLABORATION
Single-authored Document17
Co-Authors per Document2.94
International Co-authorships %15.26
DOCUMENT TYPES
Article77
Book Chapter3
Conference Paper215
Conference Review11
Review3
Table 3. Article distribution per period of analysis.
Table 3. Article distribution per period of analysis.
PeriodNumber of Articles
Up to 200010
2001–201033
2011–2021202
2022–202364
Total309
Table 4. Thematic evolution.
Table 4. Thematic evolution.
FromToWeighted Inclusion IndexInclusion IndexOccurrencesStability Index
natural languages—1991–2000natural language processing systems—2001–20101.001.001.002
semantics—2001–2010natural language processing systems—2011–20201.001.001.002
syntactics—2001–2010formal specification—2011–20201.001.001.002
automation—2001–2010extraction—2011–20200.500.500.502
extraction—2011–2020extraction—2021–20230.460.460.3316
natural language processing systems—2011–2020user stories—2021–20230.430.430.336
formal specification—2011–2020e-learning—2021–20230.330.330.332
life cycle—2011–2020quality assessment—2021–20230.330.330.335
life cycle—2011–2020extraction—2021–20230.230.230.338
requirement engineering—1991–2000natural language processing systems—2001–20100.560.560.253
computer-aided software engineering—1991–2000natural language processing systems—2001–20100.940.940.179
Note: The values in this table represent the linkage and trends between research topics over different decades. “Weighted Inclusion Index” and “Inclusion Index” reflect normalized metrics of topic relevance and overlap between consecutive periods, both scaled from 0 to 1, where 1 indicates maximum relevance or overlap. “Occurrences” refers to the number of times a particular transition between topics is noted within the data analyzed, and is also normalized to a scale of 0 to 1. “Stability Index” indicates the number of studies supporting the transition, with higher values showing more substantial empirical support.
Table 5. Articles belonging to the “natural language processing systems” cluster.
Table 5. Articles belonging to the “natural language processing systems” cluster.
Theme/TechniquePapers and ReferencesCommon Application AreasKey Insights and Study Types
Machine learning in requirements classification and analysisLi et al., 2018 [39]; Ahmad et al., 2020 [40]; Younas et al., 2020 [41]; Aldhafer et al., 2022 [42]; Rahman et al., 2023 [43].Crowdsourcing RE, requirements identification, requirements classification, NFR classification.Effective classification of user requests, identifying software requirements on platforms like stack overflow, classifying requirements using deep learning and pre-trained models.
Semantic and linguistic analysis for requirementsFliedl et al., 2007 [44]; Younas et al., 2020 [41]; Ellis-Braithwaite et al., 2017 [45].Text to conceptual schema, NFR extraction, redundancy in documentation.Bridging gap between textual specs and formal models, semantic approach to differentiate NFR, investigating repetition in requirements documents.
Deep learning and AI in software development processesLiu et al., 2022 [46]; Imam et al., 2021 [47]; Kaur et al., 2022 [48]; Sonbol et al., 2022 [49]; JP et al., 2022 [50].Program generation from text, SRS elements extraction, requirements classification, template recognition, functional requirements classification.Challenges in deep learning-based code generation, ML for extracting SRS elements, utilizing AI for ambiguity reduction, unsupervised approach to standardizing requirements, CNN for classification in AUTOSAR SRS.
Specialized applications of NLP and AI in REAl-Hroob et al., 2018 [51]; Younas et al., 2020 [41]; Hochstetter et al., 2022 [52]; Oztek in et al., 2023 [53]; Murugesh et al., 2018 [54].Extracting actions and actors, agile development and NFR elicitation, public software tenders, e-government SRS, mapping requirements.Combining NLP with AI for requirements analysis, NLP in agile and cloud environments, classifying speech acts in software tenders, structuring SRS for e-Government services, using ontology to map informal requirement descriptions.
Table 6. Articles belonging to the “learning algorithms” cluster.
Table 6. Articles belonging to the “learning algorithms” cluster.
Theme/TechniquePapers and ReferencesCommon Application AreasKey Insights and Study Types
Automatic classification of user requestsLi C. et al. (2018) [26], Dalpiaz F. et al. (2019) [55], Vlas R.E. et al. (2012) [56].Crowdsourcing requirements engineering, software development, open source projects.Proposed methodologies using keywords and ML algorithms.
Natural language processing in software requirement engineeringNazir F. et al. (2017) [57], Ahmad A. et al. (2020) [40], Mishra S. et al. (2019) [58].Software requirement engineering, requirement classification, machine learning applications.Systematic literature reviews, experiments with NLP techniques.
Requirements quality and analysisHuertas C. et al. (2012) [59], Aceituna D. et al. (2011) [60], Subha R. et al. (2013) [61], Ellis-Braithwaite R. et al. (2017) [45], AlDhafer O. et al. (2022) [42].Quality assessment of requirements, requirements validation, embedded software systems.Development and validation of automated tools and methodologies.
Machine learning for requirements classificationPerez-Verdejo J.M. et al. (2020) [19], Singh M. et al. (2017) [62], Tiwari S. et al. (2020) [63].Automated requirements classification, machine learning algorithms, software life cycle.Empirical studies, systematic literature reviews.
Ambiguity and terminology in requirementsMishra S. et al. (2019) [58], Ellis-Braithwaite R. et al. (2017) [45], Al Kilani N. et al. (2019) [64], Subha R. et al. (2013) [61].Terminological ambiguity detection, ambiguity in stakeholder and system requirements.Tool development, experiments, empirical evaluations.
Deep learning and NLP for requirements engineeringAlDhafer O. et al. (2022) [42], Perez-Verdejo J.M. et al. (2020) [19], Singh M. et al. (2017) [62], Tiwari S. et al. (2020) [63].Deep learning systems, requirements classification using RNNs, natural language processing.Development of deep learning models, performance evaluation.
Requirements elicitation and prioritizationTálele P. et al. (2021) [65], Halim F. et al. (2019) [66], Wang Y. et al. (2017) [67], Priyadi Y. et al. (2019) [68].Requirements elicitation from user feedback, prioritization of software requirements.Machine learning models, resampling techniques, evaluation metrics.
Software requirements specification (SRS) analysisRamesh M.R.R. et al. (2021) [69], Luo X. et al. (2022) [70], Rossanez A. et al. (2016) [71], Choi S. et al. (2006) [72].Analysis and summarization of SRS, formal specifications, requirements engineering tools.Application of NLP, experiments with real projects.
Software requirements classificationAhmad A. et al. (2020) [40], Perez-Verdejo J.M. et al. (2020) [19], Singh M. et al. (2017) [62], Tiwari S. et al. (2020) [63].Classification of software requirements, stack overflow discussions, software quality assessment.Systematic reviews, machine learning evaluations.
User feedback analysis for requirements engineeringAl Kilani N. et al. (2019) [64], Geetha S. et al. (2013) [73], Shehadeh K. et al. (2021) [74], Kaur K. et al. (2022) [48].Analysis of user reviews for requirements, mobile applications, E-government applications.Machine learning and NLP applications, feedback classification.
Table 7. Articles belonging to “automation” cluster.
Table 7. Articles belonging to “automation” cluster.
Theme/TechniquePapers and ReferencesCommon Application AreasKey Insights and Study Types
Automated glossary and term extractionMishra et al., 2020 [58]; Bhatia et al., 2020 [75]Glossary term extraction, large-scale requirements documents.Proposes novel techniques for extracting and clustering glossary terms using advanced NLP and word embeddings, demonstrating high precision and coverage in large datasets.
Automated requirements and model generationBhatia J. et al., 2016 [75]; Kochbati et al., 2021 [76]Software requirements modeling, design document automation.Focuses on generating architectural models and UML diagrams from natural language requirements, using machine learning to automate and streamline the process.
Semantic analysis and clusteringBhatia K. et al., 2020 [75]; Alhoshan et al., 2019 [77]Semantic clustering, traceability in requirements engineering.Utilizes frame embeddings and semantic clustering to enhance the identification of related software requirements, improving traceability and requirements analysis.
Integration of AI in requirements engineeringAhmed et al., 2021 [78]; Wein et al., 2021 [79]ER model generation, design automation in aerospace.Discusses fully automated techniques for extracting and comparing software requirements with design documents, highlighting the use of AI in automating compliance and enhancing safety in aerospace engineering.
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Necula, S.-C.; Dumitriu, F.; Greavu-Șerban, V. A Systematic Literature Review on Using Natural Language Processing in Software Requirements Engineering. Electronics 2024, 13, 2055. https://doi.org/10.3390/electronics13112055

AMA Style

Necula S-C, Dumitriu F, Greavu-Șerban V. A Systematic Literature Review on Using Natural Language Processing in Software Requirements Engineering. Electronics. 2024; 13(11):2055. https://doi.org/10.3390/electronics13112055

Chicago/Turabian Style

Necula, Sabina-Cristiana, Florin Dumitriu, and Valerică Greavu-Șerban. 2024. "A Systematic Literature Review on Using Natural Language Processing in Software Requirements Engineering" Electronics 13, no. 11: 2055. https://doi.org/10.3390/electronics13112055

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop