工作流简介
工作流(Workflow )是“在部分或整个业务流程的计算机应用环境中自动化”,主要是“根据预定义规则在多个参与者之间传递文档、信息或任务”,从而实现预期的业务目标一般而言,过程是指多人协作以完成某事的步骤,工作流程是将该步骤形成为计算机能够理解的形式。
工作流要解决的主要问题是,为了实现业务目标,在多个参与者之间使用计算机按照规定的规则自动传递文档、信息或任务。
工作流管理系统(wfms )是一个软件系统,它完成工作流的定义和管理,并根据系统中预定义的工作流规则运行工作流实例。 工作流管理系统为企业业务系统的运行提供软件支持环境,而不是企业业务系统。 wfmc workflow management Coalition将工作流管理系统定义为通过执行计算出的流程定义来支持特定业务流程的软件系统。 工作流管理系统用于定义、管理和运行工作流。
工作流广泛应用,并用于多种以任务为导向的系统,如OA、CRM、ERP、ECM和BI。 企业APP应用程序提供了许多产品或平台集成工作流引擎,用于处理在系统运行时启动的业务流程。
工作流总是以任务的形式驱使人处理业务,或者启动业务系统自动完成工作。 有了工作流引擎,你就不用一直等待别人的工作进展。 坦率地说,只需要关心系统首页上的待办任务数量,系统会提醒您目前需要处理多少待办任务。
采用工作流管理系统的好处:
1 )增强系统灵活性,适应业务流程变化
2 )实现更好的业务流程控制,提高客户服务质量
3 )降低系统开发和维护成本
工作流生命周期
完整的工作流生命周期经过五个步骤,并且是重复的。
定义:工作流的生命周期始终从流程定义开始。 此阶段的任务主要是收集业务需求并将其转换为流程定义。 通常由业务需求人员完成,由开发人员加工并转换为计算机可以识别的流程定义。
发行版:开发人员将各种资源打包,并在系统管理(平台)中发行流程定义。 具体的流程引擎包括流程定义文件、自定义表单和任务侦听类。
运行:特定流程引擎(如Activiti )根据预定义的流程处理路线以任务驱动运行业务流程。
监视:此阶段取决于执行阶段。 业务代表收集每个任务(Task )的结果,并根据结果进行适当的处理。 例如,在办公用品购买过程中,在得到领导者批准后,购买者根据申请书外出购买。
优化:在此阶段,完整的流程将结束,您可能需要满足或优化业务需求。 另外,在不良情况下,需要重新设计过程不结束而异常结束。 优化和设计需要在这个阶段处理。 根据整个流程的执行结果分析问题的根本原因,并在此基础上进一步改进,重新开始新的周期。
工作流引擎
工作流引擎是将工作流作为APP应用系统的一部分,向每个APP应用系统提供基于角色、分工、条件的不同来确定信息传递路径、内容级别等的核心解决方案。
例如,系统开发最重要的一部分是基于业务逻辑开发符合实际需要的程序逻辑,以确保稳定性、可维护性和灵活性,而不是与系统接口和数据库进行信息交换。
BPM介绍
业务流程管理。 它是一种全面的管理模式,可整合各种企业业务流程,实现跨APP、跨部门、跨合作伙伴、跨客户的企业运营。
BPM是为了达到一定的经营目的而执行的一系列逻辑相关活动的集合。
50px;”>BPM最早是由工作流和企业应用集成(Enterprise Application Intergration)逐步融合而发展起来的。随着时间的推移,BPM的定义范围逐步扩展,不仅用来满足无纸化办公需求,现在BPM是一种企业集成技术,作为对面向服务系统架构SOA( Service-Oriented Architecture)、企业应用集成EAI (Enterprise Application Integration)、企业服务总线ESB( Enterprise Service Bus)的补充。
BPM通常以Internet方式实现信息传递、数据同步、业务监控和企业业务流程的持续升级优化。
BPMN2.0 概述
业务流程模型注解(Business Process Modeling Notation – BPMN)是 业务流程模型的一种标准图形注解。这个标准是由对象管理组(Object Management Group – OMG)维护的。
BPMN定义了业务流程图,其基于流程图技术,同时对创建业务流程操作的图形化模型进行了裁减。业务流程的模型就是图形化对象的网图,包括活动(也可以说工作)和定义操作顺序的流控制。
BPMN2.0 规范定义了业务流程的符号以及模型,并且为流程定义设定了转换格式,目的是为了让流程的定义实现可移植性,那么用户可以在不同的供应商环境中定义流程,并且这些流程可以移植到其他遵守 BPMN2.0 规范的供应商环境中。
BPMN2.0 元素
BPMN2.0 的目的是建立简单的并且易懂的业务流程模型,但是同时又需要处理高度复杂的业务流程,因此要解决这两个矛盾的要求,需要在规范中定义标准的图形和符号。BPMN中定义了 5 类基础的元素分类:
流对象(Flow Objects):在一个业务流程中,流对象是用于定义行为的图形元素,主要有事件(Events)、活动(Activities)和网关(Gateways)三种流对象。
数据(Data):主要有数据对象(Data Objects)、数据输入(Data Inputs)、数据输出(Data Inputs)和数据存储(Data Stores)4 种元素。
连接对象(Connecting Objects):用于连接流对象,主要有 4 种连接流对象的方式,包括顺序流(Sequence Flows)、消息流(Message Flows)、关联(Associations)和数据关联(Data Associations)。
泳道(Swimlanes):泳道提供了有 2 种途径组织基础的模型元素,分别是池(Pools)和道(Lanes)。
制品(Artifacts):制品主要用于为流程提供附加信息,当前制品包括组(Group)和注释(Text Annotation)。
以上的元素分类以及其下面的元素,均是 BPMN 规范中元素的组成部分,每个对象均有自己对应的图形,以下表格为各个元素的图形及其描述。
元素描述事件(Events)用于描述流程中发生的事件,事件会对流程产生影响,事件会被触发或者会产生结果。活动(Activities)活动是工作流中一个通用的术语,活动包括任务(Task)和子流程(Sub-Process)。网关(Gateways) 网关主要用于控制流程中的顺序流的走向,使用网关可以控制流程进行分支与合并。顺序流(Sequence Flow)顺序流显示流程将会执行哪个活动。消息流(Message Flows)消息流主要用于显示消息在流程参与者之间的传递情况。关联(Association)主要用于连接流程元素及其制品(流程信息)。池(Pool) 存放道的容器。道(Lane)用于区分流程参与人的职能范围。数据对象(Data Object) 数据对象主要表示活动需要的或者产生的信息。消息(Message) 消息主要用于描述流程参与者之间的沟通内容。组(Group) 主要用于存放一些流程信息,包括流程文档、流程分析信息等。注释(Text Annotation)主要为阅读流程图的人提供附加的文字信息。