基于web技术的工作流管理系统设计与实现内容摘要:

flow,犹如大多数计算机领域的术语一 样,也是个合成词,是英文单词 work和英文单词 flow 的组合。 Work翻译为任务、工作等, flow则翻译为流程、流动等。 Flow反映的是一种 事物 的动态属性或变化过程, 例如 水的流动被称为水流 ,空气的流动被称为气流 ,还有物料流、资金流等,在抽象领域还有信息流、控制流等 , 因此, 使用 任务、活动以及活动之间的变化过程表示业务流程就被称为工作流。 在企业 实际 应用中,虽然工作流的概念相对于物料流、资金流、信息流等概念要抽象一些,但是工作流从更高的层次上提供了实现物料流、资金流、信息流及其涉及的相关过程与应用的集成机制,从 而使得企业能够实现业务过程继承、业务过程自动化与业务过程的管理。 在工作流概念下实现业务过程集成与业务过程自动化的继承机制是通过定义不同任务之间相互关系的工作流模型(也称为过程模型)来实现的。 在工作流模型中,无论是具体的物料转移动作、实际物理装置的操作动作、还是抽象的信息处理动作与决策过程,都可以用工作流的基本组成元素 —— 任务(也称为活动)来统一地描述。 同样,反映不同任务之间的关系,无论是具体的车间中零件加工顺序关系、办公自动化中的文件批转、还是抽象的决策流之间的关系都可以用工作流的基本组成元素 —— 连接弧来统 一地进行描述。 连接弧反映了对企业业务经营过程的一种控制逻辑,它定义了活动之间的连接关系和执行顺序。 工作流尚没有一个统一的、明确的定义,不同的组织和研究人员对工作流给出了各自的定义: 四川大学硕士学位论文 —— 基于 WEB 技术的工作流管理系统设计与实现 3 定义 1:工作流是一类能够完全或者部分自动执行的经营过程,它根据一系列过程规则,文档、信息或任务能够在不同的执行者之间进行传递与执行。 定义 2:工作流是将一组任务组织起来完成某个经营过程。 在工作流中定义了任务的触发顺序和触发条件。 每个任务可以由一个或多个软件系统完成,也可以由一个或一组人完成,还可以是由一个或多个人与软件系统协作 完成。 任务的 触发顺序和触发条件用来定义并实现任务的触发、任务的同步和信息流(数据流)的传递。 定义 3:工作流是一个用来实施经营过程实践的机制。 定义 4:工作流是经营过程的一种计算机化的表示模型,定义了完成整个过程所需 要 的各种参数。 这些参数包括对过程中每一个步骤的定义、步骤间的执行顺序、条件以及数据流的建立、每一步骤由谁负责以及每个活动所需要的应用程序。 以上 这些工作流的定义,虽然在表述方式上有所不同,但是基本上说明了这样一个问题,即工作流是经营过程的一个计算机实现。 使用工作流作为经营过程的实现技术首先要求工 作流系统能够反映经营过程的如下几个方面问题: 1. 经营过程是什么 ,即由哪些活动、任务组成,也就是结构上的定义; 2. 怎么做 ,即 活动间的执行条件、规则以及所交互的信息,也就是控制流与信息流的定义 ; 3. 由谁来做 ,即 人或者计算机应用程序,也就是组织角色的定义 ; 4. 做得怎样 ,即通过工作流管理系统对执行过程进行监控。 工作流参考模型 随着对工作流产品需求的不断扩大,许多公司纷纷推出了不同的工作流产品。 这些工作流产品都有自己的特点,也有自己的协议和接口标准,它们在不同的应用领域进行了应用。 但是由于工作流管理技术与产品缺乏统 一的标准,这些不同四川大学硕士学位论文 —— 基于 WEB 技术的工作流管理系统设计与实现 4 的工作流产品从术语的定义和使用、系统结构的设计到与应用之间的接口规范上都存在较大的差异,导致这些产品之间、产品与其它应用之间的集成十分困难。 按照对系统开 放 性的要求,这些工作流系统和产品的规范化程度和开放性不够,导致它们之间不能够实现互操作。 工作流管理系统互操作是指两个或多个工作流机之间通讯和协作工作的能力,具有通讯和协作的能力就称为可以互操作,否则就称为不能互操作。 不同工作流管理系统之间不能互操作这种情况给开发商和用户都带来了很大的不方便,也在一定程度上阻碍了工作流管理系统的推广和发展。 为了能够更好的支持企业经营建模、分析和实施,适应世界市场的多元化趋势,需要建立工作流管理系统的相关标准,从系统结构、术语使用、接口实施方面提供标准化与规范化的定义,并以此为基础实现不同工作流产品之间的互操作,方便于其它应用系统的集成。 在建立工作流的相关规范和标准方面, WFMC就是这样的一个国际组织。 它提出了有关工作流管理系统的一些规范,定义了工作流管理系统的结构及其与应用、管理工具和其它工作流管理系统之间的应用编程接口,其 主要 目的是为了实现工作流技术的标准化和开发性,从而支持异构工作流管理系统与产品之间的互 操作,并且使得其它的应用可以使用该结构和定义好的通用 API(应用编程接口)访问不同的工作流管理系统提供的服务,实现与其它应用的快速有效集成。 WFMC 在工作流的相关规范和标准方面做出的主要贡献之一就是提出了一个工作流参考模型( Workflow Reference Model)。 工作流参考模型来源于对普通工作流程序结构的分析,确定结构中的接口,这些接口可以使不同产品在不同的结构层次上协同工作。 所有工作流系统都包含一系列的公共组件,组件间采用一套被定义好的方法进行 协作 ;不同的产品在这些公共的组件中,会表现出不同 的处理能力。 为了实现不同工作流产品间的协同工作,需要在这些组件间制定一套标准的接口和数据交换格式。 通过实现这些标准接口,可以达到产品间的协同工作。 图 1描述了 WFMC提出的工作流参考模型的主要组件和接口。 四川大学硕士学位论文 —— 基于 WEB 技术的工作流管理系统设计与实现 5 图 1: WFMC 工作流参考模型 —— 组件 与接口 过程定义工具 :以计算机能处理的形式进行过程定义,现在的大多数过程定义工具采用了图形方式,过程设计者通过绘图方式来创建过程模型,最后输出一个XPDL 文件,有的过程定义工具还有分析、检测功能,帮助设计者设计出良好的过程模型。 工作流执行服务 :由一个或多个工作流引 擎组成,提供过程实例的执行,为活动进行导航,与外界资源交互完成各项活动,维护控制数据和相关数据等功能。 工作流客户端应用 :提供用户操作工作流管理系统分配来的任务,由工作流任务表管理器和任务操作共同完成。 工作流任务表管理器是一个软件模块,负责管理工作流的任务表,并完成 与 工作流参与者的交互操作。 工作流引擎直接调用应用 :在工作流任务执行过程中,一些不需要人员参与的活动会直接调用一些应用。 在简单的情况下,工作流引擎使用过程模型中定义的活动信息、应用程序所需要的数据来激活外部应用程序;在复杂的情况下采用工具代理的方 式。 工具代理与工作流引擎之间通过专用集成接口来完成数据交换和消四川大学硕士学位论文 —— 基于 WEB 技术的工作流管理系统设计与实现 6 息传递。 系统管理和监控工具 :对工作流在整个组织内的流程情况进行监控,并提供一系列管理功能,实现安全性、过程控制、授权等操作。 典型的功能范围包括用户管理、角色管理、监控管理、资源管理、过程监控管理。 具体如:过程模型的实例化,启动、挂起、恢复、终止过程实例;管理正在执行的过程实例等。 工作流定义转换(接口 1) :在建模或定义工具与运行时期工作流管理软件间的接口。 工作流客户端应用程序接口(接口 2) :客户端工作流应用程序与工作流机之间的通信 API。 应 用程序调用接口(接口 3) :工作流机直接调用应用程序或应用程序代理的 API,是工作流系统同应用系统通信的主要接口之一。 WAPI协作功能接口(接口 4) :工作流机同工作流机之间的通信接口,是构成分布式工作流管理系统的主要功能接口之一。 管理和监控接口(接口 5) :提供对工作流机状态以及工作流运行实例的监控和管理的接口。 工作流管理系统 工作流管理是在迅速发展的技术,它在不同的行业已经得到了应用。 工作流管理技术与工作流管理系统得到广泛重视的一个重要原因是它能够在信息技术的支持下实现基于人工和计算机活动组成的业 务过程的自动化,它可以实现不同自动化程度(人工操作、半自动化、自动化过程)的规范化业务管理功能,具有良好的适应性。 因此,虽然工作流管理最早是在办公自动化领域开始进行应用的,它在工业领域的应用同样取得了显著的成果,尤其是在制造领域得到了广泛的应用。 工作流管理系统 —— Workflow Management System(简称 WFMS), 在工作流定义 基础上,具有如下定义。 四川大学硕士学位论文 —— 基于 WEB 技术的工作流管理系统设计与实现 7 定义 1:工作流管理系统是一个软件系统,它完成工作流的定义和管理,并按照在计算机中预先定义好的工作流逻辑推进工作流实例的执行。 定义 2:工作流 管理系统是支持企业经营过程高效执行并监控其执行过程的计算机软件系统。 根据工作流管理系统的定义,一个工作流管理系统应该提供如下的功能: 1. 定义、实现和管理工作流的运行; 2. 与工作流执行者,即人或应用系统,进行交互; 3. 推进工作流 实例 的执行; 4. 监控工作流的运行状态。 需要指出的是, 工作流管理系统不是企业的业务系统。 在很大程度上,工作流管理系统为企业的业务系统运行提供 了 一个软件支撑环境,非常类似于在单个计算机上的操作系统。 只不过工作流管理系统支撑的范围比较大、环境比较复杂而以,所以也有人称工作流管理系统是业务操作系 统。 在工作流管理系统的支撑下,通过集成具体的业务应用软件和操作人员的界面操作,才能够良好地完成对企业经营过程运行的支持。 所以,工作流管理系统在一个企业或部门的经营过程中的应用过程是一个业务应用软件系统的 集成 与实施过程。 工作流管理系统可以用来定义与执行不同覆盖范围(单个工作者、部门、全企业、企业间)、不同时间跨度(分钟、小时、天、月)的经营过程。 这完全取决于实际应用背景的需求。 按照经营过程以及组成活动的复杂程度的不同,工作流管理系统可以采取许多种实施方式,在不同的实施方式中,所应用的信息技术、通信技术和支 撑系统结构会有很大的差别。 工作流管理系统的实际运行环境可以是在一个工作组内部或者在全企业的所有业务部门。 四川大学硕士学位论文 —— 基于 WEB 技术的工作流管理系统设计与实现 8 工作流管理系统架构 图 2: WFMC 提出的通用工作流管理系统产品架构 工作流管理系统 组成部分 图 2 为 WFMC 提出的工作流 管理系统产品架构。 这个架构 给出了抽象的工作流管理系统的功能组成部件和接口,它能够满足工作流管理系统和产品应该具有的主要功能,可为实现工作流产品之间的互操作提供公共的基础。 从图中可以看出,工作流管理系统主要由三部分组成: 四川大学硕士学位论文 —— 基于 WEB 技术的工作流管理系统设计与实现 9 软件构件 :完成工作流管理系统不同组成部分功能的实 现,包括过程建模工具,工作流引擎,任务表管理器和用户界面; 系统控制数据 :工作流管理系统中的一个或多个软件构件使用的数据,包括过程定义,组织 /角色模型数据,工作流控制数据,工作流相关数据,任务表; 应用与应用数据 :对于工作流管理系统来说,它们不是工作流管理系统的组成部分,而是属于外部系统和数据, 它们 被工作流 管理 系统调用来完成整个 或 部分工作流管理的功能,如被工作流管理系统调用的外部应用以及这些应用操作的数据。 工作流管理系统 组件 说明 过程 建模 工具 :过程建模工具 被用来创建计算机可处理的业务过程描述。 它 可以是形式化的过程定义语言或对象关系模型, 也可以是简单地规定用户间信息传输的一组路由命令。 组织 /角色模型 :包含了组织结构和组织中角色的信息。 这些信息往往与流程定义信息紧密相关。 工作流执行系统和工作流引擎 :工作流执行系统也称为 过程执行环境,包括一个或多个工作流引擎。 工作流引擎是 WFMS的核心软件。 它的功能包括:解释过程定义;创建过程实例并控制其执行;调度各项活动;为用户工作表添加工作项;通过应用程序接口( API)调用应用程序;提供监督和管理功能等。 工作流执行子系统可以包括多个工作流引擎,不同工作流引擎通过 协作共同执行工作流。 工作流控制数据 :被工作流执行系统和工作流引擎管理的系统数据,如工作流实例的状态信息、每一活动的状态信息等。 工作流相关数据 :指与业务过程流 程 相关的数据。 WFMS使用这些数据确定工作流实例的状态转移,例如过程调度决策数据、活动间的传输数据等。 工作流相关数据既可以被工作流引擎使用,也可以被应用程序调用。 是一段工作流引擎和应用系统共享的数据区。 工作列表 :流程执行中,当需要用户的交互时,工作流引擎便将工作项放置到由四川大学硕士学位论文 —— 基于 WEB 技术的工作流管理系统设计与实现 10 任务表管理器 管理的工作列表中,通过 任务表管理器 实现与用户的交互。 应用程序和应 用数据 :应用程序可以直接被 WFMS 调用或通过应用程序代理被间接调用。 通过应用程序调用, WFMS部分或完全自动地完成一个活动,或者对业务参与者的工作提供支持。 与工作流控制数据和相关数据不同,应用数据对应用程序来讲是局部数据,对 WFMS的其它部件来说是不可见的。 Petri 网 Petri网是一个图形化的数学建模工具。 一方面可以利用图形化的方式来描述工作流过程,另一方面可以通过形式。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。