Analysis and applications of timed service protocols

Julien Ponge, Boualem Benatallah, Fabio Casati, Farouk Toumani

Research output: Contribution to journalArticlepeer-review

30 Citations (Scopus)


Web services are increasingly gaining acceptance as a framework for facilitating application-to-application interactions within and across enterprises. It is commonly accepted that a service description should include not only the interface, but also the business protocol supported by the service. The present work focuses on the formalization of an important category of protocols that includes time-related constraints (called timed protocols), and the impact of time on compatibility and replaceability analysis. We formalized the following timing constraints: C-Invoke constraints define time windows within which a service operation can be invoked while M-Invoke constraints define expiration deadlines. We extended techniques for compatibility and replaceability analysis between timed protocols by using a semantic-preserving mapping between timed protocols and timed automata, leading to the identification of a novel class of timed automata, called protocol timed automata (PTA). PTA exhibit a particular kind of silent transition that strictly increase the expressiveness of the model, yet they are closed under complementation, making every type of compatibility or replaceability analysis decidable. Finally, we implemented our approach in the context of a larger project called ServiceMosaic, a model-driven framework for Web service life-cycle management.

Original languageEnglish
Article number11
JournalACM Transactions on Software Engineering and Methodology
Issue number4
Publication statusPublished - 1 Apr 2010
Externally publishedYes


  • Compatiblity and replaceability analysis
  • Timed automata
  • Timed business protocols
  • Web services

ASJC Scopus subject areas

  • Software

Fingerprint Dive into the research topics of 'Analysis and applications of timed service protocols'. Together they form a unique fingerprint.

Cite this