论文部分内容阅读
随着服务计算和云计算技术的不断成熟,功能丰富、内部逻辑复杂的大粒度组合服务正不断应用在面向服务的软件开发和系统集成中。为了适应环境变化满足用户需求,大粒度组合服务需要在服务编排层面不断演化,演化波及到伙伴服务和服务编排协议,存在演化后服务端口、流程结构和行为不相容问题。因此,如何判定服务业务节点及业务流程的变化,如何判定演化影响范围,如何使参与演化的服务遵守编排协议以及如何判定演化后服务组合相容性是需要亟待解决的关键问题。本文主要内容如下。首先,深入分析现有Web服务组合演化成果,依据大粒度组合服务的特征,提出了在设计阶段面向服务编排的大粒度Web服务组合演化方法的技术框架,按照演化流程进行了需求变化描述和目标状态设计,给出了演化类型判定、演化协议协商、可实现性分析、影响范围判定和编排协议映射各阶段的任务,通过对框架的有效性分析和与其它演化方法的对比分析,说明了该方法的适用性和完整性。其次,在演化类型分析的基础上,依据功能变化特点分别给出了单个状态节点、单个服务和服务组合的演化类型,并基于互模拟理论构建了相应的演化类型判定规则。通过规则判定可供选择演化方案的演化类型,可以实现对方案演化成本和难易程度的比较,通过规则明确服务组合在演化前后的变化细节,可以实现对变化信息的记录。通过实例分析,说明了演化类型的判定过程和应用场景,验证了判定规则的有效性。再次,充分考虑演化引发的成员服务内部业务逻辑变化,基于互模拟理论,从单个内部业务流程、单个服务的内部业务流程和服务组合的全局业务流程三个层面设计了演化影响范围的判定规则、实现算法和实施机制。通过规则判定演化的影响范围,使演化仅发生在受波及区域内,克服了传统演化中不受波及状态节点也被替换的问题。实施机制给出了判定的执行过程,解决了因演化发起服务不清楚伙伴服务内部细节,而无法直接判定伙伴服务受波及范围的问题。通过实例分析,说明了演化影响范围的判定过程,验证了规则的适用性。然后,在分析分散式服务编制下编排协议发布机制的基础上,依据WS-CDL框架特点,运用元组和有限状态自动机理论,给出了协议的结构模型和行为模型,解决了协议中静态信息和编排行为的形式化描述问题。根据状态迁移关系,在得出编排行为的全局状态迁移序列的基础上,使用π演算中的操作符描述执行操作类型,得出了全局动作执行序列的形式化描述,实现了对全局行为的进程表达。根据映射算子,得出了面向角色的结构和行为的映射模型,该映射模型通过将服务编排协议映射给各个具有特定角色的成员服务,实现了编制过程对协议的遵守,避免了因将整个协议文档发布给各成员服务而产生协议内容泄露和WS-CDL和BPEL在语法上无法直接转换的问题。最后,充分考虑了演化过程中服务功能局部变化的特点,在与服务集成阶段相容性判定比较的基础上,从端口、流程结构和行为三方面提出了一种面向演化的Web服务组合相容性判定方法,给出了判定规则、算法和实例,解决了两两服务相容性判定方法存在的时序、死锁和未指定接收判定不准确问题。利用π演算验证工具MWB描述了交互行为的进程表达,模拟了行为相容性的推演过程,验证了判定规则的有效性。