IDEFIX: Identifying and Fixing Incomplete Patches
Facts
Software Engineering and Programming Languages
DFG Individual Research Grant
![]()
Description
Re-opened bugs due to incomplete patches by developers are a major cost driver for software projects. In this project, we aim to investigate patches and identify whether there are alternative execution paths leading to a problematic code line where e.g. a crash has occurred or an exception has been raised. If these paths are not covered by an existing patch, a tool should inform the developer of related inputs that induce them and recommend potential patches for these paths. Therefore, we aim to present the partition of the input space that would cover relevant paths to the developer, and in the best case also provide the supplementary patches. Based on this vision, we aim to solve the following research questions: (a) How to construct the alternative fault-triggering paths in an efficient and effective way? and (b) How to generate patches that would fix the defect induced by the alternative paths? For the first question, we will develop and systematically evaluate techniques based on directed symbolic execution and witness-based software verification. We will merge similar execution paths into tubes to better understand the software system and the failure. For the second research question, we will create a synthesis-based patch generator, which will synthesize code that corrects faulty tubes.
Topics
Project manager
- Person
Prof. Dr. Lars Grunske
- Mathematisch-Naturwissenschaftliche Fakult?t
- Institut für Informatik