一种基于节点层关联映射的简易业务流程模型的建立方法及
应用
技术领域
本发明涉及工作流建模及应用领域,具体地说是一种基于节点层关联映射的简易业务流程模型的建立方法及应用。
背景技术
业务流程建模问题主要使用工作流技术进行解决。工作流是将实际工作过程进行任务分解,按照一定的流程进行执行这些任务并进行监控,以便提高工作效率、降低生产成本。工作流技术是属于计算机支持的协同工作技术的一种。目前,工作流模型尚未有统一、公认的理论和方法,主要应用了图论、Petri网、协同理论、语言动作理论和基于状态转移的方法等。
图论模型中主要是将工作流中的活动(任务)看成是节点,活动的流转(迁移)用控制流表示,最终工作流模型表示成一个以活动为节点的有向控制流图。该模型适合用于表示工作流任务间的局部依赖关系,但难以表示全局依赖关系。
Petri网模型是一种典型且应用较多的用于工作流建模的模型,有很好的数学理论基础,对模型的形式化描述有较强表示能力。利用Petri网建立工作流模型取得了较好的效果,可以表示非常复杂的业务流程,善于表示业务流程中活动间的迁移。Petri网的活动控制能力强,但容易使模型变得庞大、复杂而难以理解,实现过程和系统集成也很复杂,企业应用成本高,不太适合中小企业。
协同理论研究多个参与者之间协同完成一个目标任务,与工作流的本质相一致,但偏向于计算机程序的实现,模型相关的支撑理论不足。
语言动作理论不仅注重工作流活动,同时还突出参与者间的交互,应用了工作流环的概念,这些工作流环网络形成了业务流程模型。语言动作理论建模工作流模型,本质上是以工作流任务为核心同时强调参与者间交互的方法,其缺点是过程描述相对较为复杂。
基于状态转移的方法将任务间的迁移看成是状态的改变,其缺点是如何把握各任务状态的粒度,细粒度的状态定义会使得模型变得复杂,粗粒度的状态定义不利于构造激发状态改变的条件。
简而言之,现有工作流建模方法研究成果虽然较多,但仍然存在一些不足,主要包括(1)一些方法偏重于各种复杂符号描述流程模型的逻辑关系、图形化表示和计算机上的实现,其中部分方法过于复杂难以理解,部分方法过于简单不能充分表达流程各级节点的多种对应关系;(2)另一些工作流模型建模方法复杂,导致实现过程和系统集成难度大、成本高,不适合一般的中小企业。
发明内容
本发明是为了克服现有技术存在的不足之处,提供一种基于节点层关联映射的简易业务流程模型的建立方法,从流程整体角度构造节点层,以期既能有效地简化流程模型设计,又能充分表达流程节点间的逻辑关系,同时还能有效地降低计算机程序实现的难度,从而能大幅度减少流程模型的应用成本,为广大中小企业业务流程信息化提供服务。
本发明为解决技术问题采用如下技术方案:
本发明一种基于节点层关联映射的简易业务流程模型的建立方法的特点是按如下步骤进行:
步骤1、假设所述简易业务流程模型中包含由n个业务流程构成的流程集合,记为F={F1,F2,…,Fi,…,Fn},Fi表示第i个业务流程;
并有,表示所述第i个业务流程Fi中包含mi个节点层;表示所述第i个业务流程Fi中第j个节点层;且相邻两个节点层之间可能存在迁移方向和迁移动作;所述迁移动作包括正常迁移、异常迁移和流程恢复;
并有,表示所述第i个业务流程Fi中第j个节点层包含Kj个节点;所述第i个业务流程Fi中第j个节点层中第k个节点;定义所述第k个节点的处理状态包括:正常和异常;当Kj>1时,则表示所述第i个业务流程Fi中第j个节点层存在迁移规则
步骤2、将所述第i个业务流程Fi采用mi阶有向邻接矩阵Mi表示为:并有表示所述第p个节点层根据迁移动作向所述第j个节点层进行迁移,并记所述第p个节点层为上游节点层,所述第j个节点层为下游节点层;表示所述第i个业务流程Fi中第p个节点层和第j个节点层之间不存在迁移;1≤p≤mi;从而完成第i个业务流程Fi的简易业务流程模型的建立。
本发明所述的基于节点层关联映射的简易业务流程模型的建立方法的特点也在于:
所述第i个业务流程Fi中第j个节点层的迁移规则为:
比例值阈值且第j个节点层中不存在处理状态为异常的节点;
并有,K′j表示处理状态为正常的节点个数。
本发明一种基于节点层关联映射的简易业务流程模型的实例生成方法的特点是按如下步骤进行:
步骤1、初始化i=1;p=1;
步骤2、初始化j=1;
步骤3、判断mi阶有向邻接矩阵Mi中第p行第j列是否成立,若成立,则执行步骤5,否则,j+1赋值给j;并返回步骤3执行,直到j=mi为止,再执行步骤4;
步骤4、将p+1赋值给p,并执行步骤2,直到p=mi为止,从而完成实例的生成;
步骤5、判断所述第i个业务流程Fi中第p个节点层中的节点个数Kp=1是否成立,若成立,则在第Kp个节点的处理状态为正常时,所述第i个业务流程Fi中第p个节点层根据迁移动作直接向所述第j个节点层进行迁移;否则,所述第i个业务流程Fi中第p个节点层在满足相应的迁移规则时,根据所述迁移动作向所述第j个节点层进行迁移。
与已有技术相比,本发明有益效果体现在:
1、本发明利用节点层的设计思想对业务流程模型的建模进行了简化,流程中各种节点之间复杂的迁移关系统一表示成节点层的迁移关系,节点层之间的关联映射由上游节点层和下游节点层内节点的映射关系表示,不仅简化了流程模型的结构,而且优化了流程模型的建模过程,从而克服了现有流程模型复杂、难以理解的缺陷。
2、本发明根据节点在流程中所处的层号对节点层进行了界定和划分,节点层对整个流程结构进行了模块化,直接简化了流程结构,易于理解,便于操作。
3、本发明提出的利用迁移规则进行节点层的迁移方法简单有效,只要需要判断迁移规则大于指定的阈值和不存在异常处理节点即可进行节点层迁移,且迁移规则容易统计计算,从而有利于模型的实现。
4、本发明利用有向邻接矩阵对业务流程进行建模,有效地表达了节点层间迁移方向和迁移动作,且有向邻接矩阵有利于计算机存储流程模型信息和编程实现。
5、本发明所提出的简易业务流程建模方法可适用于各种企业业务流程管理,由于对模型进行了巧妙的基于层的简化和规则的迁移使得所述流程模型实现起来难度降低,易于使用计算机编程实现,尤其是适合中小企业业务流程管理,应用部署成本更低。
附图说明
图1为本发明的简易业务流程模型结构示意图;
图2为本发明的流程节点与节点层间的依赖关系和特征属性;
图3为本发明的简易业务流程模型的邻接矩阵实例图;
图4为本发明的任意具有迁移动作的两个节点层间的关联映射关系示意图;
图5为应用本发明简易业务流程模型所生成流程实例的执行过程。
具体实施方式
本实施例中,一种基于节点层关联映射的简易业务流程模型的建立方法和应用过程,具体是按如下步骤进行:
步骤1、假设某企业实际业务中包含由n个业务流程构成的流程集合,记为F={F1,F2,…,Fi,…,Fn},Fi表示第i个业务流程;
并有,表示所述第i个业务流程Fi中包含mi个节点层,如图1所示;表示所述第i个业务流程Fi中第j个节点层;且相邻两个节点层之间可能存在迁移方向和迁移动作;所述迁移动作包括正常迁移、异常迁移和流程恢复;其中,异常迁移动作包括冻结、终止和退回。若流程Fi在节点层冻结,表示流程Fi暂时停止执行,不能进行进一步迁移;若流程Fi在节点层终止,表示流程Fi停止执行也就是异常结束了执行;若流程Fi在节点层退回,表示流程Fi由于实际业务中一些原因需要退回,流程Fi也暂时停止执行。流程恢复Fi动作表示流程Fi在节点层处从暂时停止执行状态恢复到正常执行状态。
并有,表示所述第i个业务流程Fi中第j个节点层包含Kj个节点;所述第i个业务流程Fi中第j个节点层中第k个节点;定义所述第k个节点的处理状态包括:正常和异常;其中,异常状态相对与正常状态而言的,一切非正常的节点处理状态为异常状态,例如,在节点处需要暂停流程执行或停止流程执行时,节点的处理状态为异常状态;当Kj>1时,则表示所述第i个业务流程Fi中第j个节点层存在迁移规则当Kj=1时,则表示所述第i个业务流程Fi中第j个节点层仅含有一个节点,此时只需要根据该节点的处理状态决定节点层的迁移。
同时,定义节点层和所包含的各节点的特征属性信息,如图2所示。其中,节点层关键特征属性有“所属流程(可变字符类型,10个字节长度)、层号(短整型,2个字节长度)、映射关系(短整型,2个字节长度)即与下游节点层的关联映射关系、迁移规则(浮点数类型,4个字节长度)”;节点层第k个节点的关键特征属性有“待办理用户(可变字符类型,10个字节长度)、所属层号(短整型,2个字节长度)、处理状态(字符类型,2个字节长度)”;
步骤2、将所述第i个业务流程Fi采用mi阶有向邻接矩阵Mi表示为:Mi为方阵,mi为业务流程的节点层数;并有表示所述第p个节点层根据迁移动作向所述第j个节点层进行迁移,即迁移方向为矩阵的行指向矩阵的列,并记所述第p个节点层为上游节点层,所述第j个节点层为下游节点层;表示所述第i个业务流程Fi中第p个节点层和第j个节点层之间不存在迁移;1≤p≤mi;从而完成第i个业务流程Fi的简易业务流程模型(即mi阶有向邻接矩阵Mi)的建立。例如,假设流程Fi有6个节点层,层号为{1,2,3,4,5,6},节点层之间的迁移关系为1→2→3→4→2→5→6,对应的邻接矩阵结构如图3所示,图中实线箭头表示节点层之间的迁移方向,虚线箭头表示与其对应起始端节点层在邻接矩阵中的纵向平移方向,单元格中1表示对应的单元格内容为空的表示对应的为方便直观上的理解将单元格内的0省略。
利用节点层简化了流程模型的结构,在基于节点层设计框架下,节点层之间的关联映射关系存在四种,即1:1、1:n、n:1和n:n,如图4所示为节点层与其下游节点层之间的关联映射关系,其中节点层有Kp个节点,节点层有Kj个节点。1:1和1:n映射关系表示上游节点层任意节点正常处理后即可发生向下游节点层迁移;n:1和n:n关系表示上游节点层中满足多个节点正常处理后即可发生向下游节点层迁移。其中,所述多个节点定义为一个规则
步骤3、定义第i个业务流程Fi中第j个节点层的迁移规则为:比例值阈值且第j个节点层中不存在处理状态为异常的节点;并有,K′j表示处理状态为正常的节点个数。例如,节点层中含有6个节点,迁移阈值为0.5,假设现已处理了4个节点,无异常处理节点,则节点层发生向下游节点层迁移。
步骤4、根据简易业务流程模型生成实际流程实例的过程如下:
步骤4.1、初始化i=1;p=1;
步骤4.2、初始化j=1;
步骤4.3、判断mi阶有向邻接矩阵Mi中第p行第j列是否成立,若成立,则执行步骤4.5,否则,j+1赋值给j;并返回步骤4.3执行,直到j=mi为止,再执行步骤4.4;
步骤4.4、将p+1赋值给p,并执行步骤4.2,直到p=mi为止,从而完成实例的生成;
步骤4.5、判断所述第i个业务流程Fi中第p个节点层中的节点个数Kp=1是否成立,若成立,则在第Kp个节点的处理状态为正常时,所述第i个业务流程Fi中第p个节点层根据迁移动作直接向所述第j个节点层进行迁移;否则,所述第i个业务流程Fi中第p个节点层在满足相应的迁移规则时,根据所述迁移动作向所述第j个节点层进行迁移。
步骤5、流程实例执行过程按如下步骤进行,如图5所示:
步骤5.1、发起流程,先获取流程模型相关数据,包括节点层数、每层的节点数以及节点层和各节点的特征属性信息(如图2所示),再根据步骤4生成流程实例;
步骤5.2、执行流程实例时,按照流程节点层逐步执行。根据上游节点层迁移规则和所包含的节点处理状态决定节点层的迁移动作,若正常迁移则不断循环所有节点层直到流程结束;否则异常迁移时,若终止则直接导致流程结束;若冻结或退回则需要进行流程恢复才能继续流程的执行,直到流程结束。