工作流技术研究

2024-07-03 版权声明 我要投稿

工作流技术研究(推荐8篇)

工作流技术研究 篇1

标签:工作流管理系统 工作流参考模型 杂谈 分类:工作流

工作流技术从起源到现在已有三十年的发展历史,为了规范工作流技术的管理,1993年成立了工作流管理联盟(WfMC)。WfMC统一了工作流的定义,制定了工作流产品结构和工作流参考模型等一系列的标准。本文针对工作流及其参考模型作简单的介绍。

首先,先了解一下工作流的相关定义。

一、工作流相关定义

定义1 工作流(Workflow):工作流的概念定义很多,其中被广泛引用的是工作流管理联盟关于工作流的定义,该组织为工作流管理系统的相关术语、体系结构及应用编程接口等方而制定了一系列的业界标准。工作流管理联盟给出的工作流定义是:全部或者部分,由计算机支持或自动处理的业务过程,它已根据一系列过程规则、文档、信息或任务能够在不同的执行者之间进行传递与执行。工作流是指整个或部分经营过程在计算机支持下的全自动化或半自动化。工作流是企业中各种流的载体,它带动了信息流、物料流、资金流的流动,并决定了它们的流速和流量。通过工作流,考察信息、物料、资金等随过程的变化情况,从而可以方便地对一些关键指标进行跟踪和计算。其文

档、信息或任务可以遵循一组程序上的规则从一个参与者传送到另一个参与者。

定义2 工作流管理:工作流管理(Workflow Management, WFM)是人与计算机共同工作的自动化协调、控制和通讯,在计算机化的业务过程上,通过在网络上运行软件,使所有命令的执行都处于受控状态。在工作流管理下,工作量可以被监督,分派工作到不同的用户达成平衡。

定义3 工作流管理系统(WFMS—Workflow Management System):工作流管理系统是这样的一个系统,详细定义、管理并执行工作流,系统通过运行一些软件来执行工作流,它运行在一个或多个工作流引擎上,这些引擎解释对过程的定义,与工作流的参与者(包括人或软件)相互作用,并根据需要调用其他的软件工具或应用。这些软件的执行顺序由工作流逻辑的计算机表示形式(计算机化的业务规则——过程定义)驱动。总体来说,实际企业中运作的工作流管理系统,是一个人与计算机结合的系统。

它的基本功能体现在几个方面:

? 定义工作流,包括具体的活动、规则等。

? 遵循定义创建和运行实际的工作流。

? 监察、控制、管理运行中的业务,例如任务、工作量与进度的检察等。

定义4工作流机:为工作流实例提供运行时期的执行环境的软件服务器或引擎。工作流机能处理:

? 解释过程定义

? 控制过程实例—创建、激活、挂起、终止等

? 为过程的活动导航,可能要包含顺序或者平行的操作、最后时间期限、对工作流相关数据进行解释

? 参与者签名和退出

? 确定任务项目,实现用户意图;提供接口,支持用户交互

? 维护工作流控制数据和工作流相关数据,在应用程序间或者用户间传递工作流相关数据

? 提供调用外部程序的接口,连接所有工作流相关数据

? 提供控制、管理和审查功能

工作流机可以控制过程集、子过程、或通过对象类型的范围、及其属性定义好运行范围的实例。在一个由多个工作流机构成的工作流执行服务器中,要把过程进行划分,分配给工作流机。可以按照过程类型来划分,某个工作流机负责控制相应类型过程;按照功能进行划分,某个工作流机负责控制过程的一些部分,这些部分所需要的用户或者资源,都在此工作流机的控制范围内。也可以按照其他的一些机制来划分。

定义5 业务过程(business process):就是活动的集合,这些活动均关联于特定的托付事项(commitment),为过程的产出增值。相对于“工作流”,业务过程是一个更一般化的统称,而工作流这个词,则已经不能仅从字面含义或原理上去理解,它已经被赋予了更深一层的特定含义——专指基于信息技术规划、运作、管理的业务过程。

定义6 自动与协调:“自动”(automate)是工作流的一个特征,但这主要是指它自动进行的特征,而不是说没有人的参与。工作流实际上是一个人与计算机协调的混合过程,在一个实际的工作流中,通常总有些步骤是人完成的。协调是工作流管理的一个目标或者特征,这包括了人与人、人与计算机,计算机软件之间等多种层面的含义。

定义7 监察与控制:监察(Monitoring)与控制(Contorl)是工作流系统的重要功能与特征。这不仅包括对正在发生的业务过程(工作流),还包括它的定义或改

变(比如BPR的过程)。这是工作流系统带给我们的明显好处之一。定义8 标准化:工作流的概念被明确提出并得到重视的同时,人们就认识到了“标准化”在其中的重要性,有关工作流的标准开发和推广,基本是与“工作流”的开发和推广同步进行的。在这方面目前的权威性机构,是“工作流管理联盟”(Workflow Management Coalition, WfMC)。它成立于1993年8月,目前已拥有 130 余个成员,成员包括工作流产品的供应者、应用者,有关大学和研究机构和个人,是一个国际性的非赢利组织。定义9 工作流与重规划:从逻辑上,对工作流的关注和研究可以看作是对业务过程重规划(BPR)的一种深化。BPR的观点,要求我们将眼光投向实际业务进行的过程,但这个过程应当是什么样的,怎样分析、构造?工作流就是一个具体的、操作性的答案,它可以令我们从神秘的、难以预测和控制的“头脑风暴式”的“艺术的”业务过程创造,变成解析的、技术的、可控制和预测的工程化过程,如此,才真正体现出

re-engineering 中 engineering 的意义。

工作流与 BPR 的概念,已经被几乎所有的研究者联系在一起研究和应用。在这个领域有一个非常活跃的组织,即国际工作流与重规划协会(Workflow And

Reengineering International Association, WARIA)。

工作流管理系统是一个真正的“人—机”系统,用户是系统中的基本角色,是直接的任务分派对象,他或她可以直接看到计算机针对自己列出的“任务清单”,跟踪每一项任务的状态,或继续一项任务,而不必从一个模块退出,进入另一个模块,搜索相应任务的线索。前者是面向功能或对象的,而后者是直接面向用户的。这样,用户的任务

分派和任务的完成状态,可以被最大程度地计算机化和受到控制。

现在的典型工作流产品是客户—服务软件。而日益增长的重要途径是通过万维网界面,它可以令客户或远程的职员更好地参与。工作流的定义经常是借助于图形化

工具,依照业务过程实例的情况定义相应工作的安排。

二、目标领域

使用工作流管理系统的目的之一是作为企业应用系统集成(EAI)的平台。在当前大部分企业级IT架构中,各种各样的异构(heterogeneous)应用和数据库运行在企业内网中。在这些系统被应用到组织时,都有一个清晰的目标。例如,客户管理、文档管理、供应链、订单、支付、资源计划等等。让我们称这些系统为专门应用(dedicated applications)。每一个专门应用都包含它们所支持业务流程的领域知识。这些专门应用中的自动化流程,被拼装到企业中更大的非自动化流程中。每当一个这样的专门应用安装并投入使用,都会带来涉及其他多个应用的新功能需求。企业应用系统集成(EAI)就是通过使用多个专门应用满足软件新需求的方法。有时,这只需要在两个应用之间提供数据通讯的通道。专门应用将很多业务流程硬编码在软件中。可以这么说,在你购买专门应用时,你是购买了一组固定的自动化业务流程。而工作流管理系统是不必事先知道问题域的相关信息的。工作流系统将业务流程描述作为输入并管理流程实例的执行,这使得它比专门应用更灵活(当然你也要花精力编写业务流程的规格化描述)。这就是为什么说工作流系统和专门系统是相互补充的。工作流系统可以用来管理全局的业务流程。如果专门应用支持你所需要的业务流程,那么使用专门应用。在此讨论的工作流系统的第一种使用方式就是:结合所有的专门应用,使用工作流系统构建一个EAI平台。

工作流系统能够发挥很大价值的第二个使用方式是:协助涉及多人相关任务工作流软件的开发。为了达到这个目的,大部分工作流系统都有一个方便的机制,来生成执行任务的表单。对于专注于ISO 或者CMM认证的组织,采用这种方式使用工作流系统能够显著提高生产率。不用将过程用文字的形式写在纸上,工作流系统使你通过

流程定义建模实现过程的自动化(如使用基于Web的应用)。

工作流系统的第三种使用方式是:将工作流引擎嵌入到其他应用中。在前面我们谈到,专门应用将指定问题域相关的业务流程固化在软件中。开发专门应用的公司也可以将工作流引擎嵌入到他们的软件中。在这里,工作流引擎只是作为一个软件组件,对于应用的最终用户是不可见的。将工作流引擎嵌入到应用中的主要原因是为了重用

(不重复发明轮子)和应用软件的可维护性。

三、工作流参考模型

WfMC定义的工作流参考模型包括若干基本部件和5个基本接口(部件之间的箭头表示部件之间的接口),如图1所示。工作流执行服务器周围的接口是 WAPI(Workflow APIs),通过这些接口可以访问工作流系统的服务,这些接口还控制工作流控制软件与其他系统组件间的交互。在5个接口中的许多功能,都是被2个或更多个接口同时拥有的,因此WAPI可以看作是统一的服务接口,可以交叉使用这5个接口来支持工作流管理功能,而不是单独的使用其中某个接口。

首先,我们粗况的了解一下参考模型中的基本部件,然后再对这些基本部件进行简单分析。

(1)过程定义:负责给出工作流程的定义,并以一定的数据格式提供给工作流引擎解释。

(2)工作流执行服务:工作流管理系统的核心,提供了过程实例执行的运行环境。工作流执行服务借助于一个或多个工作流引擎,激活并解释工作流流程定义,用来创建、管理、执行工作流实例。并同外部的应用程序进行交互,完成工作流过程实例的创建执行与管理职能。

(3)管理和监视工具:负责监控工作流的执行,对工作流管理系统中过程实例的状态进行监控与管理,如用户管理、角色管理、审计管理、资源控制等。

(4)工作流客户应用:执行者访问工作流的界面,活动参与者通过这样的应用程序参加工作流活动,获取自己的任务。

(5)工作流引擎:过程定义的解释器,它是工作流执行服务的核心。

(6)被调应用程序:工作流执行服务在过程实例的运行过程中,调用的、用以对应用数据进行处理的程序。在过程定义中包含这种应用程序的详细信息如类型、地

址信息等。

(7)其他工作流执行服务:在大型的工作流管理系统中,工作流可能需要多个工作流引擎共同完成,甚至需要其他异质的工作流执行服务来辅助完成,这涉及到工

作流管理系统之间的互联。

其中过程定义通常包括一些独立的活动步骤,相关的计算机和用户通过一系列的活动步骤操作或制定规则以管理流程的步骤。

参考模型中定义的五类工作流接口。

(1)接口1(工作流定义转换):工作流服务和工作流建模工具间的接口,包括工作流模型的解释和读写操作。

(2)接口2(客户端应用程序接口):工作流服务和客户应用之间的接口,这是最主要的接口规范,它约定所有客户方应用与工作流服务之间的功能操作方法。

(3)接口3(应用程序调用接口):工作流引擎和直接调用的应用程序之间的直接接口。

(4)接口4(工作流机协作接口):工作流管理系统之间的互操作接口。

(5)接口5(管理和监视接口):工作流服务和工作流管理工具之间的接口。

在实际的应用中,很多商用和开源的工作流系统都没有严格遵照这个标准,或者说没有统一。一个原因是WfMC的标准对于很多细节没有明确说明,在实现时各个系统出现了各自的实现。另一个原因是,工作流系统与业务系统关系密切,受业务系统的限制或约束太大,因此支持不同业务的工作流在细节上差异很大,标准不易统一,做

一个通用的工作流系统难度比较大。

3.1过程定义

1过程定义工具(Process Definition Tools)

过程定义是用来创建一个计算机可以处理的形式的过程描述。可能要以形式过程定义语言、对象关系模型、简单的系统、脚本、或者在参与者间进行信息传递的路径集为基础。工作流定义工具,可能作为工作流产品的一部分、也可能作为业务过程分析产品的一部分来提供给用户,作为业务过程分析产品一部分,会有其他的组件来负责处理业务过程的分析或者模型,这时,必须要有兼容的转换格式,与运行时期的工作流软件进行过程定义的相互转换。有许多不同的工具可以用来分析、建模、描述业务过程;这样的工具有很大的不同从非正式的(铅笔和纸)到成熟的、十分专业。工作流模型不关心这些工具的特性,也不关心在过程建立时期他们是如何交互的。在以前指出过,这些工具可以作为工作流产品的一部分来提供,或者一个单独的产品,例如BPR工具集。

有的工作流产品提供了其自己的过程定义工具,从而过程定义一般是保留在工作流产品范围内的,并且可能或者不能被读/写信息的编程接口所访问。而使用单独的过程定义和执行服务器产品,过程定义能够在不同的产品间进行转换,并可以被其他产品访问。

设计活动和最后的过程模型输出,称为过程定义。在运行时期过程定义可以被工作流机解释。

过程分析工具、建模工具和定义工具,都要有在一个组织结构中模拟过程的能力(尽管这不是工作流参考模型规定必须有的)。如果组织模型集成到了这些工具中,那么过程定义将包含组织相关对象。这些都是与系统相关的控制数据,例如角色:活动者间的关系,可能会在过程执行期间被引用。工作流定义转换(接口 1)

在建模或定义工具与运行时期工作流管理软件间的接口,被称为过程定义导入/导出接口。这个接口的特点是:转换格式和API调用,从而支持过程定义信息间的互相转换。这个接口也支持已完成的过程定义间的互相转换,或过程定义的一部分。例如,过程定义的改变或者活动中属性的改变。

使用标准的过程定义格式有很多好处:

首先,把建立阶段与运行时期环境进行了分离,可以使用一个建模工具来产生过程定义,这个过程定义可以作为很多个不同工作流运行时期产品的输入。从而用户

可以单独地选择建模工具和工作流运行时期产品。

其次,可以为几个工作流机输出过程定义,这几个工作流机合作来构成分布式的工作流执行服务器。

WFMC在此部分作了以下两个方面的工作:

(1)提出了一个元模型,可以用来表示过程定义中的对象、对象间的关系和属性。这个元模型为不同的产品间的过程定义相互转换奠定了基础,并形成了一套转换

格式。

(2)工作流系统间或工作流系统与过程定义产品间的API调用,提供了公共的方法来访问工作流过程定义。访问可能是读、读/写或者只写操作,并且操作标准对

象集合(在元模型中定义的对象集合),或者产品自己的对象集合。

3基本元模型(A Basic Meta-Model)

WFMC开发了一个过程定义的元模型。元模型中定义了基本的对象类型集,来满足简单的过程定义相互转换。或者有开发者具体扩展,或者在增加的功能中定义另

