业务流程导入的方法及系统与流程

文档序号:13719805阅读:364来源:国知局
技术领域本发明涉及信息技术领域,具体涉及一种业务流程导入的方法及系统。

背景技术:
目前,工作流管理系统已经广泛地用于各行各业的信息管理系统之中。随着计算机、网络等技术的发展,企业的信息系统和基础设施会不断升级,企业的规模、业务环境和业务规则都不时地发生改变,已有的业务系统需要迁移到新的工作流平台上,甚至是云平台中,为了避免在新的流程管理系统中,对原有系统中大量健壮的业务流程进行重新定义和建模,需要一种导出导入手段,以实现流程定义的自动迁移。一般的工作流系统,大多都会提供流程导出导入的工具,但这些仅仅是在本地工作流管理系统中,为了流程的保存等而设置的功能。因此,如何提供一种流程导出导入的方法,以实现将一个工作流系统的业务流程导入另一个工作流系统,成为亟待解决的技术问题。

技术实现要素:
针对现有技术中的缺陷,本发明实施例提供一种业务流程导入的方法及系统。一方面,本发明实施例提出一种业务流程导入的方法,包括:判断第一工作流系统和第二工作流系统是否为语法同构的系统,其中,所述第一工作流系统中待导入所述第二工作流系统的业务流程为第一业务流程;若所述第一工作流系统和第二工作流系统不为语法同构的系统,则将所述第一业务流程的命名空间更改为所述第二工作流系统中业务流程的命名空间;基于所述第一工作流系统和第二工作流系统的流程模板的匹配,对所述第一业务流程进行结构映射和语义转换,得到第二业务流程;将所述第二业务流程导入所述第二工作流系统。另一方面,本发明实施例提出一种业务流程导入的系统,包括:判断单元,用于判断第一工作流系统和第二工作流系统是否为语法同构的系统,其中,所述第一工作流系统中待导入所述第二工作流系统的业务流程为第一业务流程;更改单元,用于若所述判断单元确定所述第一工作流系统和第二工作流系统不为语法同构的系统,则将所述第一业务流程的命名空间更改为所述第二工作流系统中业务流程的命名空间;处理单元,用于基于所述第一工作流系统和第二工作流系统的流程模板的匹配,对所述第一业务流程进行结构映射和语义转换,得到第二业务流程;第一导入单元,用于将所述第二业务流程导入所述第二工作流系统。本发明实施例提供的业务流程导入的方法及系统,在不同工作流系统为语法异构的系统时,将已有流程的命名空间更改为另一个流程的命名空间,对已有流程进行结构映射和语义转换,并导入另一个工作流系统,从而能够减少重新建模,在不同工作流系统之间对已有流程进行复用,解决由于不同业务流程管理平台的解析功能和不同系统运行环境的差异性而引起的原有流程无法直接导入至其他系统中直接使用的问题,实现将一个工作流系统的业务流程导入另一个工作流系统。附图说明图1为本发明一种业务流程导入的方法一实施例的流程示意图;图2为本发明一实施例业务流程导入导出方法实现的框架示意图;图3为本发明一种业务流程导入的系统一实施例的结构示意图。具体实施方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。参看图1,本实施例公开一种业务流程导入的方法,包括:S1、判断第一工作流系统和第二工作流系统是否为语法同构的系统,其中,所述第一工作流系统中待导入所述第二工作流系统的业务流程为第一业务流程;S2、若所述第一工作流系统和第二工作流系统不为语法同构的系统,则将所述第一业务流程的命名空间更改为所述第二工作流系统中业务流程的命名空间;S3、基于所述第一工作流系统和第二工作流系统的流程模板的匹配,对所述第一业务流程进行结构映射和语义转换,得到第二业务流程;S4、将所述第二业务流程导入所述第二工作流系统。本实施例提供的业务流程导入的方法,在不同工作流系统为语法异构的系统时,将已有流程的命名空间更改为另一个流程的命名空间,对已有流程进行结构映射和语义转换,并导入另一个工作流系统,从而能够减少重新建模,在不同工作流系统之间对已有流程进行复用,解决由于不同业务流程管理平台的解析功能和不同系统运行环境的差异性而引起的原有流程无法直接导入至其他系统中直接使用的问题,实现将一个工作流系统的业务流程导入另一个工作流系统。可选地,在本发明业务流程导入的方法的另一实施例中,所述对所述第一业务流程进行结构映射和语义转换,包括:确定所述第一业务流程的每个节点的结构类型,其中,所述结构类型包括开始节点、结束节点以及分支节点;对于所述第一业务流程的每个节点,按照所述第二工作流系统的流程模板重新构建流程活动和结构分支;对于所述第一业务流程的每个节点,根据预设的规则集对该节点进行语义检查、转换,其中,所述规则集根据所述第二工作流系统的业务规则制定。图2是为实现在当前工作流系统中引入其他工作流系统中的流程,并进行的统一管理的过程框架图。首先根据通过不同工作流系统的流程模板之间的对比匹配,对导出的流程文件进行解析遍历,将其关键元素进行相应的转换(如活动类型和分支结构等);再通过规则引擎对其进行流程语义的约束检查和转换,使其运行时能符合当前工作流系统的业务规则和运行环境的支持;最后在导入并保存至当前工作流系统时,根据流程间的关联性对流程数据进行预处理,修改将会引起数据库冲突的数据内容,最终存储在数据库中的流程文件可基于本系统流程模板对流程数据进行组装生成,从而能更好的保证原有流程结构的完整性和与当前工作流系统语义环境的一致性。对于一个需要导入的流程,首先根据流程模板匹配判定两个工作流系统是属于语法同构还是异构的,如果两个流程模板相等或兼容则对该流程按照新流程模板进行相应节点的初始化、修改和扩展,否则,还需进行流程结构的映射和转换(添加模板中扩充的节点属性字段,并赋为默认值或空值);其次,获取流程中主要流程节点元素的信息,如活动、任务、事件和分支转移等;再次,通过人工判断将其他不可以相互映射和转换的流程元素则抛弃;最后,在引入新的流程时,通过对流程数据的获取、合并和格式转换等,解决新引入的流程与当前系统中原有流程的冲突问题。本算法通过流程模板约束限定业务流程的数据、变量和结构等信息,根据不同企业系统之间的不同资源环境,可以根据流程数据间的约束和依赖等关系,对流程结构和流程数据的转换定义不同的转换规则,通过将流程相关数据自流程文件中提取并复制或替换至特定数据源上,实现对流程的统一管理。可选地,在本发明业务流程导入的方法的另一实施例中,所述确定所述第一业务流程的每个节点的结构类型,包括:对于所述第一业务流程的每个节点,确定该节点前面节点的数量和后面节点的数量;根据该节点前面节点的数量和后面节点的数量确定该节点的结构类型。可选地,在本发明业务流程导入的方法的另一实施例中,还包括:若所述第一工作流系统和第二工作流系统为语法同构的系统,则对于所述第一业务流程的每个节点,按照所述第二工作流系统的流程模板对该节点的属性进行修改;基于所述第一工作流系统和第二工作流系统的流程模板的匹配,对修改后的第一业务流程进行语义转换,得到第三业务流程;将所述第三业务流程导入所述第二工作流系统。可选地,在本发明业务流程导入的方法的另一实施例中,在所述将所述第二、三业务流程导入所述第二工作流系统之前,还包括:将所述第二、三业务流程的流程数据与所述第二工作流系统所使用的数据库的数据进行冲突检查,并在冲突时,对相应的流程数据进行修改。不同的工作流系统支持的工作流语言、业务数据库的设计,以及具备的资源环境等可能都不相同,由此可能会导致导入后的业务流程图展现时的重叠或者错位,或是由于导入流程的业务语义不符合当前工作流系统的资源约束而造成业务流程的错误运行等问题,比如业务活动的运行环境、企业的组织机构发生改变等。为保证导出的流程的结构和语义完整性,以及导入后与当前系统可调用资源保持一致,本发明提出一个实现不同的工作流平台间,即由相同工作流语言描述的业务流程定义的有效搬迁的方法,通过采用基于业务过程与资源条件约束关系的流程模板来描述业务流程,根据系统运行环境、业务规则等制定的规则引擎对流程进行检查、匹配和转换,并且可以在存储新生成需导入的流程文件进行存储时,根据流程与流程之间、流程与工作流系统间的依赖性、相关性和约束性等对引入的流程进行特定实体的识别,并与本地流程数据进行冲突检查,最终使其符合本地流程模板的语义限定。下面以一具体实施例对本发明进行说明。假定本地业务流程管理系统中现有“订票流程”,其中的“订单支付”是个子流程。在其他部门的业务流程管理系统中有“订单支付流程”,现要将此流程搬迁至本地系统中供“订票流程”使用,除了需要保持原有流程的结构、流程语义的完整性和一致性外,如果要保证导入的流程在本地系统中能正确执行,还要保证新导入的流程语义需符合本系统的业务环境,最终替换原有的子流程。订票流程”和“订单支付流程”分别位于不同的工作流系统中,由于“订票流程”中有一个“订单支付”的子流程,该子流程可以无需建模,而使用另一个工作流系统中的“订单支付流程”。通过比较两个流程文件的根节点,可知他们具备相同的命名空间,即两个工作流系统是用同种工作流语言描述流程的,两个工作流系统的流程模板具有相同结构。通过对这两个工作流系统的流程模板文件进行匹配,检查是否有节点属性的变化和扩展等。对需要引入的“订单支付流程”,首先需对其流程各节点进行遍历,按照“订票流程”所在工作流系统的流程模板进行相应节点属性的初始化和修改,将“订单支付流程”活动的所有细节都导出到一个xml文件中,在将此流程导入至系统中时,可以将xml文件中的关键内容保存到数据库,从而保证了流程结构的完整性。为了保证导入的“订单支付流程”在本地系统中能正常运行,符合本系统的业务规则和资源环境,还需根据流程模板和规则引擎对其进行一定的语义转换。根据两个系统的资源、活动执行角色权限等一些关联约束条件的关系,如相等、包含、互斥等,进行不同转换规则的配置,从而保证导入后的流程在本系统中语义的一致性。在将新导入的流程保存至数据库时,涉及到流程数据的获取、格式转换和合并等,因此还需要考虑此流程是否与系统中原有流程存在冲突或关联关系。根据不同需求,通过对流程特定实体的识别,从流程XML文件中提取所需的有效的属性数据,在向数据库表中添加记录时检查数据冲突,并且根据流程与流程之间、流程数据之间的相关性和关联性对数据预处理,修正其在数据库表中的主外键值,将与流程相关的数据复制或替换至特定数据源上,实现对流程的访问和管理,如果有需求,可根据流程模板,提取数据库表中相关字段,重新组装生成流程文件。参看图3,本实施例公开一种业务流程导入的系统,包括:判断单元1,用于判断第一工作流系统和第二工作流系统是否为语法同构的系统,其中,所述第一工作流系统中待导入所述第二工作流系统的业务流程为第一业务流程;更改单元2,用于若所述判断单元确定所述第一工作流系统和第二工作流系统不为语法同构的系统,则将所述第一业务流程的命名空间更改为所述第二工作流系统中业务流程的命名空间;处理单元3,用于基于所述第一工作流系统和第二工作流系统的流程模板的匹配,对所述第一业务流程进行结构映射和语义转换,得到第二业务流程;第一导入单元4,用于将所述第二业务流程导入所述第二工作流系统。本实施例提供的业务流程导入的系统,在不同工作流系统为语法异构的系统时,将已有流程的命名空间更改为另一个流程的命名空间,对已有流程进行结构映射和语义转换,并导入另一个工作流系统,从而能够减少重新建模,在不同工作流系统之间对已有流程进行复用,解决由于不同业务流程管理平台的解析功能和不同系统运行环境的差异性而引起的原有流程无法直接导入至其他系统中直接使用的问题,实现将一个工作流系统的业务流程导入另一个工作流系统。可选地,在本发明业务流程导入的系统的另一实施例中,所述处理单元,包括:确定子单元,用于确定所述第一业务流程的每个节点的结构类型,其中,所述结构类型包括开始节点、结束节点以及分支节点;构建子单元,用于对于所述第一业务流程的每个节点,按照所述第二工作流系统的流程模板重新构建流程活动和结构分支;转换子单元,用于对于所述第一业务流程的每个节点,根据预设的规则集对该节点进行语义检查、转换,其中,所述规则集根据所述第二工作流系统的业务规则制定。可选地,在本发明业务流程导入的系统的另一实施例中,所述确定子单元,具体用于:对于所述第一业务流程的每个节点,确定该节点前面节点的数量和后面节点的数量;根据该节点前面节点的数量和后面节点的数量确定该节点的结构类型。可选地,在本发明业务流程导入的系统的另一实施例中,还包括:修改单元,用于若所述判断单元确定所述第一工作流系统和第二工作流系统为语法同构的系统,则对于所述第一业务流程的每个节点,按照所述第二工作流系统的流程模板对该节点的属性进行修改;转换单元,用于基于所述第一工作流系统和第二工作流系统的流程模板的匹配,对修改后的第一业务流程进行语义转换,得到第三业务流程;第二导入单元,用于将所述第三业务流程导入所述第二工作流系统。可选地,在本发明业务流程导入的系统的另一实施例中,还包括:检查单元,用于在所述第一导入单元将所述第二、三业务流程导入所述第二工作流系统之前,将所述第二、三业务流程的流程数据与所述第二工作流系统所使用的数据库的数据进行冲突检查,并在冲突时,对相应的流程数据进行修改。本发明具有如下优点:提出了一种通用性较强的业务流程导出导入的方法,在不同的业务流程管理平台间,可根据企业业务环境和业务规则对规则、流程模板和算法进行灵活配置,更好的实现业务流程的通用性。虽然结合附图描述了本发明的实施方式,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1