English
Related papers

Related papers: CISE3: Verifying Weakly Consistent Applications wi…

200 papers

Software verification is a tedious process that involves the analysis of multiple failed verification attempts, and adjustments of the program or specification. This is especially the case for complex requirements, e.g., regarding security…

When developing a software system, a change in one part of the system may lead to unwanted changes in other parts of the system. These affected parts may interfere with system performance, so regression testing is used to deal with these…

Software Engineering · Computer Science 2024-05-13 Mahdi Movahedian Moghaddam

Software re-modularization is an old preoccupation of reverse engineering research. The advantages of a well structured or modularized system are well known. Yet after so much time and efforts, the field seems unable to come up with…

Software Engineering · Computer Science 2012-10-29 Nicolas Anquetil , Jannik Laval

Fragmentation is a serious problem in the Android ecosystem. This problem is mainly caused by the fast evolution of the system itself and the various customizations independently maintained by different smartphone manufacturers. Many…

Software Engineering · Computer Science 2022-06-01 Pei Liu , Yanjie Zhao , Haipeng Cai , Mattia Fazzini , John Grundy , Li Li

Developing secure distributed systems is difficult, and even harder when advanced cryptography must be used to achieve security goals. Following prior work, we advocate using secure program partitioning to synthesize cryptographic…

Cryptography and Security · Computer Science 2024-01-10 Coşku Acay , Joshua Gancher , Rolph Recto , Andrew C. Myers

Efficient consistency maintenance of incomplete and dynamic real-life databases is a quality label for further data analysis. In prior work, we tackled the generic problem of database updating in the presence of tuple generating constraints…

Databases · Computer Science 2024-05-16 Jacques Chabin , Mirian Halfeld Ferrari , Nicolas Hiot , Dominique Laurent

This paper describes a system for supporting coarse-grained location-based synchronisation. This type of synchronisation may occur when people need only some awareness about the location of others within the specific context of an on-going…

Human-Computer Interaction · Computer Science 2010-11-25 André Coelho , Hugo Ribeiro , Mário Silva , Rui José

Runtime verification focuses on analyzing the execution of a given program by a monitor to determine if it is likely to violate its specifications. There is often an impedance mismatch between the assumptions/model of the monitor and that…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-07-13 Sorrachai Yingchareonthawornchai , Duong Nguyen , Vidhya Tekken Valapil , Sandeep Kulkarni , Murat Demirbas

We revisit integrity checking in relational and deductive databases with an approach that tolerates erroneous, inconsistent data. In particular, we relax the fundamental prerequisite that, in order to apply any method for simplified…

Databases · Computer Science 2024-11-08 Hendrik Decker , Davide Martinenghi

Software testing is an important issue in software development process to ensure higher quality on the products. Formal methods has been promising on testing reactive systems, specially critical systems, where accuracy is mandatory since…

Software Engineering · Computer Science 2019-08-13 Camila Sonada Gomes , Adilson Luiz Bonifacio

Complex systems often exhibit unexpected faults that are difficult to handle. Such systems are desirable to be diagnosable, i.e. faults can be automatically detected as they occur (or shortly afterwards), enabling the system to handle the…

Software Engineering · Computer Science 2015-02-27 Hernán Ponce de León , Gonzalo Bonigo , Laura Brandán Briones

Linearizability, the de facto correctness condition for concurrent data structure implementations, despite its intuitive appeal is known to lead to poor scalability. This disadvantage has led researchers to design scalable data structures…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-06-17 Ali Sezgin

Synthesis is a particularly challenging problem for concurrent programs. At the same time it is a very promising approach, since concurrent programs are difficult to get right, or to analyze with traditional verification techniques. This…

Formal Languages and Automata Theory · Computer Science 2015-06-09 Anca Muscholl

At our behest or otherwise, while our software is being executed, a huge variety of design assumptions is continuously matched with the truth of the current condition. While standards and tools exist to express and verify some of these…

Software Engineering · Computer Science 2016-05-09 Vincenzo De Florio

This paper presents the deductive formal verification of high-level properties of control systems with theorem proving, using the Why3 tool. Properties that can be verified with this approach include stability, feedback gain, and…

Systems and Control · Computer Science 2014-10-22 Dejanira Araiza-Illan , Kerstin Eder , Arthur Richards

Static source code analysis is a powerful tool for finding and fixing bugs when deployed properly; it is, however, all too easy to deploy it in a way that looks good superficially, but which misses important defects, shows many false…

Software Engineering · Computer Science 2022-02-25 Flash Sheridan

Testing of synchronous reactive systems is challenging because long input sequences are often needed to drive them into a state at which a desired feature can be tested. This is particularly problematic in on-target testing, where a system…

Software Engineering · Computer Science 2013-11-07 Peter Schrammel , Tom Melham , Daniel Kroening

In large scale systems such as the Internet, replicating data is an essential feature in order to provide availability and fault-tolerance. Attiya and Welch proved that using strong consistency criteria such as atomicity is costly as each…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-01-12 Matthieu Perrin , Achour Mostefaoui , Claude Jard

With the increasing importance of distributed systems as a computing paradigm, a systematic approach to their design is needed. Although the area of formal verification has made enormous advances towards this goal, the resulting…

Logic in Computer Science · Computer Science 2014-07-22 Adrià Gascón , Ashish Tiwari

Mixed-criticality systems combine real-time components of different levels of criticality, i.e. severity of failure, on the same processor, in order to obtain good resource utilisation. They must guarantee deadlines of highly-critical tasks…

Operating Systems · Computer Science 2016-06-03 Anna Lyons , Gernot Heiser