FENECIA: failure endurable nested-transaction based execution of composite Web services with incorporated state analysis

Interest in the Web services (WS) composition (WSC) paradigm is increasing tremendously. A real shift in distributed computing history is expected to occur when the dream of implementing Service-Oriented Architecture (SOA) is realized. However, there is a long way to go to achieve such an ambitious goal. In this paper, we support the idea that, when challenging the WSC issue, the earlier that the inevitability of failures is recognized and proper failure-handling mechanisms are defined, from the very early stage of the composite WS (CWS) specification, the greater are the chances of achieving a significant gain in dependability. To formalize this vision, we present the FENECIA (Failure Endurable Nested-transaction based Execution of Composite Web services with Incorporated state Analysis) framework. Our framework approaches the WSC issue from different points of view to guarantee a high level of dependability. In particular, it aims at being simultaneously a failure-handling-devoted CWS specification, execution, and quality of service (QoS) assessment approach. In the first section of our framework, we focus on answering the need for a specification model tailored for the WS architecture. To this end, we introduce WS-SAGAS, a new transaction model. WS-SAGAS introduces key concepts that are not part of the WS architecture pillars, namely, arbitrary nesting, state, vitality degree, and compensation, to specify failure-endurable CWS as a hierarchy of recursively nested transactions. In addition, to define the CWS execution semantics, without suffering from the hindrance of an XML-based notation, we describe a textual notation that describes a WSC in terms of definition rules, composability rules, and ordering rules, and we introduce graphical and formal notations. These rules provide the solid foundation needed to formulate the execution semantics of a CWS in terms of execution correctness verification dependencies. To ensure dependable execution of the CWS, we present in the second section of FENECIA our architecture THROWS, in which the execution control of the resulting CWS is distributed among engines, discovered dynamically, that communicate in a peer-to-peer fashion. A dependable execution is guaranteed in THROWS by keeping track of the execution progress of a CWS and by enforcing forward and backward recovery. We concentrate in the third section of our approach on showing how the failure consideration is trivial in acquiring more accurate CWS QoS estimations. We propose a model that assesses several QoS properties of CWS, which are specified as WS-SAGAS transactions and executed in THROWS. We validate our proposal and show its feasibility and broad applicability by describing an implemented prototype and a case study.

[1]  Paulo F. Pires,et al.  Mediating heterogeneous Web services , 2003, 2003 Symposium on Applications and the Internet, 2003. Proceedings..

[2]  Hisashi Kobayashi,et al.  Modeling and analysis , 1978 .

[3]  Amit P. Sheth,et al.  Service-oriented Middleware , 2002 .

[4]  Claude Godart,et al.  Ensuring required failure atomicity of composite Web services , 2005, WWW '05.

[5]  Takashi Kobayashi,et al.  WS-SAGAS: Transaction Model for Reliable Web-Services-Composition Specification and Execution , 2003 .

[6]  Robert Richards,et al.  Universal Description, Discovery, and Integration (UDDI) , 2006 .

[7]  Anthony Nadalin,et al.  Web Services Coordination (WS- Coordination) , 2004 .

[8]  Cesare Pautasso,et al.  A Flexible System for Visual Service Composition , 2004 .

[9]  Irving L. Traiger,et al.  The notions of consistency and predicate locks in a database system , 1976, CACM.

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

[11]  Quan Z. Sheng,et al.  Facilitating the Rapid Development and Scalable Orchestration of Composite Web Services , 2004, Distributed and Parallel Databases.

[12]  Roger C. Cheung,et al.  A User-Oriented Software Reliability Model , 1978, IEEE Transactions on Software Engineering.

[13]  Amit P. Sheth,et al.  Composition, Performance Analysis and Simulation of Web Services , 2002 .

[14]  Antonio Jorge Silva Cardoso,et al.  Quality of service and semantic composition of workflows , 2002 .

[15]  Panos K. Chrysanthis,et al.  A taxonomy of correctness criteria in database applications , 1996, The VLDB Journal.

[16]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[17]  Takashi Kobayashi,et al.  A Simulation System of THROWS Architecture with WS-SAGAS Transaction Model , 2004 .

[18]  E. B. Moss,et al.  Nested Transactions: An Approach to Reliable Distributed Computing , 1985 .

[19]  Takashi Kobayashi,et al.  THROWS: an architecture for highly available distributed execution of Web services compositions , 2004, 14th International Workshop Research Issues on Data Engineering: Web Services for e-Commerce and e-Government Applications, 2004. Proceedings..

[20]  Ahmed K. Elmagarmid,et al.  A Multidatabase Transaction Model for InterBase , 1990, VLDB.

[21]  Amit P. Sheth,et al.  Modeling Quality of Service for Workflows and Web Service Processes , 2002 .

[22]  Quan Z. Sheng,et al.  SELF-SERV: A Platform for Rapid Composition of Web Services in a Peer-to-Peer Environment , 2002, VLDB.

[23]  Paulo F. Pires,et al.  Building Reliable Web Services Compositions , 2002, Web, Web-Services, and Database Systems.

[24]  James A. Hendler,et al.  Automating DAML-S Web Services Composition Using SHOP2 , 2003, SEMWEB.

[25]  C. A. R. Hoare,et al.  A Trace Semantics for Long-Running Transactions , 2004, 25 Years Communicating Sequential Processes.

[26]  Aart van Halteren,et al.  Towards an adaptable QoS aware middleware for distributed objects , 2003 .

[27]  William H. Sanders,et al.  Reward Model Solution Methods with Impulse and Rate Rewards: An Algorithm and Numerical Results , 1994, Perform. Evaluation.

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

