The development of applications for the Internet of Things and Services is expected to be characterised by the need to reuse and integrate various sensors, actuators, and remote services. Those components of future Internet of Things applications will have to be adequately discovered among an overwhelming set of potential sources of data and functionality, and they will have to be combined in an effective yet seamless way. To this end, the COMPOSE platform provides an Assisted Service Composition Engine which is in charge of supporting application developers in building such applications. The engine aims to provide automated support for developers that can, given the semantics of the data available and the semantics of the data required to be obtained, automatically generate possible compositions. The first prototype exploits the semantic annotations of the data model of services and operations (i.e., their inputs and outputs) in order to determine possible workflows that are semantically compatible from a dataflow perspective. Work on this prototype has focussed on providing high-performance automated composition even when dealing with distributed, large-scale service registries, handling thousands of services with a response time of a second even when using standard desktop hardware. This deliverable provides a general description of the component devised, presenting notably its main contributions over the state of the art, its architecture, and its integration with further components from the COMPOSE platform. The deliverable additionally includes performance evaluation results that indeed show that currently this composition engine provide most efficient composition support as necessary to cope with large-scale Internet of Things and Services scenarios.
D31.3.1 Assisted service composition engine – First prototype