CN101695080A - Bpmn组合服务的执行方法和执行装置 - Google Patents

Bpmn组合服务的执行方法和执行装置 Download PDF

Info

Publication number
CN101695080A
CN101695080A CN200910235613A CN200910235613A CN101695080A CN 101695080 A CN101695080 A CN 101695080A CN 200910235613 A CN200910235613 A CN 200910235613A CN 200910235613 A CN200910235613 A CN 200910235613A CN 101695080 A CN101695080 A CN 101695080A
Authority
CN
China
Prior art keywords
bpmn
flow
execution
flow object
type
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN200910235613A
Other languages
English (en)
Inventor
刘旭东
李建欣
曾晋
纪一鹏
班倩超
杜宗霞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beihang University
Original Assignee
Beihang University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beihang University filed Critical Beihang University
Priority to CN200910235613A priority Critical patent/CN101695080A/zh
Publication of CN101695080A publication Critical patent/CN101695080A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Telephonic Communication Services (AREA)

Abstract

本发明提供一种BPMN组合服务的执行方法和执行装置。该方法包括接收执行BPMN组合服务的请求消息,根据所述请求消息构建BPMN的运行时对象;解析所述BPMN的运行时对象,获得所述BPMN的运行时对象中流对象的执行顺序信息;调用与所要执行的流对象的类型对应的执行方法,按照所述执行顺序信息依次执行所述流对象。本发明提供的BPMN组合服务的执行方法和执行装置,通过对BPMN图模型中的流对象和顺序流的解析,获取流对象的执行顺序,并依照BPMN中流对象的语义执行相应的动作;实现了BPMN流程直接解释执行,实现业务概念模型、业务流程模型和业务执行模型的语义上的兼容和统一及BPMN执行的自动化。

Description

