专利名称:一种基于后备服务的高可靠工作流开发方法
技术领域:
本发明涉及计算机应用技术,具体是一种应用了 Web Service技术和网站开发技术实现了基于后备服务的高可靠性工作流开发方法。
背景技术:
工作流是一类能够完全或者部分自动执行的业务过程,文档、信息或任务根据一定的程序规则在不同的参与者之间进行传递与执行。作为企业经营过程重组与过程自动化的一种手段,工作流技术着眼于协调企业资源,自动化企业业务流程,高效完成企业业务目标。近年来,面向web服务的工作流技术逐渐兴起,使得企业活动分散的参与者能够透明地应用分布异构的资源进行更快更便捷的合作。然而,面对开放、动态的网络环境,构造和保障工作流的可靠执行面临巨大挑战。web服务所处的环境是一个动态的网络环境,很多服务可能经常发生变化,服务构建、服务组合、服务绑定和服务实际运行中都有可能出现失败的情况。因此,即使已经建立了可靠的流程,流程中涉及服务的可靠性变化还会使整个流程可靠性降低甚至无法顺利运行。开放的网络环境是挑战,同是也带来了机遇。随着web服务的发展,往往会出现多个具有相似功能、能完成相同任务的服务,可以通过一定的方法把这些服务引入到工作流中增强工作流的可靠性。在UDDI (Universal Description Discovery and Integration,统一描述、发现和集成协议)中心,会有很多相似行为的服务,比如提供的服务功能相同,服务调用方法相同。如果服务A的使用环境也是服务B的使用环境,那么我们称服务B能模拟服务A ;如果服务A与服务B能够互相模拟,那么称服务A与服务B等价。对于等价的服务,它们的使用环境相同,如果把处于工作流中的一个服务使用它的等价服务替换,那么整个工作流的运行将不会受到影响(如果替换服务能够正常与运行的话)。我们把这些等价服务称作原来工作流中服务的后备服务。
发明内容
本发明提供了一个基于后备服务的高可靠工作流开发方法,用户按此方法进能开发出相对更可靠的工作流。本发明所述的一种基于后备服务的高可靠工作流开发方法,其包括以下步骤:
1)首先,为提高可靠性,用户对既有工作流添加后备服务,工作流描述机制将加入了后备服务的工作流以形式化的语言进行描述;
2)分解出该添加了后备服务的工作流中包含的各个子系统,计算出子系统中每个web服务节点的可靠性以及工作流整体的可靠性,如果计算得到的工作流可靠性不满足用户的需求,用户从外部服务中选择最优的服务继续添加到后备服务列表中;3)再次评估服务节点和工作流整体的可靠性,如果还是不满足要求,则继续添加后备服务,渐进地提高工作流的可靠性,直至达到用户的要求。上述步骤2)中,分解工作流中包含的各个子系统及计算可靠性的过程是:将工作流自顶向下被分解成五种不同类型的子系统:服务节点,顺序结构,选择结构,并行结构和循环结构,运用Petri网系统结构性能分析的方法,把Petri网对图形结构的性能分析方法应用于工作流结构的分析与可靠性的评估计算;使用自顶向下的方式把工作流表示成一个树形结构,分解出工作流中所有的子系统,并从底层开始计算子系统的其可靠性,对分解得到的子系统应用自底向上逐层构建的方式,每一层都应用子系统的可靠性计算公式,最终在树形结构的顶端得到整个工作流的可靠性。所述每一层都应用子系统的可靠性计算公式中,对于单个web服务节点,假设P0是原服务成功的概率,它有n个后备服务,
权利要求
1.种基于后备服务的高可靠工作流开发方法,其特征在于包括以下步骤: 1)首先,为提高可靠性,用户对既有工作流添加后备服务,工作流描述机制将加入了后备服务的工作流以形式化的语言进行描述; 2)分解出该添加了后备服务的工作流中包含的各个子系统,计算出子系统中每个web服务节点的可靠性以及工作流整体的可靠性,如果计算得到的工作流可靠性不满足用户的需求,用户从外部服务中选择最优的服务继续添加到后备服务列表中; 3)再次评估web服务节点和工作流整体的可靠性,如果还是不满足要求,则继续添加后备服务,渐进地提高工作流的可靠性,直至达到用户的要求。
2.据权利要求1所述的基于后备服务的高可靠工作流开发方法,其特征在于,上述步骤2)中,分解工作流中包含的各个子系统及计算可靠性的过程是:将工作流自顶向下被分解成五种不同类型的子系统:服务节点,顺序结构,选择结构,并行结构和循环结构,运用Petri网系统结构性能分析的方法,把Petri网对图形结构的性能分析方法应用于工作流结构的分析与可靠性的评估计算;使用自顶向下的方式把工作流表示成一个树形结构,分解出工作流中所有的子系统,并从底层开始计算子系统的其可靠性,对分解得到的子系统应用自底向上逐层构建的方式,每一层都应用子系统的可靠性计算公式,最终在树形结构的顶端得到整个工作流的可靠性。
3.据权利要求2所述的基于后备服务的高可靠工作流开发方法,其特征在于,所述每一层都应用子系统的可靠性计算公式中,对于单个web服务节点,假设 是原服务成功的概率,它有H个后备服务,/Κ Χ η)是后备服务成功的概率,那么加入后备服务后,这个服务节点整体的可靠性#可以由公式得到:
4.据权利要求2所述的基于后备服务的高可靠工作流开发方法,其特征在于,所述步骤2)中,用户从外部服务中 选择最优的服务继续添加到后备服务列表的过程中,用户优先选择对工作流可靠性影响较高的web服务添加后备服务;对于每个服务的等价服务,按后备服务机制所安排的顺序进行最优的排序,使得用户每次都能够优先选取可靠性最高的等价服务加入此服务的后备服务列表中。
5.据权利要求4所述的基于后备服务的高可靠工作流开发方法,其特征在于,所述各web服务对工作流可靠性影响高低与否是由子系统的敏感度_确定,子系统敏感度5(4)11 公式为:
全文摘要
本发明公开了一种基于后备服务的高可靠性工作流开发方法,首先用户对既有工作流添加后备服务,工作流描述机制将加入了后备服务的工作流以形式化的语言进行描述;分解出该添加了后备服务的工作流中包含的各个子系统,计算出可靠性,如果可靠性不满足需求,从外部服务中选择最优的服务继续添加;渐进地提高工作流的可靠性,直至达到用户的要求。本发明利用网络中涌现的大量的等价服务作为工作流中服务的后备服务,构建高可靠性的工作流。
文档编号G06F9/44GK103092617SQ20131001328
公开日2013年5月8日 申请日期2013年1月15日 优先权日2013年1月15日
发明者吕建, 徐锋, 陈威 申请人:南京大学