工作流数据模式-基于数据的路由模式7种

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

基于数据的路由模式共有7种,讨论数据对流程实例执行所产生的影响。

  1. 活动执行条件——数据存在:根据数据是否可用决定活动是否可以执行。
  2. 活动执行条件——数据值:根据数据是否等于指定值决定活动是否可以执行。
  3. 活动完成条件——数据存在:根据数据是否可用决定活动是否能够执行完成。
  4. 活动完成条件——数据值:根据数据是否等于指定值决定活动是否能够执行完成。 1. 基于事件的活动触发:外部事件能够触发活动的执行并传递数据。
  5. 基于数据的活动触发:通过数据反映的流程实例状态能够触发活动的执行。
  6. 基于数据的路由:数据能够决定流程的路由。

图C-54 基于数据的路由模式

活动执行条件——数据存在(WDP_34: Task Precondition – Data Existence)

描述

数据是否可用能够作为活动的执行条件。只有满足执行条件活动才可执行。

图C-55 活动执行条件-数据存在

应用

在执行活动时,设定活动执行的前提条件,只有满足条件时才能执行该活动。这个条件反映 出活动对前续活动执行结果、流程实例状态的依赖。当无法满足活动的执行条件时,有5种行为 可以选择:推迟活动的执行直至满足条件、为活动设置不满足条件时的默认行为、跳过该活动的 执行、与该活动参与者交互由参与者做出决定和终止当前流程实例的执行。

活动执行条件——数据值(WDP_35: Task Precondition – Data Value)

描述

数据是否等于指定值能够作为活动的执行条件。只有满足执行条件的活动才可执行。

活动完成条件——数据存在(WDP_36: Task Postcondition – Data Existence)

描述

数据是否可用能够作为活动的完成条件。只有满足完成条件的活动才表明执行完毕。

图C-56 活动完成条件-数据存在

应用

在执行活动时,设定活动执行的完成条件,只有满足条件时该活动才算完成。这个条件反映出对活动执行结果的期望。当无法满足活动的完成条件时,有2种行为可以选择:重新/继续执行
该活动直至满足条件为止;将该活动标识为未完成挂起并继续执行后续活动。

活动完成条件——数据值(WDP_37: Task Postcondition – Data Value)

描述

数据是否等于指定值能够作为活动的完成条件。只有满足完成条件的活动才表明执行完毕。

基于事件的活动触发(WDP_38: Event-based Task Trigger)

描述

外部事件能够触发活动实例的执行并给活动实例传递数据。

图C-57 基于事件的活动触发

应用

流程实例的执行能够响应外部环境发生的变化,并对变化作出反应。

该模式对应于控制模式里的触发模式(WCP_23和WCP_24)。存在3种应用场景,如图C-57所示。触发流程的第一个活动(活动A),其等价于触发一个新的流程实例;触发流程实例中一个等待中的活动(活动B),若活动不处于等待状态那么有两种情况:事件丢失(瞬态触发)、事件持久化等待消费(持久化触发);触发流程中与主流程隔离的单独活动(活动C),设计该活动的目的是消费特定的外部事件。

基于数据的活动触发(WDP_39: Data-based Task Trigger)

描述

数据能够作为活动的触发条件。我们为活动指定基于数据的表达式,当该表达式求值为真时即触发活动的执行。

图C-58 基于数据的活动触发

基于数据的路由(WDP_40: Data-based Routing)

描述

数据能够影响流程的路由。我们为XOR-split或OR-split的后续分支指定基于数据的路由表达式,当表达式求值为真时即触发对应分支的路由。

图C-59 基于数据的路由

返回索引

posted @ 2021-10-24 16:18  x3d  阅读(240)  评论(0编辑  收藏  举报