一种海洋应用服务链动态构建的方法

文档序号:7556962阅读:152来源:国知局
专利名称:一种海洋应用服务链动态构建的方法
技术领域
本发明涉及服务链的动态创建及应用领域,是一种以动态服务链的方式实现海洋应用的动态构建和实现的方法。
背景技术
近年来,SOA的思想及TOB服务技术已经在信息化实践中取得了巨大的发展和广泛的应用。一方面研究人员不断推出新的面向服务的计算理论、方法和模型,业界各大学术团体、标准化组织,如OASIS、W3C等也纷纷成立面向服务的计算的专题研讨组,不断推出 SOA相关技术标准和规范;另一方面,在工业界,全球各大IT巨头纷纷推出自己的面向服务的应用平台,纷纷表示自己将全面支持S0A,大部分企业也纷纷采用SOA的架构来搭建更加灵活的、更能满足不断扩展的应用需求的企业信息系统。而在海洋应用领域,信息化的程度和水平相对较低,现有的各类海洋信息系统多采用传统的封闭式的系统架构实现。随着海洋信息获取能力的不断提高和海洋领域全球化、区域化、综合化研究的开展,传统系统建设方式导致了系统用户越来越高的综合应用及分析需求和系统构建者专业性越来越强的知识结构间的矛盾。为了在现有海洋信息化建设的基础上满足用户跨学科综合分析的需求, 就需要构建一种动态、开放的资源集成与整合方式,为用户提供一个可以灵活的适应各类应用需求的综合平台。采用Web服务以及Web服务组合技术可以实现资源的动态集成,更好的适应当前应用需求不断变化的现状。然而在当前的海洋信息系统构建过程中,基于需求的静态Web服务组合方式限制了应用需求实现的方式和范围,当用户提出一种新的应用需求时,必须由系统架构或实现人员依据需求设计实现流程,完成相应的服务组合工作,并封装为新的系统功能再提供给用户。这种方式的问题在于用户的应用需求无法快速的实现, 即便是在现有功能上的轻微变化或是已有多个功能的集合,系统无法自动的构建满足用户需求的服务组合或功能组合。由此引出了 Web服务的动态组合问题。Web服务组合是通过对细粒度的服务进行有机合成,形成粗粒度的服务以满足用户的具体应用要求,不同领域的学者从不同的角度提出了多种服务组合的方法。概括起来主要可以分为两类基于工作流的服务组合方法和基于人工智能(Al)的服务组合方法。其中,基于工作流的服务组合方法是基于流程而提出来的,要求事先知道流程的具体结构以及流程中每个活动要求实现的功能与要达到的目的。针对不同的应用目的,曾提出过基于动态工作流的建立和运行阶段的服务组合、基于角色的分布式动态服务组合方法、基于层次化分析方法的业务流程层次化模型、面向工作流的动态服务组合模型等方法。 目前,基于工作流的服务组合大多是基于固定的业务流程模型进行服务组合或者是基于模板的半动态服务组合,在动态组合方面,往往在流程建模、服务绑定、参数设定等方面均由人工参与完成,又大大降低了服务组合的自动化程度。基于AI (Artificial Intelligence)的服务组合是将Web服务看成AI中的动作, 通过输入输出参数、前提和结果等来描述Web服务,在服务组合时将Web服务的这些描述映射为动作的形式化描述,在Web服务空间中以构造Web服务组合为目标,通过形式化的推理来得出Web服务的组合序列,动态形成服务组合方案。基于Al的服务组合方法虽然自动化程度高,但由于组合的性质受限于偶然组合,组合时的对象是在运行时产生,导致组合时有可能有很多分枝,一旦服务组合所涉及的服务集合变得非常庞大时,服务组合的搜索过程和推理过程将变得极其困难,无法取得用户满意的响应时间,并且方法的复杂度较高,相对难以实现。现有的这两大类服务组合方法虽然都可以实现服务的动态组合,但前者是基于明确的业务逻辑流程的基础之上的,更多的依赖于人为的参与,后者的自动化程度较高,但由于缺乏必要的组合约束导致组合结果的命中率较低,这两种方法都存在各自的优缺点,与用户动态构建和实现海洋应用的目标求具有一定的差距。

