论文部分内容阅读
以Web服务为代表的软件服务及软件服务协同已成为一种典型的Internet应用形态。集成单一服务所提供的功能以形成新的、满足复杂需求的服务组合技术已成为提高软件重用性,构造Internet新应用的重要方式。然而,开放的环境使得服务资源具有很大的不确定性和不可控性、服务的质量良莠不齐,从而导致由这些服务组合而成的软件系统可信度下降,严重制约了此类应用的发展。具体而言,服务组合系统的可信性,面临如下挑战: 缺乏合理的服务资源可信评价方法。开放环境下,实体行为的不确定性、信息的不完整性以及推荐信息的不准确性,都给可信服务的评估带来了巨大的困难。 缺乏兼顾服务资源功能需求和可信需求的服务组合方法。当前的服务组合研究主要关注如何改进服务组合方法以满足用户的功能需求,这些研究包括组合过程中的功能拆分、容错机制、演化机制、描述能力等等,而针对可信需求进行组合服务时,缺乏比较有效的组合方法。 缺乏运行时刻的服务组合系统可信保障机制。当前服务组合运行平台针对已有组合模型设计,缺乏对可信服务选取的支持,进而无法在运行时刻保障服务组合系统的可信性。 为此,我们提出了一个兼顾功能需求和可信需求的服务组合框架,帮助用户在服务组合系统开发过程中描述服务的可信需求、在运行过程中评价服务实体可信度、并依据用户的可信需求动态绑定合适的服务实体,以确保基于服务组合的应用系统的可信性。本文的主要工作如下: 给出了一种基于客观使用经验的可信服务评估方法。首先针对开放环境下缺乏可靠监控第三方的特性,提出了一种基于个性化网络的推荐信息搜集方法;其次针对当前可信评估模型涉及服务属性过多、属性取值过广,导致计算复杂度大的问题,提出了一种基于用户朋友群对目标服务成功使用次数和总使用次数的信任评估模型,简化了信任评估过程。并针对新服务信任评估值误差较大的问题,提出了一种基于服务提供商信任的方法评估新服务。 提出了一种具有可信约束的工作流描述语言。当前服务组合的方法主要有三个方种,分别基于业务流程、基于语义和规划、基于组件协作,综合比较发现基于业务流程的组合方法拥有比较全面的优势,因此本文的具有可信约束的组合方法建立在当前的主流业务流程语言BPEL之上。通过在BPEL基本元素中引入可信调用——trustlnvoke元素,使得对可信服务的选取只需要一个语句就能完成,既满足了用户功能需求,又有效满足了用户可信需求。并在BPEL中加入virtualParternerLink以及虚服务等概念,保持trustlnvoke语法规范与标准BPEL元素的一致性,从而形成了一个新语言TBPEL或Trust BPEL。 提出了一个基于可信工作流语言TBPEL的支撑运行机制。在开源BPEL引擎ODE的基础之上,引入可信服务选取支撑库、动态绑定机制、TPBEL到BPEL转换机制以及TBPEL脚本部署规范几个部分,保障运行时刻每次选取的服务都是可信服务,从而实现整个组合服务系统的可信性。