WS-Agreement Concepts and Use - Agreement-Based Service-Oriented Architectures

The use of Web services in an enterprise environment often requires quality guarantees from the service provider. Providing service at a given quality-of-service (QoS) level consumes resources depending on the extent to which the service is used by one or more clients of a service customer, e.g., the request rate per minute in the case of a Web service. Hence, a service client and a provider must agree on the time period in which a client can access a service at a particular QoS level for a given request rate. Based on this agreement, a service provider can allocate the necessary resources to live up to the QoS guarantees. In more general terms, the service provider commits to – and a service customer acquires – a specific service capacity for some time period. We understand service capacity as a service being provided at a given QoS for a specific client behavior constraint. This constraint is typically the number of requests per minute for specific Web service operations and may include constraints on the input data for computationally intensive operations.

In the information technology (IT) services industry, agreements, specifically Service Level Agreements (SLAs), are a widely used way of defining the specifics of a service delivered by a service provider to a particular service customer. This includes the service provider’s obligations in terms of which services at which quality, the modalities of service delivery and the quantity, i.e. the capacity of the service to be delivered. Agreements also define what is expected by the service customer, typically the financial compensation and the terms of use. We will use the shortcut SLA for any type of agreement between organizations in the context of this paper although others sometimes use it as only the part of an agreement that relates to quality of service.

While SLAs have been often applied to low-level services such as networking, server management and manual services such as helpdesks, software-as-a-service, accessed through Web or Web services interfaces is becoming more attractive to organizations. In a Saugatuck Technology study published in Network World, the questioned CIOs believe that in 2005 14% of their software application budget is spent on software-as-a-service, and it is believed that this proportion will increase to 23% by 2009.

The Web services stack as defined by WSDL, SOAP, UDDI, the WS-Policy framework and other specifications primarily addresses the issue of interoperability across application and domain boundaries. It enables a client to learn about a service and its usage requirements, bind to it in a dynamic way, and interact as specified, i.e. potentially in a secure, reliable and transactional way. The organizational notions of service provider and service customer are beyond the scope of the specifications and SLAs between autonomous domains are dealt with out of band, typically in a manual process.

The WS-Agreement specification is defined by the Grid Resource Allocation Agreement Protocol (GRAAP) working group of the Global Grid Forum (GGF). It enables an organization to establish an SLA in a formal, machine-interpretable representation dynamically as part of a Service-Oriented Architecture (SOA). WS-Agreement provides the standard specification to build an agreement-driven SOA in which service capacity can be acquired dynamically as a part of the service-oriented paradigm and the corresponding programming model. The specification comprises an XML-based syntax for agreements and agreement templates, a simple agreement creation protocol and an interface to monitor the state of an agreement.This chapter outlines the concept of agreement-driven SOA, explains the elements of the WS-Agreement specification, and discusses conceptual and pragmatic issues of implementing an agreement-driven SOA based on WS-Agreement.

By: Heiko Ludwig

Published in: RC23949 in 2006


This Research Report is available. This report has been submitted for publication outside of IBM and will probably be copyrighted if accepted for publication. It has been issued as a Research Report for early dissemination of its contents. In view of the transfer of copyright to the outside publisher, its distribution outside of IBM prior to publication should be limited to peer communications and specific requests. After outside publication, requests should be filled only by reprints or legally obtained copies of the article (e.g., payment of royalties). I have read and understand this notice and am a member of the scientific community outside or inside of IBM seeking a single copy only.


Questions about this service can be mailed to .