The paper Quantified Event Automata: Towards Expressive and Efficient Runtime Monitors has been accepted for publication at FM’2012 (the 18th international symposium on Formal Methods). Below is the abstract:

Runtime verification is the process of checking a property on a trace of events produced by the execution of a computational system. Runtime verification techniques have recently focused on parametric specifications where events take data values as parameters. These techniques exist on a spectrum inhabited by both efficient and expressive techniques. These characteristics are usually shown to be conflicting – in state-of-the-art solutions, efficiency is obtained at the cost of loss of expressiveness and vice-versa. To seek a solution to this conflict we explore a new point on the spectrum by defining an alternative runtime verification approach. We introduce a new formalism for concisely capturing expressive specifications with parameters. Our technique is more expressive than the currently most efficient techniques while at the same time allowing for optimizations.

This is joint work with Howard Barringer (U of Manchester), Klaus Havelund (NASA JPL), Giles Reger (U of Manchester), and David Rydeheard (U of Manchester).

The paper Decentralised LTL monitoring without central observer has been accepted for publication at FM’2012 (the 18th international symposium on Formal Methods). An early extended version of the paper is available here. Below is the abstract:

Users wanting to monitor distributed or component-based systems often perceive them as monolithic systems which, seen from the outside, exhibit a uniform behaviour as opposed to many components displaying many local behaviours that together constitute the system’s global behaviour. This level of abstraction is often reasonable, hiding implementation details from users who may want to specify the system’s global behaviour in terms of an LTL formula. However, the problem that arises then is how such a specification can actually be monitored in a distributed system that has no central data collection point, where all the components’ local behaviours are observable. In this case, the LTL specification needs to be decomposed into sub-formulae which, in turn, need to be distributed amongst the components’ locally attached monitors, each of which sees only a distinct part of the global behaviour.

The main contribution of this paper is an algorithm for distributing and monitoring LTL formulae, such that satisfaction or violation of specifications can be detected by local monitors alone. We present an implementation and show that our algorithm introduces only a minimum delay in detecting satisfaction/violation of a specification. Moreover, our practical results show that the communication overhead introduced by the local monitors is generally lower than the number of messages that would need to be sent to a central data collection point.

This is joint work with Andreas Bauer from NICTA Canberra, Australia.

With Lenore D. Zuck, we are organizing a track at IsoLA’12:

Runtime Verification, the Application Perspective

In the past decade Runtime Verification (RV) has gained much focus, from both research community and practitioners. Roughly speaking, RV combines a set of theories, techniques and tools aiming towards efficient analysis of systems’ executions and guaranteeing their correctness using monitoring techniques. One of the major challenges in RV is characterizing and formally expressing requirements that can be monitored.

With the major strides made in recent years, much effort is still needed to make RV an attractive and viable methodology for industrial use. In addition to industry, numerous other domains, such as security, bio-health monitoring, etc., can gain from RV.

The purpose of the “Runtime Verification: the application perspective” track at ISoLA’12 is to bring together experts on runtime verification and potential application domains to try and advance the state-of-the-art on how to make RV more useable and attractive to industry and other disciplines.

We are expecting contributions from a panel of well-recognized RV experts including Saddek Bensalem, Marius Bozga, Azadeh Farzan, Bernd Finkbeiner, Mark Grechanik, Klaus Havelund, Sylvain Hallé, Holger Hermanns, Kim Larsen, Axel Legay, Martin Leucker, Laurent Mounier, Gerardo Schneider, Gordon Pace, Doron Peled.

An exciting program on the way.

RV’2012, September 25 – 28, will be located in the beautiful Istanbul, Turkey.

Runtime verification is concerned with monitoring and analysis of software and hardware system executions. Runtime verification techniques are crucial for system correctness and reliability; they are significantly more powerful and versatile than conventional testing, and more practical than exhaustive formal verification. Runtime verification can be used prior to deployment, for verification and debugging purposes, and after deployment for ensuring reliability, safety and security, and for providing fault containment and recovery.

