An Approach for Identifying Service Composition Patterns From Execution Logs
MetadataShow full item record
Different types of web resources, such as Web Services, HTTP-based APIs and websites, can be located on the web to provide various services, such as information access and online banking. Such services are the basic building blocks to compose more complex functionality that cannot be achieved by a single service. Many service-oriented applications can be composed to fulfill similar functional requirements. Among various applications, a set of services can be frequently used together to deliver a unique functionality. Such set of services are called a service composition pattern. More specifically, a service composition pattern consists of a set of services and the control flow among the services. The reuse of the service composition patterns can facilitate the composition of new applications, improve existing applications and optimize maintenance process of services. To facilitate the identification and reuse of service composition patterns, we propose an approach that mines the service composition patterns from execution logs produced by service-oriented applications during runtime. Since the execution logs can be produced by heterogeneous web resources, we propose a unified description schema to describe various web resources in order to identify functionally similar services of different types. This helps reveal complete service composition patterns. Then we identify frequently associated services using Apriori algorithm and heuristics. Finally, we recover the control flow among the services using the event graph and process mining techniques. The effectiveness of the approach is evaluated through two case studies. The result shows that the unified description schema facilitates the identification of similar services of different types and our approach can effectively identify service composition patterns.