《工作流管理:模型、方法和系统》第二章 工作流建模 读书笔记

《工作流管理:模型、方法和系统》第二章 工作流建模 读书笔记

 

2.1 工作流概念

工作流系统成功的关键在于向其输入的工作流的质量。

2.1.1 案例

工作流系统的基本目的是处理案例。保险索赔、下订单、就诊都是案例

每个案例都有唯一标识。这使得我们在讨论问题时对该案例给出明确的指称。每个案例的生命周期都是有限的。

一个案例出现和消失之间,他总处于某个特定状态,该状态由三个元素组成:

a.案例相关属性的值;b.已经满足的条件;c.案例的内容;

2.1.2 任务

任务是一个工作的逻辑单元,他不可以分割且必须完整执行,即具有原子性。

如果在执行期间发生任务错误,则必须回滚

任务泛指一般的工作单元,并非某案例活动的一次具体执行。

工作项是案例和将要执行的任务的结合体,只要案例状态允许,工作项就被创建。可以吧工作项看成是要被执行的实际工作块。

活动指得是工作项的实际执行。当工作从某个工作项开始时,他就成为一个活动。

上图是案例、任务、工作项、活动之间的关系

 

2.1.3 过程

某种类型案例的执行方式由相关的过程来描述。

过程指出了哪些任务需要被执行,按照什么次序执行。我们也可以把过程看做是某种案例类型的程序。通常,一个过程可以用来处理多个不同的案例,根据案例属性采取不同的措施。

过程定义了案例的生命周期。

2.1.4 路由

过程决定了案例的生命周期,称之为案例的路由。

在路由案例时,采用下列四中基本结构:

顺序:一个接着一个地执行,如前一个任务的结果是后一个任务的输入。

并行:两个任务能同时或以任意次序执行,其互不影响。

选择:在多个任务之间选择。

循环(迭代):多次执行某个任务。

 

2.1.5 启动

只有当雇员对工作项进行初始化之后,才开始执行,我们称之为触发,即工作项由一个资源启动。

其他形式的触发还包括:外部事件(如一个EDI消息的到来)、某个特定的时刻(如在六点钟生成一个订单列表)。

因此,可以把触发分类三类:

资源驱动;外部事件;时间信号;

 

2.2 Petri网

Petri网可以用来过程建模和分析,是一个严格的过程形式化体系。

传统Petri网由库所和变迁组成,用圆圈表示库所,用矩形表示变迁。如上图中,有三个库所(claim, under condideration, ready),三个变迁(record, pay, send_letter)。

库所中的实心小圆点表示标记token。

Petri网中的库所和变迁可以用有向弧连接。只能从库所到变迁,或变迁到库所。而不能存在库所到库所或变迁到变迁。

Petri网的结构时固定的,但是库所中的标记时动态的。变迁只有满足可实施的条件才能实施。也就是,只有每个输入库所都至少有一个标记,变迁才被实施就绪。

变迁实施时,从它的每个输入库所中都取走一个标记,并往他的每个输出库所中都增加一个标记。即变迁实施时,变迁消耗掉来自输入库所中的标记,并为输出库所中生产标记。

上图即为变迁record实施前后的状态。

下图为Petri网的示例。右边是描述一组交通灯。

2.2.2 高级Petri网

因为传统的Petri网对于某些案例会变得非常庞大,而难以理解,或者某些活动他不能进行建模。因此出现了高级Petri网。

总共有三种常用的高级的Petri网:颜色扩展、时间扩展、层次扩展

1.颜色扩展

标记可以代表各种各样的事物。但是传统Petri网不能区分两个标记,即两个标记在同一个库所无法通过定义进行区分,这通常是无法接受的。

为此,可以给每个标记都包含各自的属性,这样每个标记都有一个值,通过他能对标记进行区分。通过给标记赋值,就好比给他们涂上了颜色。

变迁实施所产生的标记,取决于实施时被消耗的标记的值,生产出的标记的值也可以依赖于那些被消耗的标记的值。与传统Petri网不同,生产的标记数目也是变化的,即生产的标记数目由被消耗的标记的值决定。

2.时间扩展

通常当我们希望对一个过程的预期性能进行判断时,就通过时间扩展的Petri网建模。

采用时间扩展,标记将时间戳作为一个值。该时间戳指明标记自何时可用,一个时间戳为14的标记只有在时刻14之后才能被变迁消耗。只有在每个要被消耗的标记的时间戳早于当前时间时,变迁才能就绪。换句话说,变迁的就绪时刻就是他的输入所包含做的可用标记的最早时刻。标记的消耗按照先进先出规则。拥有最早时间戳的标记首先被消耗。此外,具有最早就绪时刻的变迁首次实施。如果有多个变迁有相同的就绪时刻,就出现了不确定性选择。而且,一个变迁的实施可能影响另外一个变迁的就绪时刻。

如果一个变迁实施并产生标记,那么每个标记都被赋予一个不早于实施时刻的时间戳。实施的变迁可以确定产生的标记的延时。产生的标记的时间戳等于实施时刻加上延时。延时的长短可以依赖于其消耗的标记的值。延时也可能是一个固定值或随机值。实施本身是瞬时的,并不花费时间。

3.层次扩展

层次扩展确保我们能够在Petri网模型中添加结构。即对Petri网模型中的一个变迁进行扩展,使其更加详细,将其更详细的子变迁画出来。

 

2.3 工作流概念到Petri网的映射

2.3.1.过程

我们用工作流管理系统的过程来说明某类型的案例采用何种方式处理。过程定义了哪些任务需要被执行。

2.3.2 路由

1. 顺序路由:一个任务接一个任务顺序地执行,称之为顺序路由。

2.并行路由:多个任务可以同时执行或以任意次序执行,称之为并行路由。AND-split。。。AND-join

3.选择路由:涉及在两个或多个任务中进行选择,称之为选择路由。OR-split。。。OR-join

4.循环路由:某个任务的反复执行。while...do...:repeat...until...

 

2.3.3 启动

过程是任务、条件、子过程、以及他们之间关系的集合。

三种类型的触发:资源主导、外部事件、时间信号。

显示OR-split、隐式OR-split

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值