中文

需求制品中因果关系的自动检测:CiRA 方法

软件工程 2021-01-27 v1

摘要

系统行为常在需求中以因果关系表达(例如,若事件1,则事件2)。自动提取这一内嵌的因果知识不仅支持对需求依赖关系的推理,也支持诸如测试用例无缝派生等各类自动化工程任务。然而,由于现有方法无法以合理性能提取因果关系,从自然语言中提取因果关系仍是一个开放的研究挑战。我们将从需求中提取因果关系理解为一个两步问题:首先,需要检测需求是否具有因果属性;其次,需要理解并提取其因果关系。但目前,我们缺乏对需求中因果关系形式与复杂性的认识,而这是开发解决这两个问题的合适方法所必需的。我们对来自18个不同领域的53份需求文档中的14,983个句子进行了探索性案例研究,揭示了需求中因果关系的形式与复杂性。基于我们的发现,我们开发了工具支持的因果关系检测方法(CiRA)。这构成了从自然语言需求中提取因果关系的第一步。我们报告了一个案例研究以及由此产生的工具支持的因果关系检测方案。我们的案例研究除其他外证实,因果关系事实上是描述系统行为被广泛使用的语言模式,因为约三分之一的分析句子具有因果性。我们进一步证明,我们的工具 CiRA 在真实世界数据上取得了82%的宏F1分数,并且相对于相关方法在宏召回率上平均提升11.06%、在宏精确率上平均提升11.43%。最后,我们公开了我们的开放数据集以及我们的工具,以促进需求工程(RE)界关于因果关系自动检测的讨论。

关键词

引用

@article{arxiv.2101.10766,
  title  = {Automatic Detection of Causality in Requirement Artifacts: the CiRA Approach},
  author = {Jannik Fischbach and Julian Frattini and Arjen Spaans and Maximilian Kummeth and Andreas Vogelsang and Daniel Mendez and Michael Unterkalmsteiner},
  journal= {arXiv preprint arXiv:2101.10766},
  year   = {2021}
}