业务流程管理综述

TJDLUT

摘要:业务流程管理包括支持业务过程分析、设计、执行、管理的方法、技术及工具。它可以被看作是经典工作流管理系统和方法的扩展。本文主要介绍业务流程管理的基本概念、相关技术,以及讨论形式化方法/语言对业务流程管理的作用(例如Petri网,过程代数等)。

关键词:业务流程管理 工作流管理形式化方法

引言

首先了解一下信息技术演化的过程是有助于我们地更好的了解业务流程管理系统的相关知识。从图1中,我们可以看到当今信息系统发展的趋势[3]。该图表明当今的信息系统包含了几个层。中心层是直接和硬件打交道的操作系统;第二层是通用的应用程序,这些应用程序在企业中有广泛使用,比如Microsoft Office;第三层是为某些特定领域所开发的软件,这些软件局限于专业的企业或者部门内部使用,比如人力资源管理系统,Call Center系统等;第四层是专业定制软件,这些软件仅仅为特定的公司组织开发,通用性较小,专业化程度很高。


1 信息系统技术演化趋势

在二十世纪六十年代,信息系统中不包含第二层和第三层。信息系统建立在一个小型的操作系统上,仅仅有特别局限的功能。因为那时没有通用软件也没有行业专用软件,当时的信息系统仅仅包含专业定制软件。从那时开始,第二层和第三层软件逐渐发展起来,此外第四层软件的种类逐渐增多,同时增加了更多的功能。当今,操作系统更加强大,存在于第二层的数据库管理系统为第四层软件的发展提供了更多的功能上的支持。这种趋势导致,软件的发展的重点由单纯的编程转向以组件的形式组成更加复杂的系统。当前对软件供应商的挑战不再是某一模块的代码编程,而是把第四层软件的功能协调整合在一起。

另外一个趋势是软件发展的重点从数据处理转向流程管理。二十世纪70年代、80年代,软件主要以数据驱动的应用程序为主。信息技术的重点存储和提取信息数据,因此数据建模是当时建立一个信息系统首先要做的工作。业务流程建模经常被忽视,并且流程经常要适应当时的信息技术。管理趋势,如业务流程重组,则越来越重视流程管理。因此,系统工程师们开始转向基于流程的系统得开发方法的研究。

最后一个趋势是事前详细设计转向过程重设计及组件重组。由于Internet的发展,信息系统发生了巨大的变化,越来越少的信息系统是从零开始建造。在很多案例中,我们可以看到很多应用程序中的某些组件和功能被移植到新的系统中。尽管基于组件的软件开发方式仍然存在一些问题,但是我们可以看到软件的开发方式变得越来越多样化、更加动态化。

业务流程管理系统或是存在于第二层独立的软件,或是集成在第三层软件中的组件。存在于第二层体系中的业务流程管理系统的例子是工作流管理[1112131415],比如StaffWareMQSeries,和COSA。在主导的ERP系统(第三层)中,工作流管理经常作为一个组件出现。SAPBaanPeopleSoftOracle的工作流引擎可以看作是集成的业务流程管理系统。将业务流程管理分离出来作为一个独立的组件的想法和第三种软件发展趋势相吻合。业务流程管理系统避免将工作流程硬编入专业软件的繁杂工作,同时提供了对从硬编程到重组组件的支持。比如,现今的工作流管理系统可以用来集成到已经存在的软件中去,支持当业务流程改变的时候,只需要更改工作流程图,而不必重新编程。将业务流程管理作为一个独立的组件的想法也和Web Service的创意一致:Web Service语言,比如,BPEL4WSBPMLWSCIXLANGWSFL可以被用于从使用WSDL定义的系统中提取出服务。

