工作流引擎

工作流引擎 
 当今社会分工越来越细,在一个单位内部也越来越强调专业化,大部分工作都需要多个部门和员工合作完成。一个制度良好的单位往往对各种工作的工作流程以文件的形式固定下来,即使是管理不太正规的单位也有约定俗成的工作步骤。这种工作流程保证了一件任务能按预定的顺序从起点流向终点,并且在需要的时候可以跟踪、查询和统计。工作流包括以下几个要素:
实体(Entity) :是工作流的主体,是需要随着工作流一起流动的物件(Object)。例如,在一个采购申请批准流程中,实体就是采购申请单;在公文审批流程中,实体就是公文。
参与者(Participant) :是各个处理步骤中的责任人,可能是人,也可能是某个职能部门,还可能是某个自动化的设备;
流程定义(Flow Definition) :是预定义的工作步骤,它规定了实体流动的路线。它可能是完全定义的,即对每种可能的情况都能完全确定下一个参与者,也可能是不完全定义的,需要参与者根据情况决定下一个参与者;
工作流引擎(Engine) :是驱动实体按流程定义从一个参与者流向下一个参与者的机制
    可以看出,前三个要素是静态的,而第四个要素是动态的,它将前三者结合起来,是工作流的核心组成元素。

为什么需要电子化的工作流(eWorkFlow)?
    手工处理的工作流主要有以下几个缺点:

  • 不能及时得到处理 一个步骤完成后必须将实体物理地转移给下一个参与者,当工作量增大时,很难分清哪些是重要而需要及时处理的,甚至经常出现上一个步骤已经完成了,而下一个步骤还不知道的情况;
  • 无法跟踪 传统的手工操作要求有一个人自始至终地跟着单子(比如采购申请单)走,否则流程中的任何一个人也无法知道一项任务当前的处理位置,当出现停顿时甚至无法知道该找谁解决;
  • 效率不高 很多实际上可以并行处理的步骤(例如公文审批过程中的会签),在手工处理的时候,只能一个接一个的串行处理;
  • 缺乏分析功能 流程是人制定的,是否适合实际情况只能通过实际工作检验。但手工处理无法统计各个环节的处理效率,因此对流程的评估都是大致的,凭感觉的,无法量化,对流程的改造缺乏科学的统计数据做基础。
    通过采用先进的信息技术,以上问题可以迎刃而解。软件的力量,是把繁杂而没有条理的工作,分门别类地整理出来,给每个人一个清楚的视图,及时了解当前的工作状态,易于跟踪和查询。同时强大的统计分析功能便于从海量的数据中找出人工统计所无法发现的规律,并据此做出正确的决策。

 

工作流(Workflow)就是工作流程的计算模型,即将工作流程中的工作如何前后组织在一起的逻辑和规则在计算机中以恰当的模型进行表示并对其实施计算。工作流要解决的主要问题是:为实现某个业务目标,在多个参与者之间,利用计算机,按某种预定规则自动传递文档、信息或者任务。 工作流管理系统(Workflow Management System, WfMS)的主要功能是通过计算机技术的支持去定义、执行和管理工作流,协调工作流执行过程中工作之间以及群体成员之间的信息交互。工作流需要依靠工作流管理系统来实现。

工作流系统的主要组成部分
----1.过程定义工具

----过程定义工具被用来创建计算机可处理的业务过程描述。它可以是形式化的过程定义语言或对象关系模型,也可以是简单地规定用户间信息传输的一组路由命令。

----2.过程定义

----过程定义(数据)包含了所有使业务过程能被工作流执行子系统执行的必要信息。这些信息包括起始和终止条件、各个组成活动、活动调度规则、各业务的参与者需要做的工作、相关应用程序和数据的调用信息等。

----3.工作流执行子系统(WES)和工作流引擎

----工作流执行子系统也称为(业务)过程执行环境,包括一个或多个工作流引擎。工作流引擎是WFMS的核心软件组元。它的功能包括:解释过程定义;创建过程实例并控制其执行;调度各项活动;为用户工作表添加工作项;通过应用程序接口(API)调用应用程序;提供监督和管理功能等。工作流执行子系统可以包括多个工作流引擎,不同工作流引擎通过协作共同执行工作流。

----4.工作流控制数据

----指被WES和工作流引擎管理的系统数据,例如工作流实例的状态信息、每一活动的状态信息等。

----5.工作流相关数据

----指与业务过程流相关的数据。WFMS使用这些数据确定工作流实例的状态转移,例如过程调度决策数据、活动间的传输数据等。工作流相关数据既可以被工作流引擎使用,也可以被应用程序调用。

----6.工作表和工作表处理程序

----工作表列出了与业务过程的参与者相关的一系列工作项,工作表处理程序则对用户和工作表之间的交互进行管理。工作表处理程序完成的功能有:支持用户在工作表中选取一个工作项,重新分配工作项,通报工作项的完成,在工作项被处理的过程中调用相应的应用程序等。

----7.应用程序和应用数据

----应用程序可以直接被WFMS调用或通过应用程序代理被间接调用。通过应用程序调用,WFMS部分或完全自动地完成一个活动,或者对业务参与者的工作提供支持。与工作流控制数据和相关数据不同,应用数据对应用程序来讲是局部数据,对WFMS的其他部件来说是不可见的。

你可能感兴趣的:(工作流引擎)