The Web services need to extend beyond the basic service architecture (invoke and respond) to self-coordinating Web processes collaborating among themselves in the desired configuration as per user's application (transient to long lasting). A core set of artifacts are needed to allow these Web processes to hook together in a desired structure to enforce automatic information flow, group constraint satisfaction, and data and control dependencies, all without any central coordinating authority. We propose Web coordination bonds, analogous to the chemical bonds, as a set of such core artifacts for effective collaboration among Web services. There are two types of Web bonds: subscription bonds allow information, control and event flows whereas negotiation bonds enforce dependencies and contracts. Web bonds are simple yet powerful, and we demonstrate how they can be employed to create (model) and enforce (deploy and execute) producer-consumer and shared-resource relationships, workflow scenarios, and atomic transactions. We have developed and prototyped a middleware called system on devices (SyD) incorporating Web bonds, and have employed it to prototype a few distributed applications which bond existing Web services together to collaborate. Much remains to be done, including theoretical treatment of Web coordination bonds.
['Sushil K. Prasad', 'Janaka Balasooriya']
Web coordination bonds: a simple enhancement to Web services infrastructure for effective collaboration