BPMN组合服务的执行方法和执行装置
技术领域
本发明涉及BPMN组合服务技术领域,尤其涉及一种BPMN组合服务的执行方法和执行装置。
背景技术
随着互联网技术的快速发展,面向服务体系结构(简称:SOA)等网络化服务软件模式得到了广泛应用,特别是Web服务作为SOA的最佳实践,极大的推动了SOA在金融、电信及电子商务等领域的发展。在实际的业务应用中独立的万维网服务(以下简称:Web服务)功能有限,不可能完成复杂的业务需求,一些多方参与的复杂业务流程需要集成已存在的Web服务形成更高级服务组合来完成。Web服务组合作为实现灵活的跨组织应用集成和资源共享的核心技术得到了许多研究机构的共同关注,成为新兴的研究热点。
组合服务建模和服务的执行,是服务组合生命周期中的两个重要组成部分。在业务建模阶段,业务分析人员使用各种流程建模语言描述业务流程,进行组合服务建模。目前主流的流程建模语言包括面向设计的语言,例如业务流程建模标记(Business Process Modeling Notation;以下简称:BPMN)和Web服务编排描述语言(WS-CDL);流程建模语言还包括面向执行的语言,例如业务流程执行语言(BPEL)和可扩展标识语言(eXtensible MarkupLanguage;简称:XML)流程定义语言(XPDL)等。业务人员使用BPMN建模,开发出来的是抽象的业务模型,不能直接执行。目前对于BPMN模型的执行,一般采用的方式是由技术人员根据业务模型编排出执行模型,例如生成具体的BPEL流程,然后利用已有的BPEL引擎执行。
将BPMN转换到BPEL的执行方式有如下缺陷:面向图形的BPMN模型与面向决的BPEL之间存在语法和语义上的不兼容,会导致业务模型与执行模型之间的转换带来BPMN模型功能缺失、循环结构和并行语言处理困难等问题。BABEL项目无法支持全部的BPMN结构。BPMN到BPEL映射的核心问题是BPMN中的流程方向可以任意流动,而BPEL的除循环外的流程方向却始终是向前的,但BEPL对循环有着特定的规定,即BPEL的循环只能有一个入口和一个出口,因此现有的BPMN向BPEL的映射方法在处理源模型(尤其是面对循环结构)上具有很大的局限性。另外,由于BPMN和BPEL两种语言根本上的语义语法不一致性导致这种模型映射不可能是完全自动化的,必须由人来参与和控制。
发明内容
本发明实施例提供一种BPMN组合服务的执行方法和执行装置,用以解决现有技术中将BPMN转换到BPEL的执行方式中存在模型映射失配,需要手动配置的缺陷,实现BPMN模型的直接解析执行。
本发明实施例提供一种BPMN组合服务的执行方法,包括:
接收执行BPMN组合服务的请求消息,根据所述请求消息构建BPMN的运行时对象;
解析所述BPMN的运行时对象,获得所述BPMN的运行时对象中流对象的执行顺序信息;
调用与所要执行的流对象的类型对应的执行方法,按照所述执行顺序信息依次执行所述流对象。
本发明实施例提供一种BPMN组合服务的执行装置,包括:
执行请求预处理模块,用于接收执行BPMN组合服务的请求消息,根据所述请求消息构建BPMN的运行时对象;
BPMN流程解析模块,用于解析所述BPMN的运行时对象,获得所述BPMN的运行时对象中流对象的执行顺序信息;
流对象执行模块,用于调用与所要执行的流对象的类型对应的执行方法,按照所述执行顺序信息依次执行所述流对象。
本发明提供的BPMN组合服务的执行方法和执行装置,通过对BPMN图模型中的流对象和顺序流的解析,获取流对象的执行顺序,并依照BPMN中流对象的语义执行相应的动作;实现了BPMN流程直接解释执行而不将其转换为BPEL流程,克服了BPMN与BPEL两个标准之间语义失配的缺陷。由于BPMN的解析执行绕过了模型转换的环节,因此不存在模型转换带来的不兼容问题,可以实现业务概念模型、业务流程模型和业务执行模型的语义上的兼容和统一。执行过程无需人工参与和控制,可以实现BPMN执行的自动化。
附图说明
图1为本发明BPMN组合服务的执行方法实施例一流程图;
图2为本发明BPMN模型对象树示意图;
图3为本发明BPMN组合服务的执行方法实施例二流程图;
图4为本发明BPMN组合服务的执行方法中执行活动类型的流对象的流程图;
图5为本发明BPMN组合服务的执行方法中执行门径类型的流对象的流程图;
图6为本发明BPMN组合服务的执行方法中执行事件类型的流对象的流程图;
图7为本发明BPMN组合服务的执行装置结构示意图。
具体实施方式
下面结合附图和具体实施例进一步说明本发明的技术方案。
为了支持BPMN的流程的执行,必须克服其面向图形(Graph Oriented)的根本特性,与其它可执行服务组合语言(例如BPEL)不同的是,BPMN的模型对于BPMN流程的描述只是停留在图形的层面上,符合BPMN计划(BPMNSchema)的持久化文件并没有明确地指示出流程执行的顺序。因此,必须通过对BPMN流程对应的有向图的解析,获得图中的各个节点在流程执行过程中被执行的先后顺序,同时在节点被执行时完成BPMN规范中定义的行为语义操作,才能完成整个BPMN模型的执行。
图1为本发明BPMN组合服务的执行方法实施例一流程图,如图1所示,该方法包括:
步骤100,接收执行BPMN组合服务的请求消息,根据所述请求消息构建BPMN的运行时对象;
BPMN组合服务的直接执行引擎接收到外部的执行请求消息,该执行请求消息可以是简单对象访问协议(Simple Object Access Protocol;以下简称:SOAP)消息,SOAP消息中可以包括请求执行的BPMN组合服务的名称和执行所述BPMN组合服务所需的输入参数,将可以唯一标识一个BPMN流程的BPMN组合服务的名称和调用该组合服务时的输入参数从SOAP消息中取出。
然后根据所述BPMN组合服务的名称查询对应的BPMN文件,并将所述BPMN文件转换成BPMN对象实例集合,具体为首先根据BPMN组合服务的名称在执行引擎内部的组合服务库中找到用户要调用的BPMN组合服务对应的BPMN文件,该BPMN文件是符合本发明定义的XML文件;然后将该BPMN文件转换成BPMN对象实例集合,BPMN对象实例集合为由从BPMN文件转换得到的多个对象实例的集合。
最后根据所述BPMN对象实例集合和所述输入参数,构建所述BPMN的运行时对象,即在获得BPMN对象实例集合后,结合执行所述BPMN组合服务所需的输入参数共同构建出BPMN的运行时对象。
所述的BPMN运行时对象(BPMN Execution Object;简称:BEO)是对不同的Web服务组合流程执行需求的统一抽象,代表一个组合服务流程的一次执行。BEO维护了运行时BPMN流程的数据结构,其包含如下信息:(1)运行时对象标识符,是一次BPMN流程执行的唯一标识。通过该标识符,可以区分不同的运行期对象;(2)BPMN对象实例集合,即与BPMN图对应的BPMN元素对象树,BPMN流程实例是对用户建模得到的BPMN流程的对象表示,是流程执行的依据;(3)运行时对象的状态信息,包括等待、执行、挂起和结束状态;(4)执行上下文(Context),记录了与本次流程执行相关的所有业务数据,包括用户输入的参数信息和流程运行期间产生的中间业务数据。要构建BPMN运行时对象,关键在于将基于XML语言的BPMN文件转换成为内存中的对象实例集合。符合BPMN计划(BPMN Schema)的BPMN模型可以用一棵树表示,因此转换得到的BPMN元素对象集合中的对象存在层次关系,整个BPMN流程对应的元素对象实际上构成了一棵以“BPMNElement”作为根节点的对象树,如图2所示。通过访问“BPMNElement”对象提供的方法,可以获得整个对象树上的任一节点。本发明实施例中所述的Web是指万维网,所述的Web服务(Web Service)是一类用URI标识的软件系统,使用XML定义和描述其对外公开的接口和绑定。Web服务的定义能够被其他的软件系统所发现。这些软件系统能够通过Web服务的定义所规定的方式与其进行交互,交互中使用互联网协议传送基于XML的消息。
步骤101,解析所述BPMN的运行时对象,获得所述BPMN的运行时对象中流对象的执行顺序信息;
通过对运行时对象进行调度和解释,解析运行时对象中的BPMN对象实例集合中的流对象和顺序流,获得所述BPMN的运行时对象中流对象的执行顺序信息,即通过解析BPMN对象实例集合中的流对象和顺序流,获取执行顺序,控制整个流程的执行。
步骤102,调用与所要执行的流对象的类型对应的执行方法,按照所述执行顺序信息依次执行所述流对象。
当满足执行条件时,首先根据所要执行的流对象的类型选择对应的执行方法,然后调用该方法执行流对象;再按照执行顺序依次执行下一个流对象。执行流对象时具体要根据流对象的BPMN图形元素的行为语义和执行所述BPMN组合服务所需的输入参数,执行流对象。
通过对BPMN流程的解析获得执行顺序,并按照顺序依次执行流对象的过程中包括:解析所述BPMN对象实例集合中的流对象和顺序流,将查找到的初始流对象加入待执行流对象集合;调用与加入所述待执行流对象集合中的流对象的类型对应的执行方法,执行所述流对象;获得以执行完毕的流对象为起点的顺序流边的后继顺序流边集合;将所述后继顺序流边集合中符合转移条件的顺序流边指向的流对象,加入所述待执行流对象集合;在执行完毕一个流对象后,再到待执行流对象集合中取出下一个所要执行的流对象,按照对应的执行方法执行。
流对象的类型可以分成活动(Activity)类型、事件(Event)类型和门径(Gateway)类型,对于不同类型的流对象有对应的执行方法,例如对于类型为活动类型的流对象执行方法可以包括根据类型为活动类型的流对象对应的Web服务的输入流描述,获取Web服务中各参数的参数类型和参数名称;根据所述流对象的赋值描述和所述参数名称,从所述对象实例集合中取出执行上下文信息对所述参数进行赋值;根据所述参数类型和分别由Web服务的服务名称描述和操作名称描述得到的Web服务名称和操作名称,与对应的Web服务进行绑定,获取Web服务的地址和目标命名空间信息,其中具体绑定哪个Web服务是随机的;根据所述Web服务名称、操作名称和所述参数的取值,执行所述Web服务,并接收返回值信息;根据类型为活动类型的流对象对应的Web服务的输出流描述,获取调用返回值的参数类型和名称信息,并与所述返回值信息一起写入所述执行上下文信息中。
对于类型为门径类型的流对象执行方法可以包括判断类型为门径类型的流对象的入度和出度,若所述入度大于1且所述出度等于1,则等到所述并行门径类型服务所有入边的消息均已经到达后,结束流对象的执行;若所述入度等于1且所述出度大于1,则直接结束流对象的执行。
对于类型为事件类型的流对象执行方法可以包括根据类型为事件类型的流对象的消息流指示信息,获取指向所述流对象的消息流;从所述消息流中获取所述消息流包含的参数名称和类型信息;根据消息到达标志位判断消息是否已经到达,若到达,则从到达的消息中取出参数值信息;将所述参数值信息、所述参数名称和类型信息写入所述对象实例集合中的执行上下文信息中。
图3为本发明BPMN组合服务的执行方法实施例二流程图,如图3所示,BPMN的执行方法可以包括为以下步骤:
步骤200、用户提交BPMN流程执行请求;
步骤201、对提交的BPMN执行请求进行预处理,建立运行时对象;
接收的SOAP消息中可以包括请求执行的BPMN组合服务的名称和执行所述BPMN组合服务所需的输入参数,根据BPMN组合服务的名称查找BPMN文件,将BPMN文件转换成BPMN对象实例集合,根据BPMN对象实例集合和所述输入参数,构建BPMN的运行时对象。
步骤202、解析BPMN流程,找出起始流对象,将其加入待执行流对象集合;
步骤203、从待执行流对象集合中取出一个流对象;
步骤204、根据取出的流对象的类型,调用相应的流对象执行方法执行流对象;
步骤205、获得后继顺序流边集合;
以刚执行完毕的流对象为起点的顺序流边的集合称为后继顺序流边集合。
步骤206、判断后继顺序流边集合是否为空,若为空,跳转执行步骤210;若不为空,则执行步骤207;
步骤207、从后继顺序流边集合中取出一条顺序流边;
步骤208、判断此边上的转移条件是否为真,如果为真,则执行步骤209;否则,跳转执行步骤206;
步骤209、将顺序流边指向的流对象加入待执行流对象集合,跳转执行步骤206;
步骤210、判断待执行流对象集合是否为空,若不为空,跳转执行步骤203;否则,执行步骤211;
步骤211、结束。
在上述执行流程中,针对不同类型的流对象采用对应的执行方法执行,步骤204针对类型为服务任务(service task)的具体执行步骤,所述的服务任务是类型为活动(Activity)类型的流对象中的一种,如图4所示:
步骤2041a、根据服务任务对应的Web服务的输入流(inMessageRef属性)描述获取Web服务中各参数的的参数类型和参数名称;
步骤2042a、根据服务任务的赋值(assignment)描述和所述参数名称进行参数赋值,从运行实例中取出执行上下文信息,赋值给相应Web服务的参数;
步骤2043a、根据所述Web服务名称、操作名称和所述参数类型信息,查找当前可用的服务,获取Web服务的地址例如“Url”和目标命名空间信息例如“targetNameSpace”,绑定具体的Web服务;
其中所述的Web服务名称是由Web服务的服务名称描述获得的,操作名称是由Web服务的操作名称描述获得的。
步骤2044a、根据Web服务名称、操作名称和参数的取值,执行Web服务调用,并接收返回值信息;
步骤2045a、根据服务任务对应的Web服务的输出流(outMessageRef属性)描述获取调用返回值的参数类型和名称信息,并与对应的返回值一起添加到运行实例的上下文信息中。
步骤2046a、执行结束。
在上述执行流程中,针对不同类型的流对象采用对应的执行方法执行,步骤204针对类型为门径类型的流对象的具体执行步骤为,如图5所示:
所述步骤204,类型为并行门径parallel gateway(属于门径类型)的具体执行步骤包括:
步骤2041b、判断门径类型的流对象的入度和出度,如果入度为1且出度大于1,则跳转执行步骤2043b;如果入度大于1且出度为1,则执行步骤2042b;
步骤2042b、判断门径类型的流对象所有入边的消息是否已经到达,若有消息没有到达,则此门径类型的流对象继续等待;否则,执行步骤2043b;
步骤2043b、执行结束。
在上述执行流程中,针对不同类型的流对象采用对应的执行方法执行,步骤204针对类型为事件类型(start event)的流对象的具体执行步骤为,如图6所示:
步骤2041c,根据事件类型的流对象的消息流指示信息(messageRef)获取指向此流对象的消息流(message flow);
步骤2042c、从上述消息流(message flow)中获取消息中包含的参数名称和类型信息;
步骤2043c、查看消息到达的标志位是否为真,若消息到达的标志位标识消息已经到达,则执行步骤2044c;
步骤2044c,从收到的消息中取出参数值信息,将参数值信息和所述参数名称和类型信息一起写入运行时对象的执行上下文中;
步骤2045c,执行结束。
本发明提供的BPMN组合服务的执行方法通过对BPMN图模型中的流对象和顺序流的解析,获取流对象的执行顺序,并依照BPMN中流对象的语义执行相应的动作;实现了BPMN流程直接解释执行而不将其转换为BPEL流程,克服了BPMN与BPEL两个标准之间语义失配的缺陷。由于BPMN的解析执行绕过了模型转换的环节,因此不存在模型转换带来的不兼容问题,可以实现业务概念模型、业务流程模型和业务执行模型的语义上的兼容和统一。执行过程无需人工参与和控制,可以实现BPMN执行的自动化。
图7为本发明BPMN组合服务的执行装置结构示意图,如图7所示,该装置包括执行请求预处理模块11、BPMN流程解析模块12和流对象执行模块13,其中执行请求预处理模块11用于接收执行BPMN组合服务的请求消息,根据所述请求消息构建BPMN的运行时对象;BPMN流程解析模块12用于解析所述BPMN的运行时对象,获得所述BPMN的运行时对象中流对象的执行顺序信息;流对象执行模块13用于调用与所要执行的流对象的类型对应的执行方法,按照所述执行顺序信息依次执行所述流对象。
本实施例提供一个BPMN执行引擎装置,其中执行请求预处理模块11包括消息接收子模块111、运行时对象构建子模块112和运行时对象调度子模块113,其中消息接收子模块111用于接收所述执行BPMN组合服务的请求消息;运行时对象构建子模块112用于根据所述请求消息构建所述运行时对象;运行时对象调度子模块113用于对所述运行时对象进行调度,为所述BPMN流程解析模块提供运行时对象。
具体地,执行请求预处理模块11中的消息接收子模块111接收执行BPMN组合服务的请求消息,并从请求消息例如SOAP消息中提取相关信息,所述相关信息包括请求执行的BPMN组合服务的名称和执行所述BPMN组合服务所需的输入参数,并为运行时对象构建子模块112提供构建运行时对象的信息;运行时对象调度子模块113与BPMN流程解析模块12连接,用于实现运行时对象的调度,为BPMN流程解析模块12提供BPMN运行时对象;BPMN流程解析模块12用于解析BPMN图模型,确定流程中的流对象的执行顺序和控制执行的逻辑;流对象执行模块13为不同类型的流对象提供执行方法。流对象执行模块为不同类型的流对象提供执行方法,包括事件(Event)执行模块、活动(Activity)执行模块和门径(Gateway)执行模块。事件执行模块为事件类型的流对象提供执行方法,活动执行模块为活动类型的流对象提供执行方法,门径执行模块为门径类型的流对象提供执行方法。这三个模块内部包括了处理各个事件子类型、活动子类型和门径子类型的子模块。
本发明提供的BPMN组合服务的执行装置通过对BPMN图模型中的流对象和顺序流的解析,获取流对象的执行顺序,并依照BPMN中流对象的语义执行相应的动作;实现了BPMN流程直接解释执行而不将其转换为BPEL流程;由于BPMN的解析执行绕过了模型转换的环节,可以实现业务概念模型、业务流程模型和业务执行模型的语义上的兼容和统一;执行过程无需人工参与和控制,可以实现BPMN执行的自动化。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种BPMN组合服务的执行方法,其特征在于,包括:
接收执行BPMN组合服务的请求消息,根据所述请求消息构建BPMN的运行时对象;
解析所述BPMN的运行时对象,获得所述BPMN的运行时对象中流对象的执行顺序信息;
调用与所要执行的流对象的类型对应的执行方法,按照所述执行顺序信息依次执行所述流对象。
2.根据权利要求1所述的BPMN组合服务的执行方法,其特征在于,所述接收执行BPMN组合服务的请求消息,根据所述请求消息构建BPMN的运行时对象包括:
接收所述请求消息,所述请求消息中包括请求执行的BPMN组合服务的名称和执行所述BPMN组合服务所需的输入参数;
根据所述BPMN组合服务的名称查询对应的BPMN文件,并将所述BPMN文件转换成BPMN对象实例集合;
根据所述BPMN对象实例集合和所述输入参数,构建所述BPMN的运行时对象。
3.根据权利要求2所述的BPMN组合服务的执行方法,其特征在于,所述解析所述BPMN的运行时对象,获得所述BPMN的运行时对象中流对象的执行顺序信息包括:
解析所述BPMN对象实例集合中的流对象和顺序流,获得所述BPMN的运行时对象中流对象的执行顺序信息。
4.根据权利要求3所述的BPMN组合服务的执行方法,其特征在于,所述解析所述BPMN的运行时对象,获得所述BPMN的运行时对象中流对象的执行顺序信息,调用与所要执行的流对象的类型对应的执行方法,按照所述执行顺序信息依次执行所述流对象包括:
解析所述BPMN对象实例集合中的流对象和顺序流,将查找到的初始流对象加入待执行流对象集合;
调用与加入所述待执行流对象集合中的流对象的类型对应的执行方法,执行所述流对象;
获得以执行完毕的流对象为起点的顺序流边的后继顺序流边集合;
将所述后继顺序流边集合中符合转移条件的顺序流边指向的流对象,加入所述待执行流对象集合。
5.根据权利要求4所述的BPMN组合服务的执行方法,其特征在于,所述调用与加入所述待执行流对象集合中的流对象的类型对应的执行方法,执行所述流对象包括:
根据所述流对象的BPMN图形元素的行为语义和所述输入参数,执行所述流对象。
6.根据权利要求5所述的BPMN组合服务的执行方法,其特征在于,所述根据所述流对象的BPMN图形元素的行为语义和所述输入参数,执行所述流对象包括:
根据类型为活动类型的流对象对应的Web服务的输入流描述,获取Web服务中各参数的参数类型和参数名称;
根据所述流对象的赋值描述和所述参数名称,从所述对象实例集合中取出执行上下文信息对所述参数进行赋值;
根据所述参数类型和分别由Web服务的服务名称描述和操作名称描述得到的Web服务名称和操作名称,与对应的Web服务进行绑定,获取所述Web服务的地址和目标命名空间信息。根据所述Web服务名称、操作名称和所述参数的取值,执行所述Web服务,并接收返回值信息;
根据类型为活动类型的流对象对应的Web服务的输出流描述,获取调用返回值的参数类型和名称信息,并与所述返回值信息一起写入所述执行上下文信息中。
7.根据权利要求5所述的BPMN组合服务的执行方法,其特征在于,所述根据所述流对象的BPMN图形元素的行为语义和所述输入参数,执行所述流对象包括:
判断类型为门径类型的流对象的入度和出度,若所述入度大于1且所述出度等于1,则等到所述并行门径类型服务所有入边的消息均已经到达后,结束流对象的执行;若所述入度等于1且所述出度大于1,则直接结束流对象的执行。
8.根据权利要求5所述的BPMN组合服务的执行方法,其特征在于,所述根据所述流对象的BPMN图形元素的行为语义和所述输入参数,执行所述流对象包括:
根据类型为事件类型的流对象的消息流指示信息,获取指向所述流对象的消息流;
从所述消息流中获取所述消息流包含的参数名称和类型信息;
根据消息到达标志位判断消息是否已经到达,若到达,则从到达的消息中取出参数值信息;
将所述参数值信息、所述参数名称和类型信息写入所述对象实例集合中的执行上下文信息中。
9.一种BPMN组合服务的执行装置,其特征在于,包括:
执行请求预处理模块,用于接收执行BPMN组合服务的请求消息,根据所述请求消息构建BPMN的运行时对象;
BPMN流程解析模块,用于解析所述BPMN的运行时对象,获得所述BPMN的运行时对象中流对象的执行顺序信息;
流对象执行模块,用于调用与所要执行的流对象的类型对应的执行方法,按照所述执行顺序信息依次执行所述流对象。
10.根据权利要求9所述的BPMN组合服务的执行装置,其特征在于,所述执行请求预处理模块包括:
消息接收子模块,用于接收所述执行BPMN组合服务的请求消息;
运行时对象构建子模块,用于根据所述请求消息构建所述运行时对象;
运行时对象调度子模块,用于对所述运行时对象进行调度,为所述BPMN流程解析模块提供运行时对象。
CN200910235613A 2009-09-30 2009-09-30 Bpmn组合服务的执行方法和执行装置 Pending CN101695080A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200910235613A CN101695080A (zh) 2009-09-30 2009-09-30 Bpmn组合服务的执行方法和执行装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200910235613A CN101695080A (zh) 2009-09-30 2009-09-30 Bpmn组合服务的执行方法和执行装置

