LLM2D
软件质量保证中的因果推理:系统综述
Causal Reasoning in Software Quality Assurance: A Systematic Review
作者: Luca Giamattei, Antonio Guerriero, Roberto Pietrantuono, Stefano Russo
发布日期: 10/11/2024
arXiv ID: oai:arXiv.org:2408.17183v2

摘要

背景:软件质量保证 (SQA) 是软件工程中至关重要的一部分,旨在向利益相关者保证软件产品在发布后按预期运行。机器学习 (ML) 已被证明能够提升 SQA 活动,并有助于开发高质量的软件系统。在此背景下,因果推理作为一种超越纯粹数据驱动方法的策略,通过利用因果关系来制定更有效的 SQA 策略,正受到越来越多的关注。目标:为了帮助研究人员进入这一研究领域,本文对因果推理在 SQA 活动中的应用进行了全面而深入的概述,并确定了应用空间、主要挑战和研究机会。方法:对因果推理在 SQA 方面的科学文献进行了系统性综述。该研究根据软件工程二级研究的既定指南,发现了 86 篇文章,并对其进行了分类和分析。结果:结果突出了因果推理在 SQA 中的主要应用领域、所用主要方法以及所提解决方案的成熟度。故障定位是因果推理应用最广泛的活动,尤其是在 Web 服务/微服务领域,但测试等其他任务也正在迅速普及。因果推断和因果发现都被利用,其中 Pearl 的因果图形表示法因其直观性而成为首选。支持其应用的工具正在迅速出现——其中大多数是在 2021 年之后出现的。结论:研究结果表明,因果推理对于 SQA 任务而言是一种有价值的手段,特别是在 V&V、演化和维护阶段,以确保可靠性,而它在... 阶段尚未得到充分利用。