论文部分内容阅读
基于SOA的软件系统被称为基于服务的软件系统(SBS), SBS的运行依赖于Internet间异构的、自治的服务间的有效协同,运行质量不单取决于拥有自主性的Web服务本身,还取决于开放环境下Web服务空间的变化以及Internet环境的变化。因此,SBS需要一种能适应环境变化的动态的、“柔性”的质量保障机制,研究者将能够随环境变化自治地调节其运行时行为以提高系统性能的SBS称为基于服务的自适应软件系统(ASBS)。 ASBS通过对服务的监测和执行计划的动态调整,达到环境自适应的目的。环境的变化通常会对服务质量产生影响上,从而影响自适应行为。面向自适应需求,根据服务质量变化及时地动态调整备选服务的组织形式,可以更好地支持ASBS的自适应。因此如何对备选服务进行有效组织和管理从而支持ASBS自适应成为必须解决的问题。针对以上问题,结合课题组所建立的支持组合服务环境自适应运行支撑平台,本文提出了支持ASBS自适应的服务虚拟社区动态调整方法。在分析了ASBS自适应对服务虚拟社区的要求后,设计了服务虚拟社区的数据结构、运行模式以及相应的动态调整动作。在服务虚拟社区设计基础上,针对ASBS的被动自适应和主动自适应两种自适应方式,分别设计了基于服务虚拟社区的ASBS自适应的过程,通过对服务虚拟社区的调整影响组合服务的执行计划,从而实现对ASBS自适应的支持。本文将服务虚拟社区调整过程分为分析、决策和调整三个阶段,为了支持各个阶段之间信息的传递,给出了组合服务环境及状态信息的形式化表示模型。针对支持被动自适应和支持主动自适应的分析及决策问题,给出了关键任务分析、紧迫度分析、成本效益分析以及服务预先执行方法。针对服务虚拟社区调整问题,在设计了服务虚拟社区调整动作基础上,给出了局部约束修改算法、服务状态转换方法以及考虑用户偏好、局部紧迫度等因素的服务排序算法。最后通过实例分析验证了本文所提出的服务虚拟社区对ASBS自适应的有效支持,分析了服务虚拟社区调整过程的时间复杂度,并对调整阶段所需时间与相关影响因子之间的关系进行了实验分析。