Français Anglais
Accueil Annuaire Plan du site
Home > Research results > Dissertations & habilitations
Research results
Ph.D de

Group : Verification of Algorithms, Languages and Systems

Model-Based Testing of Operating System-level Security Mechanisms

Starts on 01/10/2012
Advisor : WOLFF, Burkhart

Funding :
Affiliation : Université Paris-Saclay
Laboratory : LRI

Defended on 30/03/2016, committee :

Research activities :
   - Formalisation of (Specification and Programming) Languages in Proof Assistants
   - Formal Model-Based Testing

Abstract :
Formal methods can be understood as the art of applying mathematical reasoning
to the modeling, analysis and verification of computer systems. Three main
verification approaches can be distinguished: verification based on deductive proofs,
model checking and model-based testing.

Model-based testing, in particular in its radical form of theorem proving-based testing
bridges seamlessly the gap between the theory, the formal model, and the implementation
of a system. Actually,
theorem proving based testing techniques offer a possibility to directly interact
with "real" systems: via different
formal properties, tests can be derived and executed on the system under test.
Suitably supported, the entire process can fully automated.

The purpose of this thesis is to create a model-based sequence testing environment
for both sequential and concurrent programs. First a generic testing theory based
on monads is presented, which is independent of any concrete program or computer
system. It turns out that it is still expressive enough to cover all common system
behaviours and testing concepts. In particular, we consider here: sequential executions,
concurrent executions, synchronised executions, executions with abort.
On the conceptual side, it brings notions like test refinements,
abstract test cases, concrete test cases,
test oracles, test scenarios, test data, test drivers, conformance relations and
coverage criteria into one theoretical and practical framework.

In this framework, both behavioural refinement rules and symbolic execution
rules are developed for the generic case and then refined and used for specific
complex systems. As an application, we will instantiate our framework by an existing
sequential model of a microprocessor called VAMP developed during the Verisoft-Project.
For the concurrent case, we will use our framework to model and test the IPC API of a
real industrial operating system called PikeOS.

Our framework is implemented in Isabelle/HOL. Thus, our approach directly benefits
from the existing models, tools, and formal proofs in this system.

Ph.D. dissertations & Faculty habilitations


The topic of this habilitation is the study of very small data visualizations, micro visualizations, in display contexts that can only dedicate minimal rendering space for data representations. For several years, together with my collaborators, I have been studying human perception, interaction, and analysis with micro visualizations in multiple contexts. In this document I bring together three of my research streams related to micro visualizations: data glyphs, where my joint research focused on studying the perception of small-multiple micro visualizations, word-scale visualizations, where my joint research focused on small visualizations embedded in text-documents, and small mobile data visualizations for smartwatches or fitness trackers. I consider these types of small visualizations together under the umbrella term ``micro visualizations.'' Micro visualizations are useful in multiple visualization contexts and I have been working towards a better understanding of the complexities involved in designing and using micro visualizations. Here, I define the term micro visualization, summarize my own and other past research and design guidelines and outline several design spaces for different types of micro visualizations based on some of the work I was involved in since my PhD.