EPSRC logo

Details of Grant 

EPSRC Reference: EP/S005730/1
Title: Exploiting Defect Prediction for Automatic Software Repair (Fixie)
Principal Investigator: Hall, Professor T
Other Investigators:
Counsell, Professor SJ
Researcher Co-Investigators:
Project Partners:
Bloomberg LP Microsoft Sky UK Limited
TESM Limited
Department: Computing & Communications
Organisation: Lancaster University
Scheme: Standard Research
Starts: 01 November 2018 Ends: 31 October 2022 Value (£): 367,238
EPSRC Research Topic Classifications:
Software Engineering
EPSRC Industrial Sector Classifications:
Information Technologies
Related Grants:
EP/S005749/2 EP/S005803/1 EP/S005749/1
Panel History:
Panel DatePanel NameOutcome
04 Jul 2018 EPSRC ICT Prioritisation Panel July 2018 Announced
Summary on Grant Application Form
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.
Key Findings
This information can now be found on Gateway to Research (GtR) http://gtr.rcuk.ac.uk
Potential use in non-academic contexts
This information can now be found on Gateway to Research (GtR) http://gtr.rcuk.ac.uk
Impacts
Description This information can now be found on Gateway to Research (GtR) http://gtr.rcuk.ac.uk
Summary
Date Materialised
Sectors submitted by the Researcher
This information can now be found on Gateway to Research (GtR) http://gtr.rcuk.ac.uk
Project URL:  
Further Information:  
Organisation Website: http://www.lancs.ac.uk