Authors: Lei Wang; Andreas Wombacher; Luís Ferreira Pires; Marten J. Van Sinderen; Chi-Hung Chi
Addresses: CTIT, University of Twente, P.O. Box 217, 7500 AE Enschede, The Netherlands ' CTIT, University of Twente, P.O. Box 217, 7500 AE Enschede, The Netherlands; Nspyre, Dillenburgstraat 25-3, 5652 AM Eindhoven, The Netherlands ' CTIT, University of Twente, P.O. Box 217, 7500 AE Enschede, The Netherlands ' CTIT, University of Twente, P.O. Box 217, 7500 AE Enschede, The Netherlands ' Computational Informatics – Hobart, CSIRO, 3-4 Castray Esplanade, Hobart, Tasmania, 7000, Australia
Abstract: With the possibility of system crashes and network failures, the design of robust client/server interactions for collaborative process execution is a challenge. If a business process changes its state, it sends messages to the relevant processes to inform about this change. However, server crashes and network failures may result in loss of messages. In this case, the state change is performed by the sending process in isolation, resulting in state/behaviour inconsistencies among processes and possibly undistinguished deadlocks. Our basic idea to solve this problem is to cache the response (in a synchronous request-response interaction) if the state of the process instance has changed by the request message. The possible state inconsistencies are recognised and compensated by state-caching and by retrying failed interactions.
Keywords: robust process interactions; collaborative process interactions; business processes; collaboration; WS-BPEL; state synchronisation; data dependency; service interaction; system crashes; network failure; recovery; Petri nets; modelling; client-server interaction; state caching.
International Journal of Business Process Integration and Management, 2013 Vol.6 No.4, pp.326 - 340
Published online: 04 Feb 2014 *Full-text access for editors Access for subscribers Purchase this article Comment on this article