Richter, Cedric (2025) Neural Bug Detection. PhD, Universität Oldenburg.
|
Volltext (1610Kb) |
Abstract
Software bugs cost developers and companies significant time and money. To help developers find bugs early in the development process, neural bug detectors have been proposed. Neural bug detectors learn from millions of examples to find novel bugs in code. Although effective for simple bugs, they still have many limitations that make them difficult to use in practice. This thesis addresses two key challenges. First, prior work often relied on artificial mutants for training, which do not reflect real bugs. We propose a contextual mutator and mine public repositories for real bug fixes to create more realistic training data. Our evaluation shows that training with this data improves detection of real bugs. Second, current detectors often lack sufficient context, leading to false alarms. We propose an LLM-based validator that leverages extra context to reduce false alarms. Together, these contributions result in a neural bug detector that is significantly more accurate and practical for real-world use.
["eprint_fieldname_title_plus" not defined]
Neuronale Fehlererkennung
["eprint_fieldname_abstract_plus" not defined]
Softwarefehler kosten Entwicklern und Unternehmen viel Zeit und Geld. Um Fehler früh im Entwicklungsprozess zu finden, wurden Neural Bug Detectors vorgeschlagen. Diese Detektoren lernen aus Millionen von Beispielen, um neue Fehler im Code zu erkennen. Obwohl sie einfache Bugs erkennen können, haben sie noch viele Einschränkungen, die ihre praktische Nutzung erschweren. Diese Arbeit behandelt zwei zentrale Herausforderungen. Erstens basierte frühere Forschung oft auf künstlichen Mutationen, die reale Fehler nur unzureichend abbilden. Daher schlagen wir einen kontextbezogenen Mutationsoperator vor und extrahieren echte „Bug Fixes“ aus öffentlichen Projekten, um realistischere Trainingsdaten zu gewinnen. Unsere Evaluation zeigt, dass das Training auf diesen Daten die Erkennung realer Fehler verbessert. Zweitens fehlt bestehenden Detektoren oft Kontext, was zu Fehlalarmen führt. Wir entwickeln einen LLM-basierten Validator, der zusätzliche Kontext nutzt. Zusammen führen diese Beiträge zu einem neuronalen Fehlerdetektor, der wesentlich genauer und praktikabler für den realen Einsatz ist.
Item Type: | Thesis (PhD) |
---|---|
Uncontrolled Keywords: | Bug Detection, Mutation, Large Language Models, Bug Fixes, Mining |
Subjects: | Generalities, computers, information > Computer science, internet |
Divisions: | School of Computing Science, Business Administration, Economics and Law > Department of Computing Science |
Date Deposited: | 07 Jul 2025 12:37 |
Last Modified: | 07 Jul 2025 12:37 |
URI: | https://oops.uni-oldenburg.de/id/eprint/7224 |
URN: | urn:nbn:de:gbv:715-oops-73052 |
DOI: | |
Nutzungslizenz: |
Actions (login required)
![]() |
View Item |