外的一致性级别来增加更多的对象类型。

需要为下边的类型定义特殊的属

性:

工作流类型定义(Workflow Type Definition)

? 工作流过程名

? 版本号

? 过程开始/结束条件

? 安全、审查、控制数据

活动(Activity)

? 活动名

? 活动类型

? 进入动作和离开动作

? 其他约束

转移条件(Transition Conditions)

? 执行条件

工作流相关数据(Workflow relevant data)

? 数据名与路径

? 数据类型

角色(Role)

? 名称与组织实体

? 应用程序调用(Invoked Application)

? 类型和名称

? 执行参数

? 本地或者访问路径

在分布式工作流服务器中,可能要在过程定义时,为每个工作流机分配活动,可以作为活动的一个附加属性。过程定义能影响安全性与管理。定义的交换格式,要支持符号命名方案,这些符号可以映射到工作流执行服务器中的实际名称与地址。这种映射可以使用动态地址定位机制来实现(例如,目录服务器),也可以使用其他的外部过程定义机制实现。也有其他的一些行业在相关的方面作研究,例如过程建模和CASE转换工具;WFMC提出的方法也适用与其他行业,预

先定义适当的转换格式。

4访问过程定义的 API(APIs to access Process Definitions)

用来支持访问过程定义数据的API命令集。希望规范中包含下边列出的通用类型功能。命令集应该提供命令操作表,和操作的对象、属性,包括:

建立会话(Session Establishment)

? 连接/断开参与系统间的会话

工作流定义操作(Workflow Definition Operationis)

? 从过程定义库或者其他资源中,获得工作流过程的名称列表

? 选择工作流过程定义,为更多的对象级操作提供会话句柄

? 读/写上层工作流过程定义对象

工作流定义对象操作(Workflow Definition Object Operations)

? 创建、恢复、删除工作流定义中的对象

? 恢复、设置、删除对象的属性

3.2工作流执行服务

1什么是工作流执行服务器

由一个或多个工作流机构成的软件服务器,用来创建、管理、执行工作流实例。应用程序可能会通过WAPI来与这个服务交互。

在模型中,过程与活动控制逻辑间有一个逻辑上的分离,活动控制逻辑构成工作流执行服务器;过程与应用工具间、与终端用户任务间也有一个逻辑上的分离,应用工具和任务建立起对每个相关活动的处理。这种逻辑上的分离,为制定更多的行业标准提供了机会,也为在工作流程序中集成用户具体的应用工具提供了机会。

使用下边两个接口中的一个,就可以使工作流机访问外部资源:

客户端应用程序接口(The client application interface),通过这个接口工作流机可以与任务表处理器交互,代表用户资源来组织任务。然后由任务表处理器负责,从任务表中选择、推进任务项。由任务表处理器或者终端用户来控制应用工具的活动。

应用程序调用接口(The invoked application interface),允许工作流机直接激活一个应用工具,来执行一个活动。典型的是调用以后台服务为主的应用程序,没有用户接口;当执行活动要用到的工具,需要与终端用户交互,通常是使用客户端应用程序接口来调用那个工具,这样可以为用户安排任务时间表提供更多的灵活性。

在分布式的工作流执行服务器中,每个工作流机控制过程执行的一部分,并与这部分过程中的活动所要用到的用户、应用工具进行交互。在分布式的执行服务器中有公共的名称空间与管理范围的,从而过程定义、用户/应用程序的名称在一致的标准下被处理。分布式工作流系统,在工作流机间采用特殊的协议和信息转换格式,来同步工作流机的操作、过程交换和活动控制信息。也许工作流相关数据也要在工作流机间进行传递。在单一的工作流执行服务器中,这些操作都是由开发商自己定义的。

在工作流机间需要一个标准的交换格式,来实现异种产品间的调用。使用接口4,执行服务器可以把活动或者子过程转移到另外一个(异种)执行服务器中执行。在工作流参考模型中,这被称作“工作流机交互(Workflow Engine Interchange)”。

2过程和活动状态变迁(Process and Activity Transitions)

工作流执行服务可以看作是一个状态变迁机器,过程或者活动的实例在响应外部事件、工作流机负责的控制判断后,其状态发生改变。

下图描述了过程实例的基本状态变迁方案:

在上图中,发生状态转移(用箭头表示)来响应WAPI的命令;过程定义中的转移条件满足,也可能发生状态转移。

初始化(Initiated)—过程实例被创建,包括与过程状态相关的日期、工作流相关数据,但是过程还没有满足条件,不能执行。

运行(Running)—过程实例已经执行,过程中的活动如果条件满足就可以执行。

激活(Active)—过程中的一个或者多个活动已经被执行。

挂起(Suspended)—过程实例被静止,并且过程中的活动不能执行,直到过程返回到运行状态。

结束(Completed)— 过程实例满足结束条件;所有的完成后操作都将被执行(例如记录日志、或者统计信息),并且销毁过程实例。

终止(Terminated)— 过程实例在正常结束前被停止;所有的完成后操作都将被执行(例如记录错误信息、或者恢复数据),并且销毁过程实例。

活动是不能被中断的,例如工作流执行服务器一旦开始了一个活动,就不能挂起或者终止这个活动。这就意味着,只有在所有运行中的活动结束后,并且过程返回到运行状态,才能对过程执行挂起、重启、终止等命令。另外,可能需要把几个活动放在一起作为“原子单元”,这些原子单元要执行就全部被执行完,如果中途出现异常则返回到开始点,重新执行。可中断活动的处理办法和原子活动单元的重新启动能力,需要进一步的考虑,这超出了WFMC的初期工作范围。

忽略那些额外的复杂事物,活动实例的基本状态和转移如下图:

一个活动的基本状态有:

初始化—过程实例中的活动已经被创建,但是还没有激活(例如,活动的进入条件没有满足),并且没有任务需要处理。

激活 —创建好的任务,分配这个活动来处理。

挂起—活动实例被静止,并直到活动返回到初始化状态,才能为其分配任务。

结束 —活动实例执行完成。

当然,一个产品也可以实现一些其他的状态类型,或者使用不同基本状态和转移来代表上图中的状态和转移。参考模型没有指定工作流系统的内部行为,但是状态

转移阐明了,API命令集的影响范围的基本观点。工作流应用编程接口与数据交换(Workflow Application programming Interface & Interchange)

WAPI可以被看作是一套由工作流执行服务器支持的API调用和数据交换集合,这个集合在在工作流执行服务器的边界处,负责与其他资源交互。尽管结构中涉及到了WAPI中的5个接口,但是每一个接口中的许多功能都是公共的(即,同时被2个或者多个接口共同拥有)。

WAPI的主要功能由API调用组成。同时在WFMC也定义了接口间的,数据转换格式,例如过程定义。工作流控制,工作流相关数据和工作流应用数据

工作流执行服务器维护内部控制数据,来确定过程实例或活动实例的状态,并支持其他内部状态信息。这种内部控制数据不能被访问,也不能进行转换。但是有些信息内容是要对外提供的,来响应某些特殊操作(例如,查询过程状态等)。同种工作流执行服务器可能在工作流机间交换这些信息,通过使用具体的内部对话。

工作流控制数据—由工作流管理系统和(或)工作流机管理的内部数据。

工作流管理系统使用工作流相关数据来判断转移条件是否满足,并选择下一个要执行的活动。这些数据能被工作流应用程序访问,这些数据也需要通过工作流执行软件在活动间传递。当在同种环境下进行操作时,如果过程的执行要在2个或者多个工作流中进行,那么这些数据就要在工作流机间进行传递;这个过程可能需要名称映射

或者数据转化。

工作流相关数据—工作流管理系统用来判断过程中状态转移是否可以执行的数据。过程实例中的每个活动中可能都需要进行数据操作。因此,工作流模型必须能够在所有的处理活动间的“情形数据”交换。在一些环境中,可能需要情形数据在不同的工具数据格式间进行转换,例如,把文档从一种格式转成另外一种格式。(有的系统中,数据转换是工作流执行服务器来完成的;有的系统中直接把数据转换定义成过程中的一个活动来执行)

工作流应用程序数据—应用程序的具体数据,并且不能被工作流管理系统访问。

工作流应用程序数据不能被工作流执行软件所使用,只与应用程序或者用户任务的执行相关。就像工作流相关数据一样,在同种执行服务器中应用程序数据会在工

作流机间进行传递,来保证活动的正常执行。

应用程序与其需要用到的工作流相关或应用程序数据间的关系,会在工作流定义中说明。在一些情况下,可能是隐含关系(例如,在一些系统中情形数据会作为活动导航的一部分,传递到下一个活动中),然而在其他情况下(例如访问共享对象存储),就需要明确定义对象的名字和应用程序的访问路径。在参考模型中,把前一种情况

称为“直接数据交换”,后一种称为“间接数据交换”。数据交换(Data Interchange)

工作流相关数据和应用程序数据的交换,都需要访问WAPI,来支持在3个运行时期功能中的协同工作:

? 任务表处理器(Interface 2)

? 应用程序调用(Interface 3)

? 工作流机交换(Interface 4)

本节讲述数据交换的基本原理;提出了API命令集,包括从工作流机中接收/返回工作流相关数据的具体调用;并为直接数据交换和间接数据交换定义了,与上述

API命令集不同的命令集。

由Email驱动的工作流系统是一种典型的应用程序数据的直接交换,这样的系统中,应用程序数据物理地在活动间进行传递。这种情况下,不需要明确定义活动与应用程序数据间的关系;应用程序数据作为标准工作流活动导航的一部分进行传递,并且在应用程序调用时在本地直接与程序相关。需要在活动间提供数据格式转换时,应用程序需要定义与之相关的数据类型,可以作为一个属性来定义(这个属性信息可能存放在软件执行环境中,或者能被整个工作流执行服务器访问,例如地址目录)。这样,使用同种工作流应用程序构造的系统,就能够根据每个应用程序所定义的数据类型进行数据转换。需要采用一些协议来传递和保存数据类型信息,例如使用 X.400 对象标识符,或者Internet mail MIME机制。

一些类型的工作流系统(例如,使用共享文档存储实现的),在活动间不能从物理上传递应用程序数据。在这些系统中,应用程序要使用适当的访问路径才能进行数据访问。这样,必须要有统一的访问路径命名方案,必须是有效的访问权限,并且由激活的过程实例来控制访问权限。在这种情况下,如果需要,在建模时,数据格式转换

也可以作为一个活动。

同种系统中可能使用私有的对象命名协定和访问权限,但是异种系统需要一个公共的方案。在异种系统中,在过程定义时必须包含对应用程序数据对象存储的访问

路径,或者在活动间的导航必须包含访问路径的传递。

同种工作流产品进行协调工作,其必须采用相同的应用程序数据交换方法,或者通过一个网关机制进行协作,网关机制通过适当的协议,可以在两种不同的数据交换方法间进行映射,也可以处理对象命名与数据类型转换的不同。以后还需要对这部分进行细化,但有可能制定一个交换标准,来包含上述的两种情况。

工作流应用程序或相关数据交换的方法,都是通过3个接口来处理的;下边列出了这3个接口:

客户端应用程序接口—工作流相关数据可以包含在任务中。工作流相关数据也可以通过共享的对象存储形式来间接传递。

应用程序调用接口—依靠应用程序调用接口进行数据转换,可能需要在调用服务中把数据包含在具体应用程序协议中。激活的工作流应用程序可以使用,读/写工作

流相关数据的API,或者用这些API来构造通用应用程序代理。

工作流机协作接口—与客户端应用程序接口相似,尽管在不同的系统中支持不同的应用程序数据交换方法,但是网关功能的使用,需要在两种方法间进行映射,也

要处理名称问题。

3.3工作流客户应用:

1工作流客户端应用程序(Workflow Client Applications)

任务表处理器是在需要调用人类资源的活动时用来与终端用户进行交互的软件。任务表处理器可以作为工作流产品的一部分提供给用户,也可以由用户自己开发。在其他情况中,工作流可能要与普通的办公系统进行集成,例如Email,来为终端用户提供一个统一的任务管理系统。这就要求在工作流执行服务器与工作流客户端应用程序

间有一个非常灵活的通信机制,来构建各种可能遇到的运行系统。在工作流模型中,通过客户端应用程序与工作流机间的定义良好的接口进行交互。在这个接口中包含任务表—由工作流机分配给用户的任务序列。最简单的情况是,工作流机访问任务表,来把任务分配给用户;任务表处理器访问任务表,向任务表中添加任务项。有许多不同的产品来实现任务表的交互。

任务表中任务项的激活(例如,启动应用程序,连接工作流相关数据),可能是由工作流客户端应用程序或者终端用户控制的。在工作流客户端应用程序与工作流执行服务器间定义了一系列的方法,用来向任务表中添加任务项、从任务表中删除完成的活动、激活临时挂起的活动,等。

任务表处理器也可以调用应用程序,或者直接调用,或者由终端用户调用。通常希望,任务表处理器的应用程序调用范围能够受到运行环境的限制,尽管这样会给

模型带来通用性的限制,但这种情况是一直存在的。

与任务表相关的部分活动的数据,是任务表处理器用来调用应用程序所必须的信息。当应用程序数据是强类型时,在任务表处理器中要存放一个联接,用来实现程序的调用。在其他情况中,在任务表处理器与工作流机间要进行完全的应用程序名称和地址信息的交换;这时,工作流客户端应用程序也可能实现一些应用程序调用接口(接

口3)中的功能,来获得必要的信息。

任务表中可能要包含一个过程中的几个不同实例的相关任务,或者包含几个不同过程中的一个共同活动项。一个任务表处理器可能要与几个不同的工作流机、几个不同的工作流执行服务器进行交互。(按照每个产品的实现,为每个过程单独维护一个物理上分开的任务表,或者任务表处理器把几个不同的任务表联合到一起,呈现给终端

用户)

因此,客户端工作流应用程序与工作流机间的接口必须十分灵活,来满足下边的几方面功能的实现多样性:

? 过程和活动表示符

? 资源名和地址

? 数据引用和数据结构

? 可选择的通讯机制 工作流客户端应用程序接口(接口 2)

满足上述需求的方法,在标准API集后,可以为从工作流应用程序到工作流机和任务表的访问提供一致的形式,而不管产品的实现特性。

API与其参数可以映射到几个不同的通信机制上,来适应各种不同的工作流实现模型。

WFMC在其文档中,分开发布API规范;下边是对客户端应用程序API使用的一个概述,分成几个不同的功能。提供了对单独或者多个过程活动实例的操作命令,就像任务表一样。

建立会话(Session Establishment)

? 连接/断开参与系统间的会话

工作流定义操作(Workflow Definition Operations)

? 对工作流过程定义名称或者属性的恢复/查询功能

