工作流引擎

 

工作流引擎是 BOS 系统的一个重要组件。它可以根据客户具体的业务逻辑,来定义工作流模型。整个应用程序就根据所定义的流程来运行。它把应用系统模块和工作流程分开。当流程发生变化,只需修改流程模型,具体的应用程序无需修改。
  
  参考wfmc 标准,我们把工作流分成几个模块。
  
  ·流程定义模型
  ·用户端
  ·工作流引擎
  ·建模工具
  ·组织架构
  
  在虚线框中代表工作流的服务器端。它对于用户是透明的。用户通过工作流引擎所提供的客户端来对工作流引擎进行操做。客户端包括建模工具,管理工具和任务列表。各模块之间的关系如下图
  
   
  
  工作流的操作可以分为,建模阶段(Process Design&Definition)和运行阶段(Run Time). 运行阶段又可分为工作流引擎端和客户端。
  
  客户首先通过建模工具,建立一套工作流的模型定义(Process definition)。工作流引擎(Workflow Enactment Service)根据模型所提供的信息,把具体任务交给用户来完成。用户在登入后,会发现有一项新的任务在他的任务列表中。在他选择执行后,预先设定的应用程序将被激活。在执行应用程序的过程中,所调用的应用程序会和工作流引擎交换数据。告诉工作流引擎目前运行的状态。当他完成任务后,工作流引擎得到反馈,将按流程把任务交给下一个人,直到完成整项工作。
  
   
  
   我们将通过一个简单的例子,来解释工作流引擎的作用
  
  上面是一个假想的销售流程图。任何工作流程图都包含起始节点和结束节点。起始节点可以是单独的一个节点,也可以隐含在一个任务节点中。在上图中,线索就是一个起始节点。用户得到一个线索后,第一步是输入线索。因为下一步是和客户联系(contact customer),需要由销售代表来完成,而销售代表(sales rep)有多个,工作流引擎将把任务分配给销售部的经理。由销售部经理把任务分配给某个销售代表。这个销售代表就会在他的任务列表中看到这个任务。当他联系了客户后,发现这个客户有可能买我们的产品,就把相关信息输入到数据库重。结束了这个环结的工作。工作流引擎就会把任务传给下一个环节。如果客户不感兴趣,就转移到结束节点。此工作流程就结束。
  
  下一个环节是建立销售计划(sales plan),需要市场部经理来做。因为市场部经理只有一个,就把任务直接分配给市场部经理(marketing manager) Marketing manager 做出销售计划后,需要公司的CEO CFO来审批。当两位经理都对此做出审批后,将把信息反馈到 sales manager. 假设CEO 的评审没有通过,销售经理需要修改 sales plan, 再进行审批,直到通过为止。下一个环节是拜访客户。如果一切顺利,就可得到定单,整个流程结束。以上的例子是一个假想的例子,但它反映了工作流引擎的一些重要功能
  
  1. 用户看到的只是自己的任务列表。当他完成了这项任务后,由工作流引擎根据流程,把任务分配给下一个环节的负责人。
  2. 每一个任务都由一个角色来完成,由工作流引擎,根据组织架构,决定具体由谁来做。
  3. 有些过程(审批)需要重复进行,直到通过。
  4. 有些过程(审批)需要所有的前置任务(CEO review, CFO review)都完成,才进入下一个阶段。
  5. 有些过程不需要人来操作,比如,审批节点自动等待 CEOCFO 都审批完后,把结果反馈到市场部经理。
  
  工作流引擎对于用户来说是透明的,用户通过它的客户端来对它进行操作。客户通过建模工具来建立模型,通过任务列表来知道自己当前的任务。通过管理工具来对工作流程进行维护。

你可能感兴趣的:(工作,manager,workflow,工具,任务,工作流引擎)