您现在的位置是:首页 > IT基础架构 > 软件与服务 >

工作流管理系统的结构与应用

2009-11-25 21:44:00作者:张翼英 张翼飞来源:

摘要本文介绍了用于企业业务流程管理的工作流的结构和应用,详细地说明了各个阶段的功能实现以及工作流引擎等,最后讨论了工作流在实际实现中的各种应用。 ...

随着计算机在日常工作中的广泛应用,人们的许多工作已经越来越依靠计算机而得以完成,与此同时,各种类型的信息系统也被广泛地使用来支持这些工作,但这些系统基本上是独立运行的,相互之间缺乏必要的交互协作与感知,从而使得它们在协调多个人的活动、以协同完成某个共同的人物方面有着比较严重的不足。作为计算机支持的协同工作(CSCW)研究的一个重要方向,工作流管理的主要目标是通过调用有关的信息资源与人力资源来协调业务过程中的各个环节,使之按照一定的顺序依次进行,从而实现业务过程的自动化。

根据应用软件市场的需求,绝大多数企业级的信息系统建设,所以抽取企业信息系统建设中的共性,构造一个通用的工作流平台来实现对企业有效管理显得十分必要。

工作流(Workflow)就是自动运作的业务过程部分或整体,表现为参与者对文件、信息或任务按照规程采取行动,并令其在参与者之间传递。简单地说,工作流就是一系列相互衔接、自动进行的业务活动或任务。

一个单独的业务流程,其生命周期从几分钟到几天(甚至是几个月)不等,这主要是根据其复杂度以及每一个成员活动的延续时间的长短来决定。同时,每个业务流程的实现方式也大不相同。有的流程是在一个工作组范围内实现的;有的流程却需要在整个企业范围内来实现。尽管存在着这种多样性,在最高层来看,工作流管理系统由三大功能模块构成:

1.工作流建立阶段功能

这期间,通过使用一种或多种系统分析、建模和定义工具,把一个业务流程从现实世界转化为一个形式化的,计算机可以处理的流程模型或者叫流程模板(Tinplate)也可以称为过程定义。

2.运行阶段的流程控制功能

在运行阶段,流程控制功能相当于现实世界与模型世界的桥梁。它解释业已定义完的模型,也就是说根据模型来调度一个流程中不同的子任务(SubTask)并且激活相应的人或应用程序。这流程控制实际上由称为引擎(Engine)的软件模块来完成。

3.运行阶段与完成不同子任务的用户或汀工具的交互

一个流程的子任务通常是由参与人员通过使用一定的IT工具(比如填表)或者涉及信息处理操作(比如用一条新记录更新一个定单数据库)。如果要在不同的子任务之间传送控制信息以及其它的数据,或者要激活一定的应用程序,就必须不断的与流程控制软件交互。

工作流管理系统的基本结构

工作流管理系统(WFMS)在这个一般模型中,有三种类型的部件:

·WFMS:内提供各种功能支持的软件组元

·为一个或多个软件组元使用的各种系统定义和控制数据

·应用程序和数据库

系统中主要部件和数据的作用如下:

1.过程定义工具

过程定义工具被用来创建计算机可以处理的业务过程描述。它可以是形式化的过程定义语言或对象关系模型,也可以是简单地规定用户间信息传输的一组路由命令。

2.过程定义

过程定义(数据)包含了所有使业务过程能被工作流执行服务执行的必要信息。这些信息包含起始和终止条件、各个组成活动、活动调度规则、各业务的参与者需要做的工作、相关应用次序和数据的调用信息等。

3.工作流执行服务(WES)和工作流引擎

工作流执行服务也称为(业务)执行环境,包括一个或多个工作流引攀。工作流引擎是工作流管理系统的核心软件组元。它的功能包括:解释过程定义、创建过程实例并控制其执行、调度各项活动、为用户工作表添加工作项、通过应用程序接口(API)调用应用程序、提供监督和管理功能等。工作流执行服务可以包括多个引擎,不同工作流引擎通过协作共同执行工作流。

4.工作流控制数据

指被工作流执行服务(W王5)和引擎管理的系统数据,例如工作流实例的状态信息、每一活动的状态信息等。

