Techniques for web service discovery and composition
Authors: Jianwen Su, Oscar Ibarra
Venue:  (2008)

The web service paradigm is designed to overcome the challenge of automating process interactions and integrations across heterogeneous platforms, creating value-added services by composing together existing services. Web service discovery, as the number of services increase dramatically, is a fundamental problem for service composition. This dissertation develops techniques and frame-works for service discovery and composition.Service composition has two essential technical elements: service discovery and service orchestration. Different from other work which treat them separately, we investigate the composition problem with both service discovery and assembly steps, and perform service composition through discovery.Service discovery at the present time is based primarily on keywords, or interfaces of web services through the use of ontology. We argue that "behavior signatures" as operational level description should play an important role in the service discovery process. We propose a new behavior model for web services using automata and logic formalisms; a new query language to express temporal and semantic properties on service behaviors; and query evaluation and search algorithms using RE-tree and heuristics. As a first step for service composition, we formulate a framework of composing web services according to a goal specification. Based on this framework, we study a tightening problem which strengthens service discovery queries formulated from conditions in the goal service. A tighter condition can find more relevant services while a looser one may exclude the possibility of assembling a goal realization. The tightening problem is studied for conditions in different logic languages, mainly, conditions with order constraints and linear arithmetic. The complexity of the tightening problem is given for both integers and real numbers. A general composition algorithm without or with a goal service invocation request is developed, based on the tightening technique. Two notions of completeness, "schema completeness" and "instance completeness", are defined, which measure the ability of how thoroughly a composition algorithm can find a composition. We then move to a more practical composition problem with an application in telematics domain: runtime semantic service composition. Given a set I of input concepts, a set O of output concepts, and a set F of conceptual services, the runtime composition problem for a set of available web services is to find a composition of some web services that produces the output set O from the input set I and uses all of the given conceptual services in F. A solution to this runtime composition problem may consist of two phases: "conceptual service composition" that computes a composition of conceptual services, and "realization" that convert the conceptual composition into a composition of available web services. We develop a set of rules to rewrite service composition expressions into an executable web service composition. Two algorithms, bounded depth-first rewriting and heuristic rewriting, are developed. As an application of the runtime semantic service composition, we present a system architecture which integrates a spoken dialog system, a runtime composition engine and a platform for service discovery and invocation.