发明内容
本发明是为了避免海洋新应用需求导致的海洋信息系统功能频繁更新以及系统实现人员与用户间对应用逻辑理解的差异导致的功能与需求不符问题,实现对用户需求的快速响应,为用户提供一种交互式的、动态的新应用创建与实现的方法,即一种海洋应用服务链动态构建的方法。本发明所采用的技术方案的具体内容包括(1)原子服务抽象参考或依据相关Web服务标准及协议对海洋信息系统中的原子功能服务进行抽象,确定规范化的原子服务接口,使得所有的海洋应用功能原子服务可以被系统自动识别及管理。(2)服务链模型元素抽象对服务链的组成进行分析和分解,对其基本组成元素的可视化表示形式、描述方法以及约束等进行定义。一方面使得用户可以理解形式化模型元素的含义,另一方面使得系统可以识别模型元素的描述。(3)服务链的创建用户依据海洋应用的逻辑流程,基于可视化的操作界面,通过选择对应的模型元素进行组合,形成针对特定海洋应用的服务链模型。(4)服务链的验证系统依据特定的规则对用户创建的海洋应用服务链的有效性和逻辑性进行验证,保证用于执行的服务链模型都是可完成的。(5)服务链的管理由系统对服务链的组成、执行顺序以及服务链中各原子服务的状态等进行监控和管理,保证用户对服务链信息的可获取以及对服务链实现的可控制。其中(1)- )是方法实现的基础,在系统构建时就按照⑴和(2)分别完成系统内所有海洋应用功能服务的定义和服务链模型元素的定义。以后每次用户提出新的应用需求,通过创建服务链的方式来实现新需求时,只需顺序进行(3)-(5)的步骤即可。本发明中步骤(1)中使用XML作为海洋应用功能原子服务的描述语言,参考WSDL 中对Web服务模型的抽象和定义,定义了服务分类、服务输入、输出等服务接口。本发明中步骤O)中依据服务链的基本结构、组合方式以及原子服务在服务链中的位置将服务链模型抽象为10个基本模型要素一结点。并对每个要素的名称、属性以及可视化表达形式进行了定义。本发明中步骤(3)中系统提供可视化的服务链构建交互界面,用户通过选择服务链模型要素、确定各要素的属性值,并依据海洋应用的逻辑流程确定各要素的位置及顺序关系,形成针对特定海洋应用的服务链模型。
本发明中步骤中服务链的验证过程具体分为参数匹配验证和模型逻辑验证。(A)参数匹配验证。模型参数的匹配验证实质就是对流程模型中所有服务结点实例化的参数及接受的输入同服务设计的参数及数据进行匹配。当流程中所有服务结点均满足完全满足下列条件时认为参数匹配验证通过。>结点服务实例化参数个数PNi =结点服务设计输入参数个数PK ;>结点服务实例化参数类型集TCi =结点服务设计输入参数类型集PCd ;>结点对应输入结点总数DNi =结点服务设计输入数据个数DK ;>结点对应输入数据类型DTi =结点服务设计输入数据类型DTd ;(a)当对某个结点进行实例化时,首先进行结点类型的判断,若结点为服务结点, 则执行步骤(b)至(e),若非服务结点,则直接跳转至步骤(e);(b)提示用户输入服务实例化参数;(c)依据实例化参数中的服务标识获取对应服务的描述信息;(d)依次对上述4个匹配条件进行判断,当其中任一条件不满足时提示用户参数不匹配,返回步骤(a)重新对此结点进行实例化,直到全部条件满足;(e)进行下一结点的实例化。对于含有复合结点的流程模型,可以分层进行验证,先验证复合结点内部子流程的参数匹配性,再验证上一层流程的参数匹配性,直至顶层。(B)模型逻辑验证。模型的逻辑性验证是指对模型的逻辑结构进行分析,判断模型是否完整、有界、可达、可触发以及可前进。一个完整的服务流程模型可以定义为一个五元组SN = (P,T,W,i,ο)其中:P 代表Web服务的状态的集合;T 代表服务以及除服务外的一些必要操作(如用户的确认等)的集合;W 表示有向弧的集合,即P与T之间因果联系的集合;i 表示初始化状态;ο 表示结束状态;按照这一定义可以对模型的可达、有界、可前进、可触发以及完整进行如下描述(a)模型的可达是指从Pi出发,对于模型变迁集中的任意元素Tn,都可以通过触发一个变迁系列到达。从图形上来说就是流程图中的任意服务或操作结点都可以通过不间断有向弧与初始状态连接。(b)模型的有界是指整个模型具有唯一起始和终止结点,并且对于P,T中的任意元素Pn和Tn都属于从Pi至Po可达集中的一个元素。从图形上来说就是流程图有且只有一个起始结点和终止结点,并且模型中的任意结点都位于从Pi至Po的一条有向弧连接路径之上。(c)模型的可前进是指从起始结点开始每一次触发都将模型逐步推向终止结点, 即模型的可达树中不会出现无限的循环。从流程图上来说就是模型中不存在死循环等情况。(d)模型的可触发是指T中的任意元素Tn都可以通过一个可达的变迁系列将其触发,即模型是可完全执行的。(e)模型的完整则是指对于P,T中元素的任何状态来说,模型都是可达的。同时满足上述5点的服务链模型在执行时不会出现停滞不前的状态,执行中所处的状态及等待的消息是有限的,不会出现死锁。本发明中步骤(5)中系统负责将可视化的服务链模型转化为计算机可识别的服务链模型描述文件,并对创建的服务链模型进行保存和管理,包括模型的管理和模型执行的管理。模型的管理包括对模型信息的保存、查看、修改以及应用等。模型执行的管理包括模型执行状态的管理以及模型流程的监控等。本发明技术与现有技术相比,具有以下有益效果(1)可视化的海洋应用服务链模型构建方式为用户提供了一种直观、快捷的实现海洋应用需求的方法,用户可以利用已有的海洋应用功能原子服务或组合服务动态的构建满足个人特殊要求的服务链,实现海洋分析及应用功能。(2)对于海洋应用原子服务的抽象解决了海洋应用服务在系统中的自动识别和管理问题,使得符合海洋应用原子服务定义的服务都可以被系统识别和应用,实现海洋应用功能的集成。( 对于海洋应用服务链模型基本元素的抽象使得海洋应用服务链信息可以同时被用户和计算机所理解和识别,有利于服务链模型的管理和应用。


图1为本发明的总体结构图。图2为本发明的总体实现流程图。图3为本发明中服务链模型基本元素的抽象及可视化表达图。图4为本发明中针对海洋环境要素信息查询表达应用创建的服务链模型。图5为本发明中抽象的海洋应用原子服务模型示意图。图6为本发明中海洋环境要素信息查询表达应用服务链中结点编号示意图。图7为本发明中海洋环境要素信息查询表达服务链模型可达性验证的可达树图。
具体实施例方式参见图1,本实施例中的服务链中包含4个基本原子服务,原子服务通过服务注册集成到服务总线上,用户通过交互式服务链模型构建模块实现服务链模型的构建,在模型管理及应用过程中通过服务管理层实现对原子服务的调用、状态监控等,服务链的执行结果通过结果展示模块返回给用户。参见图2,一个海洋应用服务链模型的创建及实现具体步骤为(1)服务模型创建用户依据应用的实现逻辑顺序,通过选择抽象化的服务链模型元素进行组合形成针对特定海洋应用的服务链模型。其中服务链模型基本元素包括9类起始结点、终止结点、简单结点、复合结点等,可视化表示如图3所示。针对海洋环境要素信息查询表达应用,需要由4个原子服务组合而成,分别是海洋环境要素信息查询服务(S_Dat_Search)、数据压缩服务(S_Dat_redUCe)、图形绘制服务 (S_Col_draw)和统计表生成服务(S_Tab_stat)。其实现流程是由一个顺序流程和一个选择流程组合而成的,创建的服务链模型如图4所示。其中Pi表示服务的起始状态,包含用户对展示的海洋环境要素信息的要求;Tl表示服务S_Dat_search ;Pl表示Tl的正确完成, 保有数据查询的结果;T2表示选择操作,依据用户选择的结果展现形式确定后续的服务执行方向;P21、P22分别表示用户的两种不同选择结果——图形化展示和统计表展示;T3表示服务S_Dat_reduCe ;P3表示T3的正确完成,保有数据压缩后的结果;T4表示服务S_Col_ draw ;P4表示T4的正确完成,形成图形化展示结果;Τ5表示服务S_Tab_stat ;P5表示T5的正确完成,形成统计表格的展示结果;T6表示结果返回操作,用于将产生的展示结果返回给用户;Po表示T6的正确完成,也代表了整个流程的正确终止。(2)模型元素属性设定完成流程图的构建之后,还需要为每个结点赋予对应的属性,即模型元素属性设定。结点属性除包含结点对应的操作或服务名称外,还必须输出必要的参数对服务进行实例化。对于状态类结点的“属性值”属性,记录的是前一操作或服务的完成状态信息,有完成与未完成两种属性值,分别用1和0标识。对于服务类结点的“属性值”属性,记录的是服务实例化所必须的参数信息,依据服务的不同,参数值的个数与内容也不同。服务结点的属性信息主要用于原子服务的调用及监控等,因此结点的属性信息内容与原子服务的信息基本一致。参见图5,原子服务模型主要包含服务的功能、输入、输出和调用信息。其中功能描述复合原子服务功能描述规范的要求;输入输出中参数和数据符合参数类型及数据格式的定义;调用操作符合操作接口和信息交换协议的规定。对于操作类结点的“属性值”属性,记录的是需要用户进行的操作类型,例如输入部分信息、进行鼠标操作等。(3)服务链模型验证完成服务链模型中各结点属性信息的设置之后需要对用户创建的服务链模型进行验证。对流程模型的验证分两步进行,一是模型构建过程中对参数的匹配进行验证,二是模型构建完成后对模型的逻辑性进行验证。针对海洋环境要素信息查询表达功能服务链模型,首先进行参数匹配验证。在模型结点属性信息设置时可以获取各结点的类型及其实例化信息,其中4个原子服务结点在服务链中的编号及相关实例化信息如下表所示(结点序号参见图6所示)表1模型中原子服务结点属性信息表
权利要求
1.一种海洋应用服务链动态构建的方法,具体步骤为(1)原子服务抽象参考或依据相关Web服务标准及协议对海洋信息系统中的原子功能服务进行抽象,确定规范化的原子服务接口,使得所有的海洋应用功能原子服务可以被系统自动识别及管理。(2)服务链模型元素抽象对服务链的组成进行分析和分解,对其基本组成元素的可视化表示形式、描述方法以及约束等进行定义。一方面使得用户可以理解形式化模型元素的含义,另一方面使得系统可以识别模型元素的描述。(3)服务链的创建用户依据海洋应用的逻辑流程,基于可视化的操作界面,通过选择对应的模型元素进行组合,形成针对特定海洋应用的服务链模型。(4)服务链的验证系统依据特定的规则对用户创建的海洋应用服务链的有效性和逻辑性进行验证,保证用于执行的服务链模型都是可完成的。(5)服务链的管理由系统对服务链的组成、执行顺序以及服务链中各原子服务的状态等进行监控和管理,保证用户对服务链信息的可获取以及对服务链实现的可控制。其中(1)-(2)是方法实现的基础,在系统构建时就按照(1)和(2)分别完成系统内所有海洋应用功能服务的定义和服务链模型元素的定义。以后每次用户提出新的应用需求,通过创建服务链的方式来实现新需求时,只需顺序进行(3)-(5)的步骤即可。
2.根据权利要求1所述的海洋应用服务链动态构建的方法,其特征在于所述步骤(1)中使用XML作为海洋应用功能原子服务的描述语言,参考WSDL中对Web服务模型的抽象和定义,定义了海洋应用原子服务的分类、服务输入、输出等服务接口。
3.根据权利要求1所述的海洋应用服务链动态构建的方法,其特征在于所述步骤(2)中依据海洋应用服务链的基本结构、组合方式以及原子服务在服务链中的位置将服务链模型抽象为10个基本模型要素一结点。并对每个要素的名称、属性内容以及可视化表达形式进行了定义。
4.根据权利要求1所述的海洋应用服务链动态构建的方法,其特征在于所述步骤(3)中通过可视化的服务链构建交互界面,用户通过选择服务链模型要素、确定各要素的属性值,并依据海洋应用的逻辑流程确定各要素的位置及顺序关系,形成图形表达的针对特定海洋应用的服务链模型。
5.根据权利要求1所述的海洋应用服务链动态构建的方法,其特征在于所述步骤(4)中对于海洋应用服务链模型的验证分为参数匹配验证和模型逻辑验证两步。其中(A)参数匹配验证模型参数的匹配验证实质就是对流程模型中所有服务结点实例化的参数及接受的输入同服务设计的参数及数据进行匹配。当流程中所有服务结点均满足完全满足下列条件时认为参数匹配验证通过。>结点服务实例化参数个数PNi =结点服务设计输入参数个数PK ;结点服务实例化参数类型集TCi =结点服务设计输入参数类型集PCd ;>结点对应输入结点总数DNi =结点服务设计输入数据个数DK ;>结点对应输入数据类型DTi =结点服务设计输入数据类型DTd ;(a)当对某个结点进行实例化时,首先进行结点类型的判断,若结点为服务结点,则执行步骤(b)至(e),若非服务结点,则直接跳转至步骤(e);(b)提示用户输入服务实例化参数;(C)依据实例化参数中的服务标识获取对应服务的描述信息;(d)依次对上述4个匹配条件进行判断,当其中任一条件不满足时提示用户参数不匹配,返回步骤(a)重新对此结点进行实例化,直到全部条件满足;(e)进行下一结点的实例化。对于含有复合结点的流程模型,可以分层进行验证,先验证复合结点内部子流程的参数匹配性,再验证上一层流程的参数匹配性,直至顶层。(B)模型逻辑验证模型的逻辑性验证是指对模型的逻辑结构进行分析,判断模型是否完整、有界、可达、可触发以及可前进。一个完整的服务流程模型可以定义为一个五元组SN = (P,T,ff, i,ο)其中P:代表Web服务的状态的集合;T 代表服务以及除服务外的一些必要操作(如用户的确认等)的集合;W 表示有向弧的集合,即P与T之间因果联系的集合;i 表示初始化状态;ο 表示结束状态;按照这一定义可以对模型的可达、有界、可前进、可触发以及完整进行如下描述(a)模型的可达是指从Pi出发,对于模型变迁集中的任意元素Tn,都可以通过触发一个变迁系列到达。从图形上来说就是流程图中的任意服务或操作结点都可以通过不间断有向弧与初始状态连接。(b)模型的有界是指整个模型具有唯一起始和终止结点,并且对于P,T中的任意元素Pn和Tn都属于从Pi至Po可达集中的一个元素。从图形上来说就是流程图有且只有一个起始结点和终止结点,并且模型中的任意结点都位于从Pi至Po的一条有向弧连接路径之上。(c)模型的可前进是指从起始结点开始每一次触发都将模型逐步推向终止结点,即模型的可达树中不会出现无限的循环。从流程图上来说就是模型中不存在死循环等情况。(d)模型的可触发是指T中的任意元素Tn都可以通过一个可达的变迁系列将其触发,即模型是可完全执行的。(e)模型的完整则是指对于P,T中元素的任何状态来说,模型都是可达的。同时满足上述5点的服务链模型在执行时不会出现停滞不前的状态,执行中所处的状态及等待的消息是有限的,不会出现死锁。
6.根据权利要求1所述的海洋应用服务链动态构建的方法,其特征在于所述步骤(5)中系统利用基于XML的海洋应用服务链模型描述文件实现对服务链模型的保存和管理,包括对模型信息的保存、查看、修改、应用以及对模型执行状态、模型流程的监控和管理等。
全文摘要
本发明公开了一种以动态服务链的方式实现海洋应用的动态构建和实现的方法。具体内容包括(1)原子服务抽象确定规范化的原子服务接口;(2)服务链模型元素抽象对其基本组成元素的可视化表示形式、描述方法以及约束等进行定义;(3)服务链的创建基于可视化的操作界面,形成针对特定海洋应用的服务链模型;(4)服务链的验证对用户创建的海洋应用服务链的有效性和逻辑性进行验证;(5)服务链的管理对服务链的组成、执行顺序以及服务链中各原子服务的状态等进行监控和管理。本发明为用户提供直观、快捷的实现新的海洋应用需求的方法,具有所见即所得、动态灵活的优势。
文档编号H04L29/08GK102594851SQ201110002608
公开日2012年7月18日 申请日期2011年1月7日 优先权日2011年1月7日
发明者张新, 董文 申请人:中国科学院遥感应用研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1