业务流程处理方法与系统与流程

文档序号:13138129阅读:321来源:国知局
业务流程处理方法与系统与流程

本发明总体上涉及计算机技术,更具体地涉及业务流程处理方法与系统。



背景技术:

现在市场上存在多种流行的工作流框架,但是这些框架在多流程扩展方面比较局限,可扩展性不强。现有的工作流框架本身是通过解析部署的流程模板文件(一般都是xml格式)进行工作流的任务流转。每次接入一个业务需要部署一套流程模板。

具体地,该方案分为四步。第一步,画流程模板,定义流程模板的唯一标识id,流程模板示例如图1所示。流程模板是xml格式的文件,里面定义了流程流转的节点等信息,工作流框架通过解析该模板进行流程的流转。第二步,上传画好的流程模板文件到工作流系统进行部署。第三步,通过画图的时候定义的流程id发起工作流。第四步,发起工作流后,继续进行待办任务的查询和工作流程的流转。

现有技术的工作流框架存在流程图无法复用的问题,每增加一个业务审核流程都需要画一张流程模板,然后部署到工作流引擎中。即使两个业务系统用的流程图是一样的,也必须再画一个一模一样的图进行部署。其次,业务系统的管理混乱,一旦需要接入的业务流程过多,就无法很好地掌控流程图与业务系统的关联关系,不好维护。另外,业务流程的流程在变更时需要重新绘制流程图,业务系统需要更改代码来更换流程图,且之前的老流程数据无法再次查询到。



技术实现要素:

本发明的一个方面提供了一种业务流程处理系统,包括:模板中心模块,存储一个或多个流程模板,每个流程模板具有一个唯一地标识该流程模板的流程模板id;业务系统模块,包括应用程序;配置中心模块,存储配置id,每个配置id对应于业务系统模块要执行的一个业务与该业务需要的流程模板的流程模板id之间的对应关系;以及工作流接口模块,使用业务系统提供的配置id获取流程模板id以执行后续操作。

可选地,业务系统模块在模板中心模块选择业务需要的流程模板,然后向配置中心模块申请配置id;配置中心模块生成并返回给业务系统模块一个对应于该业务与流程模板关联关系的配置id。

可选地,一个流程模板id对应于一个或多个配置id。

可选地,配置中心模块存储配置id与流程模板id之间的对应关系,还存储配置id与流程实例id之间的对应关系,流程实例id是流程模板实例化后产生的流程实例的id。

可选地,当业务系统模块要接入业务的工作流时,业务系统模块调用工作流接口模块;工作流接口模块通过从业务系统模块传入的该业务的配置id在配置中心模块查询到该业务所需要的流程模板id;以及工作流接口模块的工作流引擎使用该流程模板id获得流程模板并发起工作流。

可选地,工作流接口模块将该流程模板实例化后得到流程实例;以及在配置中心模块中将流程实例id与配置id相关联地存储,该流程实例id用于查询待办任务和/或已处理任务等。

可选地,当要变更业务流程时:业务系统模块在模板中心模块重新选择流程模板,在配置中心模块中将该业务的配置id所对应的流程模板id修改为新选择的流程模板的id;或者业务系统模块业务系统模块在模板中心模块重新选择流程模板,在配置中心模块中新增一条数据,将该业务原来的配置id与新选择的流程模板的id相关联,重新生成一条配置数据,然后将原来的配置数据改为不可用状态。

本发明的另一个方面提供了一种业务流程处理方法,包括:在模板中心模块中存储一个或多个流程模板,每个流程模板具有一个唯一地标识该流程模板的流程模板id;在配置中心模块中存储配置id,每个配置id对应于业务系统模块要执行的一个业务与该业务需要的流程模板的流程模板id之间的对应关系;以及使用工作流接口模块通过配置id获取流程模板id以执行后续操作。

可选地,通过业务系统模块在模板中心模块选择业务需要的流程模板,然后向配置中心模块申请配置id;通过配置中心模块生成并返回给业务系统模块一个对应于该业务与流程模板关联关系的配置id。

可选地,一个流程模板id对应于一个或多个配置id。

可选地,在配置中心模块中存储配置id与流程模板id之间的对应关系;以及在配置中心模块中存储配置id与流程实例id之间的对应关系,流程实例id是流程模板实例化后产生的流程实例的id。

可选地,当业务系统模块要接入业务的工作流时,通过业务系统模块调用工作流接口模块并向工作流接口模块提供该业务的配置id;通过工作流接口模块使用配置id在配置中心模块查询到该业务所需要的流程模板id;以及通过工作流接口模块的工作流引擎使用该流程模板id获得流程模板并发起工作流。

