Exploiting Defect Prediction for Automatic Software Repair (Fixie)
利用缺陷预测进行自动软件修复 (Fixie)
基本信息
- 批准号:EP/S005730/1
- 负责人:
- 金额:$ 46.79万
- 依托单位:
- 依托单位国家:英国
- 项目类别:Research Grant
- 财政年份:2018
- 资助国家:英国
- 起止时间:2018 至 无数据
- 项目状态:已结题
- 来源:
- 关键词:
项目摘要
Software is now at the heart of almost everything we do in the world. This software remains largely handmade, and as such, is prone to defects. Testing detects only a sub-set of software defects with the rest laying dormant, sometimes for years. When these defects emerge in software systems the safety and business consequences can be severe. Software failures and their damaging consequences are regularly reported in the press. Finding and fixing defects has been an intransigent problem over many years. The traditional approach to this problem relies on finding defects during testing then developers manually fixing those defects afterwards.In this project we establish a new technique to automatically fix predicted defects in software code before testing. We use machine learning-based defect prediction information to generate automatic fixes using Genetic Improvement. Our approach aims to offer developers effective fixes to code which is predicted as defective. A higher proportion of the fixes our approach offers to developers should be acceptable, generated quicker and available earlier in the development cycle than previous attempts at automated repair. Importantly, our approach targets a wider pool of defects as it specifically includes targeting those dormant defects which are not identified by testing. Using our approach the developer will always remain in control of the code produced. Fixes are suggested, and the developer is the 'gate-keeper', deciding if a suggested fix is accepted, rejected, or can itself be modified to improve the code. One of the tangible outputs of the project will be a defect fixing tool (Fixie), which will provide support to developers in their daily coding activities. The tool will be developed in collaboration with several industrial partners and will be empirically evaluated throughout the project.
软件现在几乎是我们在世界上所做的一切的核心。这种软件在很大程度上仍然是手工制作的,因此很容易出现缺陷。测试只检测软件缺陷的一个子集,其余的则处于休眠状态,有时长达数年。当这些缺陷出现在软件系统中时,安全和业务后果可能是严重的。软件故障及其破坏性后果经常在新闻中报道。多年来,查找和修复缺陷一直是一个难以解决的问题。传统的解决方法是在测试过程中发现缺陷,然后由开发人员手动修复这些缺陷,本项目提出了一种新的技术,在测试前自动修复软件代码中的预测缺陷。我们使用基于机器学习的缺陷预测信息来生成使用遗传改进的自动修复。我们的方法旨在为开发人员提供有效的修复程序,以预测有缺陷的代码。与之前的自动修复尝试相比,我们的方法向开发人员提供的修复比例更高,应该是可以接受的,生成速度更快,并且在开发周期中更早可用。重要的是,我们的方法针对更广泛的缺陷池,因为它特别包括针对那些未通过测试识别的休眠缺陷。使用我们的方法,开发人员将始终保持对所生成代码的控制。建议修复,开发人员是“守门人”,决定是否接受,拒绝建议的修复,或者可以修改自己以改进代码。该项目的有形产出之一将是一个缺陷修复工具(Fixie),它将为开发人员的日常编码活动提供支持。该工具将与几个工业伙伴合作开发,并将在整个项目中进行经验评估。
项目成果
期刊论文数量(10)
专著数量(0)
科研奖励数量(0)
会议论文数量(0)
专利数量(0)
Fault-insertion and fault-fixing behavioural patterns in Apache Software Foundation Projects
- DOI:10.1016/j.infsof.2023.107187
- 发表时间:2023-02
- 期刊:
- 影响因子:0
- 作者:Marco Ortu;Giuseppe Destefanis;T. Hall;David Bowes
- 通讯作者:Marco Ortu;Giuseppe Destefanis;T. Hall;David Bowes
How Software Developers Mitigate Their Errors When Developing Code
软件开发人员在开发代码时如何减少错误
- DOI:10.1109/tse.2020.3040554
- 发表时间:2022
- 期刊:
- 影响因子:7.4
- 作者:Nagaria B
- 通讯作者:Nagaria B
An 80-20 Analysis of Buggy and Non-buggy Refactorings in Open-Source Commits
对开源提交中的错误和无错误重构的 80-20 分析
- DOI:10.1109/seaa56994.2022.00038
- 发表时间:2022
- 期刊:
- 影响因子:0
- 作者:Counsell S
- 通讯作者:Counsell S
Reducing Software Developer Human Errors by Improving Situation Awareness
通过提高态势感知来减少软件开发人员的人为错误
- DOI:10.1109/ms.2020.3014223
- 发表时间:2020
- 期刊:
- 影响因子:3.3
- 作者:Nagaria B
- 通讯作者:Nagaria B
On The Introduction of Automatic Program Repair in Bloomberg
浅谈Bloomberg自动程序修复功能的介绍
- DOI:10.1109/ms.2021.3071086
- 发表时间:2021
- 期刊:
- 影响因子:3.3
- 作者:Kirbas S
- 通讯作者:Kirbas S
{{
item.title }}
{{ item.translation_title }}
- DOI:
{{ item.doi }} - 发表时间:
{{ item.publish_year }} - 期刊:
- 影响因子:{{ item.factor }}
- 作者:
{{ item.authors }} - 通讯作者:
{{ item.author }}
数据更新时间:{{ journalArticles.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ monograph.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ sciAawards.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ conferencePapers.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ patent.updateTime }}
Tracy Hall其他文献
Relating Code Faults to Human Developer Characteristics
将代码错误与人类开发人员特征联系起来
- DOI:
- 发表时间:
2015 - 期刊:
- 影响因子:0
- 作者:
H. Sharp;Tracy Hall;David Bowes - 通讯作者:
David Bowes
Software quality programmes: a snapshot of theory versus reality
- DOI:
10.1007/bf00209182 - 发表时间:
1996-12-01 - 期刊:
- 影响因子:2.300
- 作者:
Tracy Hall;Norman E. Fenton - 通讯作者:
Norman E. Fenton
Semgrep*: Improving the Limited Performance of Static Application Security Testing (SAST) Tools
Semgrep*:提高静态应用程序安全测试 (SAST) 工具的有限性能
- DOI:
10.1145/3661167.3661262 - 发表时间:
2024 - 期刊:
- 影响因子:0
- 作者:
Gareth Bennett;Tracy Hall;Emily Winter;Steve Counsell - 通讯作者:
Steve Counsell
Implementing software metrics — the critical success factors
- DOI:
10.1007/bf00403557 - 发表时间:
1994-12-01 - 期刊:
- 影响因子:2.300
- 作者:
Tracy Hall;Norman Fenton - 通讯作者:
Norman Fenton
The Paradox of Analysing Gender-Based Data
分析基于性别的数据的悖论
- DOI:
- 发表时间:
2023 - 期刊:
- 影响因子:0
- 作者:
Steve Counsell;Emily Winter;Tracy Hall;Vesna Nowack - 通讯作者:
Vesna Nowack
Tracy Hall的其他文献
{{
item.title }}
{{ item.translation_title }}
- DOI:
{{ item.doi }} - 发表时间:
{{ item.publish_year }} - 期刊:
- 影响因子:{{ item.factor }}
- 作者:
{{ item.authors }} - 通讯作者:
{{ item.author }}
{{ truncateString('Tracy Hall', 18)}}的其他基金
USING FAULT CHARACTERISTICS TO IMPROVE SOFTWARE FAULT PREDICTION
利用故障特征改进软件故障预测
- 批准号:
EP/L011751/1 - 财政年份:2014
- 资助金额:
$ 46.79万 - 项目类别:
Research Grant
Using Program Slicing to Size Code Change
使用程序切片来调整代码更改的大小
- 批准号:
EP/F010206/1 - 财政年份:2008
- 资助金额:
$ 46.79万 - 项目类别:
Research Grant
Investigating code fault proneness using program slicing
使用程序切片调查代码错误倾向
- 批准号:
EP/E063039/1 - 财政年份:2008
- 资助金额:
$ 46.79万 - 项目类别:
Research Grant
Modelling Motivation in Software Engineering: A Feasibility Study
软件工程中的建模动机:可行性研究
- 批准号:
EP/D057272/1 - 财政年份:2006
- 资助金额:
$ 46.79万 - 项目类别:
Research Grant
相似海外基金
E-smart pipeline: defect prediction using microwave sensing and communication
电子智能管道:利用微波传感和通信进行缺陷预测
- 批准号:
505356-2016 - 财政年份:2019
- 资助金额:
$ 46.79万 - 项目类别:
Collaborative Research and Development Grants
Exploiting Defect Prediction for Automatic Software Repair (Fixie)
利用缺陷预测进行自动软件修复 (Fixie)
- 批准号:
EP/S005749/2 - 财政年份:2019
- 资助金额:
$ 46.79万 - 项目类别:
Research Grant
Exploiting Defect Prediction for Automatic Software Repair (Fixie)
利用缺陷预测进行自动软件修复 (Fixie)
- 批准号:
EP/S005803/1 - 财政年份:2019
- 资助金额:
$ 46.79万 - 项目类别:
Research Grant
DEFECTS - Comparable and Externally Valid Software Defect Prediction
DEFECTS - 可比较且外部有效的软件缺陷预测
- 批准号:
402774445 - 财政年份:2018
- 资助金额:
$ 46.79万 - 项目类别:
Research Grants
Stable Prediction of Defect-Inducing Software Changes (SPDISC)
导致缺陷的软件变更的稳定预测 (SPDISC)
- 批准号:
EP/R006660/2 - 财政年份:2018
- 资助金额:
$ 46.79万 - 项目类别:
Research Grant
Exploiting Defect Prediction for Automatic Software Repair (Fixie)
利用缺陷预测进行自动软件修复 (Fixie)
- 批准号:
EP/S005749/1 - 财政年份:2018
- 资助金额:
$ 46.79万 - 项目类别:
Research Grant
E-smart pipeline: defect prediction using microwave sensing and communication
电子智能管道:利用微波传感和通信进行缺陷预测
- 批准号:
505356-2016 - 财政年份:2018
- 资助金额:
$ 46.79万 - 项目类别:
Collaborative Research and Development Grants
Stable Prediction of Defect-Inducing Software Changes (SPDISC)
导致缺陷的软件变更的稳定预测 (SPDISC)
- 批准号:
EP/R006660/1 - 财政年份:2018
- 资助金额:
$ 46.79万 - 项目类别:
Research Grant
Process Modelling and Defect Prediction for Wire
线材工艺建模和缺陷预测
- 批准号:
2199349 - 财政年份:2018
- 资助金额:
$ 46.79万 - 项目类别:
Studentship
Deep defect and vulnerability prediction
深层缺陷和脆弱性预测
- 批准号:
505833-2017 - 财政年份:2017
- 资助金额:
$ 46.79万 - 项目类别:
Idea to Innovation