从科学的观点来看,上述观点早在早期的办公信息系统中即有体现。在二十世纪70年代,Skip Ellis[16], Anatol Holt[23], Michael Zisman[18]已经开始了研究所谓的办公信息系统的工作,这种系统以流程模型为驱动。这三位先驱都是利用Petri网为工具对办公流程建模的。20世纪70年代到80年代之间,是发展办公信息系统的大好时机,不幸的是,很少有真正的软件成功开发出来。因此,该技术和软件的研究几乎停滞了十年之久,结果是,在80年代几乎毫无进展。在20世纪90年代,研究界重新对该领域产生了浓厚的兴趣,一些工作流管理系统在90年代的后五年中开发出来,并且学者们发表了大量关于工作流技术的论文。现今,工作流管理系统基本有了雏形[13]。然而,这些软件仅仅局限于特定的领域,比如银行业和保险业。就像Skip Ellis指出的,从上述的盛衰沉浮的发展进程中学习到宝贵的经验是非常重要的[24]。在80年代的失败可以归咎于技术和理论的不成熟。当时,网络不发达或者某些地区根本不存在,没有合适的图形界面,并且没有合适的开发工具。然而,最根本的问题在于,没有统一的流程建模模型,并且那些系统太过于刚性,以至于人们不能真正将之应用到实践中。上述大多数技术问题现今已经解决,然而概念上的问题依旧存在:没有统一的业务流程建模标准,以及当今的工作流管理系统在过程逻辑上增加了许多不必要的限制,比如流程大多被订制成顺序执行。

1.业务流程管理的需求与产生的背景

业务流程(也叫做经营流程)是为了实现一定的经营目的而执行的一系列逻辑相关的活动的集合,业务流程的输出是满足市场需要的产品或服务。根据功能、管理范围等的不同,企业的流程管理一般分为生产流程层、运作层、计划层和战略层四个层次[3]。表1对各个层次做了比较。

1 流程管理的四个层次

管理层次

功能

管理范围

影响时间范围

使用方法

信息系统支持

生产流程层

设备和工艺的实时控制

具体设备

很短

流程控制理论

现场总线、数据采集和监控系统

运作层

制作执行流程管理

车间

较短

调整和优化理论

制造执行系统、车间调度系统等

计划层

资源能力计划和预算

部门至企业

较长

统计和随机模型、优化理论

企业资源计划

战略层

战略调整、流程设计和资源类型确定

整个企业

经济模型、决策模型

知识管理、决策支持系统

流程管理的各层次均有相对独立的、特定的方法,但层次之间也有着密切的联系。首先,高层的管理目标最终要通过低层的业务活动来实现;其次,当低层的管理解决不了实际问题时,就需要引入高层的管理,例如当运作层的调度无法解决资源的配置问题时,就说明分配给该流程的资源数目需要修改,此时需要引入计划层的管理,重新进行资源能力计划的计算;最后,低层的数据为高层的管理决策提供依据,企业的策略管理和战略管理中的模型和参数来自对企业实际经营活动统计数据的积累。因此,从整个企业流程管理的角度来看,有必要将这四个层面上的流程管理统一到一个框架下,并和企业的信息系统联系起来。

从企业信息系统的角度来看,办公自动化系统、事务处理系统和决策支持系统等都是常见的企业信息系统,但这些系统并没有加入流程的因素,只是用来帮助员工更好地完成某些特定的任务。工作流系统的出现使得整个流程的自动流转或自动执行成为可能,但是工作流一般只解决生产流程层的问题,与企业的计划和战略决策还存在一定的脱节。另外,随着企业业务流程向企业外部(供应商和客户)延伸,传统的工作流系统无力解决跨企业的流程集成问题。基于以上原因,面向企业的业务流程管理解决方案由此应运而生。

业务流程是把一个或多个输入转化为对顾客有价值的输出的活动。简而言之,业务流程是以涉及为顾客提供产品或服务为最终目标的组织活动的集合。一个典型的业务流程应该包括下面六大要素:流程目的(它存在的理由);输入资源;按一定秩序执行的活动;这些活动之间的结构(相互关系和作用);输出结果;该流程创造的价值。

一家企业成功的基础,就是通过业务流程协调各种资源来达成企业目标。无论是向顾客交付产品,与合作伙伴协同,还是引导员工的努力,业务流程能够将企业的产品、品牌和价值有机地编织到一起,例如下面这些业务活动都是业务流程:根据生产所需,安排原材料的检验、入库和供应;回答客户的咨询;从供应商那里采购;向市场投放新产品。事实上,业务流程集成了企业内各种业务的特征,业务流程也因此成为企业运作特性的核心。

2BPMBPMS的基本概念

2.1 BPM的基本概念

业务流程管理(Business Process Management, BPM)不是一个新概念,甚至不是一个新名词。它是从相关的业务流程变革领域,如业务流程改进(BPI)、业务流程重组(BPR)、业务流程革新中发展起来的。流程管理技术也是从早期的工作流管理、EAI、流程自动化、流程集成、流程建模、流程优化等技术中发展起来的。