过程控制功能(Process Control Functions)

? 创建/开始/结束一个过程实例

? 挂起/唤醒一个过程实例

? 在过程实例或活动实例中强制一个状态发生改变

? 查询过程实例或活动实例的属性

过程状态功能(Process Status Functions)

? 打开/关闭过程实例或活动实例的查询,设置过滤标准

? 获取过程实例或活动实例的详细信息

? 获取具体过程或活动的详细信息

任务表/任务项处理功能(Worklist/Workitem Handling Functions)

? 打开/关闭任务表查询,设置过滤标准

? 获取任务表中的项目

? 通知选择/重分配/结束一个任务项

? 查询任务项属性

过程管理功能(Process Supervisory Functions)

? 改变过程定义或者它的实例的运行状态

? 改变某种类型的所有过程实例或活动实例的状态

? 为某种类型的所有过程实例或活动实例的属性赋值

? 终止所有过程实例

数据处理功能(Data Handling Functions)

? 恢复/返回工作流相关或应用程序数据

应用程序调用(Application Invocation)

? 上边对功能的概括,为支持任务表处理器对应用程序调用提供了基础。应用程序调用功能的一些命令是与客户端应用程序环境相关的。

? 有些产品可以只实现全部WAPI的一部分;以后会给出进一步的考虑,定义一致性级别,来满足市场中不同的产品间的,不同的协作需要。

3.4被调应用程序:

1应用程序调用(Invoked Applications)

所有的WFM产品都没有足够的逻辑单元,知道如何调用所有的应用程序,这些应用程序存在异种的产品环境中。这就需要,能够处理在所有平台下和网络环境中进行调用的逻辑,并需要能使用公共格式和编码进行应用数据或相关数据传递的方法。

然而,许多工作流系统能够使用了更多受限制的应用程序,特别是那些采用强制数据类型和直接与应用程序相连的系统。在其他情况中,应用程序对操作的调用,可能是通过标准的交换机制来实现的,例如OSI TP协议或者X.400。一些实现使用了“应用程序代理(Application Agent)”,把这些在在标准接口之后的各种方法包含在工作流执行服务器中。也有可能开发“Workflow enabled”应用工具,这种工具使用标准的API集来与工作流执行服务器进行通信,来接收应用程序数据、信号和响应活动事件等。这些API可以被应用工具直接调用;也可以被应用程序代理过过程调用,作为与其他应用程序(不包含任何工作流技术的程序)交互的前端。应用程序调用接口(接口 3)

下边是接口3的结构,“工作流”类型的应用程序或应用程序代理,可以直接使用这个结构。

在简单的情况中,工作流机在本地处理应用程序调用,使用过程定义中的信息来确定,活动的性质、将要调用的应用程序的类型和所需的数据。被调用的应用程序可能存储在工作流机中,或者与工作流机一同存储在相同的平台下,或者存放在一个独立的网络访问的平台中;过程定义中有足够的应用程序类型和寻址信息(工作流机的特殊需求),来实现应用程序调用。在这种情况下,应用程序命名与寻址的协定是处于工作流机与过程定义之间的。

应用程序调用API的详细语法、语义作为WFMC规范的一部分给出。操作覆盖了一些不同的基本接口,包括上表中的一部分,其中一些操作是同步的,一些是异步的。API的操作可以是单线程的,也可以是多线程的,后者使用活动ID来区分线程。下边是应用程序调用可以使用的一些命令概括:

创建会话(Session Establishment)

? 连接/断开应用程序会话

活动管理功能(Activity Management Functions)

? 开始活动

? 挂起/恢复/放弃活动

? 活动完成通知

? 信号事件

? 查询活动属性

数据处理功能(Data Handling Functions)

? 提供工作流相关数据

? 提供应用程序数据或数据地址

更复杂的情况,异种工作流机间的协同工作,可能需要在工作流机间传递应用程序调用信息,或者作为运行时期数据交换的一部分,或者通过在过程定义阶段后导

入过程定义来实现。

3.5其他工作流执行服务:

WFMC的一个主要目标是,为不同开发商的工作流系统产品,相互间能够进行无逢传递任务项,定义标准。

工作流产品的特性变化多样。在WFMC的协同工作标准中,没有强迫开发商必须提供一个只面向用户需求的产品或者只考虑协同工作。

WFMC把焦点聚集到,开发多种不同的协同工作框架,这些框架可以操作一系列标准的协调工作,从简单的任务传递到整个工作流系统的协同工作(包括过程定义转换、工作流相关数据交换、通用的界面等)。简单的协同工作,WFMC的协同工作定义将在最初就能支持;而复杂的协同工作,还需要进一步的研究。

尽管可以开发一个非常复杂的协同工作框架,由许多个工作流机构成个执行服务器,但是这种框架不会在近期实现,因为这需要所有的工作流机都可以解释一个公共的过程定义和共享公共的工作流控制数据集,事实上是维护异种工作流机间的一个共享过程视图。现阶段更现实的目标是,能够在运行时期传递过程的某些部分,来支持不

同的执行服务器运行。

WFMC定义了4个协同工作模型:链锁式,子过程嵌套,P2P(Peer-to-Peer),相似同步,包含多种协同工作能力级别

3.6管理和监视工具:

WFMC规范的最后关注的是为管理和监视功能开发公共的接口标准,这样一个开发商的产品就可以用来管理其他工作流机的运行。通过公共的接口,几个不同的工

作流执行服务器可以共享,管理和监视功能。

尽管,过程状态命令在接口定义中已经描述了,但一致认为,在某些行业中需要,进行全部状态监视和提取信息的功能。WFMC提出的接口,是要让用户能够得到工作流运行状态的完整视图,无论是什么样的工作流系统;同时,也希望能提供一套全面的功能集,进行系统管理,包括安全性、控制和权限。

接口中包含WAPI集中的一些具体命令,来操作管理和监视功能。另外,进一步的讨论,期望能够确定在什么范围内,这个接口可以使用现有的协议(如CMIP、SNMP),来设置、恢复管理状态和统计信息(定义在开放MIB中——Management Information Base)

“工作流” 已经成为了一个事实存在的概念和名词,可是到了2007年依然找不到没有能够明确的定义,在互连网上,我们随便在GOOGLE或百度上搜索,找到关于工作流的内容及定义可以说是百家争鸣,是标准、是引擎、是技术、解决方案、是思想、是架构。。到底是什么?

工作流到底是什么呢,对于从事做计算机软件设计的人而言,它是一项技术、是我们为我们的客户提供解决方案框架的一部分;对于从事企业信息化管理的人而言,它是一种思想,是我们降低用户的IT运维成本的一种方法;对于从事软件开发的人而言,它是一个架构,是我们如何利用成熟稳定的接口和组件低成本的开发出适应用户流程变化的应用程序。总而言之,工作流通过技术的手段,融入管理思想、为管理提供“人、事、物、流程、时间、条件”等多维管理能力,帮助用户实现管理目标。

既然今天谈的是“工作流”技术,那文章的重点就是占在技术的角度来讨论工作流,我们可以从以下几个方面来探讨工作流。

1、为什么要使用工作流技术

对于这个问题我们可以从软件企业的解决方案策略、用户运维的成本上及企业信息化规划等几个角度来考虑这个问题。

首先从解决方案提供者的角度来说,我们的CIO/CTO面临的一个很大的压力是在于我们为用户提供的解决方案滞后于我们的用户的商业策略,我们用户总是在变化中发展,商业策略面临着市场、竞争对手的压力而改变,而我们提供的解决方案却不能够快速适应这样的变化。工作流技术使这样的一种解决方案成为可能,同时工作流技术也为用户企业实现企业战略执行提供了实现的平台。

从IT运维的角度来说,目前很多IT公司面临了一种CTO(总体拥有成本)成本比例的变化趋势。因为大部分IT企业或IT部门的IT基础架构的现状,使我们用户运行维护的成本在逐步的升高,研发新能力的成本在逐步压缩,但我们的IT投资始终会变缓,特别是IT运行维护的成本在总体拥有成本中的比例。意味着IT企业和IT部门利益的空间将越来越小,其实我们身边的很多案例里就有很多IT企业被某些项目拖累致倒闭的现象。工作流技术可以脱离开发环境而设计业务流程的特性让企业IT运行维护成本大大的降低,从而提高了IT企业和IT部门的利益空间。

从企业信息规划的角度来说,可以回顾前些年的ERP、进销存、CRM等系统,大部分是管事的,系统主要是记录数据及其关联关系等,是静态为主的,但随着社会的发展与竞争格局的变化,企业的策略越来越需要能随需而动,生产管理活动也始终是“人”参与的活动,很多时候人需要激励、参与、满足、约束、被管理等等才能很好达到管理目标。因此新一代管理系统中协同性、灵活性、扩展性需求相当重要,工作流是提供协同性、灵活性、扩展性的最佳工具。

2、工作流用在哪里

毫五疑问,工作流技术是软件技术,用在软件设计领域,工作流分为业务型工作流和状态型工作流,业务型工作流大部分是要用在管理软件设计领域,为管理软件提供灵活性、扩展性、协同性等特质。帮助企业实现战略管理目标。

常用的工作流应用场景:

企业办公自动化系统

IT服务管理系统

客户服务管理系统

物流揽收调度系统

设备运维管理系统

质量考核监督系统

采购系统。。

3、如何使用工作流及哪些人使用

很多时候工作流是一个看不见摸不着的东西,存在于我们的业务管理系统软件中,至于如何使用、哪些人使用可以从几个方面说明。

工作流引擎是系统功能,是软件本身去使用的,工作流架构是包含工作流引擎使用、接口调用、业务系统应用框架的,是开发人员使用的,开发人员在工作流架构上设计开发包含工作流技术的不同业务领域的软件系统。

工作流平台一般是包含流程设计工具的,由企业流程管理用户去使用,通过工作流平台提供的流程管理工具将企业的战略和制度转化为执行语言。

软件系统普通用户使用的则仅仅是包含企业战略执行语言的业务管理系统。

4、工作流技术的选型

关于工作流技术的选型,对于从事IT工作的人员来说是一个需要非常慎重选择,在这里做些简单的阐述,工作流技术分为两种。一种是业务流程型的,比如我们的一些事件处理、服务流程、物流揽收调度、合同审批、设计审核等,需要工作流引擎根据各种表单的内容来人机交互来自动管理这个过程;另一种是状态机型的,根据一件事情的状态变化而自动进行处理,如工业控制,电路控制管理等。常用于一些工业自动化控制系统等。

我们经常听到有人说工作流引擎可以很快的就配置出一个业务系统出来,自定义表单,自定义流程,自定义报表等等,很快就给用户提供一个完整的业务系统,其实这样的想法是非常理想的,我们在开发我们的业务系统的时候我们会发现我们的业务系统不仅仅是功能的实现,它将面临着各个方面的需求,包括性能,并发处理能力、易用性、一致性及个性化等等,当工作流引擎只能满足60%的需求时,我们的团队将为另外的40%需求付出多少成本。因此在工作流的选型上很重要的一点就是它对于二次开发的支持,及接口的友好特性,同时它能支持我们在工作流基础上设计思路上的延续性。

因此工作流技术的选型不但要考虑工作流引擎本身功能的完整性和稳定性,工作流架构的扩展性、易用性及适应能力,还需要考虑工作流涉及开发人员、企业管理实施人员、企业用户的习惯和易用性等。纯粹的工作流的产品意义并不大,关键是否能很好的帮助企业实现管理目标。

5、工作流技术的应用

E8.Net工作流平台融入了新一代管理软件关注的重点思想,所有功能模块应用将权限体系、工作流引擎体系、表示逻辑体系、管理控制逻辑体系、扩展及个性化接口体系充分结合,从架构的设计上优化企业个性化业务系统实施成本,并通过流程管理工具,为企业实施个性化的企业流程,通过记录、监督、跟踪、回访、分析企业日常事务,持续改善企业管理流程,E8.Net工作流平台开源的开发架构设计过程中充分分析了管理行为中人的特性,基于E8开发的企业流程应用系统提供了事中监督、事后回访、全程跟踪的体系架构,E8工作流引擎功能设计中也充分考虑了流程和环节模型特性、环节行为人群体特性和中国特色,流转过程中基于权限体系提供了人为因素中“主动/被动”异常的解决思路,解决快速实施企业业务流程需求的同时,又提供了人性“非理想”状态下的异常解决方案和防范控制解决方案。

工作流技术在协同办公中的实现

http:// 2008年10月28日 17:04 比特网ChinaByte

一、协同办公(OA)系统简介

协同办公(OA)系统是一套兼具企业信息门户、知识管理、工作流管理、人力资源管理、客户与合作伙伴管理、项目管理、财务管理、资产管理功能的协同商务平台,协同办公(OA)系统是一个数字化的企业应用环境,真正让公司所有的信息都在一个平台上管理,解决信息孤岛问题。协同办公系统本身具有的网状结构,为企业打通所有的信息节点,让企业管理者轻松穿梭在客户、员工、文档等所有的信息节点上,因为协同办公系统为您提供了一张信息网,只要您找到这张信息网中的某个节点,您就可以轻松的以这个节点为中心把企业的整个信息网都提取出来。

同时,协同办公(OA)系统可以与后台的ERP软件集成在一起,将所有利益相关者、企业部门、不同应用系统的信息整合到统一的渠道,并提供统一的界面给用户操作和提取信息,从而实现业务处理和信息获取与共享的一体化,达到内部协同和外部协同,为每一个用户提供一个完全的个性化门户,用户在这个个性化的门户中管理日常的所有事务。

二、工作流管理简介

由于工作流预先定义的特性,已设定的请求可以很容易的遵守相应的规则和实际操作情况。企业可以确信所有的请求都是根据规则和手续来输入和批准的,从而保证企业运作的规范化和透明化。上海泛微软件公司的协同办公(OA)系统中实现的工作流e-Workflow管理可以对内部以及外部业务处理采取电子化管理方式管理,工作流管理是提高组织效率的有效工具。

e-Workflow提供强大的自定义功能,支持企业复杂的工作流设置。企业可对工作流的组成因素包括流程完成需要的阶段、每个阶段的负责人、流转条件,直至相对底层的表单和字段进行自定义,使得工作流的定义完全与企业的政策和实际运营相符合,而不必进行复杂的二次开发。

e-Workflow同时也提供了可定制的浏览和报告的功能,用户可以对工作流的关键信息进行任意的定义以获得特定的报表。e-Workflow的特性可以使用户获得非常灵活和丰富的统计报告以对相关的决策作出支持。

三、工作流管理实现基本功能

1定义任意形式的工作流程

e-Workflow强大的自定义功能可以满足企业对复杂工作流程的定义,包括文档流程和表单流程e-Workflow 与 e-HRM结合对于人员在组织结构中的地位和角色将是工作流设计的基础。