The deadline to submit to The Third International Workshop on Security Testing, SECTEST’12, is approaching (30 January).

Here is a reminder about SECTEST’s background and objectives:

To improve software security, several techniques, including vulnerability modelling and security testing, have been developed but the problem remains unsolved. On one hand, the workshop tries to answer how vulnerability modelling can help users understand the occurrence of vulnerabilities so to avoid them, and what the advantages and drawbacks of the existing models are to represent vulnerabilities. At the same time, the workshop tries to understand how to solve the challenging security testing problem given that testing the mere functionality of a system alone is already a fundamentally critical task, how security testing is different from and related to classical functional testing, and how to assess the quality of security testing. The objective of this workshop is to share ideas, methods, techniques, and tools about vulnerability modelling and security testing to improve the state of the art.

Link to the homepage of SECTEST’12.

An upcoming exciting event. The Workshop HOWARD-60 dedicated to the anniversary of a good friend: Howard Barringer. This is a very exciting event and a tremendous honor to be an invited speaker.

HOWARD-60 is bringing scientists from both academia and industry together to debate on how to monitor, analyse and guide the execution of programs to ensure their correctness. The ultimate longer term goal is to investigate the use of lightweight formal methods applied during the execution of programs from the following two points of view. On the one hand, whether runtime application of formal methods is a viable complement to the traditional methods proving programs correct before their execution, such as model checking and theorem proving. On the other hand, whether formality improves traditional ad-hoc monitoring techniques used in performance monitoring, distributed debugging, etc. Dynamic program monitoring and analysis can occur during testing or during operation.

The workshop is Festschrift celebrating Howard Barringer’s 60th Birthday and hosted by CICADA and CS, the University of Manchester.

The journal paper More Testable Properties has been recently accepted for publication in the journal Software Tools for Technology Transfer.

This paper is joint work with my friends and colleagues from Verimag (Jean-Claude Fernandez and Laurent Mounier) and from Inria Rennes – Bretagne Atlantique (Thierry Jéron and Hervé Marchand).

The paper shall appear in STTT shortly. One can download a preprint of the paper meanwhile.

Below is an abstract of the paper:

In this article, we explore the set of testable properties within the Safety-Progress classification where testability means to establish by testing that a relation, between the tested system and the property under scrutiny, holds. We characterize testable properties w.r.t. several relations of interest. For each relation, we give a sufficient condition for a property to be testable. Then, we study and delineate a fine-grain characterization of testable properties: for each Safety-Progress class, we identify the subset of testable properties and their corresponding test oracle. Furthermore, we address automatic test generation for the proposed framework by providing a general synthesis technique that allows to obtain canonical testers for the testable properties in the Safety-Progress classification. Moreover, we show how the usual notion of quiescence can be taken into account in our general framework, and, how quiescence improves the testability results. Then, we list some existing testing approaches that could benefit from this work by addressing a wider set of properties. Finally, we propose Java-PT, a prototype Java toolbox that implements the results introduced in this article.

Several research internships are available at LIG laboratory within the VASCO team.

Topics of the internship include (but are not limited to):

  • runtime verification and program monitoring
  • testing
  • Mobile applications (especially Android)
  • web and e-commerce services
  • home-automation

Contact me for more details.

Sep 072011

After almost two great years as a postdoc fellow at INRIA (now Inria) Rennes – Bretagne Atlantique (located in the beautiful French Britanny) within the VerTeCs team, I have moved back to Grenoble.

I get an associate professor position at Grenoble University (University Joseph Fourier) and I am doing my research at LIG – Laboratoire d’Informatique de Grenoble (Computer Science Lab of Grenoble). I am associated to the VASCO team whose speciliaties include software validation (and more particularly testing).

More stuff is forthcoming.

© 2011 Y. Falcone Suffusion theme by Sayontan Sinha