工作流资源模式 - 创建模式11种

版权声明:工作流模式版权归 Workflow Patterns 组 织 ( http://www.workflowpatterns.com ) 所 有 。 经 Workflow Patterns授权,中文简体版由辛鹏和荣浩翻译。未经译者书面许可,不得将该中文简体版用于商业目的。

创建模式位于工作项生命周期的创建阶段,对工作项可能的执行方式进行限定,限定执行该 活动的资源范围。

我们在活动建模时定义分配规则,说明执行该活动资源所需要符合的前提条件 和约束,如图B-8所示。

创建模式的重要性在于确保流程实例的执行符合预定的设计原则,通过 模型增加活动执行的确定性。


图B-8 创建模式位于工作项的创建阶段

创建模式有11种,如图B-9所示。

  1. 直接分配:直接为活动指定特定的资源。
  2. 基于角色/职能的分配:为活动指定资源执行所需要的职能,我们使用角色在组织中定义职能。
  3. 延迟分配:资源的确定延迟至运行期。
  4. 基于权限分配:为活动指定资源执行所需要的权限,从而对资源做出限定。
  5. 职责分离:为了安全或避免错误,同一流程实例的两个活动必须由两个不同的资源执行。
  6. 流程实例整个处理:整个流程实例由一个资源执行,资源对整个流程实例负责,更加 投入。
  7. 经验获取:活动交与有经验的资源执行,提高活动执行效率。
  8. 基于能力的分配:为活动指定资源执行所需要的能力,从而对资源做出限定。
  9. 基于历史的分配:基于资源先前工作的历史决定活动的分配,找出最适合的资源。
  10. 基于组织位置分配:基于资源在组织中所处的位置以及与其他资源的关系分配活动。
  11. 自动执行:活动的执行自动完成,不需要人的参与,例如调用数据库、Web服务。

直接分配(WRP_1: Direct Distribution)

描述

能够在定义期直接为活动指定特定的资源,该活动的工作项在运行期分配给他。示例见图 B-10。

图B-10 直接分配

应用

该模式应用于流程里的关键路径。在中小企业里,该模式是应用最多的分配模式,因为人员 少,管理扁平,所以每个人的职责都非常清晰。该模式也是执行效率最高的资源模式,因为人和 活动直接绑定,所以不会产生推诿等情况,便于管理和追究责任。随着企业规模的扩大,管理层次的增加,一个活动需要交由特定的部门、岗位或角色来执行,这样无形中影响活动的执行效率。

该模式的缺点在于,一旦关键资源因为各种原因不能及时处理活动,那么将造成整个流程实 例的挂起等待。

基于角色的分配(WRP_2: Role-Based Distribution)

描述

能够在定义期为活动指定一个或多个角色,该活动的工作项在运行期分配给属于这些角色的 资源。示例见图B-11。

图B-11 基于角色的分配

应用

企业达到一定规模(能同时处理多个流程实例),必然需要对人员进行分组,角色是典型的 职能分组方式,将具有相同职能特征的人员定义为一个特定的角色,这些属性与工作的内容和资 源的技能相关,例如开发人员、项目经理、总经理等,而角色又会与权限产生关联。

将活动分配给角色意味着将会有多个资源可以执行该活动,需要协调,执行效率相比直接分 配会下降,这也是企业扩大后管理成本增大的一种表现。

如果我们必须在两个资源间进行选择,而他们在执行该工作项上是等价的,那么最好选择那 个相对只能处理少量其他种类工作的资源。换句话说,当还有其他的资源可以选择时,尽量让通 用性好的资源空闲,为将来尽可能预留弹性资源。

延迟分配(WRP_3: Deferred Distribution)

描述

能够在定义期为活动指定工作流数据变量,定义期并不确定资源,资源的确定被延迟至运行 期,系统运行期从该数据变量里读取该活动工作项所要分配的资源。

如图B-12所示,活动B在定义分配规则时指向数据变量userid,当在一个流程实例中实际执行 时,活动A由员工甲执行,其指定下一活动的执行者为员工乙即设置了userid这一数据变量为员工 乙的ID,这样当活动B工作项创建时,系统访问userid,发现该数据变量指向员工乙的ID,于是 将该工作项分配给员工乙。根据具体的分配策略,运行期该数据变量不仅可以指定人员,也可以 指定角色、部门。

图B-12 延迟分配

应用

该模式给资源的分配引入灵活性。资源的确定延迟至运行期,即活动可以根据具体的流程实 例执行情况确定执行资源。例如定义后续活动的执行者为当前活动执行者的部门经理、北京地区 提交的货物订单交由北京配送中心的业务员进行处理、下一活动的执行由上一活动的办理者指定 等等。具体实施时,这个指定的数据变量可以通过一系列的规则运算得出。

基于权限分配(WRP_4: Authorization)

描述

能够在定义期为活动指定资源执行所需要的权限,只有具有权限的资源才能执行该活动。示 例见图B-13。

图B-13 基于权限分配

应用

该模式在流程模型里引入组织权限。权限代表着对同一件事情不同资源执行工作内容的差 别。权限越大能执行的操作越多意味着需要负的责任越大。

职责分离(WRP_5: Separation of Duties)

描述

在一个流程实例里,能够指定两个活动必须由不同的资源执行。示例见图B-14。

图B-14 职责分离

应用

职责分离,不能既当运动员又当裁判员,不能又当跳水队领队又当全运会裁判长。避免滥用 权力。

流程实例整个处理(WRP_6: Case Handing)

描述

在一个流程实例里,所有的活动都能够分配给同一个资源执行。示例见图B-15。

图B-15 流程实例整个处理

应用

在应用该模式的流程里,流程里的活动都是紧密关联的。流程里的活动执行在一个紧密相关 的上下文里,如果所有的工作都由一个人执行,那么在其了解该上下文的情况下连贯执行这些活 动会具有更高的效率;而如果执行活动的过程中换人,那么新换的人无疑还需要时间对该流程实例相关的上下文进行熟悉,这样无疑会多付出执行成本。此外,一个资源对整个流程实例全权负 责会更加投入,能够给顾客提供更优质快捷的服务。
即使一个资源不能执行流程实例里的所有活动,也需要设立流程实例管理员来对整个流程实 例负责。

经验获取(WRP_7: Retain Familiar)

描述

在一个流程实例里,当存在多个资源都能执行某一活动时,能够将工作项优先分配给执行了 同一流程实例前某一活动的资源。

如图B-16所示,活动A和活动B在定义期被指定由同一个角色执行,那么在运行期,在一个 流程实例里,如果活动A被分配给了员工甲执行,那么在进行活动B的分配时,活动B依旧由员工 甲执行。

图B-16 经验获取

应用

该模式加快活动的执行,这些活动之间存在着紧密关联,如果执行了其中一个,那么就会熟 悉这些相关联活动的背景上下文,积累一定经验,那么后续活动的执行相对其他人来说会变得容 易。提高活动执行的效率。

图B-17 尽量使用同一资源执行关联活动

基于能力的分配(WRP_8: Capability-Based Distribution)

描述

能够在定义期为活动指定执行所需要的能力,基于资源的能力进行工作项的分配,能力作为 组织模型的一部分建模为资源的属性。示例见图B-18。

图B-18 基于能力分配

应用

人力资源管理中很重要的一点就是要做到人尽其用,每个人的能力都能得到最大的发挥,其 实也就是根据能力将人放置到最合适的工作中去。从这一点看,该模式是对人尽其能的实现,让资源发挥自己的专长。但是如何定义各个人员的能力,这本身就比较的主观,执行各项工作需要 具备的能力也具有主观因素,更何况很多时候能力并不能与表现划上等号,模型是固定的但人是 变化的受环境影响的,工具本身就是工具,工具的应用最后还是依赖于人。

基于历史的分配(WRP_9: History-Based Distribution)

描述
能够基于资源先前的工作历史决定活动的分配。示例见图B-19。

图B-19 基于历史分配

应用

找出最适合的资源。考虑历史时,有很多因素要考虑,例如完成类似活动最好的员工、完成 类似活动最快的员工、完成类似活动出差错最少的员工等。这些考虑因素依赖于具体的活动/流 程实例属性和背景。

基于组织位置分配(WRP_10: Organizational Distribution)

描述

能够基于资源在组织机构中的位置以及与其他资源的关系分配活动。示例见图B-20。

图B-20 基于组织位置分配

确保活动在组织的正确位置中得到执行,基于组织结构而不是职能特征分配活动。组织位置 最典型的建模就是部门。

自动执行(WRP_11: Automatic Execution)

描述

活动的执行能够自动完成,不需要人的参与。示例见图B-21。

图B-21 自动执行

应用

自动化使得越来越多的工作可以交由计算机或相应的机器设备直接完成。流程中的自动执行 节点逐渐增加。工作流系统对该模式的支持即是支持各种的企业集成方式,不管是通过Web服务还是消息,工作流需要驱动相应的设备机器或应用系统进行工作并传递给必须的数据。随着信息 化程度的提高,目前流程应用越来越趋向于企业集成领域。这也是为什么基于Web服务编排的 BPEL会逐渐取代XPDL成为流程执行标准的原因之一。

posted @ 2021-10-24 12:25  x3d  阅读(244)  评论(0编辑  收藏  举报