Publications (1)

Publication Number Publication Date
CN101695080A true CN101695080A (zh) 2010-04-14

Family

ID=42094020

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910235613A Pending CN101695080A (zh) 2009-09-30 2009-09-30 Bpmn组合服务的执行方法和执行装置

Country Status (1)

Country Link
CN (1) CN101695080A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102254233A (zh) * 2010-05-20 2011-11-23 深圳市金蝶中间件有限公司 流程驱动方法及装置
CN102520953A (zh) * 2011-12-15 2012-06-27 北京航空航天大学 基于bpmn的页面生成方法和装置
CN102591641A (zh) * 2011-12-15 2012-07-18 北京航空航天大学 业务流程验证方法及系统
CN102650953A (zh) * 2011-02-28 2012-08-29 北京航空航天大学 并发优化的bpmn组合服务执行引擎及方法
CN102664917A (zh) * 2012-03-26 2012-09-12 河海大学 一种web服务组合在线失效预测的方法
CN104616151A (zh) * 2015-01-13 2015-05-13 浙江大学 基于bpmn的语言的商业模式描述及分析方法
CN104933118A (zh) * 2015-06-05 2015-09-23 东南大学 一种基于主题的发布/订阅系统中的流程定义元模型及其构建方法
CN112463141A (zh) * 2020-11-25 2021-03-09 北京航空航天大学 一种基于bpmn的微服务工作流部署方法

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102254233A (zh) * 2010-05-20 2011-11-23 深圳市金蝶中间件有限公司 流程驱动方法及装置
CN102254233B (zh) * 2010-05-20 2014-04-23 深圳市金蝶中间件有限公司 流程驱动方法及装置
CN102650953A (zh) * 2011-02-28 2012-08-29 北京航空航天大学 并发优化的bpmn组合服务执行引擎及方法
WO2012116513A1 (zh) * 2011-02-28 2012-09-07 北京航空航天大学 并发优化的bpmn组合服务执行引擎及方法
CN102650953B (zh) * 2011-02-28 2014-05-07 北京航空航天大学 并发优化的bpmn组合服务执行引擎及方法
CN102591641A (zh) * 2011-12-15 2012-07-18 北京航空航天大学 业务流程验证方法及系统
CN102520953A (zh) * 2011-12-15 2012-06-27 北京航空航天大学 基于bpmn的页面生成方法和装置
CN102520953B (zh) * 2011-12-15 2014-09-03 北京航空航天大学 基于bpmn的页面生成方法和装置
CN102664917A (zh) * 2012-03-26 2012-09-12 河海大学 一种web服务组合在线失效预测的方法
CN102664917B (zh) * 2012-03-26 2014-10-08 河海大学 一种web服务组合在线失效预测的方法
CN104616151A (zh) * 2015-01-13 2015-05-13 浙江大学 基于bpmn的语言的商业模式描述及分析方法
CN104616151B (zh) * 2015-01-13 2018-05-22 浙江大学 基于bpmn的语言的商业模式描述及分析方法
CN104933118A (zh) * 2015-06-05 2015-09-23 东南大学 一种基于主题的发布/订阅系统中的流程定义元模型及其构建方法
CN112463141A (zh) * 2020-11-25 2021-03-09 北京航空航天大学 一种基于bpmn的微服务工作流部署方法
CN112463141B (zh) * 2020-11-25 2021-12-14 北京航空航天大学 一种基于bpmn的微服务工作流部署方法

