中文
相关论文

相关论文: Extracting Concise Bug-Fixing Patches from Human-W…

200 篇论文

Automated program repair is a crucial task for improving the efficiency of software developers. Recently, neural-based techniques have demonstrated significant promise in generating correct patches for buggy code snippets. However, most…

软件工程 · 计算机科学 2023-05-17 Yuwei Zhang , Ge Li , Zhi Jin , Ying Xing

Bug-fix benchmarks are essential for evaluating methodologies in automatic program repair (APR) and fault localization (FL). However, existing benchmarks, exemplified by Defects4J, need to evolve to incorporate recent bug-fixes aligned with…

软件工程 · 计算机科学 2024-11-04 André Silva , Nuno Saavedra , Martin Monperrus

Automatic program repair papers tend to repeatedly use the same benchmarks. This poses a threat to the external validity of the findings of the program repair research community. In this paper, we perform an empirical study of automatic…

软件工程 · 计算机科学 2020-09-29 He Ye , Matias Martinez , Thomas Durieux , Martin Monperrus

Fix pattern-based patch generation is a promising direction in Automated Program Repair (APR). Notably, it has been demonstrated to produce more acceptable and correct patches than the patches obtained with mutation operators through…

软件工程 · 计算机科学 2019-02-18 Kui Liu , Anil Koyuncu , Dongsun Kim , Tegawendé F. Bisyandé

The most natural method for evaluating program repair systems is to run them on bug datasets, such as Defects4J. Yet, using this evaluation technique on arbitrary real-world programs requires heavy configuration. In this paper, we propose a…

软件工程 · 计算机科学 2022-02-22 Khashayar Etemadi , Niloofar Tarighat , Siddharth Yadav , Matias Martinez , Martin Monperrus

Refactoring is a common practice in software development, aimed at improving the internal code structure in order to make it easier to understand and modify. Consequently, it is often assumed that refactoring makes the code less prone to…

Bugs are essential in software engineering; many research studies in the past decades have been proposed to detect, localize, and repair bugs in software systems. Effectiveness evaluation of such techniques requires complex bugs, i.e.,…

软件工程 · 计算机科学 2025-09-10 Ali Reza Ibrahimzada , Yang Chen , Ryan Rong , Reyhaneh Jabbarvand

In the research of automated program repair (APR), benchmark datasets consisting of known defects in combination with test suites that indicate the defects are of high importance. They allow for an evidence-based comparison of different APR…

软件工程 · 计算机科学 2026-04-30 Adam Krafczyk , Klaus Schmid

It is widely recognized that program repair tools need to have a high precision to be useful, i.e., the generated patches need to have a high probability to be correct. However, it is fundamentally difficult to ensure the correctness of the…

软件工程 · 计算机科学 2020-04-28 Jingjing Liang , Ruyi Ji , Jiajun Jiang , Yiling Lou , Yingfei Xiong , Gang Huang

We present a study that characterizes the way developers use automatically generated patches when fixing software defects. Our study tasked two groups of developers with repairing defects in C programs. Both groups were provided with the…

软件工程 · 计算机科学 2019-11-26 José Pablo Cambronero , Jiasi Shen , Jürgen Cito , Elena Glassman , Martin Rinard

Software bugs in a production environment have an undesirable impact on quality of service, unplanned system downtime, and disruption in good customer experience, resulting in loss of revenue and reputation. Existing approaches to automated…

软件工程 · 计算机科学 2020-02-21 Anusha Bableshwar , Arun Ravindran , Manoj Iyer

Bug fixing is a complex and time-consuming task in software development. Bug localization research tends to focus on the accuracy of automated tools that suggest source code files for developers to look at. However, little is known about…

软件工程 · 计算机科学 2026-05-07 Pablo Diaz Pedreira , Tamara Lopez , Michel Wermelinger

Fixing software faults contributes significantly to the cost of software maintenance and evolution. Techniques for reducing these costs require datasets of software faults, as well as an understanding of the faults, for optimal testing and…

软件工程 · 计算机科学 2025-08-13 Dylan Callaghan , Alexandra van der Spuy , Bernd Fischer

By July 2025, smart contracts collectively manage roughly $120 billion in assets. With Solidity remaining the dominant language for smart contract development, the correctness of Solidity compilers has become critically important. However,…

编程语言 · 计算机科学 2025-12-03 Haoyang Ma , Alastair F. Donaldson , Qingchao Shen , Yongqiang Tian , Junjie Chen , Shing-Chi Cheung

Java applications include third-party dependencies as bytecode. To keep these applications secure, researchers have proposed tools to re-identify dependencies that contain known vulnerabilities. Yet, to allow such re-identification, one…

软件工程 · 计算机科学 2024-07-26 Stefan Schott , Wolfram Fischer , Serena Elisa Ponta , Jonas Klauke , Eric Bodden

In the past couple of decades, significant research efforts have been devoted to the prediction of software bugs (i.e., defects). In general, these works leverage a diverse set of metrics, tools, and techniques to predict which classes,…

软件工程 · 计算机科学 2024-08-06 Ehsan Mashhadi , Shaiful Chowdhury , Somayeh Modaberi , Hadi Hemmati , Gias Uddin

Static analyzers help find bugs early by warning about recurring bug categories. While fixing these bugs still remains a mostly manual task in practice, we observe that fixes for a specific bug category often are repetitive. This paper…

软件工程 · 计算机科学 2019-11-22 Johannes Bader , Andrew Scott , Michael Pradel , Satish Chandra

In the context of test case based automatic program repair (APR), patches that pass all the test cases but fail to fix the bug are called overfitted patches. Currently, patches generated by APR tools get inspected manually by the users to…

软件工程 · 计算机科学 2020-06-11 Ali Ghanbari

Software developers attempt to reproduce software bugs to understand their erroneous behaviours and to fix them. Unfortunately, they often fail to reproduce (or fix) them, which leads to faulty, unreliable software systems. However, to…

软件工程 · 计算机科学 2021-08-12 Mohammad Masudur Rahman , Foutse Khomh , Marco Castelluccio

Pointers are a powerful, but dangerous feature provided by the C and C++ programming languages, and incorrect use of pointers is a common source of bugs and security vulnerabilities. Making secure software is crucial, as vulnerabilities…

形式语言与自动机理论 · 计算机科学 2024-11-01 Vlad-Alexandru Teodorescu , Dorel Lucanu