arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 2102.06292cs.SE
收藏

基于值和谓词的因果推理技术在故障定位中的应用

Improving Fault Localization by Integrating Value and Predicate Based Causal Inference Techniques

Yigit Kucuk, Tim A. D. Henderson, Andy Podgurski

摘要:

统计故障定位(SFL)技术使用来自软件执行的执行简档和成功/失败信息,结合统计推断,基于程序元素有多可能出错来自动对它们进行评分。SFL技术通常采用一种类型的配置文件数据:覆盖数据,谓词结果或变量值。大多数SFL技术实际上测量的是配置文件值与成功/失败之间的相关性,而不是因果关系,因此它们会受到混淆偏差的影响,从而扭曲了它们产生的分数。本文提出了一种新的SFL技术,命名为\emph{UniVal},它使用因果推理技术和机器学习整合谓词结果和变量值的信息,以更准确地估计真正的失败导致的程序语句的影响。\emph{UniVal}经验比较几个覆盖为基础的,基于谓词的,基于值的SFL技术上的800个程序版本与真正的故障。

英文摘要:

Statistical fault localization (SFL) techniques use execution profiles and success/failure information from software executions, in conjunction with statistical inference, to automatically score program elements based on how likely they are to be faulty. SFL techniques typically employ one type of profile data: either coverage data, predicate outcomes, or variable values. Most SFL techniques actually measure correlation, not causation, between profile values and success/failure, and so they are subject to confounding bias that distorts the scores they produce. This paper presents a new SFL technique, named \emph{UniVal}, that uses causal inference techniques and machine learning to integrate information about both predicate outcomes and variable values to more accurately estimate the true failure-causing effect of program statements. \emph{UniVal} was empirically compared to several coverage-based, predicate-based, and value-based SFL techniques on 800 program versions with real faults.

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

↑