很多人认为业务流程管理(Business Process Management BPM)是90年代工作流管理系统的扩展。因此,我们使用工作流的术语来定义BPM。工作流管理联盟(WfMC)定义工作流为:工作流是一类能够完全或者部分自动执行的经营过程,它根据一系列过程规则、文档、信息或任务能够在不同的执行者之间进行传递与执行”[13]。工作流管理系统(WFMS)的定义是:工作流管理系统是一个软件系统,它完成工作流的定义和管理,并按照在计算机中预先定义好的工作流逻辑推进工作流实例的执行”[13]。上述两个定义的重点都在于工作流的执行,也就是使用软件支持操作流程的执行。在过去的几十年里,很多研究学者开始意识到仅仅把重点放在工作流执行上过于局限,于是新的术语BPM诞生了。现今存在很多BPM的定义,但是从中我们可以看到大多数定义都包含了工作流管理的内容。

从管理理论或战略的层面看,业务流程管理(BPM)就是在一个存在内部事件和外部事件的环境中,由一组相互依赖的业务流程出发,对业务进行描述、理解、表示、组织和维护。从具体实施的层面看,BPM 还可分为流程分析、流程定义与重定义、资源分配、时间安排、流程管理、流程质量与效率测评、流程优化等。

Gartner Inc.给出的BPM 的定义[17]是:BPM是一个描述一组服务和工具的一般名词,这些服务和工具为显式的流程管理(如流程的分析、定义、执行、监视和管理)提供支持。


2 BPMWFM的生命周期

2表明WFMBPM生命周期上的联系。在设计阶段,业务流程被定义或者是重新定义;在配置阶段,定义的流程在基于流程的信息系统中实施;在实施阶段,业务流程开始利用在配置阶段的内容开始实施;在诊断阶段,系统开始分析业务流程以发现其中的问题和需要改进的地方,在流程设计阶段重新定义,往返循环不断地优化业务流程。相对比而言,传统的WFM的重点仅仅存在于BPM的下半部分。所以WFM在诊断阶段基本上没有什么支持。此外,WFM对于设计阶段的支持很少,仅仅提供了一个编辑器,而对实时的设计分析没有支持。因此,几乎没有WFM支持流程设计的仿真,验证,确认以及对实时数据的收集、解释。从理论上说,可以从工作流日志中可以挖掘业务流程,然而现今没有软件能够真正做到这一点。

从图2中我们也可以很清晰地看到BPM的研究范围以及BPM和工作管理(WFM)的在其他方面的区别和联系[1]

1)从产生的背景来看,工作流的概念起源于生产组织和文档自动化领域,它十分强调任务和文档的概念。而BPM 是在EAI、工作流和BPR等一系列技术或理念的基础上发展起来的,BPM 中流程的概念已经超出了任务的集合这一范畴。

2)从对业务流程的管理来看,工作流侧重于业务流程的自动化。从WFMC给出的工作流的概念中可以看出,工作流强调业务流程的自动或部分自动的执行。自动化是业务流程管理很重要的部分,但不是全部。从这个意义上说,工作流对流程的管理应该处于表1所示的运作管理和部分计划管理层面。而BPM 是业务流程管理的整体解决方案,它涵盖了业务流程的建模、运行、监控、分析等多个方面,以及从生产管理到战略管理的各个层次。

3)从对业务流程类型的理解来看,工作流侧重于管理结构化的流程,这些流程从一个参与者流转到另一个参与者。工作流在银行、保险、税务等领域应用比较广泛,其原因就是这些领域的流程往往十分结构化。而BPM 对流程的并行、协同和分布的支持能力更强。

现今,很多工作流供应商开始把他们的系统定位BPMSBPM systems)上。BPABusiness Process Analysis)是其中很重要的一个方面[25]BPA主要覆盖了传统的工作流产品所忽略的方面(例如,诊断,仿真,等)。BAMBusiness Activity Monitoring)是BPA中的一个方面,BAM工具的目的在于使用信息系统日志中的数据来诊断业务流程。例如,ARIS流程性能管理(ARIS PPM)软件[26]从日志细节中提取出信息,并把这些信息以图形的方式表示出来。BAM也能进行流程挖掘,比如从日志中挖掘出流程模型[27]

