arXivDaily arXiv每日学术速递 周一至周五更新
arXiv周末暂无论文更新,休息一下吧,周末愉快~~
arXiv 2602.03585cs.SE
收藏

代码覆盖率对引入缺陷影响的因果推断

Causal Inference for the Effect of Code Coverage on Bug Introduction

University of Passau(帕绍大学)

Lukas Schulte, Gordon Fraser, Steffen Herbold

AI总结:

本文通过因果推断方法研究代码覆盖率对缺陷引入的影响,分析其剂量-反应关系及非线性模式。

摘要:

背景:代码覆盖率被广泛用作软件质量保证措施。然而,其效果,特别是建议的剂量, 在研究和工程界都存在争议。先前的工作只报告了相关性关联,导致结果易受混杂因素影响。目标:我们旨在量化代码覆盖率(暴露)对引入缺陷(结果)在成熟JavaScript和TypeScript开源项目中的因果效应,解决整体效应及其在不同覆盖率水平上的变化。方法:我们构建了一个因果有向无环图以识别软件工程过程中的混杂因素,建模源代码、问题和审查系统以及持续集成中的关键变量。使用广义倾向评分调整,我们将应用基于双重稳健回归的因果推断方法,对新型缺陷引入和非缺陷引入更改的数据集进行连续暴露分析。我们估计平均治疗效应和剂量反应关系,以检查数据集中的项目中潜在的非线性模式(例如阈值或递减回报)。

英文摘要:

Context: Code coverage is widely used as a software quality assurance measure. However, its effect, and specifically the advisable dose, are disputed in both the research and engineering communities. Prior work reports only correlational associations, leaving results vulnerable to confounding factors. Objective: We aim to quantify the causal effect of code coverage (exposure) on bug introduction (outcome) in the context of mature JavaScript and TypeScript open source projects, addressing both the overall effect and its variance across coverage levels. Method: We construct a causal directed acyclic graph to identify confounders within the software engineering process, modeling key variables from the source code, issue- and review systems, and continuous integration. Using generalized propensity score adjustment, we will apply doubly robust regression-based causal inference for continuous exposure to a novel dataset of bug-introducing and non-bug-introducing changes. We estimate the average treatment effect and dose-response relationship to examine potential non-linear patterns (e.g., thresholds or diminishing returns) within the projects of our dataset.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