2工作流执行

可设定的对工作流的执行包括提交、批准、退回、拒绝、代理、重新打开、归档等,e-Workflow会根据路由的判定条件和当前节点的执行操作设置工作流的下一目标节点。

固定流程和自由流程的结合

原则上是固定流程,应该一步步走下去,但是在某个节点,加入一个自由流程审批人可以选定下一步的审批人,然后再按照预定的流程走下去。

如:申请者-部门经理-出纳-财务经理,对于大一点的公司,有多个出纳,哪个出纳在岗,就让哪个出纳审,那么就可以把出纳那步设成自由流程,当部门经理审批完后,会自动列出所有的出纳,部门经理选择其中的一个出纳然后提交。

4表单数据自动生成

表单的有些数据,不希望由人工输入获得,e-Workflow可以根据被计算字段、原始数据和计算方法自动得出目标字段数据,并可以此作为下一路由选择的判断条件。

5跟踪和回溯

e-Workflow保留工作流流转过程中的所有信息以供查询。对于文档型的审批,可以保持痕迹。这样审批人能够一目了然知道原稿和审批稿的区别。监控和管理

对于某个模板产生的单据,可以设定监督人和管理人,这样既使他没有审批权,也可以看到该单据,同时发送催办信息。当某个单据因为某种原因需要临时更改流程时,监督和管理人可以修改流程,以避免单据的积压提高工作效率

7自动提醒

对于请求的不同状况,例如新的请求到达、待处理请求、超时未处理请求、客户联系计划、请求递交被处理状况等,系统都设定了多种提醒功能以确保请求的处理不致延误。

8流程自动激活

e-Workflow的一个强大之处就是在于它可以让系统在运作的过程中自动触发请求,并且还可以根据前一个请求的实际状况对下一个触发的请求进行智能选择。

9自动更新数据库

e-Workflow在信息流转的过程中,会自动更新系统原有的相关数据库,这是 e-Workflow 另一个重要的特性体现,通过数据自动更新,避免了二次手工录入带来的工作效率低下和失误的情况,真正实现企业管理和运营的电子化。

10分支选择流

根据上一步的选择,选择不同的分支进行流程执行。如:如果上一步是总经理审批的,会选择一个分支进行流转。如上一步是副总审批的选择另外一个分支进行流转。

11条件流转

以请款单为例:金额小于3000元,审批流程是:普通员工-部门经理。如果金额大于3000元的审批流程是:普通员工-部门经理-总经理,那么在流程定义的时候,需要根据单据的填写值进行判断,系统自动选择流程。

12传阅、归档等的并发流

如有一个流程:申请者-副总经理的一张单子,申请者需要提交副总审批的一张单子,不需要部门经理审批,但是需要让部门经理知晓,称为传阅的并发流。同理有归档或者其它的并发流。这种并发流的特点是一个流程的执行过程中,会产生另外的的流程,互不影响。

13流程门户定义

通过与企业信息门户的结合,e-Workflow实现流程定义的门户化,根据不同的信息门户设定不同的流程。

四、小结

工作流技术的出现和迅速发展为企业先进制造战略的实施提供了重要的技术支持。本文提出了分布式工作流建模工具的设计框架,以 SOA设计模式,通过三层结构的方式很好的实现了工作流建模工具、逻辑、数据、视图的分离,使得系统在可扩展性、可靠性与实用性方面都大大提高。以此为原型开发的泛微e-Workflow工作流管理系统很好的配合了工作流引擎的设计。在实际中的初步应用表明该系统通过分析企业不同类的经营过程,采用有向图的方法对现实的企业活动进行形式化描述,并严格定义组成有向图的各类元素的行为特征,从而明确建立企业经营过程到工作流模型的映射机制.使其与企业现有应用结合形成一个完整的过程体系。责任编辑:胡艳丽 工作流管理技术介绍

2009-11-25 作者:葛志春 来源:希赛网

摘 要:本文主要对工作流技术的起源,工作流的概念,研究的技术的内容及工作流管理系统作了深入的介绍;并对工作流技术在国内外的应用现状及不足作了深入的分析。

关键词:工作流、表单

1、工作流技术应用背景

传统的计算机管理信息系统的主要功能有三个:即信息处理、事务处理与决策支持。信息传递和信息处理构成了企业和行政管理部门的业务工作内容之一,也是计算机信息系统的主要功能之一,它是企业和行政管理部门进行事务处理和决策支持的基础。

当PC机没有作为信息处理工具而出现的时候,纸张是进行日常业务活动不可取代的载体。这种传统的纸张为载体的信息传递与处理方式的效率很低,需要花费相当的人力、物力来完成信息的处理、组织、存储以及查询检索,同时这种方式降低了对客户需求的响应速度,给企业和行政管理部门的生产经营都带来了及不利的影响。在计算机得到了广泛普及、计算机应用水平日益提高的情况下,企业与行政管理单位的工作人员希望能够以一种无纸化的、计算机使能的工作环境来开展日常业务工作。一些企业和行政管理部门因此建立了相应的文件、表单传递系统(Forms-routing applications)用来实现日常表单处理的电子化与自动化。这种简单的文件、电子表单系统可以看作是工作流应用的雏形。

企业的经营过程是由一系列相关的任务组成的;这些任务按照企业的管理规章与业务流程串行或并行的执行,最终完成企业的经营目标。自从进入工业化时代以来,有关过程的组织管理与流程的优化工作就一直在进行,它是企业管理的主要研究内容之一。只不过在没有引入计算机信息系统的支持以前,这些工作是由人工来完成的。随着市场经济的发展,市场竞争的日益激烈,企业要求其业务过程能够进行快速重组;业务过程的不断变化也相应要求信息系统能够快速重组。这样,单靠人工对企业过程进行重组和传统的面向功能的信息化计算机系统已经不能适应现代企业的发展。因此,企业希望有一种能够实现企业快速业务流程重组和业务过程自动化的软件系统。在计算机网络技术和分布式数据库技术迅速发展、多机协同工作技术日臻成熟的基础上于20世纪80年代中期开始提出了工作流的概念。工作流技术的提出与发展为企业更好的实现这些经营目标提供了先进的手段。

随着经营业务的展开企业的物理位置逐渐分散、部门间的协作日益频繁;决策过程的分散性也日益明显,对日常业务活动详细信息的需求也日益提高。因此,企业又要求信息系统必须具有分布性、异构性、自治性。在这种大规模的分布式应用环境下高效地运转相关的任务,并且对执行的任务进行密切监控已成为一种发展趋势。在这种技术背景下,工作流管理系统也有最初的创建无纸化办公环境,转而成为同化企业复杂信息环境、实现业务流程自动化的必要工具。这样的一个转变,把工作流技术带入了一个崭新的发展阶段,使得人们从更深的层次、更广的领域上对工作流展开了研究。

1993年工作流技术的标准化组织工作流管理联盟(Workflow Manangement Coalition 简称:WfMC).的成立标志着工作流技术在计算机应用领域之中被明确的划分出了自己的一席之地,相应的概念与术语也得到了人们的承认。在全球范围内,对工作流的技术研究以及相关的产品开发了进入了更为繁荣的阶段。

2、工作流定义

工作流是从英文单词Workflow翻译而来的。Work表示工作或任务;Flow则表示流动、流程或者流量。Flow反映了一种变化及变化的过程,本身意义比较抽象,但是当它与某一个具体过程相联系时就有了具体的含义,如电流、水流、气流。在经营管理与生产组织中Flow也有重要的意义,如表示物料传输过程的物料流、表示资金流动的资金流、反映信息处理和传递过程的信息流,同样还有价值流、决策流、控制流等概念。依此,用活动及活动之间变化的过程表示的业务流程就是工作流。

十几年来,不同的研究者和产品供应商从不同的角度给出了工作流的定义,但到目前为止,对于工作流仍没有统一的定义。下面列举了一些有代表性的定义,可以使我们对工作流的一些基本特征有一定的理解。

WfMC的定义:工作流是一类能够完全或者部分自动执行的经营过程,根据一系列过程规则,文档、信息或任务能够在不同的执行者之间传递、执行。

Forrester Report的定义:日常的业务处理或协同工作能按预先定义好的规则和过程进行流动,并且这一流动过程能被跟踪和监控。

Giga Group的定义:工作流是经营过程中可运转的部分,包括任务的顺序以及由谁来执行它,支持任务的信息流、评价与控制任务的跟踪、报告机制。

IBM Almaden Research Center的定义:工作流是经营过程中的一种计算机化的表示模型,定义了完成整个过程所需用的各种参数。这些参数包括对过程中每一个单独步骤的定义、步骤间的执行顺序、条件以及数据流的建立、每一步骤由谁负责以及每个活动所需要的应用程序。

Amit Sheth 的定义:工作流是涉及到多任务协调执行的活动,这些任务分别由不同的处理实体完成。一项任务定义了需要做的某些工作,它可以以各种形式来进行定义,包括在文件或电子邮件中的文本描述、一张表格、一条信息以及一个计算机程序。用来执行任务的处理实体可以是人,也可以是计算机系统(如:邮递员、一个应用程序、一个数据库管理系统)。

以上这些定义,虽然表述方式略有不同,但是基本上都说明了这样一个问题,即工作流是业务过程的一个计算机实现,而工作流管理系统则是这一实现的软件环境。使用工作流作为业务过程的实现技术首先要求工作流系统能够反映业务过程的如下几个问题:即业务过程是什么(有哪些活动、任务组成,也就是结构上的定义)、怎么做(活动间的执行条件、规则以及所交互的信息,也就是控制流与信息流的定义)、有谁来做(人或计算机程序,也就是组织角色的定义)、做的怎样(通过工作流管理系统对执行过程进行监控)。因此,可以说工作流是一种反映业务流程的计算机化的模型,它是为了在先进计算机环境支持下实现经营过程集成与经营过程自动化而建立的可由工作流管理系统执行的业务系统。

3、工作流技术研究的主要内容

工作流技术,在初期主要由工作流产品供应商推动其发展。随着工作流产品在实际应用中不断取得良好的效果而得到了人们日益的重视,并且到了迅速发展。相对于工作流产品的繁荣,工作流相关理论研究则显得滞后。在过去很长一段时间里,有关工作流技术方面的研究主要有商品化的工作流产品供应商所领导。本着把工作流产品推向市场的目的,这些供应商大多把研究的注意力放在工作流管理产品的开发实施方面。目前在工作流设计方法学,工作流概念模型等方面还没有形成一套比较成熟的理论和方法。在工作流理论与实施技术方面,研究的主要内容包括:

工作流管理系统体系结构;

工作流模型与工作流定义语言;

工作流的事务特性;

研究如何实现高级事务处理技术与工作流管理技术的结合,用定义良好的模型语义与恢复机制来提高工作流系统的正确性与可靠性,从而能够更好的支持复杂的业务过程;

工作流实现技术:包括面向对象技术、异构分布式计算技术、图形化用户界面、消息通信、数据库、WEB等在内的与工作流系统的设计实现有关的各项技术及方法;

工作流的仿真与分析方法;

基于工作流的应用集成与互操作技术;

研究异构应用系统的集成以及不同工作流系统之间的互操作问题;

工作流与经营过程的重组:研究如何通过工作流系统的实施支持快速的实现经营过程重组;

工作流技术的其他应用:研究如何将工作流技术在不同的领域进行运用,包括在CIMS中的应用。

上述主要研究课题可以归纳为三个方面(如图1):第一方面是工作流的理论基础,包括工作流管理系统的体系、模型与定义语言(工作流的建模方法、工作流模型的形式化表示、工作流定义语言)等的研究。这一部分是工作目前相对来说比较薄弱,还有许多问题需要进一步研究。第二方面是工作流的实现技术,包括工作流的事务特性、各种先进软件技术的应用、工作流仿真。这方面研究工作的目标是提高工作流管理系统的性能,尤其是提高工作流管理系统可靠性及其在处理大规模复杂的且具有并行业务的流程方面的能力。第三方面是工作流技术的应用,包括工作流实施技术在不同应用领域的应用(如在企业经营过程重组、并行过程、敏捷制造)方法、应用软件集成等。这几方面研究的目标是发挥工作流管理系统的优势,为解决具体应用领域内的问题提供有向实现手段。

图1:工作流技术研究内容

4、研究工作流的意义

工作流技术的应用将给组织单位带来巨大的效益。首先,采用工作流管理将使组织单位改变传统的按照功能来配置人员的组织结构,变成按照要实现的主要业务流程来配置组织结构,这样可以大大缩短主要业务过程的处理时间,提高对市场的响应能力。其次,组织结构的改变将大大减少在组织内部不必要的的物料、信息的传递时间。当然,整个组织结构的调整首先需要调整传统的以部门为单位的做法,变成以项目来组织生产和人员的工作方法,如:一个人可能同时从属于多个项目。应用工作流管理系统主要可以取得如下好处:

1)提高管理的规范化程度;

2)更好地与上下游单位形成快速响应市场的供应链网络;

3)降低业务过程的整个处理时间,如在办公自动化环境中,通过更好的规划工作流程,并行执行相互独立的活动,减少文档的传递时间;

4)降低管理成本,如避免不必要的重复的工作,提高工作人员的工作效率;

5)改进工作质量,如自动完成某个任务所需要的相关信息。在客户服务中,能够快速方便的访问所有相关数据和工作流程,从而大大提高客户服务质量;

6)在工作人员之间更好的均衡负荷,如在工作人员缺勤的情况下,自动柔性分配替代人员;

7)通过在工作流模型中加入可预计的故障的处理策略来提高系统的柔性;

8)通过对已经完成的工作流实例的分析,找出存在的不足,进而不断改进工作流程;

9)使工作内容更加丰富,并且提高工作人员的业务能力,减少工作人员进行单调乏味并且十分耗时的文档查找工作。

采用工作流管理系统可以在最大程度上集成组织的现有信息资源,实现资源的充分利用。由于工作流管理系统具有较好的柔性和开发性,因此,可以保证信息系统能够顺利的扩展以满足不断变化的市场环境。另外,工作流管理系统在工作流模型的基础上进行业务过程进行,这就意味着信息系统已经从过去没有一个具体的可量化指标的管理信息系统,发展到了一个建立在工作流模型上(并且是可以利用BPR或者其他仿真工具进行优化后的模型),按照预先定义好的规则进行执行,并且对于执行的结果随时进行监控和评价的规范化阶段。这种由过程建模—〉模型分析—〉过程优化—〉执行结果—〉统计分析—〉改进业务过程—〉优化运作的实施方法为成功地实施信息系统奠定了坚实的基础。

5、工作流管理系统

工作流技术是当今一项飞速发展的技术,它最基本的特性就是它能够结合人工和机器的行为,特别是能够与应用程序和工具进行交互,从而完成业务过程的自动化处理。