在流程重设计阶段,现今有两种趋势:STPStraight Through Process)和CH(Case Handing).STP是指业务流程执行的完全自动化,即不需要人工参与。STP仅仅适用于一部分案例,因为不可能所有的过程都是符合STP的要求,有时要人工参与才能完成工作。而CH将案例分为两种:(1)可以被自动执行的案例(2)需要人工参与的案例。STP目的在于将更多的流程自动化,而CH则认为很多流程过于动态和复杂而不能完全自动化[11]

2.2 BPMS的基本概念

关系数据库分离了应用程序使用的数据和具体的应用逻辑。数据库作为数据持久的存储集合,使用实体关系模型和诸如两阶段提交这样的协议来保证数据的完整性和正确性。数据库的理论基础和实现机制十分复杂,但是对数据的各种操作却可以通过相对简单的接口(SQL)加以实现。

业务流程管理系统(Business Process Management SystemBPMS)的提出也是基于这一思想。BPMS使企业能够对核心流程进行建模,部署和管理。企业信息系统所处理的业务流程越来越复杂,需要不断调整才能适应市场,这对企业信息系统的灵活性提出了更高的要求。工作流系统完成了业务逻辑与应用程序的分离,提高了流程的灵活性,但工作流通常侧重于结构化流程的自动化执行,还不足以支持整个企业的业务运转,在此背景下提出了BPMS的概念。与DBMS的思想类似,BPMS的思想以一种统一、中性的表示方法描述业务流程模型,使业务流程模型从实现逻辑中抽取出来,被各个企业应用程序所使用,从而灵活地构建基于流程的信息系统。业务流程逻辑、业务流程的完整性和正确性可以由BPMS保证,企业信息系统的开发可以基于BPMS进行[4]

一般而言,BPMS应具有以下功能模块:

1)流程仓库 为流程以及与流程有关的知识提供集中的存储场所,提供目录服务以便于流程的查询和发布。

2)流程设计 设计流程的模块、逻辑、规则和执行角色,提供流程模板和重用机制。

3)流程配置 为流程实例的运行绑定参与者,分配资源,以及设置其他特定的参数。

4)流程引擎 驱动流程的运行并负责流程数据的维护;管理流程的状态,实现流程的事务管理。对于分布式流程,要与其他流程引擎进行交互和协调。

5)流程维护 流程的监控和异常处理。

6)流程入口 为流程的用户提供统一的流程访问机制,包括工作任务列表、报告等;提供企业联盟的流程访问规则。

7)流程优化对资源利用进行优化,保证流程的一致性,防止死锁。

8)流程分析 对关键性能指标进行分析和流程仿真;对流程的时间和资源性能进行分析。

3BPM的框架研究

有关BPM 的学术研究散见于工作流、软件工程和管理科学等领域,对BPM 整体框架的研究较少,目前较有影响的是EDL-BP提出的BPM建模软件技术框架,业务流程管理联盟(Business Process Management InitiativeBPMI)提出的一系列标准和框架。另外,IBM 基于其企业应用软件,提出了持续业务流程管理(Continuous Business Process ManagementCBPM)框架。

EDL-BP(Eindhoven Digital Laboratory for Business Processes)根据BPM的生命周期提出了BPM建模所需技术的框架,如图3所示。


3 BPM建模所需的技术框架

    从图3中我们可以看到不同的建模阶段需要不同的技术(包括软件),以及这些技术之间的联系。业务流程通过业务流程建模分析技术建立模型然后以信息系统的形式表示出来。MOD模块使用BBDP技术把现有的实际的BP抽象成为图形化和形式化的业务流程,在通过ANA模块中VALVER来校验业务流程是否合理和正确,随后用PERF工具对业务流程进行性能分析,用OPT技术对业务流程进行优化。在得出了正确合理优化后的业务流程后,使用CG技术将业务流程模型集成到现有的产品中去,用IS的形式反映出来。

BPMI的主要发起者Intalio公司基于BPMI的系列标准提出了BPM 框架[18]在这个框架中,BPMI系统介于企业已有的信息系统和B2B电子商务系统之间,包含流程部署和流程执行两个模块。流程部署模块可以利用目录协议与企业IT系统的目录服务进行联系,另外,还可通过UDDI协议将流程发布为Web服务。在流程执行模块中,流程可以被其他的高级语言包装成不同的形式,或者直接提供给工作流系统执行。对于跨企业流程,流程的公共部分还可以被封装为Web服务,或者遵照电子商务协议与其他企业的流程进行交互。

