一、定义
1. 工作流(Work Flow)也叫做事务过程,是对工作流程及其各操作步骤之间业务规则的抽象、概括描述;
工作流最早起源于生产组织和办公自动化领域,它是针对平时工作中的业务流程活动而提出的一个概念,目的是根据将工作分解成定义良好的任务或角色,根据一定的原则和过程来实施这些任务并加以监控,从而达到提高效率、控制过程、提升客户服务、增强有效管理业务流程等目的。
2. 工作流建模就是工作流程的计算模型,即将工作流程中的工作如何前后组织在一起的逻辑和规则在计算机中以恰当的模型进行表示并对其实施计算;是一系列相互衔接、自动进行的业务活动或任务。
主要解决的是:
a. 多个参与者之间按照一种提前定义好的规则流程来传递与执行文档、信息或任务;
b. 让这个信息传递的过程可以自动进行或者部分自动执行,从而完成预期的业务目标;
3. 工作流引擎(Workflow Engine )是指workflow作为应用系统的一部分,并为之提供对各应用系统有决定作用的根据角色、分工和条件的不同决定信息传递路由、内容等级等核心解决方案。
它是工作流管理系统的核心,工作流引擎对使用工作流模型描述的过程进行初始化、调度和监控过程中每个活动的执行,在需要人工介入的场合完成计算机应用软件与操作人员的交互。另外它的另外一个重要的功能是完成与应用软件及操作人员的交互。
二、工作流类型
因为流模式本质上是对工作流的路径建模,将路径信息都编码到了模型之中。但是在某些时候,业务并不关心路径,而只关心结果,并且不关心结果是如何实现的。
流模式 (Sequential) |
1.适合一个比效机械化的流程 2.在这种流程中,参与者处于一种被动的局面,他必须沿设定的路线一步一步完成。 例1:在MIS系统中,一个操作机器的工作流: (开使->关1闸 –> 关2闸 -> 修理 -> 开2闸-> 开1闸 -> 结束) 在这个工作流中,需要严格按流程操作。而且在[修理]结点处可能还要调用一个修理某类设备的工作流。
例2:比如一个购物的工作流: (开使->浏览->选择->缴费->取货 -> 结束) 在该例中,流程序顺的严格性就显得不是很重要,比如[缴费]与[取货]结点谁先谁后就不是很重要,只要[缴费]与[取货]都完成了就可以结正常[结束]该流程。 对于像这样的业务需求,就可以使用状态机模式
流模式的执行并非完全是顺序的。它们仍然可以接收外部事件或者启动并行任务,在这种情况下,可能会有状态机模式的表现形式。但就其设计与维护方式来说仍是 流模式 |
状态机模式 (State Machine ) |
在状态机模式下,参与者的自主性比效大,工作流更多的是一个提醒的作用 例:一个审批流程:有六个部门批准才能通过,这六个部门的审批行为是独立进行的,不受其他部门结果的影响,可以使用状态机模式,配合规则实现 A.六个部门审批行为是并行模式 B.规则可以使用:全票通过,一票通过,简单多数,绝对多数,额定通过,等 另外状态可以由一种进入到另一种,如上例出现平票状态后,将进入联合听证流程 |