可选地,通过工作流接口模块将该流程模板实例化后得到流程实例;以及在配置中心模块中将流程实例id与配置id相关联地存储,该流程实例id用于查询待办任务和/或已处理任务等。

可选地,当要变更业务流程时:通过业务系统模块在模板中心模块重新选择流程模板,在配置中心模块中将该业务的配置id所对应的流程模板id修改为新选择的流程模板的id;或者通过业务系统模块业务系统模块在模板中心模块重新选择流程模板,在配置中心模块中新增一条数据,将该业务原来的配置id与新选择的流程模板的id相关联,重新生成一条配置数据,然后将原来的配置数据改为不可用状态。

附图说明

为了更完整地理解本发明及其优势,现在将参考结合附图的以下描述,其中:

图1示出了现有技术工作流框架的流程模板示意图;

图2示意性示出了根据本发明实施例的业务流程处理系统的框图;

图3示意性示出了根据本发明实施例的模板中心模块;

图4示意性示出了根据本发明实施例的配置id生成过程;

图5示意性示出了根据本发明实施例的配置中心模块;

图6示意性示出了工作流的接入过程;以及

图7示意性示出了业务流程变更的过程。

具体实施方式

根据结合附图对本发明示例性实施例的以下详细描述,本发明的其它方面、优势和突出特征对于本领域技术人员将变得显而易见。

在本发明中,术语“包括”和“含有”及其派生词意为包括而非限制;术语“或”是包含性的,意为和/或。

在本说明书中,下述用于描述本发明原理的各种实施例只是说明,不应该以任何方式解释为限制发明的范围。参照附图的下述描述用于帮助全面理解由权利要求及其等同物限定的本发明的示例性实施例。下述描述包括多种具体细节来帮助理解,但这些细节应认为仅仅是示例性的。因此,本领域普通技术人员应认识到,在不背离本发明的范围和精神的情况下,可以对本文中描述的实施例进行多种改变和修改。此外,为了清楚和简洁起见,省略了公知功能和结构的描述。此外,贯穿附图,相同参考数字用于相似功能和操作。

图2示意性示出了根据本发明实施例的业务流程处理系统1的框图。如图1所示,该业务流程处理系统1包括模板中心模块10、业务系统模块20、配置中心模块30、以及工作流接口模块40。

根据本发明的实施例,模板中心模块10存储不同类型的业务系统需要的流程模板,重复的流程只需要定义一个流程模板。业务系统模块20包括需要接入工作流的应用程序等。配置中心模块30主要用于业务系统模块20接入工作流以及变更工作流。工作流接口模块40包括工作流引擎,用于解析工作流以及执行流程流转。

下面结合附图,对各模块及其之间的交互进行详细描述。

图3示意性示出了根据本发明实施例的模板中心模块10。如图3所示,模板中心模块10可以存储不同流程模板1、流程模板2……流程模板n,n是正整数。对于要运行的业务,可以事先生成并在模板中心模块10中存储相应的流程模板,每个流程模板具有一个流程模板id。

图4示意性示出了根据本发明实施例的配置id生成过程。如图4所示,业务系统模块20在模板中心模块10选择业务需要的流程模板,然后向配置中心模块30申请配置id(标识)。配置中心模块30生成并返回给业务系统模块20一个对应于该业务与流程模板关联关系的配置id。由于多个业务可能使用同一个流程模板,所以一个流程模板id可以对应于一个或多个配置id。

根据本发明的实施例,配置中心模块30存储配置id与流程模板id之间的对应关系以及配置id与流程实例id之间的对应关系。可选地,配置中心模块30可以存储配置id与流程模板id以及业务系统相关信息三者之间的关系。业务系统相关信息是业务系统的备注信息,例如包括业务类型、系统负责人等信息。流程实例id是流程模板实例化后产生的流程实例的id。图5示意性示出了根据本发明实施例的配置中心模块30。如图5所示,根据本发明的实施例,配置中心模块30可以包括两个存储块30_1和30_2。第一存储块30_1存储配置id与流程模板id之间的关系。可选地,第一存储块30_1存储配置id与流程模板id以及业务系统相关信息三者之间的关系。业务系统相关信息是业务系统的备注信息,例如包括业务类型、系统负责人等信息。第二存储块30_2存储流程实例id与配置id之间的关系。流程实例id是流程模板实例化后产生的流程实例的id。根据本发明的实施例,第一存储块30_1和第二存储块30_2可以是逻辑意义上的两个存储块,也可以是物理意义上的两个存储块。