CBPM IBM提出的BPM 框架[22],其思想和CPI十分类似。该框架的特点是很好地整合了Holosofx BPM SuiteIBM MQ Series工作流软件,具有很强的实用性。CBPM 分为创建、协作、自动化和管理四个步骤,每个步骤又可细分为若干个阶段。这些步骤和阶段都严格对应于Holosofx BPM SuiteIBM MQ Series中的软件模块,四个流程首尾相联,构成一个闭环流程。

BPMI框架目前局限于流程建模和操作的语言规范,没有涉及从低层到高层的流程管理的集成问题。CBPM从已有的软件系统中来,其流程建模、运行和应用集成方式不具有普遍性,而且没有解决跨企业流程集成问题。文献中的其他框架往往也仅从BPM 的理念出发,其功能模块往往只是概念性的,缺乏与具体应用系统的对应。

4BPM的形式化方法

业务流程管理模型应该有一个形式化描述基础,因为:1)形式化的方法能够清晰的描述描述问题,不存在含糊不清的表述[6]2)形式化模型为分析流程提供了数学化基础[28]

经典Petri网是德国科学家Carl Adam Petri在六十年代提出来的,在此后的几十年中。Petri网理论得到了极大的丰富.并被广泛地应用于许多研究领域,如协议工程、柔性制造系统、业务处理等等.使用Petri 网描述业务流程主要有以下原因:

1)直观的图形表示 Petri网是一种形式化语言.经典的Petri网有两种元素:变迁元素(用方框表示)、库所元素(用圆圈表示),而有向边表示选两种元素之同的关系.

2)形式化的语义 Petri (包括各种高级网系统)都有形式化的语义定义,一个Petri网模型加上相应的语义就能描述一个业务流程.

3)状态和事件的正式表示 有些流程建模方法侧重于描述系统状态的变化,如状态自动机有些建模方法是基于系统中事件的发生。 Petri网能够同时显式地描述系统状态和事件,选样便于对系统的理解和分析。

4)丰富的分析技术 Petri网模型一个很重要的特点在于它提供了丰富的系统分析技术,如对系统不变量(invariance)、活性(liveness)、有界性(boundness)、安全性(safety)等分析计算,也可以计算系统的性能,如响应时间、等待时间、资源利用率.

在文献[6]中说明了使用Petri网作为分析工作流分析工具的三个理由。Petri网是基于状态而不是基于事件的一种分析技术,它成为分析业务流程模型的一种形式化的正式方法。通过使用库所符号,Petri网能够很自然地描述流程之间的阶段状态,基于状态的模式比如延期选择,交叉平行路由等状态可以很容易的表示出来了。这些模式的描述可以在文献[7]中找到。然而,当涉及描述某些控制流依赖关系的时候,Petri网也有其不足,见文献[8]。因此,这就导致YAMLYet Another Workflow Language)的发展[9],它正确的描述了变迁系统的语义。

通过观察我们可以发现,用Petri网可以很容易的描述延期选择的概念,而这正是在传统的经典工作流管理系统中很难支持的,见文献[10]。在web service组件领域,两种新提出的标准BPEL4WSBPML提供了对上述概念有力的支持。在web service中,捕获各种服务和例如象π-calculus这些公式之间的交互是十分重要的。然而现今没有足够的证据证明BPEL4WS是基于一种形式化语义的,所以能够把如上关系完全形式化是当前应该做的工作。

形式化定义业务流程管理模型语言根据其表现力进行比较。对于某些工作流建模语言,其比较可以在文献[2930]中找到。通过这些对比结果,我们可以知道哪些方法能表达什么样的表现力,同时也看到该领域需要更多的研究以提供更多更好的形式化描述语言。

5BPM的建模语言

BPMI[19]最近推出了业务流程建模语言(Business Process Modeling LanguageBPML)[20] 和业务流程查询语言(Business Process Query LanguageBPQL)[19]两个标准,分别作为流程建模和流程模型访问的标准接口,并在此基础上提出了BPM 框架。

BPML是基于XML语言的模型描述语言,它将业务流程描述成控制流、数据流和事件流的结合,在此基础上还可以在业务流程中添加业务规则、安全规则和事务管理等特性。与传统的流程建模语言相比,它具有描述“端到端”流程(end-to-end)的能力,这样,可以从多个参与者的角度来审视流程模型。另外,BPMLPi-Calculus[21]作为其数学基础,这种形式化描述赋予了BPML在一致性检查、防止死锁、瓶颈检测和流程优化方面的较强能力。虽然BPML现在还不成熟,但是其官方组织描绘了BPML的美好前景,它具有如下特征[5]

