Modeling and Reasoning about Service Behaviors and Their Compositions

Service-oriented systems have recently emerged as context-independent component-based systems. Unlike components, services can be created, invoked, composed, and destroyed at run-time. Consequently, all services need a way of advertising their capabilities to the entities that will use them, and service-oriented modeling should cater for various kinds of service composition. In this paper, we show how services can be formally described by the resource-aware timed behavioral language REMES, which we extend with service-specific information, such as type, capacity, time-to-serve, etc., as well as boolean constraints on inputs, and output guarantees. Assuming a Hoare-triple model of service correctness, we show how to check it by using the strongest postcondition semantics. To provide means for connecting REMES services, we propose a hierarchical language for service composition, which allows for verifying the latter's correctness. The approach is applied on an abstracted version of an intelligent shuttle system.

[1]  Mario Bravetti,et al.  Formal Techniques for Computer Systems and Business Processes, European Performance Engineering Workshop, EPEW 2005 and International Workshop on Web Services and Formal Methods, WS-FM 2005, Versailles, France, September 1-3, 2005, Proceedings , 2005, EPEW/WS-FM.

[2]  Gwen Salaün,et al.  Describing and reasoning on Web services using process algebra , 2004, Proceedings. IEEE International Conference on Web Services, 2004..

[3]  Rajeev Alur,et al.  A Theory of Timed Automata , 1994, Theor. Comput. Sci..

[4]  Edsger W. Dijkstra,et al.  Guarded commands, non-determinacy and a calculus for the derivation of programs , 1975, Language Hierarchies and Interfaces.

[5]  George J. Pappas,et al.  Optimal Paths in Weighted Timed Automata , 2001, HSCC.

[6]  Aida Causevic,et al.  Towards a Unified Behavioral Model for Component-Based and Service-Oriented Systems , 2009, 2009 33rd Annual IEEE International Computer Software and Applications Conference.

[7]  Stefan Leue,et al.  Scenarios: Models, Transformations and Tools, International Workshop, Dagstuhl Castle, Germany, September 7-12, 2003, Revised Selected Papers , 2005, Scenarios: Models, Transformations and Tools.

[8]  Antonio Bucchiarone,et al.  Web Service Composition Approaches: From Industrial Standards to Formal Methods , 2007, Second International Conference on Internet and Web Applications and Services (ICIW'07).

[9]  Jan-Georg Smaus,et al.  Automated Predicate Abstraction for Real-Time Models , 2009, INFINITY.

[10]  David S. Rosenblum,et al.  Model checking service compositions under resource constraints , 2007, ESEC-FSE '07.

[11]  Jos de Bruijn,et al.  Web Service Modeling Ontology , 2005, Appl. Ontology.

[12]  Paul Pettersson,et al.  REMES: A Resource Model for Embedded Systems , 2009, 2009 14th IEEE International Conference on Engineering of Complex Computer Systems.

[13]  Thomas A. Henzinger,et al.  Hybrid Systems: Computation and Control , 1998, Lecture Notes in Computer Science.

[14]  Edsger W. Dijkstra,et al.  Predicate Calculus and Program Semantics , 1989, Texts and Monographs in Computer Science.

[15]  Holger Giese,et al.  Autonomous Shuttle System Case Study , 2003, Scenarios: Models, Transformations and Tools.

[16]  Matjaz B. Juric,et al.  Business process execution language for web services , 2004 .

[17]  Paul Pettersson,et al.  Formal reasoning of resource-aware services , 2010 .

[18]  Sheila A. McIlraith,et al.  Simulation, verification and automated composition of web services , 2002, WWW.

[19]  T. D. Fletcher,et al.  Web Services Choreography Description Language Version 1.0, W3C , 2004 .

[20]  Valentín Valero,et al.  Automatic Translation of WS-CDL Choreographies to Timed Automata , 2005, EPEW/WS-FM.