Analysing Dependencies in Service Compositions

In the vision of the Internet of Services (IoS) services are offered and sold as tradable goods on an open marketplace. Services are usually consumed as part of service compositions defining complex business processes. In a service composition the execution of one service depends on other services. Thus, changes or problems during the provisioning of services may affect other services. While information about dependencies is necessary to handle problems and changes in service compositions, this information is usually only implicitly available in the process description and SLAs. In this paper, we propose an approach where the dependencies between services in a composition are analysed at design time and captured in a dependency model. This information is used to validate the negotiated SLAs to ensure that proper collaboration between the services is possible. At runtime this model can then be applied for determining the effects of events such as service failure (SLA is violated) or SLA renegotiation on other services. Our major contributions are a classification of service dependencies in business processes and an algorithm for semi-automatic dependency model creation based on a process description and the related SLAs. We have evaluated our approach based on a logistics scenario.