1)  BPML是业务流程建模的原语言,就像XML是业务数据的原语言一样。

2)  BPML进程跨越多种应用程序和企业,不受任何防火墙限制。

3)  BPML提供了中间件的特性:它可以独立开发,实现远程处理监控,发布和订阅和消息队列等功能。

4)  BPML能够处理不同的应用程序,比如数据库管理系统,软件组件等等。

5)  BPML能够用进程定义业务事务和系统事务,业务事务经常包括两个以上的参与者,而系统事务能够包括多个应用程序。

6)  统一业务流程和技术 进程是BPML的关键目标。

BPQLBPMS的访问接口,用于对流程实例运行状态的查询、控制和流程模型的部署。类似于不同的编程语言用SQL或其他关联工具可以访问到数据管理系统那样,流程管理系统同样如此。DBMS(数据库管理服务器)是一种通用的“数据服务器”,而BPMS 则是一种通用的“流程服务器”。软件开发者准备采用流程查询语言(Business Process Query Language, BPQL)和流程服务器的原因是两者简化了流程环境中应用系统的开发。在传统的开发中,流程的环节四处散落,一个环节是这个应用系统的,一个环节是其他系统的。此外,流程式应用系统要能看到所有流程和所有流程数据。有了BPQL,写软件程序去监控、中断、交互和协调端到端流程变得轻而易举。如果以流程为中心,“电子化”事实上就已经内建在每个流程中,不需要专门为每个流程编写“电子化”,就像积木本来就是设计好,随时可以搭起来一样。

结论

本文给出了业务过程管理的概念和功能,描述了业务过程管理框架,讨论了业务流程形式化表述方法和建模语言,对比了业务过程管理和工作流的区别和联系。比较的结果表明,业务过程管理是新一代企业信息系统体系结构的重要发展方向。该文献综述将对我进一步展开对基于Petri网的业务流程管理模型研究有着重要的指导作用。

参考文献

[1]W.M.P.van der Aalst et al. Business Process Management: A Survey .(Eds.):BPM 2003, LNCS 2678, pp. 112, 2003. Springer-Verlag Berlin Heidelberg 2003

[2]J. Desel, W. Reisig, and G. Rosenberg. Business Process Management Demystified: A Tutorial on Models, Systems and Standards for Workflow Management. (Eds.): ACPN 2003, LNCS 3098, pp.1-65,2004. Springer-Verlag Berlin Heidelberg 2004

[3]W.M.P. van der Aalst. Making Work Flow: On the Application of Petri nets to Business Process Management. In J. Esparza and C. Lakos, editors, Application and Theory of Petri Nets 2002, volume 2360 of Lecture Notes in Computer Science, pages 1-22. Springer-Verlag, Berlin, 2002.

[4]谭伟,范玉顺.业务流程管理框架与关键技术研究. 计算机集成制造系统,10卷第7期,2004年,2-6.

[5] Howard Smith. Business process management-the third wave: business process modelling language (bpml) and its pi-calculus foundations. Information and Software Technology 45 (2003) 1065–1069.

[6]W.M.P. van der Aalst. Three Good Reasons for Using a Petri-net-based Workflow

Management System. In S. Navathe and T. Wakayama, editors, Proceedings of the International Working Conference on Information and Process Integration in Enterprises (IPIC96), pages 179201, Cambridge, Massachusetts, Nov 1996.

[7] W.M.P. van der Aalst, A.H.M. ter Hofstede, B. Kiepuszewski, and A.P. Barros.

Workflow Patterns. QUT Technical report, FIT-TR-2002-02, Queensland University

of Technology, Brisbane, 2002.

[8]W.M.P. van der Aalst and A.H.M. ter Hofstede. Workflow Patterns: On the Expressive

Power of (Petri-net-based) Workflow Languages. In K. Jensen, editor,Proceedings of the Fourth Workshop on the Practical Use of Coloured Petri Nets and CPN Tools (CPN 2002), volume 560 of DAIMI, pages 120, Aarhus, Denmark,August 2002. University of Aarhus.

[9]W.M.P. van der Aalst and A.H.M. ter Hofstede. YAWL: Yet Another Workflow Language. QUT Technical report, FIT-TR-2002-06, Queensland University of Technology, Brisbane, 2002.

