Automatic Web Service Composition – Models, Complexity and Applications
The automatic composition of web services refers to how services can be used in a complex and aggregate manner, to serve a specific and known functionality. Given a list of services described by the input and output parameters, and a request of a similar structure: the initially known and required parameters; a solution can be designed to automatically search for the set of web services that satisfy the request, under certain constraints. We first propose two very efficient algorithms that solve the problem of the automatic composition of the web services as it was formulated in the competitions organized in 2005 and 2008. The algorithms obtain much better results than the rest of the participants with respect to execution time and even composition size. Evaluation consists of running the previous and the proposed solutions on given benchmarks and generated tests. Further, we design two new models to match service's parameters, extending the semantic expressiveness of the 2008 challenge. The initial goal is to resolve some simple and practical use-cases that cannot be expressed in the previous models. We also adhere to modern service description languages, like OpenAPI and especially schema.org. Algorithms for the new models can solve instances of significant size. Addressing a wider and more realistic perspective, we define the online version of the composition problem. In this regard, we consider that web services and compositions requests can be added and removed in real-time, and the system must handle such operations on the fly. It is necessary to maintain the workflows for users who actively run the compositions over time. As for the new semantic models, we propose new algorithms and provide comprehensive evaluation by generating test cases that simulate all corner cases.
READ FULL TEXT