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) in writing requirements, which can result in project failures. To address this issue, we present a tool, named Paska, that automatically detects quality problems as smells in NL requirements and offers recommendations to improve their quality. Our approach relies on natural language processing (NLP) techniques and, most importantly, 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 (precision of 89% and recall of 89%) and suggesting appropriate Rimay pattern recommendations (precision of 96% and recall of 94%).
翻译:需求规格说明书通常使用自然语言编写,因其具有跨领域易用性和所有利益相关方可理解性的特点。然而,非结构化的自然语言在编写需求时易出现质量问题(如歧义性),可能导致项目失败。针对这一问题,我们提出名为Paska的工具,可自动检测自然语言需求中的气味(质量缺陷问题),并提供改善质量的推荐方案。该方法依赖自然语言处理技术,最重要的是运用当前最先进的需求受控自然语言Rimay,通过其定义的检测模式识别气味并生成改善建议。我们通过金融领域的工业案例研究评估了Paska,涉及13个系统及2725条标注需求。结果表明,该工具在检测气味(精确率89%,召回率89%)和推荐合适的Rimay模式(精确率96%,召回率94%)方面均具有高精度。