English
Related papers

Related papers: Statically Verifying Continuous Integration Config…

200 papers

Registers in IP blocks of an SoC perform a variety of functions, most of which are essential to the SoC operation. The complexity of register implementation is relatively low when compared with other design blocks. However, the extensive…

Hardware Architecture · Computer Science 2024-10-22 Shuhang Zhang , Bryan Olmos , Basavaraj Naik

Two heuristics namely diversity-based (DBTP) and history-based test prioritization (HBTP) have been separately proposed in the literature. Yet, their combination has not been widely studied in continuous integration (CI) environments. The…

Software Engineering · Computer Science 2018-09-05 Alireza Haghighatkhah , Mika Mäntylä , Markku Oivo , Pasi Kuvaja

Pointers are a powerful, but dangerous feature provided by the C and C++ programming languages, and incorrect use of pointers is a common source of bugs and security vulnerabilities. Making secure software is crucial, as vulnerabilities…

Formal Languages and Automata Theory · Computer Science 2024-11-01 Vlad-Alexandru Teodorescu , Dorel Lucanu

Software systems evolve throughout their life cycles. Many revisions are produced over time. Model checking each revision of the software is impractical. Regression verification suggests reusing intermediate results from the previous…

Software Engineering · Computer Science 2018-06-14 Fei He , Qianshan Yu , Liming Cai

Compiler optimization techniques are inherently complex, and rigorous testing of compiler optimization implementation is critical. Recent years have witnessed the emergence of testing approaches for uncovering incorrect optimization bugs,…

Software Engineering · Computer Science 2025-04-08 Jingwen Wu , Jiajing Zheng , Zhenyu Yang , Zhongxing Yu

In principle, Continuous Integration (CI) pipeline failures provide valuable feedback to developers on code-related errors. In practice, however, pipeline jobs often fail intermittently due to non-deterministic tests, network outages,…

Software Engineering · Computer Science 2026-04-07 Henri Aïdasso , Francis Bordeleau , Ali Tizghadam

Combinatorial interaction testing (CIT) is a well-known technique, but the industrial experience is needed to determine its effectiveness in different application domains. We present a case study introducing a unified framework for…

Software Engineering · Computer Science 2019-03-14 Bestoun S. Ahmed , Amador Pahim , Cleber R. Rosa Junior , D. Richard Kuhn , Miroslav Bures

Secret-dependent timing behavior in cryptographic implementations has resulted in exploitable vulnerabilities, undermining their security. Over the years, numerous tools to automatically detect timing leakage or even to prove their absence…

Cryptography and Security · Computer Science 2023-04-25 Jan Wichelmann , Florian Sieck , Anna Pätschke , Thomas Eisenbarth

Software Energy Consumption(SEC) is gaining more and more attention. In this paper, we tackle the problem of hinting developers about the SEC of their programs in the context of software developments based on Continuous Integration(CI). In…

Software Engineering · Computer Science 2021-08-13 Benjamin Danglot , Jean-Rémy Falleri , Romain Rouvoy

Change-based testing is a key component of continuous integration at Facebook. However, a large number of tests coupled with a high rate of changes committed to our monolithic repository make it infeasible to run all potentially-impacted…

Software Engineering · Computer Science 2019-05-31 Mateusz Machalica , Alex Samylkin , Meredith Porth , Satish Chandra

Continuous Software Engineering (CSE) is widely adopted in the industry, integrating practices such as Continuous Integration and Continuous Deployment (CI/CD). Beyond technical aspects, CSE also encompasses business activities like…

Software Engineering · Computer Science 2025-05-09 Anastasiia Tkalich , Eriks Klotins , Nils Brede Moe

Improper Input Validation (IIV) is a software vulnerability that occurs when a system does not safely handle input data. Even though IIV is easy to detect and fix, it still commonly happens in practice. In this paper, we study to what…

Software Engineering · Computer Science 2021-02-15 Larissa Braz , Enrico Fregnan , Gül Çalikli , Alberto Bacchelli

Combinatorial interaction testing (CIT) is a useful testing technique to address the interaction of input parameters in software systems. In many applications, the technique has been used as a systematic sampling technique to sample the…

Software Engineering · Computer Science 2019-07-23 Bestoun S. Ahmed , Angelo Gargantini , Kamal Z. Zamli , Cemal Yilmaz , Miroslav Bures , Marek Szeles

This paper summarizes our efforts to aid human reasoning when verification fails through the use of two distinct Formalization Integrated Development Environments (F-IDEs) that we have developed. Both environments are modular and facilitate…

Logic in Computer Science · Computer Science 2021-11-17 Yu-Shan Sun , Daniel Welch , Murali Sitaraman

Writing documentation about software internals is rarely considered a rewarding activity. It is highly time-consuming and the resulting documentation is fragile when the software is continuously evolving in a multi-developer setting.…

Software Engineering · Computer Science 2013-11-13 Tobias Kuhn , Alexandre Bergel

Complementing concurrent checking with online testing is crucial for preventing fault accumulation in fault-tolerant systems with long mission times. While implementing a non-intrusive online test is cumbersome in a synchronous environment,…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-06-09 Jürgen Maier , Andreas Steininger

The increasing demand for electronics is driving shorter development cycles for application-specific integrated circuits (ASICs). To meet these constraints, hardware designers emphasize reusability and modularity of IP blocks, leveraging…

Hardware Architecture · Computer Science 2025-02-05 Risto Pejašinović , Alessandro Caratelli , Anvesh Nookala , Benoît Walter Denkinger , Marco Andorno

VeriFast is a prototype tool based on separation logic for modular verification of C and Java programs. We are in the process of adding support for C++. In this report, we describe the features of C++ for which we added support so far, as…

Logic in Computer Science · Computer Science 2022-12-29 Niels Mommen , Bart Jacobs

The correct use of a Hardware Abstraction Layer (HAL) interface in embedded applications is crucial to prevent malfunctions, crashes, or even hardware damage. Software model checking has been successfully applied to check interface…

Logic in Computer Science · Computer Science 2025-12-19 Manuel Bentele , Onur Altinordu , Jan Körner , Andreas Podelski , Axel Sikora

Fuzzing has proven to be a fundamental technique to automated software testing but also a costly one. With the increased adoption of CI/CD practices in software development, a natural question to ask is `What are the best ways to integrate…

Software Engineering · Computer Science 2022-06-08 Thijs Klooster , Fatih Turkmen , Gerben Broenink , Ruben ten Hove , Marcel Böhme