著录项信息
专利名称 | 基于流程模式的工作流静态规划方法 |
申请号 | CN201010137572.6 | 申请日期 | 2010-03-29 |
法律状态 | 权利终止 | 申报国家 | 中国 |
公开/公告日 | 2010-09-29 | 公开/公告号 | CN101847228A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06Q10/00 | IPC分类号 | G;0;6;Q;1;0;/;0;0查看分类表>
|
申请人 | 清华大学 | 申请人地址 | 北京市-82信箱
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 清华大学 | 当前权利人 | 清华大学 |
发明人 | 向勇;孙瑞志;陈大伟;史银雪;史美林 |
代理机构 | 北京众合诚成知识产权代理有限公司 | 代理人 | 朱琨 |
摘要
基于流程模式的工作流静态规划方法,属于中间件技术领域,其特征在于,所述方法是在一台计算机中依次按照以下步骤实现:步骤1,从用户的输入信息中解析出业务目标和应用场景;步骤2,进行业务目标-流程模式匹配,找到最适合当前业务目标和应用场景的流程模式;步骤3,若步骤2得到的流程模式中含有业务目标,则调用匹配器匹配流程模式,得出不含业务目标的完整工作流定义;步骤4,对规划后的流程定义列表进行适配;步骤5,对流程定义进行优化;步骤6,将工作流定义部署到工作流执行引擎并启动执行。利用该规划方法,可以根据用户提交的信息自动规划出符合要求的工作流定义,从而降低业务流程建模的难度,实现业务流程的复用。
1.基于流程模式的工作流静态规划方法,其特征在于,所述方法是在一台计算机中依次按照以下步骤实现的:
步骤(1),从用户的输入信息中解析出业务目标和应用场景,其中,业务目标用于描述该流程模式想要达成的业务理想,一项业务目标包括:标识名称、所属领域、描述、输入数据和输出数据,所述输入输出数据是一组变量的集合,这些变量的属性包括:标识、描述、名称、类型、长度和初始值,应用场景则是用于描述完成当前业务目标时,所处的一个典型的环境,其中包括:在该环境下此流程模式以达到相应业务目标的积极因素和消极因素,所述积极因素是用来表示那些适合应用上述流程模式的场景,积极因素是积极因素场景条目的集合,场景条目的属性包括:积极因素场景条目名称、积极因素场景条目评估函数、积极因素场景条目所占权重和积极因素场景条目评估标准值,积极因素场景条目评估函数至少包含关系运算操作符>,≥,=,≠,≤,<与集合运算操作符 =,≠,∈, 积极因素场景条目所占权重表明该场景条目在场景评估中的重要程度,每一个积极因素场景条目所占权重取值大于等于0,所有积极因素场景条目所占权重之和等于1,积极因素场景条目评估标准值是指根据实际业务情况预置的积极因素场景条目的一个值,为任意实数,用以作为评估的标准,当进行积极因素场景评估时,实际的积极因素场景条目取值和积极因素场景条目评估标准值进行积极因素场景条目评估函数规定的操作运算,根据不同的运算结果返回不同的积极因素场景评估分值,所述消极因素是用来描述那些不适合应用上述流程模式的场景,消极因素是消极因素场景条目的集合,消极因素场景条目的属性包括:消极因素场景条目名称、消极因素场景条目评估函数、消极因素场景条 目所占权重和消极因素场景条目评估标准值,消极因素场景条目评估函数至少包含关系运算操作符>,≥,=,≠,≤,<与集合运算操作符 =,≠,∈, 消极因素场景条目所占权重表明该场景条目在场景评估中的重要程度,每一个消极因素场景条目所占权重取值大于等于0,所有消极因素场景条目所占权重之和等于1,消极因素场景条目评估标准值是指根据实际业务情况预置的消极因素场景条目的一个值,为任意实数,用以作为评估的标准,当进行消极因素场景评估时,实际的消极因素场景条目取值和消极场景条目评估标准值进行消极因素场景条目评估函数规定的操作运算,根据不同的运算结果返回不同的消极因素场景评估分值,步骤(2),根据步骤(1)得到的业务目标和应用场景,依次按照以下步骤进行业务目标-流程模式匹配,找到最适合当前业务目标和应用场景的流程模式,包括:
步骤(2.1),在流程模式库中查询用户给定的业务目标的标识名称,若不存在,报错并退出,若存在则转步骤(2.2),
步骤(2.2),根据业务目标中的所属领域,再次查询流程模式库,得到对应的流程模式列表,其中至少包含一个以上的流程模式,所述流程模式包括:标识、名称、所属领域、业务目标标识、应用场景和解决方案,所述解决方案是当前环境下完成业务目标的具体方法,至少包括解决方案标识、解决方案所属领域、解决方案名称在内的属性,
步骤(2.3),遍历步骤(2.2)得到的流程模式列表,将流程模式列表中的每个流程模式引用的业务目标和给定的业务目标进行比较,若相同,则设 置目标匹配分值为1.0,转步骤(2.4),若不同,则尝试所运行的流程模式列表中的下一个流程模式,
步骤(2.4),获取步骤(2.3)得到的匹配后的流程模式中的场景信息,根据其中的每个场景条目及其指定的评估函数,对给定的应用场景进行评估,所述评估函数是指用于评估当前场景条目与流程模式中相应的场景条目匹配程度的函数,函数返回值为[0,1]区间的一个实数,利用所述评估函数得到的场景评估分值为:场景评估分值={∑(积极场景条目权重*积极场景条目评估分值)}-{消极因素影响系数*∑(消极场景条目权重*消极场景条目评估分值)},所述消极因素影响系数用来刻画消极因素负面影响的强度,取值为大于等于0的实数,然后从预先设立于该计算机的配置文件中读入场景评估门限值,所述场景评估门限值是根据经验预置的一个门槛分值,为任意实数,用来描述流程模式与当前场景匹配的最低要求,场景评估分值大于门限值,即转步骤(2.5),场景评估分值低于门限值,表明该流程模式在当前场景下不满足要求,则尝试所运行流程模式列表中的下一个流程模式,
步骤(2.5),根据步骤(2.3)的目标匹配分值、步骤(2.4)的场景评估分值,按照下式计算匹配总分值:匹配总分值={业务目标匹配分值*业务目标影响系数}+{场景评估分值*应用场景影响系数},所述业务目标影响系数是指根据业务情况预置在计算机配置文件中的一个值,用来表示业务目标匹配在流程模式匹配中的影响度,为[0,1]区间的一个实数,所述应用场景影响系数是根据业务情况预置在计算机配置文件中的一个值,用来表示场景评估在流程模式匹配中的影响度,为[0,1]区间的 一个实数,所述业务目标影响系数和应用场景影响系数之和为1,如果模式匹配更看重业务目标的精确匹配,则选择较大的业务目标影响系数,如果模式匹配更倾向于适当的应用场景,则选择较小的业务目标影响系数,然后从所述配置文件中读入流程模式匹配门限值,所述流程模式匹配门限值是根据专家经验获得的一个门槛分值,为任意实数,用来描述流程模式匹配程度的最低要求,如果匹配总分值大于流程模式匹配门限值,则将该流程模式放入候选流程模式列表,否则,尝试所运行的流程模式列表中的下一个流程模式,直到遍历所有流程模式为止,
步骤(2.6),按照步骤(2.5)得到的各候选模式匹配总分值的大小,将所述候选模式列表中的所有流程模式降序排列,得到一个候选流程模式列表,
步骤(2.7),向所述计算机返回匹配成功标识,
步骤(3),从步骤(2.6)得到的候选流程模式列表中选出分值最高的流程模式作为最适合当前业务目标和应用场景的流程模式,遍历该流程模式的解决方案,即依次逐个检查解决方案中的活动,如果解决方案中仍然含有业务目标活动,则转步骤(2)再次对解决方案中的业务目标活动进行业务目标-流程模式匹配,找到最适合解决方案中目标活动对应的业务目标和应用场景的流程模式,递归执行这个过程,直到所需的流程模式的解决方案中不再含有业务目标活动为止,最后得到一个不含有业务目标活动的流程模式解决方案的列表,即对业务目标进行规划后的工作流流程定义列表,
步骤(4),根据步骤(3)得到的不含有业务目标的完整的流程模式的工作流 流程定义列表,依次按照以下步骤对规划后的工作流流程定义进行适配,
步骤(4.1),由步骤(3)得到的流程定义列表,其中的流程定义是以一棵树的形式进行组织的,从流程定义树中取得最顶级的流程,遍历这个流程中所有的活动,如果发现某个子流程活动是由规划过程中的业务目标活动替换得到的,则调整这个子流程活动的输入输出参数映射,调整方法:将流程的变量与业务目标活动对应的业务目标的输入和输出参数映射,以及业务目标输入输出参数与子流程输入输出参数的映射,替换为流程的变量与其子流程的输入和输出参数映射,
步骤(4.2),遍历子流程中的所有活动,如果发现某个子流程活动是由业务目标活动替换得到的,则按照步骤(4.1)所述的调整方法调整其输入和输出参数映射,步骤(4.3),递归执行上述过程,直到将所有由业务目标活动转变而来的子流程活动的输入和输出参数映射调整完毕,
步骤(5),依次按照以下步骤对由步骤(4)得到的适配后的流程定义进行优化,步骤(5.1),从适配后的流程定义列表中选取符合嵌入条件的子流程,所述嵌入条件同时满足以下三点:
第一,子流程的所有变量的值均有父流程的变量赋值,
第二,子流程中所有人工参与的活动,其参与者必须间接来自组织机构,所述组织机构指把包括人力、物力和智力在内的资源按一定的形式和结构,有秩序的组织起来开展活动,以达成共同的目标或任务的社会单位,
第三,在子流程活动中,同一个形式参数的输入和输出映射必须相同,
步骤(5.2),将由步骤(5.1)得到的子流程以流程片段形式嵌入父流程,具体操作如下:
第一,根据父流程中子流程活动的参数映射,将子流程中所有活动的变量引用都设置为对父流程中的变量的引用,
第二,将子流程活动替换为块活动,所述块活动是指由一系列相互联系的活动和变迁组成的活动集合,
第三,将子流程的开始活动和结束活动替换为路由活动,所述路由活动是指没有执行者,也没有应用程序,通常用来描述转移条件的活动,
第四,重新设置子流程中所有活动和变迁的标识,保证和父流程中的活动和变迁的标识不重复,所述变迁是用来描述活动之间的控制依赖关系,
第五,将子流程中所有活动添加到上述块活动的活动列表,将子流程中所有变迁添加到上述块活动的变迁列表,
步骤(5.3),按照以下步骤去除由步骤(5.2)得到的流程定义列表中的冗余流程,第一,创建一个新流程定义列表,遍历经过嵌入处理之后得到的流程定义列表,如果发现一个流程在新流程定义列表中不存在,则将其加入新流程定义列表,
第二,如果发现一个流程包含的信息与新流程定义列表中某个流程 包含的信息除流程标识符外都相同,则为这个流程标识符与新流程定义列表中那个对应的流程标识符建立映射关系,
第三,遍历新流程定义列表,如果发现一个流程的某个子流程活动引用的子流程是已经被去除的冗余流程,则根据上一步建立的映射信息,为该子流程活动绑定新流程定义列表中对应的流程,
步骤(6),将由步骤(5)优化之后得到的工作流定义部署到工作流执行引擎并启动执行启动执行。
2.根据权利要求1所述的基于流程模式的工作流静态规划方法,其特征在于,所述方法在一台计算机中实现还包含将所述优化之后的流程定义部署到工作流执行引擎,调用工作流执行引擎的应用编程接口,启动所部署的工作流定义的过程。
3.根据权利要求1所述的基于流程模式的工作流静态规划方法,其特征在于,所述方法在一台计算机中实现还包含工作流专家和业务分析师利用建模工具将所述流程模式创建到所述流程模式库中并由工作流系统管理员启动规划流程的步骤,所述规划流程定义包含三个活动:开始活动、规划并启动流程活动、结束活动。
4.根据权利要求3所述的基于流程模式的工作流静态规划方法,其特征在于,所述方法在一台计算机中实现还包含将所述优化之后的流程定义部署到工作流执行引擎,调用工作流执行引擎的应用编程接口,启动所部署的工作流定义的过程。
基于流程模式的工作流静态规划方法 \n技术领域\n[0001] 本发明涉及一种基于流程模式的工作流静态规划系统及方法,属于中间件技术领域,特别是在业务流程管理领域。 \n背景技术\n[0002] 随着业务流程的增加,如何有效利用已有的流程快速开发出当前需要的流程,从而降低业务流程建模的难度,实现流程定义的复用的需求越来越强烈。 [0003] 目前的大部分工作流产品,要么不支持工作流模型的自动生成,也不提供辅助建模的机制;要么限制流程定义中不出现某些特定的结构,以便实现工作流定义的复用。一些实现工作流定义自动生成和复用的方法,要求工作流执行引擎识别特殊的工作流定义语言,或者要求工作流执行引擎记录特殊的数据。这些要求通常是现有的工作流引擎无法达到的。 \n[0004] 因此,直接利用现有的工作流引擎,辅助业务流程建模人员创建可复用的工作流定义,并在需要时根据已有的工作流定义自动生成所需的工作流定义,成为业务流程管理领域迫切需要解决的问题。 \n[0005] 本发明在国内外未见报道,在国内未见公开使用。 \n[0006] 本发明中用到相关专有名词,以下是对这些专有名词的解释: [0007] 评估函数:用于评估当前场景条目与流程模式中相应场景条目匹配程度的函数,其返回值为[0,1]区间内的一个实数。 \n[0008] 父流程、子流程:如果流程A中的某个活动是子流程活动类型,则这个活动会引用另外一个完整的流程B,则流程A是流程B的父流程;流程B是流程A的子流程。 [0009] 参与者:可以执行该活动对应的工作的资源,可以是人、组织或者角色。 [0010] 组织机构:现实中的组织机构是指把人力、物力和智力等按一定的形式和结构,有秩序的组织起来开展活动,以达成共同的目标或任务的社会单位。这里指其在计算机内的抽象表示,参与者便来自于组织机构。 \n[0011] 变迁:用来描述活动之间的控制依赖关系。 \n[0012] 块活动:由一系列相互联系的活动和变迁组成的活动集合。 \n[0013] 路由活动:即没有执行者,也没有应用程序,通常用来描述转移条件的活动。 发明内容\n[0014] 为了解决以上问题,本发明的目的是提供一种基于流程模式的工作流静态规划系统,该系统能够根据用户提交的信息自动规划出符合要求的工作流定义,降低业务流程建模的难度,实现业务流程的复用。在企业现有的工作流引擎之上,实现工作流定义的自动生成、工作流 \n[0015] 定义的适配及优化。 \n[0016] 本发明所描述的工作流静态规划系统采用Java语言实现,可以在支持的Java的各种软硬件平台上运行。 \n[0017] 流程模式表示工作流生成中的业务知识,包括: \n[0018] 1)业务目标,用于描述该流程模式想要达成的业务理想,业务目标包括业务目标标识ID、业务目标名称、业务目标所属领域、业务目标的概念描述、业务目标对应的输入数据和输出数据。所述业务目标对应的输入数据和输出数据是一组变量的集合,这些变量的属性包括:变量标识、变量名称、变量描述、变量类型、变量长度和变量初始值。 [0019] 2)应用场景,用于描述想要完成当前业务目标时,所处的一个典型的环境。 [0020] 其中包括: \n[0021] 在该环境下使用某一流程模式以达到相应的业务目标的积极因素和消极因素,所述积极因素是用来表示那些适合应用上述流程模式的场景,积极因素是积极因素场景条目的集合,场景条目的属性包括:积极因素场景条目名称、积极因素场景条目评估函数、积极因素场景条目所占权重和积极因素场景条目评估标准值,积极因素场景条目评估函数至少包含关系运算操作符>,≥,=,≠,≤,<与集合运算操作符 =,≠,∈, 积极因素场景条目所占权重表明该场景条目在场景评估中的重要程度,每一个积极因素场景条目所占权重取值大于等于0,所有积极因素场景条目所占权重之和等于1,积极因素场景条目评估标准值是指根据实际业务情况预置的积极因素场景条目的一个值,是任意实数,用以作为评估的标准,当进行积极因素场景评估时,实际的积极因素场景条目取值和积极因素场景条目评估标准值进行积极因素场景条目评估函数规定的操作运算,根据不同的运算结果返回不同的积极因素场景评估分值,所述消极因素是用来描述那些不适合应用上述流程模式的场景,消极因素是消极因素场景条目的集合,消极因素场景条目的属性包括:消极因素场景条目名称、消极因素场景条目评估函数、消极因素场景条目所占权重和消极因素场景条目评估标准值,消极因素场景条目评估函数至少包含关系运算操作符>,≥,=,≠,≤,<与集合运算操作符 =,≠,∈, 消极因素场景条目所占权重表明该场景条目在场景评估中的重要程度,每一个消极因素场景条目所占权重取值大于等于0,所有消极因素场景条目所占权重之和等于1,消极因素场景条目评估标准值是指根据实际业务情况预置的消极因素场景条目的一个值,为任意实数,用以作 为评估的标准,当进行消极因素场景评估时,实际的消极因素场景条目取值和消极场景条目评估标准值进行消极因素场景条目评估函数规定的操作运算,根据不同的运算结果返回不同的消极因素场景评估分值, [0022] 3)解决方案,用于描述在当前环境下完成业务目标的具体方法,用一个流程表示,可以使用工作流执行引擎支持的某一种工作流定义语言来定义这个流程,只要这种语言支持子流程即可。当使用流程模式描述高层次的业务流程时,其解决方案中会包含业务目标活动,所述业务目标活动只描述所能完成的业务功能以及输入和输出参数,完成这项业务功能的具体过程则推迟到规划的时候确定,因此,需要在工作流定义语言中添加业务目标活动这种新的活动类型;当使用流程模式描述低层次的具体的业务流程时,则其解决方案就是具体的流程,不包含业务目标活动。 \n[0023] 4)流程模式的属性包括:标识、名称、所属领域、业务目标标识、应用场景和解决方案。 \n[0024] 本发明的另一个目的是提供一种基于流程模式的工作流静态规划方法。 [0025] 为此,本发明的技术方案为:一种基于流程模式的工作流静态规划方法,包括以下步骤: \n[0026] 步骤(1),从用户的输入信息中解析出业务目标和应用场景,其中,业务目标用于描述该流程模式想要达成的业务理想,一项业务目标包括:标识名称、所属领域、描述、输入数据和输出数据,所述输入输出数据是一组变量的集合,这些变量的属性包括:标识、描述、名称、类型、长度和初始值,应用场景则是用于描述完成当前业务目标时,所处的一个典型的环境,其中包括:在该环境下此流程模式以达到相应业务目标的积极因素和消极因素, [0027] 步骤(2),根据步骤(1)得到的业务目标和应用场景,依次按照以下步骤进行业务目标-流程模式匹配,找到最适合当前业务目标和应用场景的流程模式,包括: [0028] 步骤(2.1),在流程模式库中查询用户给定的业务目标的标识名称,若不存在,报错并退出,若存在则转步骤(2.2), \n[0029] 步骤(2.2),根据业务目标中的所属领域,再次查询流程模式库,得到对应的流程模式列表,其中至少包含一个以上的流程模式,所述流程模式包括:标识、名称、所属领域、业务目标标识、应用场景和解决方案,所述解决方案是当前环境下完成业务目标的具体方法,至少包括解决方案标识、解决方案所属领域、解决方案名称在内的属性, [0030] 步骤(2.3),遍历步骤(2.2)得到的流程模式列表,将流程模式列表中的每个流程模式引用的业务目标和给定的业务目标进行比较,若相同,则设置目标匹配分值为1.0,转步骤(2.4),若不同,则尝试所运行的流程模式列表中的下一个流程模式, [0031] 步骤(2.4),获取步骤(2.3)得到的匹配后的流程模式中的场景信息,根据其中的每个场景条目及其指定的评估函数,对给定的应用场景进行评估,所述评估函数是指用于评估当前场景条目与流程模式中相应的场景条目匹配程度的函数,函数返回值为[0,1]区间的一个实数,利用所述评估函数得到的场景评估分值如下所示: \n[0032] 场景评估分值={∑(积极场景条目权重*积极场景条目评估分值)}- [0033] {消极因素影响系数*∑(消极场景条目权重*消极场景条目评估分值)} [0034] 所述消极因素影响系数用来刻画消极因素负面影响的强度,取值为大于等于0的实数,然后从预先设立于该计算机的配置文件中读入场景评估门限值,所述场景评估门限值是根据经验预置的一个门槛分值,为任意实数,用来描述流程模式与当前场景匹配的最低要求,场景评估分值大于门限值,即转步骤(2.5),场景评估分值低于门限值,表明该流程模式在当前场景下不满足要求,则尝试所运行的流程模式列表中的下一个流程模式, [0035] 步骤(2.5),根据步骤(2.3)的目标匹配分值、步骤(2.4)的场景评估分值,按照下式计算匹配总分值:匹配总分值={业务目标匹配分值*业务目标影响系数}+{场景评估分值*应用场景影响系数},所述业务目标影响系数是指根据业务情况预置在计算机配置文件中的一个值,用来表示业务目标匹配在流程模式匹配中的影响度,为[0,1]区间的一个实数,所述应用场景影响系数是根据业务情况预置在计算机配置文件中的一个值,用来表示场景评估在流程模式匹配中的影响度,为[0,1]区间的一个实数,所述业务目标影响系数和应用场景影响系数之和为1,如果模式匹配更看重业务目标的精确匹配,则选择较大的业务目标影响系数,如果模式匹配更倾向于适当的应用场景,则选择较小的业务目标影响系数,然后从所述配置文件中读入流程模式匹配门限值,所述流程模式匹配门限值是根据专家经验获得的一个门槛分值,为任意实数,用来描述流程模式匹配程度的最低要求,如果匹配总分值大于流程模式匹配门限值,则将该流程模式放入候选流程模式列表,否则,尝试所运行的流程模式列表中的下一个流程模式,直到遍历所有流程模式为止, [0036] 步骤(2.6),按照步骤(2.5)得到的各候选模式匹配总分值的大小,将所述 候选模式列表中的所有流程模式降序排列,得到一个候选流程模式列表, \n[0037] 步骤(2.7),向所述计算机返回匹配成功标识, \n[0038] 步骤(3),从步骤(2.6)得到的候选流程模式列表中选出分值最高的流程模式作为最适合当前业务目标和应用场景的流程模式,遍历该流程模式的解决方案,即依次逐个检查解决方案中的活动,如果解决方案中仍然含有业务目标活动,则转步骤(2)再次对解决方案中的业务目标活动进行业务目标-流程模式匹配,找到最适合解决方案中目标活动对应的业务目标和应用场景的流程模式,递归执行这个过程,直到所需的流程模式的解决方案中不再含有业务目标活动为止,最后得到一个不含有业务目标活动的流程模式解决方案的列表,即对业务目标进行规划后的工作流流程定义列表, \n[0039] 步骤(4),根据步骤(3)得到的不含有业务目标的完整的流程模式的工作流流程定义列表,依次按照以下步骤对规划后的工作流流程定义进行适配, \n[0040] 步骤(4.1),由步骤(3)得到的流程定义列表,其中的流程定义是以一棵树的形式进行组织的,从流程定义树中取得最顶级的流程,遍历这个流程中所有的活动,如果发现某个子流程活动是由规划过程中的业务目标活动替换得到的,则调整这个子流程活动的输入输出参数映射,调整方法:将流程的变量与业务目标活动对应的业务目标的输入和输出参数映射,以及业务目标输入输出参数与子流程输入输出参数的映射,替换为流程的变量与其子流程的输入和输出参数映射, \n[0041] 步骤(4.2),遍历子流程中的所有活动,如果发现某个子流程活动是由业务目标活动替换得到的,则按照步骤(4.1)所述的调整方法调整其 输入和输出参数映射, [0042] 步骤(4.3),递归执行上述过程,直到将所有由业务目标活动转变而来的子流程活动的输入和输出参数映射调整完毕, \n[0043] 步骤(5),依次按照以下步骤对由步骤(4)得到的适配后的流程定义进行优化, [0044] 步骤(5.1),从适配后的流程定义列表中选取符合嵌入条件的子流程,所述嵌入条件同时满足以下三点: \n[0045] 第一,子流程的所有变量的值均有父流程的变量赋值, \n[0046] 第二,子流程中所有人工参与的活动,其参与者必须间接来自组织机构,所述组 [0047] 织机构指把包括人力、物力和智力在内的资源按一定的形式和结构,有秩序的组 [0048] 织起来开展活动,以达成共同的目标或任务的社会单位, \n[0049] 第三,在子流程活动中,同一个形式参数的输入和输出映射必须相同, [0050] 步骤(5.2),将由步骤(5.1)得到的子流程以流程片段的形式嵌入父流程, [0051] 具体操作如下: \n[0052] 第一,根据父流程中子流程活动的参数映射,将子流程中所有活动的变量引用 [0053] 都设置为对父流程中的变量的引用, \n[0054] 第二,将子流程活动替换为块活动,所述块活动是指由一系列相互联系的活动和变迁组成的活动集合, \n[0055] 第三,将子流程的开始活动和结束活动替换为路由活动,所述路由活动是指没有执行者,也没有应用程序,通常用来描述转移条件的活动, \n[0056] 第四,重新设置子流程中所有活动和变迁的标识,保证和父流程中的活动和变迁的标识不重复,所述变迁是用来描述活动之间的控制依赖关系, \n[0057] 第五,将子流程中所有活动添加到上述块活动的活动列表,将子流程中所有变迁添加到上述块活动的变迁列表, \n[0058] 步骤(5.3),按照以下步骤去除由步骤(5.2)得到的流程定义列表中的冗余流程, [0059] 第一,创建一个新流程定义列表,遍历经过嵌入处理之后得到的流程定义列表,如果发现一个流程在新流程定义列表中不存在,则将其加入新流程定义列表, [0060] 第二,如果发现一个流程包含的信息与新流程定义列表中某个流程包含的信息除流程标识符外都相同,则为这个流程标识符与新流程定义列表中那个对应的流程标识符建立映射关系, \n[0061] 第三,遍历新流程定义列表,如果发现一个流程的某个子流程活动引用的子流程是已经被去除的冗余流程,则根据上一步建立的映射信息,为该子流程活动绑定新流程定义列表中对应的流程, \n[0062] 步骤(6),将由步骤(5)优化之后得到的工作流定义部署到工作流执行引擎并启动执行。 \n[0063] 本发明的好处在于提供一种基于流程模式的工作流静态规划系统及方法,根据用户提交的信息自动规划出符合要求的工作流定义。因此使用本发明的好处在于: [0064] 1)将流程定义的确定推迟到流程启动时,有效提高工作流系统的灵活性; [0065] 2)将业务流程的复杂细节限制在流程模式内部,显著降低工作流建模的复杂程度; \n[0066] 3)构建流程模式库的过程,即是对企业业务流程重新梳理的过程,这有助于企业业务流程再造;同时,流程模式库能有效积累和组织业务流程,静态规划方法使业务流程得到较好的复用; \n[0067] 4)工作流静态规划系统所生成的流程定义可直接用于现有的工作流执行引擎,在不对已有工作流执行引擎进行任何改动的前提下,实现业务流程的自动生成及优化; [0068] 5)静态规划功能的增加对现有工作流引擎用户是透明的,引擎用户不用改变使用工作流引擎的习惯。 \n附图说明\n[0069] 图1是本发明实施例中的一种基于流程模式的工作流静态规划系统结构示意框图。 \n[0070] 图2是工作流静态规划系统工作流程图; \n[0071] 图3是流程模式库中的流程模式示例; \n[0072] 图4是流程模式库中的评估函数的示例; \n[0073] 图5是匹配器工作流程图; \n[0074] 图6是规划器工作流程图; \n[0075] 图7是流程适配服务工作流程图; \n[0076] 图8是流程优化服务工作流程图; \n[0077] 图9是本发明实施例中的规划流程图。 \n[0078] 图10是基于工作流的物流快递案例的流程模式定义 \n[0079] 图11是基于工作流的物流快递月结顶级流程图 \n具体实施方式\n[0080] 以下实施例用于说明本发明,但不用来限制本发明的范围。 \n[0081] 如图1所示,本发明涉及一种基于流程模式的工作流静态规划系统,其中,流程模式库存储流程模式(包括业务目标、应用场景和解决方案)和评估函数。图3是流程模式的格式示例,其中解决方案可以用工作流引擎支持的任意一种工作流定义语言定义。图4是一个评估函数的示例,该示例用于判断两个字符串是否相同。图5是匹配器的工作流程,即根据给定的业务目标和应用场景,搜索流程模式库,找到合适的流程模式并输出。图6是规划器的工作流程,即接收从用户输入信息中得到的业务目标和应用场景,反复调用匹配器得到最适合当前业务目标和应用场景的流程模式,根据这些流程模式的解决方案组建完整的流程定义并输出。图7是流程适配服务的工作流程,即接收规划器输出的流程定义,对其进行适配操作并输出。图8是流程优化服务的工作流程,即接收适配之后的流程定义,对其进行优化并输出。 \n[0082] 以下所述是以一个基于工作流的物流快递应用系统为例,其具体流程如图10所示,说明基于流程模式的工作流静态规划的具体实施技术方案: \n[0083] 第一步,工作流专家和业务分析师利用建模工具在流程模式库中创建基于工作流的物流快递流程模式定义并预置业务目标影响系数为0.5,应用场景影响系数为0.5,消极因素影响系数为0,场景评估门限值为0.5,模式匹配门限值为0.5,流程模式定义主要内容如图10所示,以月结顶级流程模式为例,该流程模式的业务目标为物流快递,应用场景包含一个 积极因素场景条目,积极因素场景条目名称为PaymentType,积极因素场景条目评估操作符为“=”,积极因素场景条目评估标准值为PayMonthly,积极因素场景条目所占权重为1,解决方案为月结顶级流程,当用户输入值为等于PayMothly时,则返回1,否则,返回\n0; \n[0084] 第二步,用户提出物流快递请求,即业务目标为物流快递,工作流系统管理员启动规划流程,规划流程如图9所示; \n[0085] 第三步,用户填写快递订单信息,例如,用户要求按月结算,运送普通物品到异地,保险额度为800元,运输时间不超过72小时,则规划流程从用户输入的信息中获得业务目标为物流快递,应用场景场景包括六个场景条目,各场景条目对应 的 用户 输入 值分 别为PaymentType= PayMonthly,SpecialCargo=false,IsDangerous = falseInsuranceAmount = 800,GeoScope = OtherCity,SpecialCargo= false,IsDangerous = false InsuranceAmount = 800GeoScope = OtherCity,TransportTimeExpectation=72,将这些信息传递给规划器; \n[0086] 第四步,规划器从第3步得到当前业务目标为物流快递,名称为PaymentType的积极因素场景条目实际输入值为PayMonthly,检查第1步所述流程模式库可知使用月结顶级流程模式以达到物流快递这个业务目标的积极因素包含一个积极因素场景条目PaymentType,该积极因素场景条目名称为PaymentType,积极因素评估操作符为“=”,积极因素场景条目所占权重为1,积极因素场景条目评估标准值为PayMothly,如果实际输入值等于评估标准值,评估分值为1,否则为0;因此调用匹配器得到场景评估分值=1,大于场景评估门限值0.5;由于当前业务目标物流快递与月结顶级模式的业务目标相同,可得到业务目标匹配分值为1; \n[0087] 由第1步可知,预置的业务目标影响系数为0.5,应用场景影响系数为0.5,则匹配总分值=0.5*1+0.5*1=1,大于模式匹配门限值0.5;因此月结顶级模式为候选模式。月结顶级模式对应的解决方案就是图11中所示的月结顶级流程;由于月结顶级流程中的揽件、送件,运输、结算,揽件流程中的任务分发为业务目标活动,因此当遇到这些业务目标活动时,需要再次调用匹配器匹配相应流程模式,匹配方法和月结顶级流程类似,直到最后得出符合当前业务目标和应用场景的不含业务目标活动的完整的工作流流程定义; [0088] 第五步,流程适配服务对规划所得工作流定义进行适配,将图10所示的月结顶级流程的变量,包括订单号和订单信息,分别和业务目标活动揽件、运输、送件、结算业务目标的订单号,订单信息参数对应起来,以及将揽件流程的订单,订单信息参数和业务目标活动任务分发的订单,订单信息参数对应起来; \n[0089] 第六步,流程优化服务对适配之后的流程定义进行优化,将图11所示的普通分发流程嵌入揽件流程中,替换原来的任务分发业务目标活动,揽件流程、异地运输流程、非同区送件流程、月结结算流程嵌入月结顶级流程,分别替换揽件、运输、送件、结算业务目标活动; \n[0090] 第七步,将第6步优化之后得到的流程定义部署到工作流执行引擎; [0091] 第八步,调用工作流执行引擎的应用编程接口,启动所部署的工作流定义。
法律信息
- 2019-03-19
未缴年费专利权终止
IPC(主分类): G06Q 10/00
专利号: ZL 201010137572.6
申请日: 2010.03.29
授权公告日: 2012.02.08
- 2012-02-08
- 2010-11-17
实质审查的生效
IPC(主分类): G06Q 10/00
专利申请号: 201010137572.6
申请日: 2010.03.29
- 2010-09-29
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有引用任何外部专利数据! |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |