Summary ...

In the field of Software Engineering, software reuse has become one of the major issues for both industry and research. New architectural concepts such as Software-oriented Architecture (SOA) embrace reuse as their primal agenda. Rather than aiming at implementing one piece of software, developers split the application into smaller parts, called services. Each service concentrates on one single aspect and thus can be reused in future applications.

Unfortunately, simply reusing services is not as easy as one would hope. To accomplish this task, first we must be able to find the appropriate services. Searching for services is a rather complicated exercise. Search queries must be formulated in some language and the behavior of the desired services captured. Semantic matching is very challenging.

The focus of my group’s research activities is an approach for a central marketplace, called a Web Service Repository. This repository serves as a registry for service specifications and provides an ontology that allows reasoning about these services. Specifications of services that reside in our repositories are provided with the help of description logic. We introduce several domain specific case studies (e.g. payment processing system, flight scheduling system, medical records) and investigate questions arising during the design of such repositories. Prototype repositories are implemented and benchmark testing performed (query matching, access times, latency, etc.). Currently we are particularly interested in “patterns” of service composition, algorithms for matching composition patterns to queries and “similarity” of services.