Classification of Natural Language Processing Techniques for Requirements Engineering
This work provides a foundational classification to improve shared knowledge and tool development in RE, but it is incremental as it synthesizes existing techniques without introducing new methods.
The paper addresses the lack of systematic organization of natural language processing (NLP) techniques in requirements engineering (RE) by classifying 57 frequently used techniques based on NLP tasks and linguistic analysis levels.
Research in applying natural language processing (NLP) techniques to requirements engineering (RE) tasks spans more than 40 years, from initial efforts carried out in the 1980s to more recent attempts with machine learning (ML) and deep learning (DL) techniques. However, in spite of the progress, our recent survey shows that there is still a lack of systematic understanding and organization of commonly used NLP techniques in RE. We believe one hurdle facing the industry is lack of shared knowledge of NLP techniques and their usage in RE tasks. In this paper, we present our effort to synthesize and organize 57 most frequently used NLP techniques in RE. We classify these NLP techniques in two ways: first, by their NLP tasks in typical pipelines and second, by their linguist analysis levels. We believe these two ways of classification are complementary, contributing to a better understanding of the NLP techniques in RE and such understanding is crucial to the development of better NLP tools for RE.