Supporting policy-driven behaviors in Web services: Experiences and issues
Abstract
The Web services platform is gaining popularity as the technology of choice for integrating applications in diverse and heterogeneous distributed environments, such as the Internet. It is widely recognized that one of the barriers preventing widespread adoption of this technology is a lack of products that support non-functional features of applications, such as security, transactionality and reliability. Supporting such features in a service-oriented environment is more complex than traditional distributed computing environments since such behaviors cannot be assumed by applications, but some persistent representation of the behavior has to be discovered dynamically. WS-Policy has been touted as a possible future standard way to specify these features and associate them with services, but the multitude of related proposals resemble a poorly manufactured jigsaw puzzle more than a coherent vision. This paper clarifies this vision by presenting a working prototype that demonstrates how the quality features can be expressed as service policies using WS-Policy. These policies are enforced by a policy framework that allows dynamic association of such non-functional features with applications on a per-interaction basis, as well as modification of these features. The paper discusses the issues involved in the creation of such a policy framework, and how the requirements of having to support transactional and reliable services guided the design. We hope that this work encourages other efforts to create viable products based on these emerging standards and advances the science of Service Oriented Computing. Copyright 2004 ACM.