ARQM: A Tool for Requirements Quality Analysis
本文介绍了 ARQM,一种自动化需求质量管理工具,它利用现代人工智能、机器学习方法以及可解释人工智能,基于 IEEE 29148:2018 标准进行需求筛选和质量分析,展示了这些技术在学习通用模式的同时实现检测到的违规行为可视化的潜力。
原始论文采用 CC BY 4.0 许可(https://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明
想象一下,你是一位庞大且混乱的图书馆的编辑,这里的每一本书都是建造新事物的蓝图——无论是搭建一座桥梁、开发一款电子游戏,还是制造一艘宇宙飞船。在第一块砖落下或第一行代码编写之前,建筑师们必须准确地写下他们所需要的一切。这些笔记被称为“需求”(requirements)。但问题在于,人类并不擅长把这些笔记写得完美无缺。我们会感到疲倦,会使用像“也许”或“快速”这样模糊的词汇,有时甚至会不小心写出相互矛盾的内容。如果蓝图是混乱的,建筑就会坍塌,或者游戏会崩溃。这就是需求工程(Requirement Engineering)的世界:一个将人类想法转化为清晰、严格的机器指令的复杂且高风险的过程。
为了解决这个问题,科学家们几十年来一直在构建数字“校对员”。传统的校对员就像是拿着红笔和一份简单规则清单的严厉图书管理员:“如果你看到‘必须’这个词,它就是一个需求;如果你看到‘过程’这个词,它就不是。”但这些旧规则往往会忽略人类语言中的细微差别。于是,**人工智能(AI)和机器学习(ML)**登场了。不要把它们仅仅看作规则的执行者,而要将它们视为阅读了数百万份文档的观察力极强的学徒。它们不再只是寻找特定的单词,而是学习句子的“神韵”,以一种简单列表无法做到的方式理解上下文和含义。研究人员提出的核心问题是:这些聪明的学徒是否能比那些基于规则的旧图书管理员更出色地在施工开始前发现糟糕的蓝图?
这篇论文介绍了一个新的数字学徒,名为 ARQM(自动化需求质量管理)。来自宾夕法尼亚州立大学的研究人员开发了这个工具,旨在成为需求文档中一位不知疲倦、高度专注的编辑。与依赖过时、僵化规则的前辈不同,ARQM 使用现代 AI 来“阅读”文档并执行两项主要任务。首先,它充当筛选过滤器,从混乱的文本堆中进行分类,决定:“这句话真的是一个需求,还是仅仅是背景噪音?”其次,它充当质量检查员,检查通过过滤器的需求是否真正合格。它会根据 IEEE 29148 标准(一套关于如何使需求清晰、可测试且无歧义的全球性规则手册)来寻找特定的“异味”或违规行为。
团队不仅构建了这个工具,还让它经历了一场严格的训练营。他们向它喂入了来自名为 PURE(公共需求数据集)的公开数据集中的数千个句子,以教会它如何识别需求。然后,他们在一组经过人类专家精心标注的文档上对其进行了测试,以检查四种特定类型的质量问题:歧义性(是否令人困惑?)、可行性(是否真的可以实现?)、单一性(是否试图同时做太多事情?)以及可验证性(能否证明其有效?)。
结果表明,这位 AI 学徒确实是一名强大的新员工。在仅仅识别什么是需求以及什么不是需求方面,该工具最先进的模型 DistilBERT 的表现优于测试的几乎所有其他方法,达到了很高的准确度。它学到了需求通常听起来非常正式且生硬(使用“应当”或“必须”等词汇),而非需求则听起来更像是行政性的闲聊。然而,论文指出 AI 并非万能;它在处理最微妙的人类细微差别方面仍然有些吃力。例如,虽然 AI 在识别“单一”需求(专注于一件事)方面做得很好,但在与人类就什么是“歧义”或“可验证”达成一致方面却感到更加困难。这表明,虽然 AI 可以捕捉到明显的错误,但那些最棘手、最具主观性的错误仍然需要人类的参与。
ARQM 最酷的特性之一是使用了可解释人工智能(XAI)。它不仅仅是说“这句话不好”,还会高亮显示导致它做出此判断的具体词汇。这就像一位老师在句子中用红笔圈出特定的短语,并写道:“这个词太模糊了。”这有助于人类作者理解为什么他们的需求需要修改,而不是仅仅得到一条晦涩的错误信息。
研究人员谨慎地指出,他们的工具还不是一个完美的、已解决的问题。他们发现训练数据存在一些差距;例如,关于“不可行”的需求案例非常少,这使得 AI 很难学习这一特定教训。他们还注意到,负责标注数据的专家们并不总是意见一致,这意味着 AI 有时不得不从相互冲突的指令中学习。尽管存在这些局限性,这项研究仍表明现代 AI 方法是一个重要的进步。它们可以学习旧有的基于规则的工具所错过的通用模式,从而为清理我们数字世界的蓝图提供一种更快、更全面的方式。论文总结道,虽然 ARQM 是一个强有力的开端,但这项技术的未来在于在更多样化的数据上进行训练,并帮助它理解其正在协助构建的项目中更深层的上下文。
您所在领域的论文太多了?
获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。