English
Related papers

Related papers: Path Conditions Help to Locate and Localize Faults…

200 papers

Debugging is difficult. Recent studies show that automatic bug localization techniques have limited usefulness. One of the reasons is that programmers typically have to understand why the program fails before fixing it. In this work, we aim…

Software Engineering · Computer Science 2019-11-22 Jun Sun , Long H. Pham , Lyly Tran Thi , Jingyi Wang , Xin Peng

Finding and fixing bugs are time-consuming activities in software development. Spectrum-based fault localization aims to identify the faulty position in source code based on the execution trace of test cases. Failing test cases and their…

Software Engineering · Computer Science 2018-07-06 Jifeng Xuan , Martin Monperrus

Software bugs are prevalent in modern software systems and notoriously hard to debug manually. Therefore, a large body of research efforts have been dedicated to automated software debugging, including both automated fault localization and…

Software Engineering · Computer Science 2019-10-04 Yiling Lou , Ali Ghanbari , Xia Li , Lingming Zhang , Dan Hao , Lu Zhang

Statistical fault localization is an easily deployed technique for quickly determining candidates for faulty code locations. If a human programmer has to search the fault beyond the top candidate locations, though, more traditional…

Software Engineering · Computer Science 2021-01-11 Ezekiel Soremekun , Lukas Kirschner , Marcel Böhme , Andreas Zeller

Pseudocode is extensively used in introductory programming courses to instruct computer science students in algorithm design, utilizing natural language to define algorithmic behaviors. This learning approach enables students to convert…

Computers and Society · Computer Science 2024-10-30 Zhenyu Xu , Kun Zhang , Victor S. Sheng

This work proposes an approach to locate leaks by identifying the parameters of finite models associated with these fault events. The identification problem is attacked by using well-known identification methods such as the Prediction Error…

Optimization and Control · Mathematics 2017-06-21 L. Torres

Background: Custom static analysis rules, i.e., rules specific for one or more applications, have been successfully applied to perform corrective and preventive software maintenance. Pattern-Driven Maintenance (PDM) is a method designed to…

Software Engineering · Computer Science 2021-11-19 Diogo Silveira Mendonça , Marcos Kalinowski

Fault localization is one of the most time-consuming and error-prone parts of software debugging. There are several tools for helping developers in the fault localization process, however, they mostly target programs written in Java and…

Software Engineering · Computer Science 2021-08-30 Qusay Idrees Sarhan , Attila Szatmari , Rajmond Toth , Arpad Beszedes

A model checker can produce a trace of counterexample, for an erroneous program, which is often long and difficult to understand. In general, the part about the loops is the largest among the instructions in this trace. This makes the…

Artificial Intelligence · Computer Science 2015-03-19 Mohammed Bekkouche

We describe the integration of logical and uncertain reasoning methods to identify the likely source and location of software problems. To date, software engineers have had few tools for identifying the sources of error in complex software…

Artificial Intelligence · Computer Science 2013-03-08 Lisa J. Burnell , Eric J. Horvitz

Fault localization has been determined as a major resource factor in the software development life cycle. Academic fault localization techniques are mostly unknown and unused in professional environments. Although manual debugging…

Software Engineering · Computer Science 2021-03-04 Thomas Hirsch

Traditional spectrum-based fault localization (SBFL) exploits differences in a program's coverage spectrum when run on passing and failing test cases. However, such runs can provide a wealth of additional information beyond mere coverage.…

Software Engineering · Computer Science 2025-03-07 Julian Aron Prenner , Romain Robbes

Fault localization is a fundamental aspect of debugging, aiming to identify code regions likely responsible for failures. Traditional techniques primarily correlate statement execution with failures, yet program behavior is influenced by…

Software Engineering · Computer Science 2025-02-27 Marius Smytzek , Martin Eberlein , Lars Grunske , Andreas Zeller

We propose a novel approach to improving software security called Cryptographic Path Hardening, which is aimed at hiding security vulnerabilities in software from attackers through the use of provably secure and obfuscated cryptographic…

Software Engineering · Computer Science 2012-02-03 Vijay Ganesh , Michael Carbin , Martin Rinard

Software crashes due to its increasing complexity. Once a crash happens, a crash report could be sent to software developers for investigation upon user permission. Because of the large number of crash reports and limited information,…

Software Engineering · Computer Science 2014-04-17 Liang Gong , Hongyu Zhang , Hyunmin Seo , Sunghun Kim

Despite being one of the most basic tasks in software development, debugging is still performed in a mostly manual way, leading to high cost and low performance. To address this problem, researchers have studied promising approaches, such…

Software Engineering · Computer Science 2017-11-28 Higor A. de Souza , Marcos L. Chaim , Fabio Kon

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

Increasing the automaticity of proofs in deductive verification of C programs is a challenging task. When applied to industrial C programs known heuristics to generate simpler verification conditions are not efficient enough. This is mainly…

Logic in Computer Science · Computer Science 2011-05-24 Jean-François Couchot , Alain Giorgetti , Nicolas Stouls

We present an algorithm for tests generation tools based on symbolic execution. The algorithm is supposed to help in situations, when a tool is repeatedly failing to cover some code by tests. The algorithm then provides the tool a necessary…

Symbolic Computation · Computer Science 2011-12-21 Marek Trtík

We present a general method for fault localization based on abstracting over program traces, and a tool that implements the method using Ernst's notion of potential invariants. Our experiments so far have been unsatisfactory, suggesting…

Software Engineering · Computer Science 2007-05-23 Brock Pytlik , Manos Renieris , Shriram Krishnamurthi , Steven P. Reiss