English
Related papers

Related papers: Bugsplainer: Leveraging Code Structures to Explain…

200 papers

Many software analysis methods have come to rely on machine learning approaches. Code segmentation - the process of decomposing source code into meaningful blocks - can augment these methods by featurizing code, reducing noise, and limiting…

Software Engineering · Computer Science 2019-07-23 Jacob Dormuth , Ben Gelman , Jessica Moore , David Slater

Machine learning tasks entail the use of complex computational pipelines to reach quantitative and qualitative conclusions. If some of the activities in a pipeline produce erroneous or uninformative outputs, the pipeline may fail or produce…

Machine Learning · Computer Science 2020-02-13 Raoni Lourenço , Juliana Freire , Dennis Shasha

Automated software debugging is a crucial task for improving the productivity of software developers. Many neural-based techniques have been proven effective for debugging-related tasks such as bug localization and program repair (or bug…

Software Engineering · Computer Science 2022-12-23 Nghi D. Q. Bui , Yue Wang , Steven Hoi

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

The software development process is characterized by an iterative cycle of continuous functionality implementation and debugging, essential for the enhancement of software quality and adaptability to changing requirements. This process…

Software Engineering · Computer Science 2024-11-27 Yihao Qin , Shangwen Wang , Yan Lei , Zhuo Zhang , Bo Lin , Xin Peng , Liqian Chen , Xiaoguang Mao

The test failure causes analysis is critical since it determines the subsequent way of handling different types of bugs, which is the prerequisite to get the bugs properly analyzed and fixed. After a test case fails, software testers have…

Software Engineering · Computer Science 2024-05-07 Zhipeng Gao , Zhipeng Xue , Xing Hu , Weiyi Shang , Xin Xia

Context: Learning-based automatic program repair techniques are showing promise to provide quality fix suggestions for detected bugs in the source code of the software. These tools mostly exploit historical data of buggy and fixed code…

Software Engineering · Computer Science 2020-10-07 Faria Huq , Masum Hasan , Mahim Anzum Haque Pantho , Sazan Mahbub , Anindya Iqbal , Toufique Ahmed

To remain useful for their users, software systems need to continuously enhance and extend their functionality. Nevertheless, in many object-oriented applications, features are not represented explicitly. The lack of modularization is known…

Software Engineering · Computer Science 2014-07-07 T. Pandiyavathi

Hardware complexity continues to strain verification resources, motivating the adoption of machine learning (ML) methods to improve debug efficiency. However, ML-assisted debugging critically depends on diverse and scalable bug datasets,…

Software Engineering · Computer Science 2025-06-19 Surya Jasper , Minh Luu , Evan Pan , Aakash Tyagi , Michael Quinn , Jiang Hu , David Kebo Houngninou

Repairnator is a bot. It constantly monitors software bugs discovered during continuous integration of open-source software and tries to fix them automatically. If it succeeds to synthesize a valid patch, Repairnator proposes the patch to…

Software Engineering · Computer Science 2018-10-16 Martin Monperrus , Simon Urli , Thomas Durieux , Matias Martinez , Benoit Baudry , Lionel Seinturier

Compilers are complex, and significant effort has been expended on testing them. Techniques such as random program generation and differential testing have proved highly effective and have uncovered thousands of bugs in production…

Software Engineering · Computer Science 2025-01-03 Davide Italiano , Chris Cummins

Software quality assurance remains a major challenge in industrial environments, where large-scale and long-lived systems inevitably accumulate defects. Identifying the location of a fault is often time-consuming and costly, particularly…

Software Engineering · Computer Science 2026-05-14 Pernilla Hall , Anton Ununger , Riccardo Rubei , Alessio Bucaioni

We study the problem of semantic code repair, which can be broadly defined as automatically fixing non-syntactic bugs in source code. The majority of past work in semantic code repair assumed access to unit tests against which candidate…

Artificial Intelligence · Computer Science 2017-10-31 Jacob Devlin , Jonathan Uesato , Rishabh Singh , Pushmeet Kohli

Context. JavaScript is a popular programming language today with several implementations competing for market dominance. Although a specification document and a conformance test suite exist to guide engine development, bugs occur and have…

Software Engineering · Computer Science 2020-12-08 Igor Lima , Jefferson Silva , Breno Miranda , Gustavo Pinto , Marcelo d'Amorim

Bug severity prediction is important in software maintenance, because it helps the development teams to prioritize bugs that have a significant impact on the operation, stability and security of the system. In large software projects bug…

Software Engineering · Computer Science 2026-03-03 Nafisha Tamanna Nice

Debugging ML software (i.e., the detection, localization and fixing of faults) poses unique challenges compared to traditional software largely due to the probabilistic nature and heterogeneity of its development process. Various methods…

Software Engineering · Computer Science 2025-03-06 Thanh-Dat Nguyen , Haoye Tian , Bach Le , Patanamon Thongtanunam , Shane McIntosh

Sophisticated attackers find bugs in software, evaluate their exploitability, and then create and launch exploits for bugs found to be exploitable. Most efforts to secure software attempt either to eliminate bugs or to add mitigations that…

Cryptography and Security · Computer Science 2018-08-03 Zhenghao Hu , Yu Hu , Brendan Dolan-Gavitt

In games, and more generally in the field of software development, early detection of bugs is vital to maintain a high quality of the final product. Automated tests are a powerful tool that can catch a problem earlier in development by…

Machine Learning · Computer Science 2024-06-12 Leonardo Marini , Linus Gisslén , Alessandro Sestini

Modern 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 such observable behavior (e.g.,…

Software Engineering · Computer Science 2022-11-09 Omar I. Al-Bataineh , Leon Moonen

Real bug fixes found in open source repositories seem to be the perfect source for learning to localize and repair real bugs. However, the absence of large scale bug fix collections has made it difficult to effectively exploit real bug…

Software Engineering · Computer Science 2022-07-04 Cedric Richter , Heike Wehrheim