Section: New Results
Monitoring and Web services
Participants : Serge Abiteboul, Michel Batteux, Gauvain Bourgne, Pierre Bourhis, Philippe Dague, Yingmin Li, Bogdan Marinoiu, Tarek Melliti, Othman Nasri, Lina Ye.
Error diagnosis and self-healing
The work devoted to self-healibility of Web services continued. Our initial model of conversationally complex Web services as Petri nets, with control and data places, enriched by data dependencies, has been extended in order to model directly semantic faults and their propagation inside the Petri net model itself. For this, faults inside places and transitions are introduced and their propagation is represented by using colored tokens (colors represent normal, faulty and unknown status of data values) and a color propagation function  . This ECPN (Enriched Colored Petri Net) model gives birth to a set of algebraic linear equations describing its behavior through the dynamic evolution of the markings. It is turned into a set of linear symbolic inequalities the solutions of which, in terms of color variables, express the minimal diagnoses. An effective backwards propagation algorithm has been designed to compute these solutions. This has been done first in the centralized case  and then extended to the decentralized case for cooperating choreographed BPEL Web services, where global diagnosis is achieved by a coordinator dialoguing with each local diagnoser  . A complete implementation has been realized, where the ECPN is automatically generated from the BPEL code and both local diagnosers and global coordinator are implemented as Web services too. Extension to a purely distributed framework achieving diagnosis by direct dialog between local diagnosers without coordinator will be studied.
The aim of diagnosability is to ensure that a given partially observable system has the property that any fault (taken from a set of faults given a priori) will be detectable and identifiable in a bounded time after its occurrence. Work on diagnosability is led in the framework of discrete-event systems and has been conducted along two directions. First, in the DIAFORE project, we formalized diagnosability analysis, usually expressed in terms of automata in the literature, in terms of Input-Output Symbolic Transition Systems (IOSTS), allowing both the representation of the interaction of the system with its environment and a concise representation of the system's model. This study allowed the adaptation and use of the CEA Agatha tool of symbolic verification of conformity to formal specifications for checking diagnosability  . Second, as one of our objective is, as for diagnosis, to tackle diagnosability analysis for distributed systems where the global model is not known, distributed diagnosability of a given pattern (rational language defined by an automaton that describes the situation, the diagnosability of which we want to analyze, which is more general that a simple faulty transition) is being studied for distributed systems modeled as communicating local labeled transition systems  ,  ,  . This work is intended to be applied in particular to conversational Web services. The next step will consist in considering also distributed observation. We have also continued our work on computing minimal prefixes of Petri nets unfoldings for verifying diagnosability  .
Obvious relationships exist between diagnosability analysis and verification and model checking. A collaboration with colleagues of the ForTesSE group of LRI is being launched in order to investigate the complementarity and combination of these methods, in particular between passive testing and diagnosability analysis, between the results of this analysis and the automatic generation of on-line diagnoser, and relationship with reconfiguration actions by automatic composition in the context of services. A co-supervised thesis will begin in January 2010.
All this is also part of the objectives of the Smarties associated team's proposal.
We have worked on the conception and implementation of tools for monitoring Peer to Peer Systems. A system named P2PMonitor has been developed for this purpose. It is a P2P system itself, with peers exchanging messages by Web service calls. We focused on a problem closely related to monitoring: view maintenance over active documents. Indeed, the monitoring problem can be seen as aggregating streams into an active document and incrementally evaluating a tree-pattern query over this active document. We have developed algorithmic datalog-based foundations for such an incremental query processing  . We have also addressed interesting issues that appeared in this context, like query satisfiability over active documents and stream relevance for considered queries  .