Automated Smell Detection and Recommendation in Natural Language Requirements

Alvaro Veizaga,Seung Yeob Shin,Lionel C. Briand
DOI: https://doi.org/10.1109/tse.2024.3361033
IF: 7.4
2024-01-01
IEEE Transactions on Software Engineering
Abstract:Requirement specifications are typically written in natural language (NL) due to its usability across multiple domains and understandability by all stakeholders. However, unstructured NL is prone to quality problems (e.g., ambiguity) when writing requirements, which can result in project failures. To address this issue, we present a tool, named Paska, that takes as input any NL requirements, automatically detects quality problems as smells in the requirements, and offers recommendations to improve their quality. Our approach relies on natural language processing (NLP) techniques and a state-of-the-art controlled natural language (CNL) for requirements (Rimay), to detect smells and suggest recommendations using patterns defined in Rimay to improve requirement quality. We evaluated Paska through an industrial case study in the financial domain involving 13 systems and 2725 annotated requirements. The results show that our tool is accurate in detecting smells (89% precision and recall) and suggesting appropriate Rimay pattern recommendations (96% precision and 94% recall).
engineering, electrical & electronic,computer science, software engineering
What problem does this paper attempt to address?