Similar Documents

Publication Publication Date Title
CN101695080A (zh) Bpmn组合服务的执行方法和执行装置
Manolescu et al. Model-driven design and deployment of service-enabled web applications
Syu et al. A survey on automated service composition methods and related techniques
CN102426519B (zh) 基于关联数据的bpel模板和服务的复用方法及其系统
CN106648682B (zh) 一种面向嵌入式系统开发的动态数据通用框架
CN101819529A (zh) 用于实现工作流任务界面可视化开发的系统和方法
CN102650953A (zh) 并发优化的bpmn组合服务执行引擎及方法
CN101526898A (zh) 面向语义Web服务程序设计的语义数据表示和处理方法
CN110764752A (zh) 基于微服务架构实现Restful服务图形化服务编排的系统及其方法
Stachtiari et al. Rigorous analysis of service composability by embedding WS-BPEL into the BIP component framework
CN102073505B (zh) 面向服务组装的声明式事务集成方法和系统
CN102811257A (zh) 一种网络服务自动发布和组合方法
CN101324846B (zh) 根据asn.1信息动态创建数据模型的方法
Petriu et al. Software performance models from system scenarios
Albreshne et al. Web services orchestration and composition
CN106528157B (zh) 一种基于scxml标准的状态机工作流引擎
Gamha et al. A framework for the semantic composition of web services handling user constraints
CN102486731A (zh) 增强软件的软件调用栈的可视化的方法、设备和系统
CN103176830A (zh) 基于类图和活动图相结合生成c++代码的方法
CN110471646A (zh) 一种通过人工配置实现复杂程序逻辑的方法
Kovac et al. A Survey of Web services Orchestration and Choreography with Formal Models
Rong Modeling and analysis BPEL-based web services composition using XYZ
CN101739259A (zh) 服务化软件生产方法和装置
Ambühler Uml 2.0 profile for ws-bpel with mapping to ws-bpel
Zhao et al. Architecture design of a distributed workflow platform based on microservice architecture

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20100414