English
Related papers

Related papers: Learning Quick Fixes from Code Repositories

200 papers

Code auditing is the process of reviewing code with the aim of identifying bugs. Large Language Models (LLMs) have demonstrated promising capabilities for this task without requiring compilation, while also supporting user-friendly…

Software Engineering · Computer Science 2025-06-02 Jinyao Guo , Chengpeng Wang , Xiangzhe Xu , Zian Su , Xiangyu Zhang

As one of the most well-known programmer Q&A websites, Stack Overflow (i.e., SO) is serving tens of thousands of developers every day. Previous work has shown that many developers reuse the code snippets on SO when they find an answer (from…

Software Engineering · Computer Science 2022-04-28 Yuan Huang , Furen Xu , Haojie Zhou , Xiangping Chen , Xiaocong Zhou , Tong Wang

Context: Code refactoring is widely recognized as an essential software engineering practice that improves the understandability and maintainability of source code. Several studies attempted to detect refactoring activities through mining…

Software Engineering · Computer Science 2025-02-07 Eman Abdullah AlOmar

High-quality software products rely on both well-written source code and timely detection and thorough reporting of bugs. However, some programmers view bug reports as negative assessments of their work, leading them to withhold reporting…

Software Engineering · Computer Science 2024-03-19 Vitaly Alifanov , Kamil Almetov , Ivan Kornienko , Arsen Mutalapov , Yegor Bugayenko

Many automated program repair techniques have been proposed for fixing bugs. Some of these techniques use the information beyond the given buggy program and test suite to improve the quality of generated patches. However, there are several…

Software Engineering · Computer Science 2021-03-26 Shin Hwei Tan , Ziqiang Li , Lu Yan

Just-in-Time software defect prediction (JIT-SDP) plays a critical role in prioritizing risky code changes during code review and continuous integration. However, existing datasets often suffer from noisy labels and low precision in…

Software Engineering · Computer Science 2026-04-06 Doha Nam , Taehyoun Kim , Duksan Ryu , Jongmoon Baik

An important goal for programmers is to minimize cost of identifying and correcting defects in source code. Code review is commonly used for identifying programming defects. However, manual code review has some shortcomings: a) it is time…

Software Engineering · Computer Science 2018-09-13 Balwinder Sodhi , Shipra Sharma

Due to its potential to improve programmer productivity and software quality, automated program repair has been an active topic of research. Newer techniques harness neural networks to learn directly from examples of buggy programs and…

Machine Learning · Computer Science 2019-04-04 Marko Vasic , Aditya Kanade , Petros Maniatis , David Bieber , Rishabh Singh

Fuzzing has proven to be very effective for discovering certain classes of software flaws, but less effective in helping developers process these discoveries. Conventional crash-based fuzzers lack enough information about failures to…

Cryptography and Security · Computer Science 2024-11-04 Allison Naaktgeboren , Sean Noble Anderson , Andrew Tolmach , Greg Sullivan

Refactoring is the de-facto practice to optimize software health. While several studies propose refactoring strategies to optimize software design through applying design patterns and removing design defects, little is known about how…

Software Engineering · Computer Science 2021-11-16 Eman Abdullah AlOmar , Tianjia Wang , Vaibhavi Raut , Mohamed Wiem Mkaouer , Christian Newman , Ali Ouni

Reconstructing a method's change history efficiently and accurately is critical for many software engineering tasks, including maintenance, refactoring, and comprehension. Despite the availability of method history generation tools such as…

Software Engineering · Computer Science 2025-10-16 Shahidul Islam , Ashik Aowal , Md Sharif Uddin , Shaiful Chowdhury

This paper is about understanding the nature of bug fixing by analyzing thousands of bug fix transactions of software repositories. It then places this learned knowledge in the context of automated program repair. We give extensive…

Software Engineering · Computer Science 2018-07-06 Matias Martinez , Martin Monperrus

Linux kernel bug repair is typically approached as a direct mapping from crash reports to code patches. In practice, however, kernel fixes undergo iterative revision on mailing lists before acceptance, with reviewer feedback shaping…

Software Engineering · Computer Science 2026-04-07 Luyao Bai , Kenan Alghythee , Hang Zhang , Xiaoguang Wang

Immediate feedback has been shown to improve student learning. In programming courses, immediate, automated feedback is typically provided in the form of pre-defined test cases run by a submission platform. While these are excellent for…

Software developers write a lot of source code and documentation during software development. Intrinsically, developers often recall parts of source code or code summaries that they had written in the past while implementing software or…

Software Engineering · Computer Science 2021-09-13 Md Rizwan Parvez , Wasi Uddin Ahmad , Saikat Chakraborty , Baishakhi Ray , Kai-Wei Chang

Software systems evolve throughout their life cycles. Many revisions are produced over time. Model checking each revision of the software is impractical. Regression verification suggests reusing intermediate results from the previous…

Software Engineering · Computer Science 2018-06-14 Fei He , Qianshan Yu , Liming Cai

In this work, we developed an algorithm for detecting code quality issues in the templates of online programming tasks, validated it, and conducted an empirical study on the dataset of student solutions. The algorithm consists of analyzing…

Software Engineering · Computer Science 2023-04-26 Anastasiia Birillo , Elizaveta Artser , Yaroslav Golubev , Maria Tigina , Hieke Keuning , Nikolay Vyahhi , Timofey Bryksin

The validation of design pattern implementations to identify pattern violations has gained more relevance as part of re-engineering processes in order to preserve, extend, reuse software projects in rapid development environments. If design…

Software Engineering · Computer Science 2019-08-20 Tamer Abdelaziz , Aya Sedky , Bruno Rossi , Mostafa-Sami M. Mostafa

Identifying security issues early is encouraged to reduce the latent negative impacts on software systems. Code review is a widely-used method that allows developers to manually inspect modified code, catching security issues during a…

Software Engineering · Computer Science 2024-05-10 Wachiraphan Charoenwet , Patanamon Thongtanunam , Van-Thuan Pham , Christoph Treude

Modern programming languages, such as Java and C#, typically provide features that handle exceptions. These features separate error-handling code from regular source code and are proven to enhance the practice of software reliability,…

Software Engineering · Computer Science 2017-04-05 Guilherme B. de Pádua , Weiyi Shang