Service constraints are usage restrictions on service features that are imposed by service providers. Such constraints need to be verified prior to the execution of a service in order to ensure correct service execution. In the case of composite services, the set of applicable constraints is derived from the service constraints defined over the individual service components that are part of the service plan. During the execution of a composite service, a constraint-aware composite service execution model can be used to manage and eventually operationally verify the service constraints prior to the corresponding service's execution. In addition to service constraints, other constraints might be imposed to put externally-defined restrictions on composite services. Such externally-defined restrictions are likely to be defined and become or cease to be applicable after the composite service has been assemble and deployed. Such a situation requires adaptation of the plan to a set of externally-defined constraints. Current web service composition adaptation approaches only focus on adaptation to failure in functional capabilities or Quality of Service (QoS) properties which can be dealt with re-construction of the composite service. However, we argue that adaptation to external constraints does not necessarily require changes in the plan of a composite service. In this paper, we define a constraint-based composite service model that not only considers service constraints, but also adapts composite plans according to new constraints that might add new restriction to the composite service at run time. A publicly available test set generator is used to compare the proposed solution with other existing service adaptation solutions.
服务约束是服务提供商对服务特性施加的使用限制。在执行服务之前需要验证此类约束,以确保服务正确执行。对于组合服务,适用的约束集是从在作为服务计划一部分的各个服务组件上定义的服务约束派生而来的。在组合服务执行期间,可以使用具有约束感知的组合服务执行模型在相应服务执行之前管理并最终在操作上验证服务约束。除了服务约束之外,可能还会施加其他约束,以便对组合服务施加外部定义的限制。此类外部定义的限制可能在组合服务组装和部署之后被定义,并且变得适用或不再适用。这种情况需要使计划适应一组外部定义的约束。当前的Web服务组合适配方法仅关注对功能能力或服务质量(QoS)属性故障的适配,这些故障可以通过重新构建组合服务来处理。然而,我们认为对外部约束的适配不一定需要改变组合服务的计划。在本文中,我们定义了一个基于约束的组合服务模型,该模型不仅考虑服务约束,还根据可能在运行时对组合服务添加新限制的新约束来适配组合计划。使用一个公开可用的测试集生成器将所提出的解决方案与其他现有的服务适配解决方案进行比较。