Automated Adaptor Generation for Services Based on Pushdown Model Checking

Service adaptation is a promising solution for mismatches in service composition by introducing a mediate service called adaptor to coordinate interactions of services. In a previous work, an approach of non-regular service adaptation using model checking has been proposed for solving behavior mismatches. The approach uses pushdown automata as behavior model of adaptors so that non-regular interactions of services can be captured. Furthermore, adaptation and verification are integrated using model checking and the adaptor can be generated automatically without adaptation contracts being specified. However, though behavior mismatch free is guaranteed in the approach, we found there are usually several or more candidates which satisfy this criteria and may need to be further selected with other requirements. This paper follows the approach and focuses on requirements helpful to automated adaptor generation. Because of the use of pushdown system model, we are especially interested in properties related to unbounded messages, i.e., messages being sent and received arbitrary multiple times, which characterize non-regular behavior in service composition. This paper also shows experimental results from a prototype tool as well as directions for building a BPEL adaptor once behavior of an adaptor is generated by our approach.

[1]  Robert E. Tarjan,et al.  Depth-First Search and Linear Graph Algorithms , 1972, SIAM J. Comput..

[2]  Cristina Gacek,et al.  Implementing product line variabilities , 2001, SSR '01.

[3]  Javier Cubo,et al.  A Model-Based Approach to the Verification and Adaptation of WF/.NET Components , 2008, Electron. Notes Theor. Comput. Sci..

[4]  Paola Inverardi,et al.  Failure-free coordinators synthesis for component-based architectures , 2008, Sci. Comput. Program..

[5]  Javier Cámara,et al.  ITACA: An integrated toolbox for the automatic composition and adaptation of Web services , 2009, 2009 IEEE 31st International Conference on Software Engineering.

[6]  Xiang Fu,et al.  Conversation protocols: a formalism for specification and verification of reactive electronic services , 2003, Theor. Comput. Sci..

[7]  Ernesto Pimentel,et al.  Automatic Generation of Adaptation Contracts , 2009, Electron. Notes Theor. Comput. Sci..

[8]  Carlos Canal,et al.  Model-Based Adaptation of Behavioral Mismatching Components , 2008, IEEE Transactions on Software Engineering.

[9]  Jan Mendling,et al.  Business Process Execution Language for Web Services , 2006, EMISA Forum.

[10]  Samik Basu,et al.  Automated Choreographer Synthesis for Web Services Composition Using I/O Automata , 2007, IEEE International Conference on Web Services (ICWS 2007).

[11]  Fabio Casati,et al.  Semi-automated adaptation of service interactions , 2007, WWW '07.

[12]  Gwen Salaün,et al.  Adaptation of Service Protocols Using Process Algebra and On-the-Fly Reduction Techniques , 2008, IEEE Transactions on Software Engineering.

[13]  P. Y. A. Ryan Towards an Engineering Approach to Component Adaptation , 2006 .

[14]  Thomas A. Henzinger,et al.  Interface automata , 2001, ESEC/FSE-9.

[15]  Daniel M. Yellin,et al.  Protocol specifications and component adaptors , 1997, TOPL.

[16]  Gerard J. Holzmann,et al.  The SPIN Model Checker , 2003 .

[17]  Toshiaki Aoki,et al.  Non-regular Adaptation of Services Using Model Checking , 2010, 2010 13th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing.

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

[19]  Gwen Salaün,et al.  Behavioral adaptation of component compositions based on process algebra encodings , 2007, ASE '07.

[20]  Javier Esparza,et al.  A BDD-Based Model Checker for Recursive Programs , 2001, CAV.

[21]  Stefan Schwoon,et al.  Model checking pushdown systems , 2002 .