工作流是业务的自动化处理过程,在这个过程中,根据预定义的规则将文档、信息在过程参与者中传递,最终完成业务的处理。工作流管理系统(WFMS)是通过管理一序列工作行为以及与活动步骤、相关人员、资源设备来提供业务处理程序上的自动控制,它是通过计算机软件来定义、管理和执行工作流,计算机的执行顺序是由工作流逻辑的计算机描述来驱动的。

工作流管理系统主要具备以下三个功能特征,如图2:

工作流定义功能,主要是对业务处理过程的计算机定义,提供了一种或多种分析、建模、系统定义技术,将一个现实世界的业务处理过程转换成计算机可处理的定义;最终的定义叫作过程模型、过程模版或过程定义,可以表现为文本、图形或自然语言符号。

运行控制功能,对过程的定义进行解释,创建并控制过程的运行实例,调度过程的各种行为步骤,调用适当的人工和IT应用程序资源;工作流管理系统的核心部件就是工作流管理控制软件(工作流引擎)。

运行交互接口,提供与人员或IT应用程序工具进行交互接口来处理各种活动步骤,交互接口对于活动间的控制传递是必须的,如确定过程的状态,调用应用程序工具,传递应用程序数据等。

图2WFMS的三个特征

6、工作流管理系统的分类

根据所实现的业务过程,工作流管理系统可分为四类:

1)管理型工作流(administrative workflow):在这类工作流中活动可以预定义并且有一套简单的任务协调规则,例如,大学里的课程选修,完成论文后的学位申请等。

2)设定型工作流(ad hoc workflow):与管理型工作流相似,但一般用来处理异常或发生机会比较小的情况,有时甚至是只出现一次的情况,这与参与的用户有关。

3)协作型工作流(collaborative workflow):参与者和协作的次数较多。在一个步骤上可能反复发生几次直到得到某种结果,甚至可能返回到前一阶段。

4)生产型工作流(production workflow):实现重要的业务过程的工作流,特别是与业务组织的功能直接相关的工作流。与管理型工作流相比,生产型工作流一般应用在大规模、复杂的和异构的环境下,整个过程会涉及许多人员和不同的组织。

根据底层实现技术,可将工作流产品分为三类:

1)以通讯为中心:以电子邮件为底层的通讯机制。这种类型的工作流管理系统适合于协作型工作流和不确定型工作流,而不适于生产型工作流。

2)以文档为中心:基于文档路由,它同外界应用的交互能力有限。许多基于表的管理型工作流可以用以文档为中心的工作流实现。

3)以过程为中心:这种工作流系统对应生产型工作流。它们一般建立在数据库之上,有自己专用的通信机制并且提供了同外部进行交互的接口。

根据不同工作流系统所采用的任务项传递机制的不同,市场上的工作流产品又可以划分为四类:

1)基于文件的工作流系统:以共享文件的方式来完成任务项传递。这种类型产品开发得最早、发展最成熟、其产品品种较多。代表产品有FileNet的Visual WorkFlo、IBM的FlowMark、InConcert的InConcert。

2)基于消息的工作流系统:通过用户的电子邮件系统来传递文档信息。这种类型的产品一般都提供与一种或多种电子邮件系统的集成接口。代表产品有Novell与FileNet合作开发的Ensemble、JetForm公司的InTempo、Keyfile公司的Keyflow。

3)基于Web的工作流系统:通过WWW来实现任务的协作。这一类产品起步较晚(在95年以后),但是发展迅速,其市场前景十分看好。许多供应商纷纷改进原有产品或开发新产品以增加对Web的支持。代表产品有Action Technologies公司的ActionWorks Metro、Ultimus公司的Ultimus。

4)群件与套件系统:虽然这一类产品与上面介绍的三种产品在任务传递方式上有很大程度的重叠,但是在这里却有必要把它们单独划分成一类,因为这一类产品都需要依赖于自己系统的应用基础结构,包括消息传递、目录服务、安全管理、数据库与文档管理服务等,它们本身就构成了一个完整的应用开发环境。代表产品有IBM/Lotus公司的Lotus Notes、Microsoft公司的Office与Exchange、Novell公司的GroupWise。

7、工作流管理系统的实施

工作流管理系统不同于ERP和普通的企业管理信息系统,ERP与普通的企业管理信息系统是事务处理系统,其主要目的是满足企业业务操作功能,提高企业事务处理的效率和水平。从企业整体的业务流程和企业经营目标上看,事务处理系统一般局限于解决某个或者某些领域的问题;事务处理系统的另外一个局限性是它一般局限于解决组织内部的具体操作问题,面向组织内部功能,而不是面向市场和面向客户的系统。工作流管理系统的着眼点是面向市场、面向客户,其目标是在整个企业的业务层提高企业的业务处理水平、强化企业的市场意识、提高对市场的应变能力。

由于工作流管理系统与普通事务处理系统存在显著的差别,工作流管理系统在实施方法上也不同于普通的事务处理系统。要实施工作流管理系统首先要在战略层次上对经营目标进行分析,确定战略目标和组织要求。工作流管理系统实施的层次结构,如图3。

图3 WFMS实施的层次结构

在完成了战略目标分析和工作流实施战略后,工作流管理系统才能够进入真正的实施阶段。工作流管理系统在实际系统中的应用一般分为3个阶段,如图4,即模型建立阶段、模型实例化阶段和模型行阶段。模型建立阶段通过利用工作流建模工具完成经营过程模型的建立,将实际经营过程转化为计算机可处理的工作流模型。模型的实例化阶段完成为每个过程设定运行所需的参数,并分配每个活动执行所需要的资源(包括资源、人员、应用)。模型执行阶段完成经营过程的执行,在这个过程中重要的任务是完成人机交互和应用的执行,并对过程与活动的执行情况进行监控与跟踪。

图4 WFMS 实施的三个步骤

8、国内外应用现状与不足

8.1 应用现状

目前工作流技术的研究正日益受到人们的重视,许多大学和研究机构都开展了很多研究项目,取得了重多的研究成果,对工作流技术的发展做出了贡献。

由于工作流应用环境大多是在复杂的分布异构环境中,如企业内部网或因特网,因此应用最新的分布对象处理技术和Web技术,实现工作流管理成为当前研究的重点。有影响的工作流原型系统有:

1)美国佐治亚大学研制的Meteor系统:该系统是一个支持多范型的工作流管理系统,主要用于处理医疗保健应用。多范型是指该系统能够支持分布异构环境下的企业内和企业间的各种工作流。这些工作流可以是数据库管理系统和分布式事务处理系统中的事务,也可以是EDI等特殊应用。Meteor系统可以在Web或CORBA环境下运行。

2)美国普度大学开发的CORBAflow系统:该系统提出了基于CORBA的体系结构,支持跨平台的异构分布系统集成,支持弹性ACID性质;扩展了IDL语言以定义事务性工作流中的补偿事务。

3)土耳其中东大学开发的METUFlow系统:该系统提出了一种基于CORBA环境的工作流服务,包括基于ACTA扩展事务模型的工作流模型、块结构化定义语言、工作流调度管理和并发控制机制等。

工作流的许多概念来自于办公自动化、文档管理、计算机支持协同工作(CSCW)等领域。至今约有300个称为工作流工具的商品化软件,但只有数十个是真正的WFMS软件。一些著名的WFMS产品有:

1)IBM公司的FlowMark系统[9]该系统由对象数据库管理系统ObjectStore支持。主要组件包括服务器、建立客户器、运行客户器和程序执行客户器。服务器负责与数据库交互及协调工作流执行;建立客户器提供用于设计工作流的图形接口;运行客户器提供工作表方式的用户接口;程序执行客户器提供API调用方式的应用接口。

2)Action公司的ActionWorkflow系统该系统由微软的SQL服务器或Lotus Notes支持,包含三个基本组件:①管理系统内核用于集成和管理工作流事务;②分析器提供设计工作流的专门工具;③应用建立器用于将工作流定义转化成可执行的过程。此外,还提供辅助工具,如报表器用于查询工作流的进展状态。

3)Sigma图象系统公司的OmniDesk系统它使用提供ODBC接口的数据库。其中,路径管理器用于工作流管理和负载平衡;路径建立器用于定义路径逻辑;表格建立器用于创建工作流接口。虽然OmniDesk系统主要是为图象文档管理设计的,但是也可以管理其他类型的工作流。

4)Wang公司的OPEN/workflow系统该系统建立在自含的数据库引擎之上。系统分为数据库服务、图形过程建立器、集成工具箱、报表工具。数据库服务提供基本的完整性、安全性、并发控制、恢复和管理功能;图形过程建立器用于定义过程;集成工具箱提供应用之间交互需要的API调用和通信服务;报表工具如查询建立器和报表建立器用于访问有关过程执行的信息。

8.2 工作流应用技术的不足

实际上,大多数产品的开发由于没有清楚地理解用户的需求,而不能满足用户的迫切需要。许多工作流系统主要是解决共享和协作(某些问题仍未很好解决,如异构平台环境、多媒体数据),而像性能、可伸缩性、可靠性对于复杂应用系统来说至关重要的问题,现有工作流软件并没有考虑。主要原因是,这些系统的建立不是基于在线事务处理(OLTP)技术和数据库技术,只是使用数据库做底层存储,因而在这些领域缺乏技术成熟性和系统健壮性。

另外,由于已有的绝大多数WFMS产品和原型系统的设计是面向普通的办公室应用,因此存在以下不足:

1)工作流模型只能描述如办公自动化中电子邮件或文档等简单的工作流,而不能描述工程设计等复杂过程处理。

2)经营业务流程往往是复杂的异构环境,现有产品不能提供很好的互操作性。例如,在异构环境中,IBM的FlowMark不提供API接口以支持一个工作流的输出,作为下一个工作流的输入。

3)一个工作流可能涉及到多个单位和车间,或多个工厂和企业,例如,在虚拟制造应用中,可能包含成百上千个用户,覆盖广域网络中的数十个场地,上百台计算机系统。大多数现有工作流软件只是设计为一种协作工具,适用于小群体之间业务的工作流,在体系结构上存在缺陷,缺乏可伸缩性。

4)现代组织应用要求系统具备非常高的可用性和健壮性。现有工作流软件只适合于小团体和轻负载,缺乏有效的后备机制,不具备强的故障恢复能力。

为了进一步研究开发支持应用集成的CIMS工作流管理技术,我们认为,需要解决以下关键技术:

1)面向CIMS的工作流建模技术包括工作流模型和定义语言。如何采用弹性事务模型、分层事务模型和工程数据模型相结合的方法,设计出一种适合于CIMS工程应用的工作流模型。

2)基于CIMS信息集成平台的工作流管理系统体系结构CORBA软件总线提供了良好的平台透明性和分布透明性,以及分布对象操作能力,如何充分利用CORBA软件总线和信息集成平台,实现一个高效的工作流管理系统。 3)面向分布对象的工作流管理和执行技术CORBA软件总线系统提供了对象引用、启动和联编机制。工作流管理与执行机制需在此基础上完成作为对象任务的创建、调度、执行、提交或取消,保证工作流的正确性和可靠性。还需要考虑在CORBA软件总线上增加新的公共服务,如持久性对象仓储服务、故障恢复服务等。

4)面向CIMS目标产品的集成技术工作流管理系统是一种中间件技术,适合于任何计算机分布处理系统,在CIMS应用集成涉及的有关系统中,如PDM、MRPII等,都需要这方面的集成技术。

参考文献

[1] 林惠萍、范玉顺、吴澄,“支持企业经营过程重组的工作流仿真技术研究”,http://www.simflow.net

[2] 范玉顺,《工作流管理技术基础》,清华大学出版社,2001.4

[3] 陶冶、范玉顺、罗海滨,“分布式工作流系统的可靠性研究”,http://www.simflow.net

[4] 罗海滨、范玉顺、吴澄,“工作流技术综述”,http://www.simflow.net

[5] 范玉顺、吴澄,“基于工作流的CIMS应用集成支持系统研究”,http://www.simflow.net

[6] 刘佚名、范玉顺,“基于工作流的企业过程的建模和仿真技术研究”,http://www.simflow.net

[7] 范玉顺、吴澄,“基于协调理论的工作流建模方法”,http://www.simflow.net

[8] 陶冶、范玉顺、罗海滨,“提高分布式工作流管理系统的可扩展性”,http://www.simflow.net

[9] 鲍震宁、范玉顺,“企业组织模型结构和建模方法研究”,http://www.simflow.net

工作流技术研究 篇2

随着计算机技术与网络技术的迅速发展和互联网的日益普及,现代企业信息系统的分布性、异构性和自治性特征越来越显著,这种特性对企业组织结构及组织中的工作也带来了巨大的冲击,各个企业部门之间的协同工作越来越重要,为了提高企业的工作效率、增强决策能力,必须要优化办公流程,充分利用现代化信息技术,构建高效电子办公系统。工作流管理技术作为一种过程管理的核心技术,不仅强调某个环节的完成情况,而且还要求从整个流程的角度来看待该环节的义务管理过程,把完成最终的服务管理目标作为流程管理的目标。

1. 工作流与工作流管理系统

1.1 工作流技术

工作流的概念起源于生产组织和办公自动化领域。它是针对企业日常工作中具有固定的程序活动而提出。通过将工作分解成定义良好的任务、角色,按照一定的规则和过程来执行这些任务并对其进行监控,达到提高效率,降低生产成本,提高企业竞争力。工作流是业务的自动化处理过程,在这个过程中,根据预定义的规则将文档、信息在过程参与者中传递,最终完成业务的处理。工作流管理系统(WFMS)是通过计算机软件来定义、执行和管理工作流。

1.2 工作流管理系统

工作流管理系统是支持企业业务过程高效执行并监控其执行过程的计算机软件系统。通常,工作流管理系统指运行在一个或多个被称为工作流机的软件上的用于定义、实现和管理工作流运行的一套软件系统,它和工作流执行者(人、应用)交互,推进工作流实例的执行,并监控工作流的运行状态。在很大程度上,工作流管理系统为企业的业务系统运行提供一个软件支撑环境,非常类似于在单个计算机上的操作系统。在工作流管理系统的支撑下,通过集成具体的业务应用软件和操作人员的界面操作,才能够良好地完成对企业经营过程运行的支持。所以,工作流管理系统在一个企业或部门的经营过程中的应用过程是一个业务应用软件系统的集成与实施过程。

工作流管理系统主要有三个功能,如图1所示。

(1)工作流定义:对业务处理过程的计算机定义,提供一种或多种分析、系统定义和建模技术。

(2)运行控制:工作流管理系统的核心是工作流管理控制软件,即工作流引擎。

(3)运行交互接口:提供与人员或IT应用程序工具进行交互接口来处理各种活动步骤。

2. 工作流管理系统参考模型

