工作流技术在流程分析中的应用研究
1 引言
企业流程再工程 (BPR)是一场管理思想的革命,已受到管理界和企业界的广泛重视。BPR强调以企业流程为中心,充分利用现代信息技术的使能作用,对企业现有流程进行根本性的反思,以求得流程业绩的巨大飞跃。BPR的核心是流程优化,但它的复杂性往往又不是单靠人工所能掌握的。研究表明,BPR失败的主要原因之一是缺乏或抵制有效的建模分析工具。越来越多的人认识到计算机辅助工具对BPR决策的价值和支持作用。
企业经营流程重组是一项复杂的企业工程,它的实施需要利用先进的流程建模和分析手段来描述、分析和评价经营流程。目前已经出现了许多有效的建模方法和仿真工具。但大多数方法不能直接利用优化后的模型对流程进行有效的控制和管理,其建模、分析与模型的实施相脱离。传统的建模平台因此缺乏柔性难以反映流程的动态性。工作流技术覆盖了流程建模、模型分析、模型执行和模型维护的整个企业经营流程重组的生命周期,可以改善上述不足。
工作流系统能够支持企业流程重组,其关键是流程性能的分析与评价。鉴于工作流技术的发展水平,其流程建模和仿真能力还不能满足实用的要求。在这种情况下,结合流程建模、分析工具和工作流的优点,是目前技术条件下流程管理的有效途径。
本文主要探讨工作流和Petri网等方法在流程建模和仿真中的结合方法。与采用单一Petri网等方法完成流程建模、仿真、分析和决策等环节的流程改造方法或工作流技术相比,这种结合方法,充分利用了Petri网具有描述企业组织结构系统行为的理论基础、较强的建模和仿真能力,同时也利用了工作流模型的可执行性、交互性和易于理解等优点。
2 工作流技术
流程具有组织、信息、资源和功能等多个要素,这些要素存在关联引用的复杂关系。为满足多用户的需要,流程模型应包含流程中尽量多的信息,这可能导致流程系统的复杂性,传统的建模语言多是描述流程的一个和若干视图。为全面认识流程,集成流程的多个视图是必要的。工作流是一种企业流程认知论(ontology),它是企业中数据流、信息流、流程流、协作流、资源流等各种要素流的综合集成。根据工作流管理联盟[1](Workflow Management Coalition)的定义,工作流是业务流程的全部或部分自动化,在此流程中,文档、信息或任务按照一定的流程规则流转,实现组织成员间的协调工作以达到业务的整体目标。工作流管理的首要步骤是流程建模,即用工作流描述语言将流程抽象为工作流模型。工作流模型不同于其他建模工具构造的流程模型,不仅包括用来描述活动的概念集、活动、活动之间的依赖关系,而且还包含其他执行活动的必要信息,如组织、资源和数据等,以便计算机辅助实现。
就描述流程的侧重点而言,有两种基本的图形化流程描述语言建模技术[2]:基于通讯的工作流建模和基于活动的工作流建模。前者注重提高顾客满意度,通过顾客和执行者之间的交互,把工作流的每一个活动归结为四个阶段:准备、协商、实施和接受。基于活动的工作流建模强调组成流程的活动和相互关系,它更适合借用传统的建模方法。
工作流在流程管理中的应用分为三个阶段:流程建模、流程仿真和流程改进或优化:流程建模是用清晰和形式化的方法表示流程的不同抽象层次,可靠的模型是流程分析的基础,流程仿真是为了发现流程存在的问题以便为流程的改进提供指导。这三个阶段是不断演进的过程。它们的无缝连接是影响工作流模型性能的关键因素,也是传统流程建模和流程仿真集成存在的主要问题。
工作流技术在流程建模中基本上还采用流程图一类的描述工具,工作流描述语言也是对流程形式化的简单描述,并未包含企业流程系统存在的不确定处理机制。其次,工作流模型的仿真和优化也是一个比较薄弱的环节,国内外在这方面的研究进展不大。传统的工作流模型在运行前需要实例化,工作流管理工具也没有为流程模型的仿真及仿真数据的统计和分析提供手段。为了实现流程变化管理各阶段的有效集成,需要结合有效的流程建模、仿真和工作流技术。
3 工作流与流程建模的互补性
企业建模的根本任务,就是帮助企业优化流程,以更低的成本、更高的效率为客户提供质量更好的产品和服务,但是许多建模方法往往将重点放在可视化的符号上,忽视对业务流程本质的抽取和分析。使用这样的建模工具,根本不可能对流程进行实质性的简化和优化。作为有效的动态流程建模体系,也不应该是简单的企业活动执行工具。
在企业的一个业务流程中,组成企业业务的各个要素是处于不断的变化之中,而且这些要素之间的关联,也是动态变化的。只有将这些要素的动态变化和关联流程描述出来,才能有效分析企业的业务流程。目前对流程动态的描述,一般靠流程仿真完成,传统的建模工具缺乏对流程动态的跟踪能力。此外,目前出现了许多有效的建模方法,但很少能直接产生可执行的流程代码。
工作流模型描述缺乏一种能够支持流程定义、流程分析以及流程执行的形式化数学模型,它的出发点是对流程的定义,包括组成流程的基本活动以及活动之间的顺序关系。目前的工作流模型大部分利用经验,以图形语言或者文本描述来定义工作流,其本质还是面向用户的。即对用户而言是易于理解的,但并不便于系统的实施,也无法对工作流的本质特征进行描述,因而也更谈不上对流程的分析与改进。虽然也有抽象化的数学模型,但它们所具有的描述能力也未能充分描述工作流本质。模型还缺乏良好的理论基础,使得工作流系统在许多关键特性上有待改进。
在早期的具有工作流管理功能的系统中,工作流程的表示缺乏柔性,导致模型修改的困难。后来逐渐出现了借用有向图、Petri Net、对象模型的形式语言文法表示以及基于目标的知识表示等工作流系统。它们一般都有可视化的流程建模工具,能够以比较直观、易于使用、易于修改以便能够适应不断变化的工作环境的要求方式对实际的业务流程进行建模,并得到相应的形式化表示。
工作流模型对流程有比较强的描述能力,但它一般适合结构化或半结构化的流程描述,目前工作流对非结构化的流程支持能力较弱。非结构化流程则是那些重复性不是很强或没有重复性的流程,这类流程执行所需的有关参数事先无法确定,一般要等到流程实例运行时才能确定,同时在流程运行期间还可能会出现一些异常情况。这种动态多变的特点在提供更高灵活性的同时,也为流程的建模与执行带来更多的复杂性。实施企业流程再造BPR也就是一个工作流管理的过程,如何将 BPR工具对业务流程的建模结果应用到工作流系统中,如何在工作流系统中提供类似于BPR工具对业务流程进行分析、监控与管理的功能等是值得研究的问题。
综上所述,很有必要把流程建模工具高效的流程建模能力与工作流较强的可执行能力结合起来。这方面的硏究已引起人们的注意。如文献[3]借用软件工程生命周期的概念,给出了一种工作流管理系统的开发方法,即在分析阶段构造企业流程元(meta)描述模型,而在设计阶段将描述模型转化为可执行的工作流元模型。两种模型都可以用形式化语言描述,它们之间的转化可通过编译映射函数完成,这样还易于保证两种模型的一致性,把模型的变化反映到工作流系统,适于企业变化管理的需要。工作流技术和流程建模的互补性见图1。
4 工作流与流程仿真的结合
企业流程是一个存在很多不确定因素的复杂系统。流程的许多方面是定性的,因此不适于也很难用解析的数学模型对它们进行描述和分析,此时仿真是一种可行的流程抽象和分析手段。工作流模型的仿真分析是与企业经营流程重组应用密切相关的一个关键技术。常用的工作流模型分析方法有两种:What-if分析方法和仿真分析方法。前者不适合企业的业务流程很复杂,存在多个业务流程的交互和不确定因素。工作流技术是流程的可执行映射,目前的工作流系统仿真分析对相应流程的优化支持不够。工作流仿真分析能力还处于一种不成熟的阶段,其难点主要在于仿真的性能指标难以确定、仿真的流程较为复杂。
目前的仿真工具(如SIMPROCESS)多具有动画特点,能够直观显示流程某些参数不同运行时的状态,可以方便用户对于流程运行的理解 ,使仿真建模者与领域用户能更好地配合。但传统的流程建模工具与仿真软件之间很少有联系或交互能力,用大多数的仿真语言需要许多流程建模的技能。
虽然流程模型包含流程仿真所用的许多信息,但因建模工具和仿真技术未能有效地集成,导致流程分析时重新建立仿真模型。流程模型仅能提供流程仿真的部分数据,其他的信息,包括实体属性、描述流程的动态信息需要另外加入。流程建模和流程仿真之间的集成存在的问题主要表现在:结构化的流程模型表示方法,如基于IDEF系列的流程映射工具,把流程映射到特定的表示形式,仅为流程的分析提供了较少的有用信息,这样的流程建模方法需作许多变动才能适合流程仿真的需要。比较而言,非结构化的流程映射容易调整,而且包含了流程分析所需的信息,以便于流程的仿真。这不仅减少开发仿真模型的劳动量,也确保两种模型的一致性。
工作流系统对流程的表示采用流程描述语言PDL(process description language)。目前的PDL有以下几种:脚本语言、基于知识、基于网的方法、基于逻辑的方法、代数表示和ECA规则等。基于网的方法是常用的,其中流程用节点以及连接它们的弧组成的有向图表示。
从上可见,工作流的仿真能力较弱可以用先进的仿真工具弥补,而仿真语言超越自然语言,对用户的专业要求较高。工作流常采用企业流程的可执行图形表示形式,包含友好的交互手段,其次工作流模型比流程模型能准确更多的流程特性,以便为仿真运行及仿真结果分析提供较多的量化参数。工作流系统和仿真系统都是离散事件系统,所以它们有许多共同之处,如都包含活动和事件的概念,这是两者集成的基础[4]。借助工作流系统和仿真系统的对应规则,流程的工作流模型到仿真模型的转化需要把流程语言翻译为仿真语言。在转化流程中,应妥善处理流程的不确定因素。
工作流与流程仿真技术的结合见图2。
[%imgid=3717,%style=0]
5 工作流技术与流程分析
图3给出了一种工作流技术与流程优化的原理图,其中流程建模和仿真采用了扩展的Petri网模型和面向对象技术。为增强Petri网对流程的不确定处理等能力,这里采用了扩充的有色Petri网(以下简称Petri网)。许多工作流模型借用Petri网作为流程的描述工具。Petri网把活动表示为变迁,设备、工具、人员等实体或工作流状态表示为库所,从而流程映射为Petri网。
应该说,Petri网具有较强的流程分析和评价能力。但对于大型流程用Petri网往往比较复杂,需要采用简化措施(对某些库所、变迁和弧进行删除或融合,但不改变 Petri网的某些结构性质)。此外以Petri网作为流程描述语言的工作流模型,可用Petri网的规则作为流程中的约束条件,但不能显式地表达流程的结构,难以理解流程的执行过程。为此对较复杂的系统这里引入面向对象的思想。面向对象的思想贴近人类思维,它具有丰富的语义。面向对象技术与工作流的结合研究有两种方法。其一是工作流模型用面向对象编程的方法实现,将流程包含的各种概念及其相互关系以对象的形式加以描述。另一种方法是用面向对象技术为流程建模,可用多个对象集合有效地描述流程。如文献[5]提出用面向对象技术,由对象配置、对象结构及对象行为模型构成的通用工作流模型和基于此通用模型的流程分析方法,可以提高所得流程模型的可重用性和灵活性。
Petri网模型及其扩展形式具有较强的严密性、可理解性及抽象能力和计算机化能力,它不仅能够用来分析模型的定性属性,还能分析模型的定量属性,已在流程的建模和优化方面得到广泛的应用。工作流模型元素和Petri网的元素有明确的对应关系,流程仿真首先把工作流模型转化为Petri网模型,其关键是把流程规则映射到扩展Petri网模型。流程规则集则是用来定义描述领域流程行为的动作的流动流程,它由一组有序的流程规则组成,用来表达活动的优先关系、并行关系、条件分支、合并和循环关系。流程模型用Petri网表示,可以用成熟的算法分析流程活动连接的一致性、流程的安全性等流程特性,不必象工作流那样必须经实例化才能运行。有关工作流模型向拓展Petri网的转化方法,可参阅有关文献[6,7],这里不再讨论。
通过Petri网模型的运行分析揭示工作流运行的本质,仿真流程中记录反映企业运行的性能的若干指标,如流程周期、成本、资源利用率、流程瓶颈等,以便发现问题,找出症结所在。并且可以评价流程的运行效果,辅助选优和最终的流程优化。
流程优化是一个不断演进的过程,由于信息的不完全、不确定,流程建模、流程仿真和流程实施不一定按顺序进行,可以是相互交叉的[8]。如不完全的流程模型可以仿真,不完全的仿真模型可以执行。
6 结束语
企业流程是一个复杂的系统,如何在动态的环境中识别、描述和分析流程,是认识和改善企业流程的基础。由于缺乏系统的理论指导,目前流程变化管理还未形成系统的实施方法和技术,缺乏设计和评价方法的理论基础。企业经营流程的建模、仿真和实施是企业变化管理的三个重要阶段,需要有效地集成。目前已出现许多流程建模和流程分析工具和方法,也不乏有效的建模体系。通过增加模型的语义元素来增强模型的表达能力也是提高工作流建模能力的重要方法。但这些方法在实用中存在的明显问题是:模型的形式化、模型的可执行性、建模仿真和实施的集成等难以平衡。目前的建模方法,常和流程的仿真脱节,普遍存在不支持流程优化的不足,而且尚未出现流程建模与仿真分析、评估、再设计方法有机地集成的系统平台。另一方面,工作流是包含流程变化管理各阶段的集成技术,但其建模仿真能力较弱。目前比较有效的流程分析方法,如各种扩展Petri网和工作流系统在流程的处理上有互补作用。在企业变化管理缺乏统一建模理论的情况下,寻找各种方法的结合是一条有效的途径。
参考文献:
[1] Workflow Management Coalition. The Workflow Reference Model, 1994.available at: http:/ / www. aiim. Org/ wfmc
[2] Gregory Mentzas, Christos Halaris, Stylianos Kavadias. Modelling business processes with workflow systems: an evaluation of alternative approaches [J]. International Journal of Information Management. 2001,21:123-135
[3]Stefan Jablonski. On the complementarity of workflow management and business process modeling [J]. SIGOIS Bulletin, August 1995,16(1): 33-38
[4]Yoo-Hoo Bee, Seok-Chan Jeong, Youngho Seo et al. Integration of workflow management and simulation [J]. Computers & Industrial Engineering, 1999,37:203-206
[5]Inamoto A. Object-oriented model driven workflow process analysis[C]. In: Proceedings Japan/ USA Symposium on Flexible Automa-tion, 1 996, (2): 1 3 1 7-1 3 24
[6]刘铁铭,范玉顺. 基于工作流的企业流程的建模和仿真技术研究[J]. 清华大学学报,2000,40(1):107-111
[7]Fan Y S, Wu C. Petri net representation of CIMOSA function [J]. Computer Integrated Manufacturing System, 1997, 3(6):9-15
[8]Volker Gruhn. Business process modeling and workflow management [J]. International Journal of Cooperative Information Systems [J]. 1995,4(2): 145-164