English
Related papers

Related papers: How Execution Features Relate to Failures: An Empi…

200 papers

Background: Debugging is a key task during the software development cycle. Spectrum-based Fault Localization (SFL) is a promising technique to improve and automate debugging. SFL techniques use control-flow spectra to pinpoint the most…

Regression bugs occur whenever software functionality that previously worked as desired stops working, or no longer works as expected. Code changes, such as bug fixes or new feature work, may result in a regression bug. Regression bugs are…

Software Engineering · Computer Science 2015-05-07 Dekel Cohen , Amiram Yehudai

Today, software systems have a significant role in various domains among which are healthcare, entertainment, transport and logistics, and many more. It is only natural that with this increasing dependency on software, the number of…

Software Engineering · Computer Science 2022-12-23 Filip Zamfirov

As the adoption of Deep Learning (DL) systems continues to rise, an increasing number of approaches are being proposed to test these systems, localise faults within them, and repair those faults. The best attestation of effectiveness for…

Software Engineering · Computer Science 2024-12-24 Gunel Jahangirova , Nargiz Humbatova , Jinhan Kim , Shin Yoo , Paolo Tonella

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

Test effectiveness refers to the capability of a test suite in exposing faults in software. It is crucial to be aware of factors that influence this capability. We aim at inferring the causal relationship between the two factors (i.e.,…

Software Engineering · Computer Science 2023-03-20 Alireza Aghamohammadi , Seyed-Hassan Mirian-Hosseinabadi

Nowadays, many applications do not exist independently but rely on various frameworks or libraries. The frequent evolution and the complex implementation of framework APIs induce many unexpected post-release crashes. Starting from the crash…

Software Engineering · Computer Science 2024-08-23 Jiwei Yan , Jinhao Huang , Chunrong Fang , Jun Yan , Jian Zhang

We present systematic and efficient solutions for both observability enhancement and root-cause diagnosis of post-silicon System-on-Chips (SoCs) validation with diverse usage scenarios. We model specification of interacting flows in typical…

Hardware Architecture · Computer Science 2021-02-10 Debjit Pal , Shobha Vasudevan

Even competent programmers make mistakes. Automatic verification can detect errors, but leaves the frustrating task of finding the erroneous line of code to the user. This paper presents an automatic approach for identifying potential error…

Logic in Computer Science · Computer Science 2014-09-17 Robert Koenighofer , Ronald Toegl , Roderick Bloem

Performance becomes an issue particularly when execution cost hinders the functionality of a program. Typically a profiler can be used to find program code execution which represents a large portion of the overall execution cost of a…

Software Engineering · Computer Science 2016-09-06 Brendan Cody-Kenny , Michael O'Neill , Stephen Barrett

In this paper, we propose a mathematical framework for automated bug localization. This framework can be briefly summarized as follows. A program execution can be represented as a rooted acyclic directed graph. We define an execution…

Software Engineering · Computer Science 2007-05-23 Tsuyoshi Ohta , Tadanori Mizuno

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

Flaky tests are defined as tests that manifest non-deterministic behaviour by passing and failing intermittently for the same version of the code. These tests cripple continuous integration with false alerts that waste developers' time and…

Software Engineering · Computer Science 2022-07-22 Sarra Habchi , Guillaume Haben , Jeongju Sohn , Adriano Franci , Mike Papadakis , Maxime Cordy , Yves Le Traon

We introduce a novel technique for finding real errors in programs. The technique is based on a synergy of three well-known methods: metacompilation, slicing, and symbolic execution. More precisely, we instrument a given program with a code…

Programming Languages · Computer Science 2012-01-24 Jiří Slabý , Jan Strejček , Marek Trtík

Memory corruption is a serious class of software vulnerabilities, which requires careful attention to be detected and removed from applications before getting exploited and harming the system users. Symbolic execution is a well-known method…

Cryptography and Security · Computer Science 2025-09-16 Sara Baradaran , Mahdi Heidari , Ali Kamali , Maryam Mouzarani

Software testing helps developers to identify bugs. However, awareness of bugs is only the first step. Finding and correcting the faulty program components is equally hard and essential for high-quality software. Fault localization…

Software Engineering · Computer Science 2020-03-05 Hannes Thaller , Lukas Linsbauer , Alexander Egyed , Stefan Fischer

Deep neural networks (DNNs) are becoming an integral part of most software systems. Previous work has shown that DNNs have bugs. Unfortunately, existing debugging techniques do not support localizing DNN bugs because of the lack of…

Software Engineering · Computer Science 2021-03-08 Mohammad Wardat , Wei Le , Hridesh Rajan

Debugging is one of the most time-consuming and expensive tasks in software development and circuit design. Several formula-based fault localisation (FBFL) methods have been proposed, but they fail to guarantee a set of diagnoses across all…

Software Engineering · Computer Science 2025-12-03 Pedro Orvalho , Marta Kwiatkowska , Mikoláš Janota , Vasco Manquinho

When debugging unintended program behavior, developers can often identify the point in the execution where the actual behavior diverges from the desired behavior. For example, a variable may get assigned a wrong value, which then negatively…

Software Engineering · Computer Science 2023-04-26 Islem Bouzenia , Yangruibo Ding , Kexin Pei , Baishakhi Ray , Michael Pradel

Benchmarks play an important role in evaluating the efficiency and effectiveness of solutions to automate several phases of the software development lifecycle. Moreover, if well designed, they also serve us well as an important artifact to…

Software Engineering · Computer Science 2019-05-24 Thomas Durieux , Rui Abreu