5.工作流相关数据

指与业务过程流相关的数据。工作流管理系统(WFMS)使用这些数据确定工作流实例的状态转移,例如过程调度决策数据、活动间的传输数据等。工作流相关数据既可以被工作流引擎使用,也可以被应用程序调用。

6.工作表和工作表处理程序

工作表列出了与业务过程的参与者相关的一系列工作项,工作表处理程序则对用户和工作表之间的交互进行管理。工作表处理程序完成的功能有:支持用户工作表中选取一个工作项重新分配工作项,通过工作项的完成,在工作想被处理的过程中调用相应的应用程序等。

7. 应用程序和应用数据

应用程序可以直接被工作流管理系统(WFMS)调用或通过应用程序代理被间接调用。通过应用程序调用,WFMS部分或完全自动地完成一个活动,或者对业务参与者的工作提供支持。与工作流数据和相关数据不同,应用数据对应用程序来讲是局部数据,对WFMS的其他部件来说是不可见的。

在工作流管理系统中有如下组件:过程定义工具、工作流执行服务及其应用程序接口(WAPI)、工作流客户应用程序、被调用的应用程序、管理和监控工具,各个组件之间可通过标准的工作流应用程序接口(WPAI)与工作流执行服务进行交互。

工作流管理系统的应用领域

工作流作为一种技术,它涉及到很多种不同的产品领域。以下列出其中几种工作流常用的领域。

文档管理:文档管理技术主要是管理电子文档的整个生命周期。文档的生命周期中包括创建、修改、传送、存档、检索、查询、销毁等活动。在这一系列活动过程中,人们根据与该文档相关的具体规则存取或修改它。在这个过程中就有工作流特性的体现。

电邮件与目录服务:电子邮件为同一个组织内或者不同组织间的个人提供强大的传递和发布信息的功能;目录服务机制不但提供了识别一个Fmail领域内的某一个人的功能,而且还能提供这个人的其他一些信息。所以通过在电子邮件系统中根据不同的电子邮件内容增加不同的路由命令,这些路由命令定义了该邮件的接收者(或参与者)的顺序,使电子邮件系统具有强大的工作流功能特性。

群件(Groupware):群件工业已经开发了很多应用程序来支持和提高一个组内的成员间的交互。最初的时候,很多此类应用程序都是通过存取组公告牌、日志或者计划(Scheduling)等方法来提高一个工作组的效率,并且这种实现将随这应用环境的不同而不同,这种情况在英语中称为Ad hoc。随着这类应用程序的应用范围扩大到面向正式业务的工作组,人们对能提供更加正式并且可控制的过程调度框架的呼声越来越高。工作流技术对于这类要求提供了很好的解决方案。

基于事务的应用(Transaction-basedA pplications):很多年来,人们利用lip监视器或数据库管理软件的事务管理功能实现了很多针对某一类业务的应用程序。基于事务的应用程序有一个明显的特点就是其鲁棒性(Robustness)和支持事物的原子(Atornic)操作特性;然而,这些应用程序往往不把业务流程的逻辑与不同应用程序的工具的激活相分离。逐渐地人们发现,可以利用工作流来控制业务流程,既在恰当的时候激活基于事务的传统的应用程序来完成某一特定业务流程的相应部分。

项目计划支撑软件(Project Support Software):处理复杂的IT应用项目开发的软件(比如说,集成项目支撑环境IPSE)通常在一个项目环境内提供某种形式的工作流功能。这种工作流功有主要指开发任务以及与这些任务相关的其他信息在不同的参与者之间传送。

BPR以及结构化系统设计工具:BPR(Business Process Reengtneenng)工具主要用来对一个企业的核心业务流程进行分析、建模和重定义(Re-Define)。在BPR过程中必然要涉及到一个业务的结构以及支持该业务的信息流。所以一般的BPR工具都带有支持结构化系统开发工具的扩展功能。


(本文不涉密)
责任编辑:

站点信息

  • 运营主体:中国信息化周报
  • 商务合作:赵瑞华 010-88559646
  • 微信公众号:扫描二维码,关注我们