Project Details
DeMoCo: Developer-Centered, Neural Models of Code
Applicant
Professor Dr. Michael Pradel
Subject Area
Software Engineering and Programming Languages
Term
since 2022
Project identifier
Deutsche Forschungsgemeinschaft (DFG) - Project number 492507603
Neural software analysis learns predictive models from large code corpora to address challenging software engineering tasks. It has been gaining momentum over recent years, complementing and sometimes even outperforming traditional program analysis. At the core of these techniques are neural models of code, i.e., deep learning models that reason about programs and their properties to make predictions useful to developers. Unfortunately, current neural models of code are mostly driven by what data is easily available, e.g., reading thousands of source code files from the first to the last token each, and they make predictions that are difficult to understand for humans, e.g., by classifying an entire method as buggy without further explanation. As a result, many current techniques achieve impressive accuracy but still remain of limited use to developers. This proposal puts the human developer into the center of neural models of code, shifting from a data-centered paradigm to a developer-centered paradigm. Concretely, we plan to pursue three strands of research, which will (i) increase our understanding of how human reasoning and neural reasoning about programs relate to each other, (ii) design neural models of code that imitate how developers reason about and explore code, and (iii) create models that not only predict properties of code but also explain the predictions to developers. Developer-centered neural models of code will be potentially applicable in a wide spectrum software engineering tasks. As concrete examples, this proposal will apply them to bug detection and fault localization.
DFG Programme
Research Grants