English
Related papers

Related papers: Automated Fixing of Programs with Contracts

200 papers

Program repair is an integral part of every software system's life-cycle but can be extremely challenging. To date, researchers have proposed various automated program repair (APR) techniques to reduce efforts of manual debugging. However,…

Software Engineering · Computer Science 2021-04-13 Samuel Benton , Mengshi Zhang , Xia Li , Lingming Zhang

Smart contracts are susceptible to various security issues, among which access control (AC) vulnerabilities are particularly critical. While existing research has proposed multiple detection tools, the automatic and appropriate repair of AC…

Software Engineering · Computer Science 2025-07-22 Lyuye Zhang , Kaixuan Li , Kairan Sun , Daoyuan Wu , Ye Liu , Haoye Tian , Yang Liu

Beginning programmers struggle with the complex grammar of modern programming languages like Java, and make lot of syntax errors. The diagnostic syntax error messages from compilers and IDEs are sometimes useful, but often the messages are…

Software Engineering · Computer Science 2022-10-14 Toufique Ahmed , Noah Rose Ledesma , Premkumar Devanbu

Context: Software performance is a critical non-functional requirement, appearing in many fields such as mission critical applications, financial, and real time systems. In this work we focused on early detection of performance bugs; our…

Software Engineering · Computer Science 2017-02-28 Sokratis Tsakiltsidis , Andriy Miranskyy , Elie Mazzawi

The rising popularity of declarative languages and the hard to debug nature thereof have motivated the need for applicable, automated repair techniques for such languages. However, despite significant advances in the program repair of…

Software Engineering · Computer Science 2021-03-02 Simón Gutiérrez Brida , Germán Regis , Guolong Zhengz , Hamid Bagheriz , ThanhVu Nguyenz , Nazareno Aguirre , Marcelo Frias

Web end-to-end (e2e) testing evaluates the workflow of a web application. It simulates real-world user scenarios to ensure the application flows behave as expected. However, web e2e tests are notorious for being flaky, i.e., the tests can…

Software Engineering · Computer Science 2024-05-21 Xinyue Liu , Zihe Song , Weike Fang , Wei Yang , Weihang Wang

Can one estimate the number of remaining faults in a software system? A credible estimation technique would be immensely useful to project managers as well as customers. It would also be of theoretical interest, as a general law of software…

Software Engineering · Computer Science 2013-08-14 Carlo A. Furia , Bertrand Meyer , Manuel Oriol , Andrey Tikhomirov , Yi Wei

Fault localization is a critical process that involves identifying specific program elements responsible for program failures. Manually pinpointing these elements, such as classes, methods, or statements, which are associated with a fault…

Software Engineering · Computer Science 2024-03-18 Ratnadira Widyasari , Jia Wei Ang , Truong Giang Nguyen , Neil Sharma , David Lo

Fault localization is a crucial step of automated program repair, because accurately identifying program locations that are most closely implicated with a fault greatly affects the effectiveness of the patching process. An ideal fault…

Software Engineering · Computer Science 2024-10-03 Tongtong Xu , Liushan Chen , Yu Pei , Tian Zhang , Minxue Pan , Carlo A. Furia

Automatic program verification has made tremendous strides, but is not yet for the masses. How do we make it less painful? This article addresses one of the obstacles: the need to specify explicit "frame clauses", expressing what properties…

Software Engineering · Computer Science 2019-08-06 Victor Rivera , Bertrand Meyer

Due to the prohibitively high cost of creating error correction datasets, most Factual Claim Correction methods rely on a powerful verification model to guide the correction process. This leads to a significant drop in performance in…

Computation and Language · Computer Science 2023-10-16 Dhananjay Ashok , Atharva Kulkarni , Hai Pham , Barnabás Póczos

Fault injection is a key technique for assessing software reliability, enabling proactive detection of system defects before they manifest in production. However, the increasing complexity of microservice architectures leads to exponential…

Software Engineering · Computer Science 2026-01-22 Yuzhen Tan , Jian Wang , Shuaiyu Xie , Bing Li , Yunqing Yong , Neng Zhang , Shaolin Tan

In introductory programming courses, it is challenging for instructors to provide debugging feedback on students' incorrect programs. Some recent tools automatically offer program repair feedback by identifying any differences between…

Software Engineering · Computer Science 2021-07-15 Yunlong Lu , Na Meng , Wenxin Li

Providing feedback on programming assignments is a tedious task for the instructor, and even impossible in large Massive Open Online Courses with thousands of students. Previous research has suggested that program repair techniques can be…

Programming Languages · Computer Science 2018-06-21 Sumit Gulwani , Ivan Radiček , Florian Zuleger

Due to increasingly complex software design and rapid iterative development, code defects and security vulnerabilities are prevalent in modern software. In response, programmers rely on static analysis tools to regularly scan their…

Software Engineering · Computer Science 2022-03-21 Anant Kharkar , Roshanak Zilouchian Moghaddam , Matthew Jin , Xiaoyu Liu , Xin Shi , Colin Clement , Neel Sundaresan

In the context of test case based automated program repair (APR), the research community call the patches that pass all the test cases but fail to actually fix the bug test case overfitted patches. Currently, overfitted patches has to be…

Software Engineering · Computer Science 2020-07-27 Ali Ghanbari

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

Automatic programming has seen increasing popularity due to the emergence of tools like GitHub Copilot which rely on Large Language Models (LLMs). At the same time, automatically generated code faces challenges during deployment due to…

Software Engineering · Computer Science 2024-05-16 Michael R. Lyu , Baishakhi Ray , Abhik Roychoudhury , Shin Hwei Tan , Patanamon Thongtanunam

Being able to automatically repair programs is an extremely challenging task. In this paper, we present MintHint, a novel technique for program repair that is a departure from most of today's approaches. Instead of trying to fully automate…

Software Engineering · Computer Science 2013-09-17 Shalini Kaleeswaran , Varun Tulsian , Aditya Kanade , Alessandro Orso

Software plays a crucial role in our daily lives, and therefore the quality and security of software systems have become increasingly important. However, vulnerabilities in software still pose a significant threat, as they can have serious…

Software Engineering · Computer Science 2023-09-18 Chaozheng Wang , Zongjie Li , Yun Peng , Shuzheng Gao , Sirong Chen , Shuai Wang , Cuiyun Gao , Michael R. Lyu