图6示意性示出了工作流的接入过程。如图6所示,当业务系统模块20需要接入业务的工作流时,业务系统模块20调用工作流接口模块40,工作流接口模块40通过从业务系统模块20传入的该业务的配置id在配置中心模块30查询到业务系统模块20所需要的流程模板id。然后,工作流接口模块40的工作流引擎使用该流程模板id获得流程模板并发起工作流。根据本发明的实施例,工作流接口模块40将该流程模板实例化后得到流程实例,工作流接口模块40将该流程实例的id与配置id相关联后持久化到配置中心模块30,例如持久化到配置中心模块30的第二存储块30_2。该流程实例id可以用于查询待办任务和/或已处理任务等。使用流程实例id查询待办任务和/或已处理任务的具体做法是已知的,在此不做详细描述。

图7示意性示出了业务流程变更的过程。如图7所示,当要变更业务流程时,业务系统模块20在模板中心模块10重新选择流程模板,在配置中心模块30中将该业务的配置id所对应的流程模板id修改为新选择的流程模板的id,然后保存,即可实时进行流程变更,而无需重新申请配置id。根据本发明的实施例,业务系统模块10也可以在配置中心模块30中新增一条数据,填写该业务原来的配置id并将其与新选择的流程模板的id相关联,重新生成一条配置数据,然后将原来的配置数据改为不可用状态。这样,也无需重新申请配置id即可实现实时的流程变更。

根据本发明实施例的方法和系统,优化了现有工作流框架的流程模板的复用性,使得多业务模块能共用流程模板。即使使用了相同的模板,也能很好地隔离业务数据。通过本发明的方法和系统,业务系统接入工作流和工作流程变更变得方便和简单,而且查看业务系统和工作模板的关系变得简便直观。而且,当流程变更后能查询出历史的流程数据,这是现有工作流框架无法实现的。

根据本发明各实施例的上述方法、系统和/或模块可以通过有计算能力的电子设备执行包含计算机指令的软件来实现。该系统可以包括存储设备,以实现上文所描述的存储。所述有计算能力的电子设备可以包含通用处理器、数字信号处理器、专用处理器、可重新配置处理器等能够执行计算机指令的装置,但不限于此。执行这样的指令使得电子设备被配置为执行根据本发明的上述各项操作。上述各设备和/或模块可以在一个电子设备中实现,也可以在不同电子设备中实现。这些软件可以存储在计算机可读存储介质中。计算机可读存储介质存储一个或多个程序(软件模块),所述一个或多个程序包括指令,当电子设备中的一个或多个处理器执行所述指令时,所述指令使得电子设备执行本发明的方法。

这些软件可以存储为易失性存储器或非易失性存储装置的形式(比如类似rom等存储设备),不论是可擦除的还是可重写的,或者存储为存储器的形式(例如ram、存储器芯片、设备或集成电路),或者被存储在光可读介质或磁可读介质上(比如,cd、dvd、磁盘或磁带等等)。应该意识到,存储设备和存储介质是适于存储一个或多个程序的机器可读存储装置的实施例,所述一个程序或多个程序包括指令,当所述指令被执行时,实现本发明的实施例。实施例提供程序和存储这种程序的机器可读存储装置,所述程序包括用于实现本发明的任何一项权利要求所述的装置或方法的代码。此外,可以经由任何介质(比如,经由有线连接或无线连接携带的通信信号)来电传递这些程序,多个实施例适当地包括这些程序。

根据本发明各实施例的方法、设备和/或模块还可以使用例如现场可编程门阵列(fpga)、可编程逻辑阵列(pla)、片上系统、基板上的系统、封装上的系统、专用集成电路(asic)或可以以用于对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式的适当组合来实现。该系统可以包括存储设备,以实现上文所描述的存储。在以这些方式实现时,所使用的软件、硬件和/或固件被编程或设计为执行根据本发明的相应上述方法、步骤和/或功能。本领域技术人员可以根据实际需要来适当地将这些系统和模块中的一个或多个,或其中的一部分或多个部分使用不同的上述实现方式来实现。这些实现方式均落入本发明的保护范围。

尽管已经参照本发明的特定示例性实施例示出并描述了本发明,但是本领域技术人员应该理解,在不背离所附权利要求及其等同物限定的本发明的精神和范围的情况下,可以对本发明进行形式和细节上的多种改变。因此,本发明的范围不应该限于上述实施例,而是应该不仅由所附权利要求来进行确定,还由所附权利要求的等同物来进行限定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1