[29]  Steffen Staab,et al.  Web Services: Been There, Done That? , 2003, IEEE Intell. Syst..

[30]  Gwen Salaün,et al.  Describing and reasoning on Web services using process algebra , 2004 .

[31]  Hector Garcia-Molina,et al.  Modeling long-running activities as nested sagas , 1991 .

[32]  Dieter Fensel,et al.  The Future of Web Services , 2004 .

[33]  W.M.P. van der Aalst,et al.  Don't go with the flow: web services composition standards exposed , 2003 .

[34]  Heiko Schuldt,et al.  Peer-to-Peer Process Execution with Osiris , 2003, ICSOC.

[35]  Quan Z. Sheng,et al.  Quality driven web services composition , 2003, WWW '03.

[36]  Neila Ben Lakhal A framework for modeling executing and analyzing dependable transactional Web services compositions , 2007 .

[37]  Roy Grønmo,et al.  Model-Driven Methodology for Building QoS-Optimised Web Service Compositions , 2005, DAIS.

[38]  Artem Boyarchuk,et al.  Development of Dependable Web Services out of Undependable Web Components , 2004 .

[39]  Andreas Reuter,et al.  Transaction Processing: Concepts and Techniques , 1992 .

[40]  Jerry R. Hobbs,et al.  DAML-S: Web Service Description for the Semantic Web , 2002, SEMWEB.

[41]  Takashi Kobayashi,et al.  A failure-aware model for estimating and analyzing the efficiency of Web services compositions , 2005, 11th Pacific Rim International Symposium on Dependable Computing (PRDC'05).

[42]  Bertrand Meyer,et al.  Applying 'design by contract' , 1992, Computer.

[43]  Wil M. P. van der Aalst,et al.  Workflow Patterns , 2004, Distributed and Parallel Databases.

[44]  Amit P. Sheth,et al.  Semantic E-Workflow Composition , 2003, Journal of Intelligent Information Systems.

[45]  Amit P. Sheth,et al.  Performance Analysis and Simulation of Composite Web Services , 2003, Electron. Mark..

[46]  Alfons Kemper,et al.  Reliable Web Service Execution and Deployment in Dynamic Environments , 2003, TES.

[47]  Wil M. P. van der Aalst,et al.  Web service composition languages: old wine in New bottles? , 2003, 2003 Proceedings 29th Euromicro Conference.

[48]  Anne H. H. Ngu,et al.  QoS-aware middleware for Web services composition , 2004, IEEE Transactions on Software Engineering.

[49]  Munindar P. Singh,et al.  A DAML-based repository for QoS-aware semantic Web service selection , 2004 .

[50]  Takashi Kobayashi,et al.  Reliability and Performance Estimation for Enriched WS-SAGAS , 2005, International Workshop on Challenges in Web Information Retrieval and Integration.

[51]  Quan Z. Sheng,et al.  The Self-Serv Environment for Web Services Composition , 2003, IEEE Internet Comput..

[52]  Munindar P. Singh,et al.  A DAML-based repository for QoS-aware semantic Web service selection , 2004, Proceedings. IEEE International Conference on Web Services, 2004..

[53]  Xiaodong Wang,et al.  Research and Implementation of Dynamic Web Services Composition , 2003, APPT.

[54]  A. Elmagarmid Database transaction models for advanced applications , 1992 .

[55]  Takashi Kobayashi,et al.  Dependability and Flexibility Centered Approach for Composite Web Services Modeling , 2006, OTM Conferences.

[56]  Carl E. Landwehr,et al.  Basic concepts and taxonomy of dependable and secure computing , 2004, IEEE Transactions on Dependable and Secure Computing.

[57]  J-C. Laprie,et al.  DEPENDABLE COMPUTING AND FAULT TOLERANCE : CONCEPTS AND TERMINOLOGY , 1995, Twenty-Fifth International Symposium on Fault-Tolerant Computing, 1995, ' Highlights from Twenty-Five Years'..

[58]  Amit P. Sheth,et al.  Using Flexible Transactions to Support Multi-System Telecommunication Applications , 1992, VLDB.

[59]  Miroslaw Malek,et al.  Current solutions for Web service composition , 2004, IEEE Internet Computing.

[60]  Thomas Heinis,et al.  Autonomic execution of Web service compositions , 2005, IEEE International Conference on Web Services (ICWS'05).

[61]  Nektarios Gioldasis,et al.  UTML: Unified Transaction Modeling Language , 2002, Proceedings of the Third International Conference on Web Information Systems Engineering, 2002. WISE 2002..

[62]  William H. Sanders,et al.  Performance evaluation: Erratum to “Reward model solution methods with impulse and rate rewards: an algorithm and numerical results” [20 (1994) 413–436] , 1995 .

[63]  Regina Dunlea,et al.  Simple Object Access Protocol (SOAP) , 2005 .

[64]  J. Bergstra,et al.  Handbook of Process Algebra , 2001 .

[65]  Fabio Casati,et al.  eFlow: a platform for developing and managing composite e-services , 2000, Proceedings Academia/Industry Working Conference on Research Challenges '00. Next Generation Enterprises: Virtual Organizations and Mobile/Pervasive Technologies. AIWORC'00. (Cat. No.PR00628).

[66]  Weimin Du,et al.  Quasi Serializability: a Correctness Criterion for Global Concurrency Control in InterBase , 1989, VLDB.

[67]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[68]  Erhard Rahm,et al.  Quality-Oriented Handling of Exceptions in Web-Service-Based Cooperative Processes , 2004, EAI.