WSCMon: runtime monitoring of web service orchestration based on refinement checking

Service-oriented systems, especially web services, have been given strong attention as an important approach to integrate heterogeneous systems, in which complex services are composed of simpler services offered by various service providers. The correctness of service composition requires techniques to verify whether composite services behave properly. To this end, in this paper, we propose a novel method for runtime monitoring of composite services. In our method, system specifications, which are automatically generated from descriptions of service composition, and requirement specifications, which include safety properties, are constructed to detect Business Process Execution Language (BPEL) engine-related and BPEL process-related violations. We employ process algebra as the primary formalism to express specifications. To verify the correctness of composite services, we check the refinement relation between specifications and observed behaviors. Also, we formally discuss what kinds of specifications can be monitored at runtime.

[1]  Andrew William Roscoe,et al.  The Theory and Practice of Concurrency , 1997 .

[2]  Mike P. Papazoglou,et al.  Service oriented architectures: approaches, technologies and research issues , 2007, The VLDB Journal.

[3]  James Lyle Peterson,et al.  Petri net theory and the modeling of systems , 1981 .

[4]  George S. Avrunin,et al.  Patterns in property specifications for finite-state verification , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[5]  Marco Aiello,et al.  Associating assertions with business processes and monitoring their execution , 2004, ICSOC '04.

[6]  William N. Robinson,et al.  Monitoring Web service requirements , 2003, Proceedings. 11th IEEE International Requirements Engineering Conference, 2003..

[7]  Zheng Li,et al.  A runtime monitoring and validation framework for Web service interactions , 2006, Australian Software Engineering Conference (ASWEC'06).

[8]  Andrea Ferrara,et al.  Web services: a process algebra approach , 2004, ICSOC '04.

[9]  Francisco Curbera,et al.  Web Services Business Process Execution Language Version 2.0 , 2007 .

[10]  Saeed Jalili,et al.  Monitoring safety properties of composite web services at runtime using CSP , 2009, 2009 13th Enterprise Distributed Object Computing Conference Workshops.

[11]  Serdar Tasiran,et al.  Runtime Refinement Checking of Concurrent Data Structures , 2005, Electron. Notes Theor. Comput. Sci..

[12]  Luciano Baresi,et al.  Smart monitors for composed services , 2004, ICSOC '04.

[13]  E. Allen Emerson,et al.  Temporal and Modal Logic , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[14]  Marco Pistore,et al.  Run-Time Monitoring of Instances and Classes of Web Service Compositions , 2006, 2006 IEEE International Conference on Web Services (ICWS'06).

[15]  Franz Baader,et al.  Unification theory , 1986, Decis. Support Syst..

[16]  Xiaomeng Su,et al.  A Survey of Automated Web Service Composition Methods , 2004, SWSWPC.

[17]  Luciano Baresi,et al.  Dynamo: Dynamic Monitoring of WS-BPEL Processes , 2005, ICSOC.

[18]  Edmund M. Clarke,et al.  Model Checking , 1999, Handbook of Automated Reasoning.

[19]  Volker Stolz,et al.  Temporal Assertions using AspectJ , 2006, Electron. Notes Theor. Comput. Sci..

[20]  George Spanoudakis,et al.  Run-time monitoring of requirements for systems composed of Web-services: initial implementation and evaluation experience , 2005, IEEE International Conference on Web Services (ICWS'05).

[21]  Wolfgang Emmerich,et al.  Efficient online monitoring of web-service SLAs , 2008, SIGSOFT '08/FSE-16.

[22]  Serdar Tasiran,et al.  VYRD: verifYing concurrent programs by runtime refinement-violation detection , 2005, PLDI '05.

[23]  Amir Pnueli,et al.  System Specification and Refinement in Temporal Logic , 1992, FSTTCS.

[24]  Marco Aiello,et al.  Planning and monitoring the execution of web service requests , 2003, International Journal on Digital Libraries.

[25]  A. W. Roscoe On the expressive power of CSP refinement , 2005, Formal Aspects of Computing.

[26]  Kim G. Larsen,et al.  Graphical Versus Logical Specifications , 1990, Theor. Comput. Sci..

[27]  Pierre Wolper Temporal Logic Can Be More Expressive , 1983, Inf. Control..

[28]  Leslie Lamport,et al.  Proving the Correctness of Multiprocess Programs , 1977, IEEE Transactions on Software Engineering.

[29]  Serdar Tasiran,et al.  VyrdMC: Driving Runtime Refinement Checking with Model Checkers , 2006, Electron. Notes Theor. Comput. Sci..

[30]  Julie Waterhouse,et al.  Runtime monitoring of web service conversations , 2007, CASCON.

[31]  Peter Y. A. Ryan,et al.  The modelling and analysis of security protocols: the csp approach , 2000 .

[32]  E. D. Giorgi Selected Papers , 2006 .

[33]  Wei-Tek Tsai,et al.  On Testing and Evaluating Service-Oriented Software , 2008, Computer.

[34]  Jocelyn Simmonds,et al.  Property Patterns for Runtime Monitoring of Web Service Conversations , 2008, RV.

[35]  Thomas A. Henzinger,et al.  New directions in refinement checking , 1999 .

[36]  Gerardo Canfora,et al.  Testing services and service-centric systems: challenges and opportunities , 2006, IT Professional.

[37]  Ann Q. Gates,et al.  A taxonomy and catalog of runtime software-fault monitoring tools , 2004, IEEE Transactions on Software Engineering.