This paper describes a service-oriented P2P architecture and related federated metaprogramming model to support development of highly scalable and reliable distributed collaborative applications. In the proposed architecture, autonomic service providers, corresponding to various activities that occur in the collaborative process, reside on the overlay network and are discovered dynamically during the execution of the process. To execute a specific collaboration, a set of services that map into the collaboration specification (exertion) are federated together and executed in a choreographed workflow. All services (peers) implement a standardized top-level interface and this allows any service to be seamlessly replaced with another service without affecting the performance of the federation. The paper describes a service object-oriented environment (SORCER) and presents how it supports programming of three collaboration types.
Michael W. Sobolewski