[10] W.M.P. van der Aalst, B.F. van Dongen, J. Herbst, L. Maruster, G. Schimm, and

A.J.M.M. Weijters. Workflow Mining: A Survey of Issues and Approaches. Data and Knowledge Engineering, 2003 (to appear).

[11] W.M.P. van der Aalst and P.J.S. Berens. Beyond Workflow Management: Product-Driven Case Handling. In S. Ellis, T. Rodden, and I. Zigurs, editors, International ACM SIGGROUP Conference on Supporting Group Work (GROUP 2001), pages 4251. ACM Press, New York, 2001.

[12]S. Jablonski and C. Bussler. Workflow Management: Modeling Concepts, Architecture,and Implementation. International Thomson Computer Press, London, UK,1996.

[13] P. Lawrence, editor. Workflow Handbook 1997, Workflow Management Coalition. John Wiley and Sons, New York, 1997.

[14]F. Leymann and D. Roller. Production Workflow: Concepts and Techniques. Prentice-Hall PTR, Upper Saddle River, New Jersey, USA, 1999.

[15]D.C. Marinescu. Internet-Based Workflow Management: Towards a Semantic Web, volume 40 of Wiley Series on Parallel and Distributed Computing. Wiley- Interscience, New York, 2002.

[16] C.A. Ellis. Information Control Nets: A Mathematical Model of Office Information Flow. In Proceedings of the Conference on Simulation, Measurement and Modeling of Computer Systems, pages 225240, Boulder, Colorado, 1979. ACM Press.

[17]BISCOTTI FFULTON RInfrastructure and applications worldwide software market definitions(Gartner Dataquest Guide)[EB/OL]http://www.gartner.com/ DisplayDocument?doc-ed-1065282002-06-10

[18] M.D. Zisman. Representation, Specification and Automation of Office Procedures. PhD thesis, University of Pennsylvania, Warton School of Business, 1977.

[19]BPMIorgBPMI initiative[EBOL]http://www.bpmi.org.2001-03-12/

[20]BPMI.Org. Business process modeling language[EBOL]http://www.bpmi.org bpml-spec.esp,20021120

[21]SANGIORGI DW ALKER DThe pi-calculusa theory of mobile processes[M]Cambridge U.K.:Cambridge University Press2001

[22]IBM RedbookContinuous business process management with HOLOSOFX BPM suite and IBM MQSeries workflow[EB/OL].http://www.redbook.ibm.com/pubs/pdfs/redbooks/sg24659O.pdf,200205

[23]A. W. Holt. Coordination Technology and Petri Nets. In G. Rozenberg, editor, Advances in Petri Nets 1985, volume 222 of Lecture Notes in Computer Science,pages 278296. Springer-Verlag, Berlin, 1985.

[24]C.A. Ellis and G. Nutt. Workflow: The Process Spectrum. In A. Sheth, editor, Proceedings of the NSF Workshop on Workflow and Process Automation in               Information Systems, pages 140145, Athens, Georgia, May 1996.

[25]Gartner. Gartners Application Development and Maintenance Research Note M-16-8153, The BPA Market Cathes another Major Updraft.

http://www.gartner.com, 2002.

[26]IDS Scheer. ARIS Process Performance Manager (ARIS PPM). http://www.idsscheer.com, 2002.

[27]W.M.P. van der Aalst, B.F. van Dongen, J. Herbst, L. Maruster, G. Schimm, and A.J.M.M. Weijters. Workflow Mining: A Survey of Issues and Approaches. Data and Knowledge Engineering, 2003 .

[28]Dirk Wodtke and Gerhard Weikum. A formal foundation for distributed workflow execution based on state charts. In Foto N. Afrati and Phokion G. Kolaitis, editors, Proceedings of the 6th International Conference on Database Theory ICDT 97,Delphi, Greece, January 810, 1997, volume 1186 of Lecture Notes in Computer Science, pages 230246. Springer, 1997.

[29] B. Kiepuszewski, A.H.M. ter Hofstede, and W.M.P. van der Aalst. Fundamentals of Control Flow in Workflows (Revised version). QUT Technical report, FIT-TR-2002-03, Queensland University of Technology, Brisbane, 2002. (Also see http://www.tm.tue.nl/it/research/patterns.) To appear in Acta Informatica.

[30] B. Kiepuszewski. Expressiveness and Suitability of Languages for Control Flow Modelling in Workflows. PhD thesis, Queensland University of Technology, Brisbane, Australia, 2003.