什么是工作流(Workflow)
- 它是针对平时工作中的业务流程活动而提出的一个概念,目的是根据将工作分解成定义良好的任务或角色,根据一定的原则和过程来实施这些任务并加以监控,从而达到提高效率、控制过程、提升客户服务、增强有效管理业务流程等目的。
- 工作流管理联盟(WfMC)对工作流的定义为:工作流是一类能够完全或者部分自动执行的业务过程,根据一系列过程规则,文档、信息或任务能够在不同的执行者之间传递、执行。
生活中常用的流程
-
分析:
– 数据:设置请假单(请假时间、原因等)、填写请假单,跑流程
– 参与者、角色(role)
申请人、班主任、年级主任、校长
– 传递参数 -
开发:(没有用工作流引擎框架)
– 参与者:状态 (status):来管理请假单的状态(通过修改状态处理当前流程)
– 申请人(1:申请,2:提交)–>班主任(3:不同意,4:同意)–>年级主任(5:不同意, 6:同意) -->校长(7:不同意,8:同意) -
没有工作流引擎遇到的问题
– 假如工作流要改,那么改起来就相当麻烦了
工作流概念
- 定义工作流:包括定义具体的活动、规则(流程)
- 执行工作流:安宅哦流程定义的规则去执行,并且有多个参与者控制
常见的开源工作流引擎
- osWorkFolow(小型的)、JBPM(Java Business Process Management)、activiti工作流(activiti5是基于JBPM4的开源工作流系统,与Alfresco的集成增加了其流程可视化与管理能力,同时通过创新的Activiti Cycle协作组件支持流程相关人员之间的协调,最后,它加强了集成能力)