工作流管理联盟推荐的工作流参考模型,描述了各个模块之间的相关接口,见图2所示。

工作流参考模型中涉及到几种数据。

(1)工作流控制数据:工作流执行服务/工作流引擎通过内部的工作流控制数据来辨别每个过程或活动实例的状态。

(2)工作流相关数据:工作流管理系统通过工作流相关数据确定过程实例状态转换的条件并选择下一个执行的活动。

(3)工作流应用数据:这种数据是指那些由应用程序操作的数据。它们是针对应用程序的,是企业完成具体的业务功能所需要的数据。

3. 工作流管理系统的实施

工作流管理系统与ERP和普通的管理系统不同,ERP与普通管理系统的主要目的是满足企业业务操作功能,提高事务处理的效率和水平。工作流管理系统的核心是面向市场、面向客户,其目标是在整个企业的业务层提高企业的业务处理水平、强化企业的市场意识以及提高对市场的应变能力。

由于工作流管理系统与普通事务处理系统存在着非常显著的差别,工作流管理系统在实施方法上也与普通的事务处理系统不同。要实施工作流管理系统首先要在战略层次上对经营目标进行分析,确定战略目标和组织要求。

在完成了战略目标分析和工作流实施后,工作流管理系统才能够进入真正的实施阶段。工作流管理系统在实际中的应用一般分为模型建立阶段、模型实例化阶段和模型行阶段。模型建立阶段通过利用工作流建模工具完成经营过程模型的建立,将实际经营过程转化为计算机可处理的工作流模型。模型的实例化阶段完成为每个过程设定运行所需的参数,并分配每个活动执行所需要的资源(包括资源、人员、应用)。模型执行阶段完成经营过程的执行,在这个过程中重要的任务是完成人机交互和应用的执行,并对过程与活动的执行情况进行监控与跟踪。

4. 结束语

本文对工作流管理这个研究领域建立了一个全局的概述,对工作流管理的发展历程进行了回顾,并具体介绍了企业中工作流管理系统实施。采用面向服务的架构(SOA)是最佳的执行模式,利用不同的服务组件来构建一个异步分布、再生性强的系统是需要进一步研究的。

摘要:本文针对工作流技术的起源,对工作流的概念、研究的技术内容及工作流管理系统作了深入的介绍,对工作流管理这个研究领域建立了一个全局的概述,介绍了工作流管理系统的参考模型,并具体介绍了企业工作流管理系统的实施过程。

关键词:工作流,工作流管理系统,工作流参考模型

参考文献

[1]范玉顺.工作流管理技术基础.北京:清华大学出版社,2001:18-27.

[2]张琪.工作流技术在信息管理系统中的应用.南京理工大学学报.2005.10.

工作流建模技术综述及其研究趋势 篇3

关键词:工作流建模;Petri;EPC;协作工作

中图分类号:TP311.52

工作流建模技术是企业实现信息化管理与资源优化配置的重要基础技术,同时也是工作流管理科学应用到企业资源规划与电子商务等诸多信息管理方面的关键性技术,对于企业的发展具有重要的支撑作用。本文从工作流建模技术综述的角度出发,对几种不同的工作流建模技术进行了分析,进而指出工作流建模技术在未来的研究趋势。

1 工作流建模技术综述

1.1 基于分布式系统数学建模工具的工作流建模

基于分布式系统数据建模工具的工作流建模即(Petri建模)早在上个世纪七十年代便開始应用在企业的管理工作中。1977年,Zisman首次利用Petri网表示办公流程,而Ellis则在Petri网对办公流程进行表示的基础上将Petri网进行扩展,进而使办公流程的表示方法转化为一个典型的Petri网,即信息控制网[1]。上个世纪九十年代末Alast将信息控制网工作流模型中的基本元素(模型原子)映射为Petri网,并提出了具有资源维、过程维和实例维的工作流的三维结构。而本世纪初期,国内有关Petri工作流建模的研究也不断增加,其中Yao Y等人在对工作流模型的动态与静态方面的特性进行描述时引入了Petri网中的可信专用网络TPN模型作为具体的建模工具,取得了工作流模型特性分析方面的突破性进展。

1.2 基于EPC的建模

所谓ERC建模即事件驱动过程链的建模,是一种应用较为广泛的企业事件即其经营过程的一种描述方法。EPC工作流建模之所以能够被广泛应用于企业事件与经营过程的描述当中是因为其可以对数量高达六种的工作流原语予以强力的支持,六种原语分别为OR-Split、OR-join、AND-split、AND-join以及XOR-split与XOR-join[2]。EPC建模通过对相关活动的信息对象与组织单元进行描述,进而可以将任何具有复杂程度的“事件-功能流”描述出来。通过将组织单元与信息对象融入在模型的功能当中,进而对信息流在同一企业不同部门以及不同企业间的流转进行描述[3]。

1.3 基于协调理论的建模

协调理论最早是由美国麻省理工学院的Malone教授提出的,提出之初,协调理论便开始作为研究协同工作活动以及活动相关性的科学。协调理论中,工作流协同过程的组成元素分别包括了事件的共同目标以及完成该目标需要展开的相关活动和活动的执行者与不同活动之间的关联等[4]。协调理论下工作流模型的主要任务为对不同活动之间的关联性进行管理,进而确保相关事件目标能够及时完成。

1.4 事务工作流建模

事务工作流建模是以数据库系统中的高级事务模型为基础的,基于工作事务流的工作流建模具有嵌套事务模型、柔性事务模型以及多层事务模型等具有ACID特性的模型原子的操作序列,通过将通用工作流与事务相结合,进而对某一事务工作流进行执行,将系统从当前一致性的状态转化为另一个一致性的状态[5]。在事务工作流建模的深入研究方面,德国学者Reuter引入了Contract模型对事务的长时间复杂计算进行定义,进而对当前工作流管理中的工作流进行了描述。

1.5 基于协作工作的工作流建模

作为工作流管理技术在跨组织应用领域的延伸,协作工作流下,工作流管理模型可以及时对组织内外部的时间产生反应,进而根据事件的内容和特点,进行一系列有利于时间完成的操作。世界经济、科技一体化的发展趋势使得企业之间的信息交互与战略合作变得愈加重要,而跨组织工作流的出现恰好为协作工作流建模的应用提供了机会和平台。而在对协作工作流建模的研究过程中,也存在较多的学者对利用ECA,即电子设备控制规则建立协作工作流模型的方法展开了激烈讨论。ECA规则在协作工作流模型中应用的原理为:在ECA规则的作用下,使系统数据库及时对内部事件与外部事件的发生或变化做出反应,进而触发工作流管理模型的一系列动作,包括对数据库进行更新以及通知用户或系统相关事件的发生等。在基于协作工作的工作流建模中引入ECA规则不仅可以提高系统的灵活性与实用性,而且可以使模型的设计者能够及时对模型的不合理之处进行修改,提高了模型的适应能力。

2 工作流建模技术的研究趋势

2.1 建模技术的智能化发展

建模技术的智能化发展趋势在当前工作流建模技术中主要体现在由流程检索与工作流挖掘逐步向流程智能化的方向转变。作为工作流建模技术智能化发展的一类系统,流程推荐系统自身拥有一个历史模型库,通过对正处于建模中的不完全模型进行充分利用,进而向建模人员推荐其在工作流建模过程中可能用到的模型列表。在获得相关的模型列表后,建模人员既可以对列表中的某类模型进行直接应用,也可以将列表中的某一类模型进行改动进而得出建模人员最终需要的相关模型。基于智能化发展方向的推荐系统要求其能够利用其自带的推荐算法将当前所建立的不完全的工作流模型与系统数据库中的同类模型进行比对,而此项工作的完成则需要对不同模型之间的相似度进行计算。

2.2 建模技术的灵活性发展

就现阶段而言,对工作流管理系统的设计理念为:在工作流模型的设计阶段,便尽可能地将模型所涵盖的内容与能够解决的问题设计的详细而完全,虽然基于此种设计理念下的工作流管理系统可以满足大部分的应用,但却存在着较大的缺陷,即系统的灵活性较差。工作流建模技对其管理系统的灵活性做出了如下要求,即将建模阶段不确定的信息进行后移,并在工作流模型中留空,使留空部分能够在模型处于运行阶段时对运行环境的变更做出反应并随环境的变更呈现出不同的流程。进而使系统在对流程控制予以强力支持的基础上,增加了系统的灵活性,从而带给用户更好的体验。

3 结束语

本文通过对基于EPC建模、基于协调理论建模、基于活动网络建模等工作流建模技术进行分析,进而从智能化与灵活性两方面对工作流建模技术在未来的研究趋势做出了深入探讨。可见,未来加强对工作流建模技术的研究和应用力度,对于实现企业信息化管理、优化资源配置并促进企业全面、健康发展具有重要的历史作用和现实意义。

参考文献:

[1]高明.知识协同工作流建模?服务规划和服务组合研究[D].东北财经大学,2013.

[2]王海杰.基于组织机构的工作流建模的研究与实现[D].大连理工大学,2011.

[3]单修慧.基于高级Petri网的柔性工作流模型映射[D].中国石油大学,2011.

[4]刘继承,张爱茹,李征鸿.基于petri网的文件审批系统工作流建模[J].微型机与应用,2013(15):77-80.

[5]周望平,黎湖广.基于带权时间Petri网的工作流建模研究及应用[J].长沙航空职业技术学院学报,2013(09):45-50.

作者简介:陈帆(1990.12-),男,安徽黄山人,研究生,研究方向:工作流技术。

工作流技术研究 篇4

一、取得的成绩:

本学期来,在全体教师及教研组的通力合作下,我校其举行全校性教研数次,为紧跟教改步伐,我校本期教研工作以“如何进行课堂教学为主题” 为宗旨,强化语文、数学、艺体教研”,严格按照教研的要求开展工作。强化教师的教育科研意识,以新课程的教学理念,教学方法开展教研。

教研课,教师们都充分准备,认真撰写教案中,都设计引导学生发现问题,让学生动手实践,激活学生思维,主动探究促进学习的环节。在教学中注意教学点拨,掌握策略;在听、评、议的过程中,教师结合自己的观点,各抒己见,找出其中的关键之处进行深入讨论,共同探究解决问题的方法,并反复实践,找到其中的真谛。并达到了取长补短、共同进步的目的。

不断加强校本教材的开发与研究工作,力争早日能编写校本教材。强化现代教育技术研究,让教师不光是掌握现代教育技术,而且要能灵活运用,让其在教学中充分发挥作用。因此项工作开展较好,使得我校各班学生素质有了明显上升,有的班级在素质测试获得了可喜成绩。

二、不足之处:

在教学工作中,我校开展教育科研的力度不够,加之我校地处边远,师资素质相对不高。师资素质不够到致我校的教育研究受到一定的阻碍,对校本教材的开发和利用上还做得不够,老师们挖掘课程资源的能力还需训练。

三、未来设想:

在新课改中拼搏,在拼搏中前进,在信任中生存,是排头小学全体教师的坚定信念,虽然我校师资一够,从素质检测中,我校看到的曙光。在今后的工作中,我们全体教师必然坚定自我信念,不断自修,不断充实自我,在拼搏中前进,不负排头人的希望。在下个学期,我们会更加努力,把教学研究工作做的更好,让我校的各方面成绩更上一层楼。。

与本篇 【现代教育技术研究2010年工作总结】 内容有关的:

2010个人年终总结 | 2010年工作总结 | 镇深入开展文体活动工作总结 | 提高文明程度,开展诚信建设活动工作总结 | 开展文明村镇创建活动工作总结 | 生活部工作总结 | 外联部十二月份的工作计划 | 生活部十二月份工作总结 |

工作流技术研究 篇5

工作报告

在世界上我国是莲子产出大国,在我国湖南湘潭县是莲子产出大县,每年壳莲加工量达4万余吨,占全国莲子总产量的40%。但多年来壳莲加工技术和设备落后。壳莲加工主要分传统手工和半机械加工两种方式。手工加工主要为通心白莲加工。通心白莲是将莲籽在八成熟时及时采摘、手工去壳、去皮、通芯、晒干而成;半机械加工是将完全成熟的干壳莲籽简易机械去壳,人工挑选、开边、钻心、洗白等工序制成洗白莲和占芯红莲等。目前壳莲加工还是费时、费力、效率很低的农产品加工业。为了改变该现状,湖南宏兴隆湘莲食品有限公司从2005年开始致力于改变壳莲加工的技术瓶颈。目前已经初步完成了相关研究目标,相关工作情况汇报如下:

一、研究的目的与意义

1、湘莲产业发展前景很好

湘莲产业是湘潭县的传统产业,湘潭县一直被誉为全国的“湘莲之乡”,全县每年湘莲种植面积维持在5-10万亩之间,平均每年加工和销售莲子在4万吨左右,占全国市场份额的40%。据湘莲上市调研报告,湘潭县常年从事湘莲加工人员达7000余人,2007年加工量达到6万多吨,占全国莲子加工总量的60%以上,产值超过10亿元。湘潭市湘莲贸易加工企业在全国设置销售网络350个,形成遍布国内20个省、市和港、澳、台的销售网络,主要分布在广东、上海、北

1京、南京、黑龙江、福建等地,同时产品还远销韩国、东南亚、欧美、澳大利亚等十多个国家和地区。湘莲作为“莲中之皇”,深受消费者的欢迎,市场需求量也是不断扩大。当前,随着消费群体的扩大,湘莲在食品原料、产品深加工、日常餐桌食用等诸多方面的需求量也不断增大。根据市场调查和经济增长形式综合分析,未来两年湘莲一级市场约需莲子9.6 万吨,二级市场约需用6.4万吨,三级市场约需

2.8万吨,四级市场约需0.9万吨,因此,湘莲产业还有巨大的发展前景。

2、必须关注壳莲加工业的食品安全问题。

壳莲加工是莲子深加工的基础,壳莲加工如能实现高效、低耗,可以减少鲜莲的损失,提高食品安全水平,提高莲业的产业效益,有利于促进湘莲在国内莲子产业的领导地位。但是,2005年以前,由于白色的莲仁市场看好,湘潭出现了用双氧水、碱水处理莲仁的技术,对莲子安全性造成了不良影响,央视每周质量报告对该现象进行了深入报道。报道说:“在花石镇的大街两旁的屋子里,随处可见一包包等待加工的红色的莲子,红莲去了外面红色的皮就成了白莲。记者走进一家正在加工莲子的加工点,工人正在配料。只见他舀出了整整一瓢白色的片状晶体,然后倒进一个缸里。记者翻开片状晶体的包装,上面标着工业用氢氧化钠。随后,工人搬过来一包去了芯的红莲倒了进去。缸里立即冒出了一股浓烟。工人告诉我们,加工业氢氧化钠是为了方便把莲子的皮去掉,至于冒烟的药水是什么?则是工业用过氧化氢。老板说:颜色可以控制,我要它黄色就黄色,要它白色就白色。”

