English
Related papers

Related papers: Finding Failure Causes through Automated Testing

200 papers

Nowadays, the consequences of failure and downtime of distributed systems have become more and more severe. As an obvious solution, these systems incorporate protection mechanisms to tolerate faults that could cause systems failures and…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-02-19 Andrey A. Shchurov , Radek Marik

Automatically detecting software failures is an important task and a longstanding challenge. It requires finding failure-inducing test cases whose test input can trigger the software's fault, and constructing an automated oracle to detect…

Software Engineering · Computer Science 2023-09-12 Tsz-On Li , Wenxi Zong , Yibo Wang , Haoye Tian , Ying Wang , Shing-Chi Cheung , Jeff Kramer

Concolic testing is a popular dynamic validation technique that can be used for both model checking and automatic test case generation. We have recently introduced concolic testing in the context of logic programming. In contrast to…

Logic in Computer Science · Computer Science 2016-08-11 Fred Mesnard , Etienne Payet , German Vidal

Recent years have witnessed impressive robotic manipulation systems driven by advances in imitation learning and generative modeling, such as diffusion- and flow-based approaches. As robot policy performance increases, so does the…

In order to plan for failure recovery, the designers of cloud systems need to understand how their system can potentially fail. Unfortunately, analyzing the failure behavior of such systems can be very difficult and time-consuming, due to…

Software Engineering · Computer Science 2022-03-09 Domenico Cotroneo , Luigi De Simone , Pietro Liguori , Roberto Natella , Nematollah Bidokhti

Software developers frequently adopt deep learning (DL) libraries to incorporate learning solutions into software systems. However, misuses of these libraries can cause various DL faults. Among them, tensor shape faults are most prevalent.…

Software Engineering · Computer Science 2021-06-08 Dangwei Wu , Beijun Shen , Yuting Chen

Software testing is a mandatory activity in any serious software development process, as bugs are a reality in software development. This raises the question of quality: good tests are effective in finding bugs, but until a test case…

Software Engineering · Computer Science 2023-07-14 Daniel Lucrédio , Auri Marcelo Rizzo Vincenzi , Eduardo Santana de Almeida , Iftekhar Ahmed

The software development lifecycle depends heavily on the testing process, which is an essential part of finding issues and reviewing the quality of software. Software testing can be done in two ways: manually and automatically. With an…

Software Engineering · Computer Science 2024-05-06 Hussein Mohammed Ali , Mahmood Yashar Hamza , Tarik Ahmed Rashid

Machine learning is nowadays a standard technique for data analysis within software applications. Software engineers need quality assurance techniques that are suitable for these new kinds of systems. Within this article, we discuss the…

Software Engineering · Computer Science 2022-01-24 Steffen Herbold , Tobias Haar

Root cause analysis (RCA) is essential for diagnosing failures within complex software systems to ensure system reliability. The highly distributed and interdependent nature of modern cloud-based systems often complicates RCA efforts,…

Software Engineering · Computer Science 2026-02-02 Evelien Riddell , James Riddell , Gengyi Sun , Michał Antkiewicz , Krzysztof Czarnecki

Causal consistency is one of the most adopted consistency criteria for distributed implementations of data structures. It ensures that operations are executed at all sites according to their causal precedence. We address the issue of…

Logic in Computer Science · Computer Science 2016-11-16 Ahmed Bouajjani , Constantin Enea , Rachid Guerraoui , Jad Hamza

This paper introduces DDMIN-LOC, a technique that combines Delta Debugging Minimization (DDMIN) with Spectrum-Based Fault Localization (SBFL). It can be applied to programs taking string inputs, even when only a single failure-inducing…

Software Engineering · Computer Science 2026-01-09 Charaka Geethal Kapugama

We motivate and propose a new way of thinking about failure detectors which allows us to define, quite surprisingly, what it means to solve a distributed task \emph{wait-free} \emph{using a failure detector}. In our model, the system is…

Distributed, Parallel, and Cluster Computing · Computer Science 2012-05-15 Carole Delporte-Gallet , Hugues Fauconnier , Eli Gafni , Petr Kuznetsov

A gradual type system allows developers to declare certain types to be enforced by the compiler (i.e., statically typed), while leaving other types to be enforced via runtime checks (i.e., dynamically typed). When runtime checks fail,…

Programming Languages · Computer Science 2025-03-03 Felipe Bañados Schwerter , Ronald Garcia , Reid Holmes , Karim Ali

As quantum computers continue to improve in quality and scale, there is a growing need for accessible software frameworks for programming them. However, the unique behavior of quantum systems means specialized approaches, beyond traditional…

Quantum Physics · Physics 2025-09-04 Nils Quetschlich , Olivia Di Matteo

Identifying the failure modes of cloud computing systems is a difficult and time-consuming task, due to the growing complexity of such systems, and the large volume and noisiness of failure data. This paper presents a novel approach for…

Artificial Intelligence · Computer Science 2022-03-09 Domenico Cotroneo , Luigi De Simone , Pietro Liguori , Roberto Natella

Debugging formal verification (FV) failures represents one of the most time-consuming bottlenecks in modern hardware design workflows. When properties fail, engineers must manually trace through complex counter-examples spanning multiple…

Hardware Architecture · Computer Science 2025-10-21 Yunsheng Bai , Ghaith Bany Hamad , Chia-Tung Ho , Syed Suhaib , Haoxing Ren

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

Automatic performance debugging of parallel applications usually involves two steps: automatic detection of performance bottlenecks and uncovering their root causes for performance optimization. Previous work fails to resolve this…

Distributed, Parallel, and Cluster Computing · Computer Science 2010-02-24 Xu Liu , Lin Yuan , Jianfeng Zhan , Bibo Tu , Dan Meng

As most parallel and distributed programs are internally non-deterministic -- consecutive runs with the same input might result in a different program flow -- vanilla cyclic debugging techniques as such are useless. In order to use cyclic…

Software Engineering · Computer Science 2007-05-23 Michiel Ronsse , Koen De Bosschere , Jacques Chassin de Kergommeaux