A. ter Hofstede, B. Benatallah, and H.-Y. Paik (Eds.): BPM 2007 Workshops, LNCS 4928, pp. 502–507, 2008.
© Springer-Verlag Berlin Heidelberg 2008
Towards Dynamic Matching of Business-Level Protocols
in Adaptive Service Compositions
Alan Colman, Linh Duy Pham, Jun Han, and Jean-Guy Schneider
Faculty of ICT, Swinburne University of Technology
PO Box 218, Hawthorn, 3122, Australia
{acolman, lpham, jhan, jschneider}@ict.swin.edu.au
Abstract. In a service composition, it is necessary to ensure that the behaviour
of a constituent service is consistent with the requirements of the composition.
In an adaptive service composition those behavioural requirements may be
continually changing. This paper shows how the behavioural requirements in
abstract service definitions (roles) can be dynamically and incrementally
defined using constraints. These constraints are then used to generate finite state
automata, which are used to check the compatibility of candidate services that
have their behaviour expressed in static interface descriptions such as OWL-S.
1 Introduction
In addition to the development of services, Service-Oriented Computing (SOC)
application development is a process consisting of service discovery, evaluation and
composition. To support the composition of services, a variety of standards such as
WSDL and SOAP have helped resolve the heterogeneity in implementation platforms.
However, standardisations in the syntactic interface description of services (e.g.
WSDL) alone are not sufficient to ensure the correct interoperation of services.
Previous work in component-based software engineering suggests that there are
four levels of component interface specification: syntactic, behavioural, synchronisa-
tion and QoS (Quality of Service) [2]. In Web services, the need for semantically rich
descriptions of services has resulted in a number of initiatives such as OWL-S and
WSMO. In this paper we focus on behavioural interoperability, in particular the
sequence of exchanged messages (protocols) between services. Of the above
initiatives OWL-S provides explicit semantics for specifying the behaviour of
services in its process model. OWL-S specifies its interaction in terms of definitions
for atomic, simple and composite processes. WSMO, on the other hand, specifies the
behavioural protocol of a service by using Abstract State Machines as the underlying
formalism to represent the service’s orchestration and choreography. WSMO also
provides the specification of mediators to solve the mismatches at the data,
communication protocol, and process levels. In contrast, rather than stipulating the
existence of a new type of component in the Web services infrastructure, OWL-S
provides to Web services and their clients the information that is needed to find
existing mediators that can reconcile their mismatches [1].