首页> 外文OA文献 >On Oracles for Automated Diagnosis and Repair of Software Bugs
【2h】

On Oracles for Automated Diagnosis and Repair of Software Bugs

机译:关于Oracle的软件错误自动诊断和修复

摘要

This HDR focuses on my work on automatic diagnosis and repair done over the past years. Among my past publications, it highlights three contributions on this topic, respectively published in ACM Transactions on Software Engineering and Methodology (TOSEM), IEEE Transactions on Software Engineering (TSE) and Elsevier Information & Software Technology (IST). My goal is to show that those three contributions share something deep, that they are founded on a unifying concept, which is the one of oracle. The first contribution is about statistical oracles. In the context of object-oriented software, we have defined a notion of context and normality that is specific to a fault class: missing method calls. Those inferred regularities act as oracle and their violations are considered as bugs. The second contribution is about test case based oracles for automatic repair. We describe an automatic repair system that fixes failing test cases by generating a patch. It is founded on the idea of refining the knowledge given by the violation of the oracle of the failing test case into finer-grain information, which we call a “micro-oracle”. By considering micro-oracles, we are capable of obtaining at the same time a precise fault localization diagnostic and a well-formed input-output specification to be used for program synthesis in order to repair a bug. The third contribution discusses a novel generic oracle in the context of exception handling. A generic oracle states properties that hold for many domains. Our technique verifies the compliance to this new oracle using test suite execution and exception injection. This document concludes with a research agenda about the future of engineering ultra-dependable and antifragile software systems.
机译:这份HDR专注于我在过去几年中完成的有关自动诊断和修复的工作。在我过去的出版物中,它重点介绍了有关此主题的三篇论文,分别发表在ACM Transactions on Software Engineering and Methodology(TOSEM),IEEE Transactions on Software Engineering(TSE)和Elsevier Information&Software Technology(IST)上。我的目标是表明这三个贡献有很深的渊源,它们是基于一个统一的概念而建立的,这是预言家之一。第一个贡献是关于统计预言的。在面向对象软件的上下文中,我们定义了特定于故障类的上下文和常态的概念:缺少方法调用。这些推断出的规律性充当oracle,它们的违反被视为bug。第二个贡献是关于基于测试用例的自动修复Oracle。我们描述了一种自动修复系统,该系统通过生成补丁来修复失败的测试用例。它基于以下思想:将失败的测试案例的预言违规所提供的知识提炼为更细粒度的信息,我们称之为“微预言”。通过考虑微型Oracle,我们能够同时获得精确的故障定位诊断和格式正确的输入输出规范,以用于程序综合以修复错误。第三个贡献是在异常处理的上下文中讨论了一种新颖的通用Oracle。通用oracle声明了适用于许多域的属性。我们的技术使用测试套件执行和异常注入来验证对该新oracle的遵从性。本文档以关于工程超可靠和抗脆弱软件系统的未来的研究议程作为结尾。

著录项

  • 作者

    Monperrus Martin;

  • 作者单位
  • 年度 2016
  • 总页数
  • 原文格式 PDF
  • 正文语种 en
  • 中图分类

相似文献

  • 外文文献
  • 中文文献
  • 专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号