工作流的概念起源于生产和办公自动化领域。它是针对日常生活中具有固定程序的活动而提出的一个概念。提出的目的是通过将工作分解成定义良好的任务和角色,并按照一定的规则和过程来执行这些任务并对它们进行监控,以达到提高办事效率,降低生产成本,提高企业管理水平和企业竞争力的目标。
1.工作流的基本概念和定义
不同的研究者和产品供应商从不同的角度给出了工作流的定义,以下给出了几种具有代表性的定义:
工作流管理联盟给出的定义是,工作流是一类能够完全或者部分自动执行的业务流程,它根据一系列的过程规则,使得文档、信息或任务能够在不同的执行者之间传递与执行。
工作流是将一组任务组织起来完成某个业务流程。在工作流中定义了触发顺序和触发条件。每个任务可以由一个或多个软件系统完成,也可以由一个或一组人完成,或由人和系统协作完成。触发顺序和触发条件定义并实现了任务的触发,任务的同步,信息流的传递。
工作流是业务流程的计算机化的表现模型,定义了完成整个流程的所需的各种参数。包括步骤的定义,步骤的执行顺序和条件,数据流的建立,每一步骤由谁负责以及每个活动所需的应用程序。
以上这些概念虽然表述方式略有不同,但都说明了一个基本问题,即工作流是业务流程的一个计算机实现,而工作流管理系统则是这一实现的软件环境。
2.工作流管理系统
工作流管理系统是一个软件系统,它完成工作流的定义和管理,并按照预先定义好的工作流逻辑推进工作流实例的执行。它提供了以下三种功能:
A.建立阶段:完成工组流和其他相关活动的流程定义和建模功能。
B.运行阶段:
实例化与控制功能:在一定的运行环境下,执行工作流过程,并完成每个过程中活动的排序和调度。
人机交互功能:实现过程执行中用户与应用之间的交互。
3. 过程建模工具
流程建模工具以计算机能够处理的形式进行流程定义。它应该输出一个能被工作流引擎解释并执行的流程定义,涉及到的名词有:
工作流定义:诸如工作流模型名称,版本号,启动和终止条件等。它反映了该流程的目标。
活动:活动名称,活动类型(子流程等),活动的前后条件,调度参数(最长等待时间),工作流引擎位置等。它反映了该流程的任务和需要执行的操作。
转换条件:为过程的推进提供导航。包括flow condition、execution condition和notification condition。它反映了该流程的业务规则和操作顺序。
工作流相关数据:包括数据名称,类型和数据值。它和转换条件共同成为工作流推进的依据。
角色:包括角色名称,组织实体等。它反映了参与该流程的人员和组织单位。
需要激活的应用程序:包括应用程序的名称,类型,路径及运行参数等。它反映了完成该流程所需的工具。
4.工作流引擎
工作流引擎是一个为工作流实例的执行提供运行环境的软件,是工作流执行服务的核心。主要完成如下功能:
对过程定义进行解释;
控制过程实例的状态转换;
控制过程实例各个活动间的转换;
维护工作流控制数据和相关数据;
提供支持用户操作的接口;
提供支持激活外部应用程序的接口;
提供对工作流执行的监控和管理;
5.客户端应用
工作流管理系统客户端功能是指用户操作工作流管理系统分配的任务和活动的功能。它由工作流任务表管理器和用户操作共同完成。工作流任务表是指分配给一个特定用户处理的由任务项组成的队列。工作流任务表管理器负责管理工作流任务表,并与用户操作进行交互。
©2023 AlphaFlow流程云 杭州微宏科技有限公司 版权所有 ICP备案号:浙ICP备18039265号-1