该类强氧化剂和强碱处理的莲子,首先会破坏莲子的营养成分,同时也会给造成污染,给莲子引入的不安全因素。另外莲子的分散加工,也导致个别不法商贩钻管理的空子,参杂使假,以次充好,在去壳后的红莲中发水增重,赚取昧心钱,导致莲籽容易霉变;还有的是将霉烂变质的莲子,通过洗白莲的方式,变成好莲子。这样导致真假莲子难辨,虫蛀霉变的莲子、发水的莲子,经过非法处理,由于外表光鲜,颗粒饱满,流入了市场。该现象久而久之就会影响湘莲产业的发展。

3、提升湘莲产业的效率势在必行。

在湘潭的湘莲加工企业中,90%是壳莲加工。目前是半机械去壳和钻心,其余过程都是人工操作。整个加工过程中,需要的人力多、劳动强度较大,加工效率低,难以提高经济效益。如钻芯操作,一人一天只能加工10余公斤,劳动力成本占加工成本的比率大于80%,导致企业无法发展。因此,提升壳莲加工的机械化、自动化水平是湘莲产业发展的需要。

二、项目实施过程

1、确定了项目的主要研究内容

(1)适宜于机械化程度较高的壳莲加工工艺研究。组装从进料到到成品的一体化加工车间或生产线,提升自动化水平,实现莲粗加工环节减少劳动力80%的目标。

(2)莲子精细分级参数及分级装备的研究,要实现壳莲的高效、低耗加工,首先要对壳莲精确分级。只有分级准确,后续的加工才能高效和自动化。

(3)莲子高效去壳设备的研究。研究目标为:高效、低损、无尘。

(4)利用色选机替代人工挑选的可行性研究。配套脱壳莲色选设备,用设备替代人工挑选,提高选择效率。

(5)高效、精准莲子钻芯设备研究。

(6)莲子磨皮设备研究新。型红莲磨皮设研究目标为:高效、低损、低扬尘。

2、主要研究过程

(1)成立技术攻关小组。确立以公司董事长为组长的技术攻关团队。

(2)确立以自主投入为主,政府支持为辅的发展思路,公司先后投资1000多万元用于莲子机械设备的研究和工艺创新。

(3)产学研紧密结合方式开展系统研究。公司立项以来与湖南农业大学、湘潭大学密切联系,请进来,走出去的方式,开展了数十次的技术研讨会。2012年3 月至10月,在湖南农业大学食品科学技术学院相关教授的指导下,进行了大量的前期理论研究工作,并对各项理化指标完成了检测。对中试和试生产的产品检测以及随后的部分实验室研究都在湖南农业大学进行。

(4)2012年5月-10月壳莲加工自动生产线调试与建设。2012年5月开始,攻关小组根据前期研究,设计了国内第一条壳莲自动生产线,10月进行了试生产。

三、突出的研究成果

1、设计了全新的壳莲加工新工艺,实现了高效、低耗的目标。该工艺以机械性能为依据,通过分级与色选实现分级分类加工、回复加工,简化了加工设备的设计要求,与传统工艺比较提高了工效30倍。

2、研究设计了高效壳莲加工新设备。研究取得了以下专利成果:

(1)全自动莲子分级筛ZL200720062697.0,(2)莲子剥壳机ZL200720062695.1,(3)全自动莲子钻芯机ZL200720062696.6,(4)莲子磨皮机ZL200520050307.9。

3、提出不同莲子加工阶段的色选要求,引入色选机开展壳莲加工。莲子挑选工作包括挑选未能剥壳的莲子、莲仁中的刀损莲子、发霉的莲子等,过去完全依靠人工挑选,存在耗工量大,作业要求不一致,产品质量不能得到统一等问题。通过调整色选模式,配制色选设备,提高了加工质量和生产效率。

四 研究组织工作的特点

(1)研究结合生产需要,研究人员始终工作在生产第一线,根据生产需求和已有的技术基础,调整研究方案。分级机进行了两次结构设计改进,脱壳机、占芯机研发了三代机型。

(2)工艺设计与设备性能同步改进。项目根据自己研发设备的特点,为提高工效,增加出品率,不断调整工艺过程。

(3)引进和集成新技术。根据大米色选原理与色选机制造企业

结合,根据莲子色差小,颗粒大的特点,设计了莲子专用色选机。

(4)产、学、研、产紧密结合。研发过程中,与湖南农业大学、湘潭大学、湖南省农科院相关专家结合,有力促进了研究。

(5)力争各级政府重视。近几年,省委组织部、科技厅、省农开办等单位对该项目予以高度关心与支持,帮助解决了很多问题。正因为如此,项目的进展很快,尤其技术体系快速实现了工业化。

通过多年的研究,近几年来湘潭壳莲的加工技术有了显著进步,现宏兴隆湘莲食品有限已经达到了日产20吨的先进生产水平。提高了莲子的质量,确保莲子及相关产品的安全性,提高了企业的效益,基本达到了预期研究目标。

下一步研究将研究多机一体化,机电、光电一体化的装备,力争建成日产50吨的壳莲生产线。

湖南宏兴隆湘莲食品有限公司

工作流技术研究 篇6

党支部较好地发挥了支部班子的战斗堡垒、领导核心作用和党员的先锋模范作用,凝聚了人心,密切了党群、干群之间关系,有力地推动了文明建设。使全所工作人员的精神面貌焕然一新。

一、领导重视,扎实抓好党建工作

一是班子团结,责任明确,协调合作。党支部每年初都认真讨论制定党建工作计划,并加以分工、明确责任,党支部成员和行政领导经常在办公会议上,针对职工思想状况、业务工作情况等问题加以协调、沟通、统一思想,使党支部的工作更加有针对性、明确性。日常工作中,发现问题,根据分工及时解决。形成了“一把手亲自抓、负总责,分管领导集中精力抓、具体抓”的领导机制。二是全面动员,提高认识。党支部成员带头学习,统一党建工作的思想认识,摆正党建工作重要性,明确抓好党建工作的学习方向,召开支部大会进行动员,进一步提高全体党员对党建工作的认识,调动方方面面力量参与党建工作,要求全体党员充分认识到党建工作是贯彻党中央方针、贯彻落实科学发展观和“党要管党,促进党的自身建设的有效途径,是推进生产力促进工作创新发展的政治保障。三是党支部建设,常抓不懈。根据市委、机关党工委、机关党委的工作部署,着重抓思想政治建设,党支部建设,党员作风建设,精神文明建设。

二、建立健全各项规章制度,用制度促进党建工作

(一)建立完善党建制度为了进一步加强党员和干部职工政治理论业务知识学习,提高党员、干部职工素质,强化内部管理,规范党内行为,维护党内秩序,工作秩序,解决内部矛盾、外在矛盾、发展矛盾,保持党的活力,提高工作效率。党支部从制度入手,贯彻落实科学发展观,保持党员先进性思想,根据“五好党支部要求”建立了《党支部目标管理责任制》、《党员目标管理责任制》、《党内监督制度》、《党支部党员大会制度》、《民主生活会制度》、《议事制度》、《领导班子成员廉洁自律若干规定》、《党员、干部培训规划》。重新修订了《职工手册》,广大职工人手一册,使广大党员干部职工群众做到一目了然,心中有数,即约束了自己的行为,又起到相互监督的作用。党支部一方面在不断完善制度建设,一方面抓好制度的贯彻落实,另一方面抓好党建制度和其它制度有机结合。以党建制度为先导,促进党建工作健康有序、持续发展;促进各项工作健康有序、持续发展。

(二)加强思想建设,开展谈心活动

工作流技术研究 篇7

起源于20世纪70年代中期的工作流技术, 是一项已经得到广泛应用的成熟技术。它的原理很简单, 就是将企业的工作流程部分或全部的自动化或者信息化, 由计算机进行处理, 降低人的劳动强度, 同时提高工作效率, 避免出现人为的错误。一个工作流包括一组任务 (或活动) 及它们的相互顺序关系, 还包括流程及任务 (或活动) 的启动和终止条件, 以及对每个任务 (或活动) 的描述。自从工作流技术出现以来, 它的应用范围越来越广泛, 从最初的办公自动化已经发展到了各行各业的各个部分, 甚至在生产管理系统中也有成功利用工作流技术提供解决方案的例子[1,2,3]。

近年来, 事件的概念逐渐被各个领域的研究学者们提出来, 由于高度的概括性, 其应用很广, 从简单的信息管理系统到复杂的数据处理, 从办公室到生产现场, 所有工作的流程都可以由事件进行高度概括。目前, 对事件还没有统一的定义, 根据研究者们对事件的不同定义, 我们可以了解到, 事件是在一个确定的时间系统所发生的一个操作。由于系统的运行有其固定流程, 所以事件的时间是必须的, 而且这一事件与其他事件的关联关系, 以及所进行的操作, 描述了工作流程中的一个步骤[4,5,6]。

根据事件和工作流的特点, 本文将工作流技术引入事件处理机制中, 将两者结合, 可以有效地优化事件处理过程, 实现更直观、更方便的事件处理。

1 事件处理机制分析

事件, 由具体的信息流或者工作流程提取, 可以抽象的描述一个完整工作流程的一个步骤或者工作。事件可以包括很多操作, 也可以只有一个操作。我们可以定义从具体工作流程中提取出来的一个操作为一个事件。

定义1:事件是实际工作流程中的一个具体操作或者步骤的提取。

事件可以有很多类型, 因为不同的操作对应不同的事件。事件也具有多种属性, 可以将这一操作描述得更加完全, 不会丢失任何关键元素。同时, 事件的属性也可以帮助事件进行分类, 具有相同属性的事件可以是一类属性, 他们可能代表相同的操作。

定义2:事件具有属性, 而且属性可以描述这一操作的具体细节。

定义3:事件根据所对应的属性不同, 被分为不同的类别, 每一类事件具有相近属性, 并且在实际工作流程中起到相近的作用。

事件代表了实际工作流程中的一个操作, 如果这一操作可以继续细化, 那么这一事件也可以被分为多个子事件, 是这些子事件的合集。

定义4:如果事件可以被多个子事件按照一定规则所描述, 那么这个事件是可分的, 分解出来的事件被称为该事件的子事件。

如果这一工作流程不能够再次细化, 那么这一事件就不能被再次分解, 这样的事件称之为元事件。

定义5:如果事件不能再次分解, 那么它就是元事件。

元事件在工作流程中是最小单位, 不能被分解, 是流程中最小的逻辑单元。对于实际工作流程, 我们可以将事件提取出来, 映射为事件处理流程, 并按照实际流程建立事件与事件之间的驱动关系。如图一所示。

事件的处理机制, 也是事件的驱动机制。事件的执行, 可以触发其后续事件的产生, 驱动工作流程的前进。事件的驱动主要是事件和活动, 比较有代表性的为ECA规则[7]。其中E代表Event (事件) , C代表Condition (条件) , A代表Active (活动) 。ECA规则的策略是当事件发生时, 由监视器捕捉, 根据条件采取相应的动作, 或者触发新的事件。ECA规则由于简单易懂, 所以应用广泛。在由事件描述的工作流程中, 需要利用ECA规则, 将事件建立联系, 组成网状结构, 映射实际的工作流程, 使事件的处理机制同实际的工作流程完全相同。事件处理流程如图二所示。

将实际工作流程抽象为事件处理流程, 可以简化一些与工作不相关的事件, 例如再生产过程中我们不关心工人在工作时休息多久, 或者产品等待加工时在什么位置以什么状态放置, 我们只关心产品加工时间, 以及对应的工位、工人, 以及产品相关的物料信息。对于无关信息, 不需要在事件的属性中体现这些内容, 可以减少工作量, 提高工作效率。

2 工作流技术介绍

工作流管理联盟提出的工作流定义是:工作流是一类能够完全或者部分自动执行的经营过程, 它根据一系列过程规则、文档、信息或任务在不同的执行者之间进行传递与执行的流程[8]。工作流技术的最大特点来自于它的最初应用对象, 即办公自动化领域。最初的工作流技术是用于处理繁杂的文件, 为了避免文件在处理的过程中不按照规定执行, 并且避免将文件发送给错误的对象或者在传递过程中丢失。所以, 所有的操作或者工作必须按照事前规定的流程进行, 这样就对事件的处理过程增加了限制, 保证事件的处理能够按照规定的流程进行。

工作流技术的重点在于流程, 也就是保证事件处理流程的正确。工作流技术可以将工作进行分解, 并且严格按照规定的规则执行, 通过定义角色、规则、任务和过程对工作的执行情况进行有效管理, 从而达到提高工作效率的目的。运用工作流技术, 可以很好的支持事件处理流程的建模、仿真和优化, 并且对事件处理过程进行监控和管理。

3 基于工作流的事件处理机制

工作流技术在事件处理机制中的应用, 主要在于将事件处理的全过程交由工作流处理。因为工作流的特点在于流程管理, 可以有效地建立事件模型、仿真事件处理流程、优化事件处理过程。利用工作流技术, 可以有效提高事件处理的效率。

事件的处理机制, 反映的是系统对于事件被触发执行时的处理机制, 是实际工作流程的映射, 对应工作流程的走向。当事件被触发执行时, 会有对应的事件生成并触发, 这一过程需要按照规定, 在满足条件时执行。工作流技术可以将每一步工作流程进行定义, 定义事件的触发条件及时间, 可以保证事件的处理在规则范围内。

引入工作流技术, 我们将事件进行定义和分类, 并且根据事件不同的类型, 定义不同的属性, 这些属性所包含的信息非常关键, 可以说这些事件属性是实际工作流程映射到事件模型的信息载体, 承载具体的工作信息。工作流技术通过对不同类型的工作定义不同的工作, 对活动中的工作流程进行管理, 对应事件模型, 就是对不同类型的事件区别对待, 将其引向不同的操作对象或者新事件。

在工作流技术中, 真正的核心在工作流引擎, 它是处理所有工作的处理器。对于不同类型的工作流软件, 工作流引擎有不同的类型, 例如单线程、多线程、分布式等。不同类型的工作流引擎具有不同的特点, 如果信息处理量较小, 单线程工作流引擎即可以满足需要;如果数据量大, 而且对时间要求较高, 就需要引入多线程分布式工作流引擎, 多线程并发处理工作, 使工作流系统满足使用要求。

在工作流管理系统中, 我们首先需要定义事件模型, 并且根据不同事件类型, 定义其触发条件以及后续触发执行的对象。每当有事件被触发的时候, 就将其交给工作流引擎, 对其按照预先定义的规则进行处理。根据实际数据量及系统要求, 我们可以选择不同类型的工作流引擎。工作流管理系统对事件处理流程的管理示意图如图三所示。

