基于业务流程建模标注国际标准的流程实现方法

文档序号:6377076阅读:191来源:国知局
专利名称:基于业务流程建模标注国际标准的流程实现方法
技术领域
本发明涉及一种基于业务流程建模标注国际标准的流程实现方法。
背景技术
企业的业务处理过程是由一系列的基本业务处理环节构成的,这些业务处理环节按照一定的逻辑顺序进行排列组合后就构成了企业的流程,业务流程可能流转于企业的多个部门。如果一个企业的规模比较大,有总部和地域分公司之分,此时如果有一个业务流程需要从在总部和分公司之间流转,就会涉及总部与分公司之间的交互。在这种情况下,业务流程的流转与单独在一个公司(总部或分公司)内流转有所不同,业务流程虽然在总部和分公司之间流转,但是它实际上是一个业务流程。为了使业务流程能够顺利的流转,可以分别使用子流程或外部子流程的流程建模 方法来。例如,流程是从分公司发起的,以分公司为主线,凡是需要流转到总部的环节,就用子流程或外部子流程来实现。这样一来,在一个总部与分公司需要频繁交互的业务流程中会产生众多的子流程和外部子流程。这种解决办法虽然可以满足业务系统的需求,但是外部子流程难于配置,而且众多的子流程和外部子流程也不易管理和监控,从而导致流程的开发效率低。

