Automated Smell Detection and Recommendation in Natural Language Requirements

Alvaro Veizaga, Seung Yeob Shin, Lionel C. Briand

Research output: Contribution to journalArticlepeer-review

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).

Original languageEnglish
Pages (from-to)695-720
Number of pages26
JournalIEEE Transactions on Software Engineering
Volume50
Issue number4
DOIs
Publication statusPublished - 1 Apr 2024

Keywords

  • Requirement smells
  • and controlled natural language
  • natural language processing
  • requirement quality
  • smell detection and recommendation

Fingerprint

Dive into the research topics of 'Automated Smell Detection and Recommendation in Natural Language Requirements'. Together they form a unique fingerprint.

Cite this