4 验证和结论

本文提出一种基于工作流技术的事件处理机制, 这一机制充分利用了工作流技术的优势和特点, 将事件的处理机制交由工作流进行管理。保证了事件模型的有效性和易懂性, 同时可以更方便的对事件处理过程进行管理和监控, 有效提高了事件处理的效率。通过在实际生产管理环节中的应用, 证明了该方法的有效性, 明显提高了管理系统地工作效率。

摘要:本文提出了一种基于工作流技术的事件处理机制, 将实际管理流程抽取为事件模型及事件处理流程, 引入工作流技术对事件处理的流程进行管理。该方法结合了事件模型和工作流技术的优点, 可以对企业的流程管理提供一个简单有效的解决方案, 最后通过实际应用证明该方法的有效性和可用性。

关键词:工作流,事件,ECA规则

参考文献

[1]于万钧.工作流管理技术研究[D].长春:吉林大学, 2004.

[2]谭咏梅.基于事件驱动的工作流引擎设计[J].科技广场, 2013, (02) :48-52.

[3]韩波.基于工作流架构的群体性事件指挥决策系统[D].上海:上海交通大学, 2012.

[4]杨新艳.复杂事件处理在分布式工作流监控中的应用研究[D].青岛:中国海洋大学, 2007.

[5]王宇, 李磊.基于Petri网工作流模型的复合事件检测的分析和分解[J].计算机工程与科学, 2006, 28 (07) :95-97.

[6]杨新艳, 徐建良, 肖旭岭.复杂事件处理在工作流管理监控模块中的应用[J].微计算机信息, 2006, (11X) :12-14.

[7]杜彦华, 范玉顺.基于事件—状态—过程规则的跨组织工作流协同方法[J].计算机集成制造系统, 2008, 14 (07) :1342-1348.

工作流技术研究 篇8

关键词: 业务过程; petri网; 构件; 工作流模型

中图分类号:TP311文献标识码:A文章编号:1009-3044(2007)15-30752-03

A Component-based Modeling Appoach to Workflow Process

HU Jin-yu1, CAO Man-man2, WANG Mian2

(1. Information Sevice of Party School, Jining 272000, China; 2. Colleage of Computer Science, Qufu Normal Uninversity, Qufu 273165, China)

Abstract:This paper frist gave a component-based modeling appoach to workflow process after evaluated various of existing modeling appoach to workflow. The appoach introduced a new conpect-component workflow-net, and some new modeling elements, which made the workflow process much more abudant-expression and imporved readablity and resuability, then a modeling application given. Finally, it discussed the further research work.

Key words:Buiness process; Petri nets; Component; Workflow model

1 引言

一个工作流系统的成功在于其输入工作流的质量,工作流的建模问题成为研究的热点问题。工作流建模是指利用一定的分析、建模和定义技术将业务过程翻译成可用计算机处理的流程定义,所得到的定义可以称为过程模型或过程定义。过程建模主要解决如何根据过程目标和系统约束条件,将系统内的活动组织为适当的经营过程的问题。基于构件的开发(CBD)是一种软件开发方法,它是在某种软件模型的支持下,复用构件库中一个或多个构件,通过组合算法高效率、高质量的组装软件系统的过程,在用户和系统开发者来看,CBD是一种能够降低开发费用、提高开发效率以及在快速的开发技术演化面前提供受控的系统升级的开发方式。构件是CBD的基本要素。如何将工作流活动构件化是本文讨论的中心问题,在此思想基础上本文提出了一种新的建模方法,并引入新的建模元素——构件接口描述。

2 相关研究

为了实现流程定义在不同工作流管理系统之间的互操作,WFMC在2002年发布了基于XML的流程定义语言XPDL,但XPDL将重点放在语法上而不是语义上,定义的流程模型的存储形式。UML活动图采用图形符号表示活动及活动间的关系,简单直观,也体现了一些可用的较好的建模经验,但它仍苦于缺少精确语义,UML还处在形式化和非形式化过程建模技术之间。基于事件驱动的过程链(EPC),一种应用比较广泛、用来描述企业事件和经营过程的传统方法,基本元素是事件和功能,经营过程的控制流就通过事件和功能彼此连接,控制流的路由通过逻辑操作符或更复杂的表达式表示出来,能够兼顾模型描述能力和模型易读性两个方面,但是对于工作流引擎来说,EPC模型的执行效率不高。基于语言行为理论的工作流模型是在“语言行为”的基础上提出的一种协作过程的建模方法。协作过程的基本元素是一个闭合的环,连接和客户方和服务方两类角色。前者向后者提出要求,后者尽量满足前者。这种建模方法对层次化建模方法能力不足,不适合比较固定的企业经营过程、建模人员很难完整明确的罗列出双方可能的语言行为等。Petri网是既有直观的图形表示能够描述系统的动态行为,又有严格的数学基础的形式定义,因而基于petri网建模是工作流模型中研究的一个热点,并成为未来主流的建模工具,它利用库所表示条件,用变迁表示活动。但基于petri网的工作流模型过于复杂,且缺乏层次性和互操作性。鉴于此,有人提出在petri网建模的基础上引入面向对象技术,将流程进行划分,从而可以表示复杂的流程,提高可读性,但随着企业信息化的广泛深入,不断变化的需求、复杂的业务流程、领域知识的缺乏都会导致软件的变化,同一类型的软件的重复开发不仅浪费了人力物力,复用会占应用系统的开发的大部分,面向构件的开发是最好的软件开发方法,而面向对象的技术是来描述实体的,复用粒度还太小,不足以解决异构互操作和效率更高的重用,建立的业务流程通用性不强。

针对上述各种工作流建模方法的比较分析,本文提出了一种引入构件技术建模的方法。构件将抽象程度提高到一个更高的层次,它是对一组类的组合进行封装,并代表完成一个或多个特定的服务,为用户提供一个或多个接口。这样,利用构件技术可以把一些不同企业的工作流系统的业务过程的相似或相同的部分抽象组合封装,提高通用性,并依然利用petri网分析技术对该模型进行分析。

3 基于构件技术的工作流过程模型

3.1 引入构件技术的意义

将生产硬件零部件组装成产品的思想运用到软件生产中来就是构件,对于软件构件一直以来没有一个严格的定义,一般的定义是:构件是可复用的软件的组成部分,可被用来构造其他软件。它可以是被封装的对象类,类树、功能模块、软件架构、体系结构、文档等,通常具有预制性、封装性、互换性、通用性。开发者只需在现有构件库中查找自己所需的构件按照某种标准搭建自己的系统。构件有三大基本元素:(1)接口:告诉使用它的用户它所提供的功能;(2)实现:构件功能实现的方式;(3)部署:构件存在的形式,通常是以二进制代码形式存在。

日常生活中我们处理的业务过程按照重复性大致分为三类:(1)重复的且有规律性的,如学生注册过程;(2)重复的但无规律的,如生产上衣和裤子的过程;(3)唯一的任务,仅在特定的场合下完成,如某一建筑的设计;按照结构化程度分又可分为结构化的、半结构化的和完全没结构的。在实际的企业生产和经营中最常见的是重复无规律的半结构化的业务过程,它们有一定的共性但并不完全相同,这样就可以利用构件技术将业务过程的一部分或全部甚至将整个工作流模型抽象封装,提高开发效率,节省人力物力。

3.2 基于构件技术的工作流建模方法

由于petri网自身的复杂性,且对复杂的业务流程表达能力欠缺,通用性不强。现将构件的思想引入到工作流建模中,原组成petri网的基本元素库所和变迁抽象成构件接口去描述,将原来变迁所表示的任务用某一连接构件接口描述,用库所所表示的条件封装在该任务所用的功能构件中,库所和条件组成的路由信息封装成某一连接构件,形成一个构件化的petri网,我们称之为构件工作流网,现给出构件工作流网的定义。

定义1:构件工作流网由功能构件和控制构件组成,是功能构件之间通过控制构件或有向弧互相连接形成的一个工作流过程图形描述,它通过构件描述一个工作流过程,并且进行分析验证时可以映射为petri网。

表1是在petri网基础上引入构件思想后的工作流流程表示元素的比较。

表1 petri网模型和基于构件的模型的建模元素比较

下面给出基于构件技术的工作流建模的算法:

(1)根据领域知识和需求分析,将该工作流的业务过程的每一个任务按照功能抽象粒度,分别用原子构件接口和组合构件接口去描述;

(2)然后分析任务之间的逻辑关系,确定任务之间的路由,并由相应的连接构件接口表示;

(3)根据接口规范从现有的构件库中根据某种查找检索方法查找每一任务所需的功能构件和任务间连接所需的连接构件,如果找到了,转第(5)步;

(4)如果在构件库中找不到合适的构件,则根据现有构件库中已有的构件组合创建新的所需的构件,或购买合适的构件,并将其保存在构件库中;

(5)将选择的功能构件和连接构件进行组装,形成一个工作流模型来描述该业务流程;

(6)对该工作流模型进行定性分析和定量分析,避免出现逻辑上的错误,并对其考察过程性能。如果有错误,则重复(1)-(6)步;

(7)通过分析要求后,将组装的该工作流模型注册并保存在构件库中。

3.3 工作流概念到构件工作流网的映射

现在将用构件工作流网来表示工作流中的一些概念。一个业务过程由一些任务和条件和子过程组成。那么,一个业务过程就由功能构件和连接构件表示,任务用功能构件表示,条件被封装在功能构件中,子过程用功能构件和连接构件组装后构件表示。业务过程中的任务间逻辑关系即路由关系,将其封装成连接构件。结合petri网的图形表示和数学表示方法,分别给出功能构件和连接构件的接口的形式化描述定义。

定义2:功能构件是一个八元组UC=(ID,N,Sc,Ec,I,O,R,S),其中ID代表构件的关键标识,N代表构件的名称,Sc代表构件的开始执行的条件,Ec代表构件的结构执行的条件,I代表构件的唯一的输入接口,O代表构件的唯一输出接口,R代表构件所需要的一些数据文档信息和资源信息,S代表构件所处的状态,如就绪、挂起、执行、结束等等。图1是功能构件的图形表示。

图1 功能构件

(1)开始构件:表示一个流程的开始,也可以做另一流程的入口;

(2)结束构件:表示一个流程的结束,也可以做另一流程的出口;

(3)原子构件:表示工作流中不可再分的工作单元;

(4)组合构件:由多个原子构件组合的构件,含有功能构件所有的属性;

(5)子过程构件:本身是一个工作流模型,在子过程构件中还可以含有其他子过程构件,形成层次阶梯型工作流模型。

定义3:连接构件CC是一个七元组(ID,N,R,I,O,L,S),其中ID表示构件的关键标识,N代表构件的名称,R代表构件的属性集合,I代表构件的输入接口,O代表构件的输出接口,L代表构件的逻辑集合(AND,OR,XOR),S代表结构集合(split,join)。图2是连接构件的图形表示。

图2 连接构件

工作流模型中任务只有被触发后才能转换为活动,在这里我们仍然区分三种类型的触发:(1)资源主导;(2)外部事件;(3)时间信号。它们的图形表示借助petri网中的图形描述,即被资源触发的任务用一个向下的宽箭头表示,被外部事件触发的任务用一个信封符号表示,被时间触发的任务用一个时钟符号表示。图3是三种触发的图形表示,如果没有符号的触发则为自动执行。

图3 触发机制

4 建模实例

基于构件技术的建模方法构造出的工作流过程模型较传统的petri网有以下优点:

(1)模型表述能力强,结构简单直观,利用功能构件和控制构件几乎可以表示所有工作流业务流程;

(2)支持层次型模型建构,子工作流模型可以作为一个功能构件在新的工作流模型中使用,结构清晰,避免了因复杂过程而造成的业务过程模型爆炸;

(3)模型容易设计,易于实现,且通用性和复用性强,两个相似的业务流程可以在一方的过程模型基础上进行修改,而不必重新创建新的流程;

(4)采用图形化形式建模,方便直观,又在petri网理论的支持下,在进行分析验证时可以将其转化为扩展的petri网,很容易利用强大的petri网分析技术,保证流程的正确性。

一个好的工作流模型应该满足以下几个要求:有形式化语义;有较完整的表达能力;具有层次性;便于工作流性能分析;图形化特征;易构性;可见构件工作流网模型几乎满足了上述几个要求。

图4给出某一保险公司处理索赔的工作流模型,它包括如下一些任务:纪录索赔申请,确定索赔类型(联系部门),检查顾客的险种和保险费(联系客户),进行特定具体的索赔操作。

图4 一个索赔过程实例

具体索赔处理是一个子过程构件,它本身也是一个过程模型,具体执行流程由组合构件(联系客户和联系部门)的输出口信息确定。例如可以是对交通事故索赔处理,也可以是对财产失窃索赔处理,这两个索赔的处理过程类似,当然也有一些不同,交通事故索赔可能要涉及到法律诉讼,而财产失窃可能就涉及不到,这样我们就可以在处理交通事故索赔过程的基础上对其进行修改,而没必要再重新建立一个工作流过程。

5 总结和展望

在提倡软件复用的时代,将软件技术引入工作流建模方法中,可以很好的提高复用性,它把业务过程的每一个任务能提供的功能服务详细分解组装成各类构件,在一定程度上缓解了因业务过程复杂而无法精确建模的情况,建模简单直观,有很好的适应性和通用性。但基于构件技术的工作流建模还有一些未探讨、待研究的问题:

(1)如何体现和加强构件工作流模型的柔性和动态自适应性;

(2)利用哪些软件组装方式可以高效的将功能构件和控制构件组装成一个有效的工作流模型。工作流模型定义完整后如何更好的将其投入运行阶段;

(3)该建模方法还应结合已有的工作流管理工具和系统来具体实现;

(4)在性能分析方面,应考虑如何建立基于该模型的仿真环境。

参考文献:

[1]李锡祚,韩桂英. 一种结构化的工作流过程建模方法[J]. 计算机工程,2005,31(8):63-65.

[2]杨芙清,梅宏,等. 软件复用与软件构件技术[J]. 电子学报,1999,27(2):68-75,51.

[3]范玉顺. 工作流管理技术基础[M]. 北京:清华大学出版社,2001.

[4]欧阳俊. 基于petri网工作流建模的研究与实现[D]. 湖南:湖南大学,2005.

[5]李红臣,史美林. 工作流模型及形式化描述[J]. 计算机学报,2003,26(11):1457-1463.

[6]阿斯特, 等著. 王建民, 等译. 工作流管理:模型、方法和系统[M]. 北京:清华大学出版社,2004.

[7]李红臣,史美林,等. 工作流系统中的业务过程描述及分析[J]. 计算机研究与发展,2001,38(7):799-804.

上一篇:政党制度课时练习下一篇:劳动节演讲稿简单