发明内容
有鉴于此,本发明提供了一种基于业务流程建模标注国际标准的流程实现方法,以克服现有技术中由于外部子流程难于配置,而且众多的子流程和外部子流程也不易管理和监控,从而导致的流程的开发效率低的问题。为实现上述目的,本发明提供如下技术方案一种基于业务流程建模标注国际标准的流程实现方法,包括当前流程通过发送信息行为,调用所述另一流程的开始处理行为,以将项目的相关信息发送至另一流程;所述另一流程接收所述项目的相关信息,对所述项目的相关信息进行处理;所述另一流程中的发送结果行为调用所述当前流程的接收结果行为,以将处理结果发送至所述当前流程;所述当前流程接收所述处理结果。其中,所述当前流程通过发送信息行为,调用所述另一流程的开始处理行为,以将项目的相关信息发送至另一流程包括所述发送信息行为调用所述开始处理行为;与所述开始处理行为对应的流程服务器在数据库的消息表中添加一条消息,所述消息包括所述项目的相关信息。其中,所述另一流程接收所述项目的相关信息包括所述开始处理行为产生一与所述项目的相关信息对应的匹配信息;
将所述匹配信息存储至所述数据库中的匹配表中;所述另一流程从所述匹配表中获取所述匹配信息;当根据所述匹配信息获取到所述消息时,确认接收到所述项目的相关信息。其中,所述另一流程中的发送结果行为调用所述当前流程的接收结果行为,以将处理结果发送至所述当前流程包括所述发送结果行为调用所述接收结果行为;
所述接收结果行为所在流程服务器在数据库的消息表中添加一条消息,所述消息包括所述处理结果。其中,所述当前流程接收所述处理结果包括所述接收结果行为产生一与所述项目的相关信息对应的匹配信息;将所述匹配信息存储至所述数据库中的匹配表中;所述当前流程从所述匹配表中获取所述匹配信息;当根据所述匹配信息获取到所述消息时,确认接收到所述处理结果。经由上述的技术方案可知,本发明实施例提供的方法是基于BPMN标准的流程交互模型,当前流程通过发送信息行为,调用所述另一流程的开始处理行为,以将项目的相关信息发送至另一流程,所述另一流程接收所述项目的相关信息,对所述项目的相关信息进行处理,所述另一流程中的发送结果行为调用所述当前流程的接收结果行为,以将处理结果发送至所述当前流程;所述当前流程接收所述处理结果。从而很好的实现流程中的交互,由于本发明实施例中不存在外部子流程以及子流程,所以没有外部子流程以及众多子流程导致的问题,从而提高了流程的开发效率。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图I为本发明实施例提供的第一种基于业务流程建模标注国际标准的流程实现方法的流程图;图2为本发明实施例提供的第二种基于业务流程建模标注国际标准的流程实现方法的流程图;图3为本发明实施例提供的一种消息产生及添加到数据库方法的流程图;图4为本发明实施例提供的一种接收消息的方法的流程图;图5为本发明实施例提供的一种工作流实现方法的示意图。
具体实施例方式为了引用和清楚起见,下文中使用的技术名词的说明、简写或缩写总结如下BPMN :业务流程建模标注,Business Process Modeling Notation。业务流程企业业务的处理过程。活动节点企业业务流程的基本处理环节。
人工活动在业务流程中需要人工参与的活动节点。外部子流程一个流程的子流程与主流程不在一个系统中时,称为外部子流程。Web服务是一种面向服务的架构的技术,通过标准的Web协议提供服务,目的是保证不同平台的应用服务可以互操作。调用一个Web服务时可以执行服务发布方的一个程序或是向其发送消息。下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。请参阅附图I,为本发明实施例提供的第一种基于业务流程建模标注国际标准的流程实现方法的流程图,该方法包括
步骤SlOl :当前流程通过发送信息行为,调用所述另一流程的开始处理行为,以将项目的相关信息发送至另一流程。当流程中包括“发送活动”时,可以调用一个Web服务,而当流程中包括“消息开始事件”或“接收活动”时,会向外部发布一个Web服务。发送信息行为属于发送活动,开始处理行为包括“消息开始事件”。本发明实施例可以利用发送信息行为来调用开始处理行为发布的Web服务来将当前流程流转到另一流程中。步骤S102 :所述另一流程接收所述项目的相关信息,对所述项目的相关信息进行处理。步骤S103 :所述另一流程中的发送结果行为调用所述当前流程的接收结果行为,以将处理结果发送至所述当前流程。发送结果行为属于发送活动。当流程中包括“发送活动”时,可以调用一个Web服务,而当流程中包括“消息开始事件”或“接收活动”时,会向外部发布一个Web服务。发送结果行为属于发送活动,接收结果行为包括“接收活动”。本发明实施例可以利用发送结果行为来调用接收结果行为发布的Web服务来将另一流程流转到当前流程中。步骤S104 :所述当前流程接收所述处理结果。本发明实施例,基于BPMN标准的流程交互模型,即“接收活动”和“发送活动”的技术实现。利用这种交互模型,可以很好的实现存在两级交互业务流程,特别是流程服务器是两级部署的情况下。一级部署是指总部和分公司使用的流程服务器是同一个。两级部署是指总部和分公司分别使用独立的流程服务器。本发明实施例提供的方法是基于BPMN标准的流程交互模型,当前流程通过发送信息行为,调用所述另一流程的开始处理行为,以将项目的相关信息发送至另一流程,所述另一流程接收所述项目的相关信息,对所述项目的相关信息进行处理,所述另一流程中的发送结果行为调用所述当前流程的接收结果行为,以将处理结果发送至所述当前流程,所述当前流程接收所述处理结果。从而很好的实现流程中的交互,由于本发明实施例中不存在外部子流程以及子流程,所以没有外部子流程以及众多子流程导致的问题,从而提高了流程的开发效率。实施例二请参阅图2,为本发明实施例提供的第二种基于业务流程建模标注国际标准的流程实现方法的流程图,该方法包括步骤S201 :当前流程的发送信息行为调用另一流程的开始处理行为。发送信息行为会调用一 Web服务,该Web服务会调用开始处理行为发布的Web服务。
步骤S202 :与所述开始处理行对应的流程服务器在数据库的消息表中添加一条消息。所述消息包括当前流程通过发送信息行为向另一流程发送的项目的相关信息。开始处理行为发布的Web服务被调用后,会产生一消息以及将该消息添加到数据库中。步骤S201与步骤S202为步骤SlOl的一种具体的实现方法,当然还有其他实现方法,在此就不再一一赘述了,所以本发明实施例中的步骤S201以及步骤S202还可以被其它相同功能的步骤所取代,例如用步骤SlOl取代。步骤S203 :所述开始处理行为产生一与所述项目的相关信息对应的匹配信息,并将所述匹配信息存储至所述数据库中的匹配表中。步骤S204 :所述另一流程从所述匹配表中获取所述匹配信息,当根据所述匹配信息获取到所述消息时,确认接收到所述项目的相关信息,并对所述项目的相关信息进行处理。具体的,可以由某一线程不停的扫描匹配表,从匹配表中获取匹配信息。步骤S203与步骤S204为步骤S102的一种具体的实现方法,当然还有其他实现方法,在此就不再一一赘述了,所以本发明实施例中的步骤S203以及步骤S204还可以被其它相同功能的步骤所取代,例如用步骤S102取代。步骤S205 :所述发送结果行为调用所述接收结果行为。发送结果行为会调用一 Web服务,该Web服务会调用接收结果行为发布的Web服务。步骤S206 :所述接收结果行为所在流程服务器在数据库的消息表中添加一条消息,所述消息包括所述处理结果。步骤S205以及步骤S206为步骤S103的一种具体的实现方法,当然还有其他实现方法,在此就不再一一赘述了,所以本发明实施例中的步骤S205以及步骤S206还可以被其它相同功能的步骤所取代,例如用步骤S104取代。步骤S207 :所述接收结果行为产生一与所述项目的相关信息对应的匹配信息,并将所述匹配信息存储至所述数据库中的匹配表中。步骤S208 :所述当前流程从所述匹配表中获取所述匹配信息,当根据所述匹配信息获取到所述消息时,确认接收到所述处理结果。具体的,可以由某一线程不停的扫描匹配表,从匹配表中获取匹配信息。步骤S207以及步骤S208为步骤S 104的一种具体的实现方法,当然还有其他实现方法,在此就不再一一赘述了,所以本发明实施例中的步骤S207以及步骤S208还可以被其它相同功能的步骤所取代,例如用步骤S104取代。本发明实施例具有实施例一的有益效果。上述当前流程与上述另一流程对应的流程服务器可以为同一个流程服务器也可以为不同的流程服务器,上述当前流程与上述另一流程对应的数据库可为同一个数据库也可以为不同的数据库。
实施例三上述实施例中的消息产生以及添加到数据库的方法有多种,请参阅图3,为本发明实施例提供的一种消息产生及添加到数据库方法的流程图,该方法包括步骤S301 :开始处理行为发布的Web服务接收到被调用的指示后,将相应的项目的相关信息传递到WSCl ient。步骤S302 MessageProvider作为一个门面,接收WSClient传递过来的信息,根据规则将其组装成消息。并且根据本图元的配置设置该信息的流程定义属性、流程版本号和活动定义属性。步骤S303 :将组装好的信息通过MessageProducer发送到对应的消息管道,进入消息系统,从而形成相应的消息。步骤S304 :在消息管道的下游端点,MessageConsumer将接收到的消息入池(即持久化到表中或数据库中,该步骤为了消息传递的健壮性,避免丢失消息)。消息产生以及添加到数据库的方法涉及的类有MessageProvider Receive Task对应的Web服务收到项目的相关信息后,将项目的相关信息发送给该类,该类将发送过来的信息组装成Receive Task规定的格式,并且设置相关的流程相关信息。MessageAccess :消息前端控制类,负责初始化信息生产者和信息消费者,将接收到的信息分配给相应的信息生产者。MessageProducer :信息生产者,负责将接收到的信息发送到消息管道中,以形成相应的消息。MessageChannel :消息管道,负责消息分配和管理。MessageConsumer :消息消费者,负责由消息管道中接受消息,负责将消息持久化到消息表中。MessageManager :消息管理类,负责消息的数据库的操作。MessageUtil :负责消息的组装与反序列化。实施例四上述实施例中从对方接收相应的消息的方法有多种,请参阅图4,为本发明实施例提供的一种接收消息的方法的流程图。步骤S401 MessageLoader负责从池中读取消息,然后将读取出来的消息放到消息队列中。步骤S402 MessageLoader将消息队列中的消息发送到Messagechannel。步骤S403 MessageChannel下游消费者为一个线程池。MessageChannel将发送到消费者的消息通过多个线程来处理。
步骤S404 :每个线程将接收到的消息进行匹配分发。接收消息的相关类有MessageLoader :消息读取类,负责从消息池中读取消息,然后等待通道从该对象中将消息“拉”出来。MessagePool :消息池,负责从消息表中将消息读取到消息池中。MessageManager :消息管理类负责消息的数据库的操作。MessageExecutorChannel :消息管道,负责消息分配和管理。ThreadManager :线程池,负责产生和管理线程。MessageMatch :消息匹配核心类,负责消息匹配与流程推进。 MessageUtil :负责消息的组装与反序列化。ProcessMessage :流程服务提供类,提供查询与流程相关的信息。MessageEngine 消息引擎,负责具体的消息匹配与匹配规则的校验、加载等。ReceiveTaskUtil ReceiveTask的工具类,对外提供推进流程流转等操作。实施例五为了本领域技术人员更加清楚的理解本发明实施例,下面再举一例子对上述实施例进行说明,请参阅图5,为本发明实施例提供的一种工作流实现方法的示意图。图5中“发送信息行为”用501标记,“开始处理行为”用502标记,“发送结果行为”用503标记,“接收结果行为”用504标记。图5中包括两个流程即流程A与流程B,假设流程A代表分公司的流程,流程B代表总部的流程,流程A中经员工撰写的申请文件需要流程B中员工审批,此时,在员工撰写完毕申请文件通过一“发送信息行为”501 (在图5中用提交申请文件表示),将撰写的申请文件发送到流程B中,流程B中的流程服务器会在数据库中添加一条消息,该消息包括申请文件,流程B中的员工可能不会及时对该申请文件进行审批,也就是流程B中的“开始处理行为” 502与流程A中的“发送信息行为” 501不同步,当流程B中的员工进行审批时,“开始处理行为”502产生一与审批申请文件对应的匹配信息,并将匹配信息存储在数据库中的匹配表中,流程服务中有一个线程会不停的循环扫描匹配表,如果匹配表中有数据,则取出来,并且自动匹配消息表中所有的消息,如果匹配上则确认接收到“发送信息行为”501发送的消息即接收到申请文件,流程B中的员工对申请文件进行审批,如果匹配表中没有匹配信息或者匹配失败,则一直等待直至匹配成功,若一直匹配失败或在超过预定时间后匹配表中仍没有匹配信息,流程B可能会僵死在“开始处理行为”502。当匹配成功且流程B中的员工审批完成后,通过流程B中的“发送结果行为”503 (图5中用发送审批结果表示)将审批结果发送至流程A,在流程实际运行过程中,流程A运行到“接收结果行为” 504 (流程A用接收审批结果表示)与流程B的运行到“发送结果行为”503的时间先后不一致,有可能流程A已经运行到“接收结果行为” 504,而流程B还没有运行到“发送结果行为” 503,此时流程B不会向流程A发送消息,这时流程A的“接收结果行为”504会先产生一匹配信息,并存放在上述的数据库中,匹配消息的线程一直会去消息表中寻找消息,直至找到与匹配信息相对应的消息或者超过预定时间为止。当流程A接收到审批结果后,可以执行其他活动环节,例如图5所示判断申请文件是否审批通过,如果通过,则进行归档,如果不同过,则进行其他后动环节等等。当流程B发送审批结果后,也可以执行其他活动环节。
图5中虚线的箭头连线是在实际流程图中是不存在的,此处只是为了方便说明流程A和流程B之间的关系才特意标出。本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的 一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
权利要求
1.一种基于业务流程建模标注国际标准的流程实现方法,其特征在于,包括 当前流程通过发送信息行为,调用所述另一流程的开始处理行为,以将项目的相关信息发送至另一流程; 所述另一流程接收所述项目的相关信息,对所述项目的相关信息进行处理; 所述另一流程中的发送结果行为调用所述当前流程的接收结果行为,以将处理结果发送至所述当前流程; 所述当前流程接收所述处理结果。
2.根据权利要求I所述方法,其特征在于,所述当前流程通过发送信息行为,调用所述另一流程的开始处理行为,以将项目的相关信息发送至另一流程包括 所述发送信息行为调用所述开始处理行为; 与所述开始处理行为对应的流程服务器在数据库的消息表中添加一条消息,所述消息包括所述项目的相关信息。
3.根据权利要求2所述方法,其特征在于,所述另一流程接收所述项目的相关信息包括 所述开始处理行为产生一与所述项目的相关信息对应的匹配信息; 将所述匹配信息存储至所述数据库中的匹配表中; 所述另一流程从所述匹配表中获取所述匹配信息; 当根据所述匹配信息获取到所述消息时,确认接收到所述项目的相关信息。
4.根据权利要求I所述方法,其特征在于,所述另一流程中的发送结果行为调用所述当前流程的接收结果行为,以将处理结果发送至所述当前流程包括 所述发送结果行为调用所述接收结果行为; 所述接收结果行为所在流程服务器在数据库的消息表中添加一条消息,所述消息包括所述处理结果。
5.根据权利要求4所述方法,其特征在于,所述当前流程接收所述处理结果包括 所述接收结果行为产生一与所述项目的相关信息对应的匹配信息; 将所述匹配信息存储至所述数据库中的匹配表中; 所述当前流程从所述匹配表中获取所述匹配信息; 当根据所述匹配信息获取到所述消息时,确认接收到所述处理结果。
全文摘要
本发明实施例提供了一种基于业务流程建模标注国际标准的流程实现方法,该方法包括当前流程通过发送信息行为,调用所述另一流程的开始处理行为,以将项目的相关信息发送至另一流程;所述另一流程接收所述项目的相关信息,对所述项目的相关信息进行处理;所述另一流程中的发送结果行为调用所述当前流程的接收结果行为,以将处理结果发送至所述当前流程;所述当前流程接收所述处理结果。本发明实施例提供的方法不存在外部子流程以及子流程,所以没有外部子流程以及众多子流程导致的问题,从而提高了流程的开发效率。
文档编号G06Q10/06GK102880937SQ201210345028
公开日2013年1月16日 申请日期2012年9月17日 优先权日2012年9月17日
发明者罗华永, 田应生, 方国 申请人:北京中电普华信息技术有限公司, 国家电网公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1