Export Citations
Save this search
Please login to be able to save your searches and receive alerts for new content matching your search criteria.
- research-articleJanuary 2025
Adversarial patch generation for automated program repair
AbstractAutomated Program Repair has attracted significant research in recent years, leading to diverse techniques which focus on two main directions: search-based and semantic-based program repair. The former techniques often face challenges due to the ...
- research-articleDecember 2024
Automated patch correctness predicting to fix software defect
Expert Systems with Applications: An International Journal (EXWA), Volume 256, Issue Chttps://doi.org/10.1016/j.eswa.2024.124877AbstractAutomated Program Repair (APR) is a technique that can automatically fix software defects without manual debugging, playing a crucial role in software development and maintenance. However, the patches generated by APR still suffer from the ...
Highlights- APOSTLE is a learning-based unsupervised model with advanced pre-trained models.
- APOSTLE solves low code semantic feature extraction during code vectorization process.
- APOSTLE achieves competitive performances on large trusted ...
- surveyOctober 2024
Evolving Paradigms in Automated Program Repair: Taxonomy, Challenges, and Opportunities
ACM Computing Surveys (CSUR), Volume 57, Issue 2Article No.: 36, Pages 1–43https://doi.org/10.1145/3696450With the rapid development and large-scale popularity of program software, modern society increasingly relies on software systems. However, the problems exposed by software have also come to the fore. The software bug has become an important factor ...
- research-articleAugust 2024
T5APR: Empowering automated program repair across languages through checkpoint ensemble
Journal of Systems and Software (JSSO), Volume 214, Issue Chttps://doi.org/10.1016/j.jss.2024.112083AbstractAutomated program repair (APR) using deep learning techniques has become an important area of research in recent years, aiming to automatically generate bug-fixing patches that can improve software reliability and maintainability. However, most ...
Highlights- Multilingual neural program repair based on CodeT5, a pre-trained transformer model.
- Multitask learning on one model eliminates the need for separate language models.
- Checkpoint ensemble strategy enhances patch recommendation ...
-
- research-articleJuly 2024
Test-based patch clustering for automatically-generated patches assessment
Empirical Software Engineering (KLU-EMSE), Volume 29, Issue 5https://doi.org/10.1007/s10664-024-10503-2AbstractPrevious studies have shown that Automated Program Repair (apr) techniques suffer from the overfitting problem. Overfitting happens when a patch is run and the test suite does not reveal any error, but the patch actually does not fix the ...
Detecting, Creating, Repairing, and Understanding Indivisible Multi-Hunk Bugs
Proceedings of the ACM on Software Engineering (PACMSE), Volume 1, Issue FSEArticle No.: 121, Pages 2747–2770https://doi.org/10.1145/3660828This paper presents our approach proposed to detect and create indivisible multi-hunk bugs, an evaluation of existing repair techniques based on these bugs, and a study of the patches of these bugs constructed by the developers and existing tools. Multi-...
- research-articleJune 2024
Reality Check: Assessing GPT-4 in Fixing Real-World Software Vulnerabilities
EASE '24: Proceedings of the 28th International Conference on Evaluation and Assessment in Software EngineeringPages 252–261https://doi.org/10.1145/3661167.3661207Discovering and mitigating software vulnerabilities is a challenging task. These vulnerabilities are often caused by simple, otherwise (and in other contexts) harmless code snippets (e.g., unchecked path traversal). Large Language Models (LLMs) promise ...
- ArticleApril 2024
- research-articleApril 2024
Flexible control flow graph alignment for delivering data-driven feedback to novice programming learners
Journal of Systems and Software (JSSO), Volume 210, Issue Chttps://doi.org/10.1016/j.jss.2024.111960AbstractSupporting learners in introductory programming assignments at scale is a necessity. This support includes automated feedback on what learners did incorrectly. Existing approaches cast the problem as automatically repairing learners’ incorrect ...
Highlights- We adapt a “search, align and repair” approach to fix novice learner programs.
- We present a flexible program alignment scheme that enhances repair capabilities.
- Our experiments use programs from twenty real-world programming ...
- research-articleMarch 2024
Improving Automated Program Repair with Domain Adaptation
ACM Transactions on Software Engineering and Methodology (TOSEM), Volume 33, Issue 3Article No.: 65, Pages 1–43https://doi.org/10.1145/3631972Automated Program Repair (APR) is defined as the process of fixing a bug/defect in the source code, by an automated tool. APR tools have recently experienced promising results by leveraging state-of-the-art Neural Language Processing (NLP) techniques. APR ...
- research-articleMarch 2024
Extending the range of bugs that automated program repair can handle
Journal of Systems and Software (JSSO), Volume 209, Issue Chttps://doi.org/10.1016/j.jss.2023.111918AbstractModern automated program repair (APR) is well-tuned to finding and repairing bugs that introduce observable erroneous behavior to a program. However, a significant class of bugs does not lead to observable behavior (e.g., termination bugs and non-...
Highlights- A bug classification system based on observability, reproducibility, and tractability.
- Enable systematic exploration and comparison of APR approaches and find opportunities.
- Describes four classes of APR and identify when each can ...
- research-articleDecember 2023
Poracle: Testing Patches under Preservation Conditions to Combat the Overfitting Problem of Program Repair
ACM Transactions on Software Engineering and Methodology (TOSEM), Volume 33, Issue 2Article No.: 44, Pages 1–39https://doi.org/10.1145/3625293To date, the users of test-driven program repair tools suffer from the overfitting problem; a generated patch may pass all available tests without being correct. In the existing work, users are treated as merely passive consumers of the tests. However, ...
- research-articleDecember 2023
APR4Vul: an empirical study of automatic program repair techniques on real-world Java vulnerabilities
Empirical Software Engineering (KLU-EMSE), Volume 29, Issue 1https://doi.org/10.1007/s10664-023-10415-7AbstractSecurity vulnerability fixes could be a promising research avenue for Automated Program Repair (APR) techniques. In recent years, APR tools have been thoroughly developed for fixing generic bugs. However, the area is still relatively unexplored ...
- research-articleNovember 2023
RAP-Gen: Retrieval-Augmented Patch Generation with CodeT5 for Automatic Program Repair
ESEC/FSE 2023: Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software EngineeringPages 146–158https://doi.org/10.1145/3611643.3616256Automatic program repair (APR) is crucial to reduce manual debugging efforts for developers and improve software reliability. While conventional search-based techniques typically rely on heuristic rules or a redundancy assumption to mine fix patterns, ...
- research-articleJuly 2023
Program transformation landscapes for automated program modification using Gin
Empirical Software Engineering (KLU-EMSE), Volume 28, Issue 4https://doi.org/10.1007/s10664-023-10344-5AbstractAutomated program modification underlies two successful research areas — genetic improvement and program repair. Under the generate-and-validate strategy, automated program modification transforms a program, then validates the result against a ...
- research-articleMay 2023
Reliable Fix Patterns Inferred from Static Checkers for Automated Program Repair
- Kui Liu,
- Jingtang Zhang,
- Li Li,
- Anil Koyuncu,
- Dongsun Kim,
- Chunpeng Ge,
- Zhe Liu,
- Jacques Klein,
- Tegawendé F. Bissyandé
ACM Transactions on Software Engineering and Methodology (TOSEM), Volume 32, Issue 4Article No.: 96, Pages 1–38https://doi.org/10.1145/3579637Fix 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 genetic programming. ...
- research-articleApril 2023
Seeing the Whole Elephant: Systematically Understanding and Uncovering Evaluation Biases in Automated Program Repair
ACM Transactions on Software Engineering and Methodology (TOSEM), Volume 32, Issue 3Article No.: 65, Pages 1–37https://doi.org/10.1145/3561382Evaluation is the foundation of automated program repair (APR), as it provides empirical evidence on strengths and weaknesses of APR techniques. However, the reliability of such evaluation is often threatened by various introduced biases. Consequently, ...
- research-articleApril 2023
SSDTutor: A feedback-driven intelligent tutoring system for secure software development
Science of Computer Programming (SCPR), Volume 227, Issue Chttps://doi.org/10.1016/j.scico.2023.102933AbstractApplication Programming Interfaces (APIs) in cryptography typically impose concealed usage constraints. The violations of these usage constraints can lead to software crashes or security vulnerabilities. Several professional tools can ...
Highlights- An intelligent tutoring approach for educating secure software development.
- An ...
- ArticleNovember 2022
Tidy Up Your Source Code! Eliminating Wasteful Statements in Automatically Repaired Source Code
Product-Focused Software Process ImprovementPages 544–550https://doi.org/10.1007/978-3-031-21388-5_40AbstractAutomated program repair (APR) is a concept of automatically fixing bugs in source code to free developers from the burden of debugging. One of the issues facing search-based APR is that repaired code contains wasteful or meaningless statements ...