2009年,XPDL与BPEL标准与BPM产品现状
XPDL(XML Process Definition Language)的缩写,是由Workflow Management Coalition(WFMC)所提出的一个工作流描述规格,使用XML文件让不同的工作流程软件间交换商业流程定义。XPDL是一个通用的框架,据WFMC认证列表统计目前全球约有80个厂商支持该标准,包括我们熟悉的IBM、BEA(Oracle)、Tibco相关流程产品,目前XPDL的最新版本是2.1(2008年4月23日approve version)。
WFMC为实现不同工作流产品间互交换,给定了5类接口规范(Interface),其中我们讨论的XPDL是其Interface1。XPDL给定了流程定义间进行相互转换的XML Schema元模型,这个XML Schema可理解为与运行控制无关的描述结构,为设计流程和运行流程提供了形式上的可分离,这样无论开发者使用Java、.Net还是轻量级的PHP、Python语言,采用有限状态机还是Petri网,只要外部接口符合XPDL规范,那么就可以保持相同的表示形式和互操作,这就为厂商间标准合规性验证提供了一个通用的描述框架,更重要的是XPDL对不支持的厂商个性场景提供了扩展,这个扩展框架约束能够保证流程对外表现形式的一致性。正是这个定位使得XPDL在与十几年中出现的众多潜在新兴竞争标准之争中仍然保持旺盛的生命力,并催生了不同竞争活力的工作流产品。对于实现XPDL规范的工作流产品,目前一个通常的方式是采用BPMN进行建模,以XPDL为持久格式,由厂商实现的流程引擎执行该描述。
XPDL的主要元模型包括了过程活动、转移连接弧(可理解为规则)、参与者(过程活动所需的资源,在XPDL中参与者模型被抽象为一个分配对象,可能是现实世界的人也可以是一个系统或服务)、程序声明(过程活动调用的IT应用程序或接口服务,例如一个人工任务的交互表单、Web服务)和工作流相关数据(运行期间持久化的流程实例控制数据)。
WFMC工作流联盟是一个活跃了十五年的民间组织,官方宣称有超过300个成员,在欧洲、美洲及亚太设有指导委员会,每隔三年举办一次大规模的工作组会议,XPDL除了得到大部分国际工作流厂商和Opensource支持外,在中国也有不少工作流厂商支持该标准。
“老”贵的BPEL
BPEL(Business Process _execution Language)的缩写,直意为业务过程执行语言,是一种基于XML的,用来描写业务过程的编程语言,被描写的业务过程的每个单一步骤则由Web服务来实现,这个描述本身也由Web服务提供,即BPEL模型本身也被当做Web服务来使用。BPEL在过去很长一段时间被视为未来工作流标准的“新贵”,经过八年的发展,目前BPEL规范已在Oracle、IBM等厂商SOA产品中提供支持,可以说是新贵变”老”贵了。
BPEL基于Web Service的WSDL建立,相关标准还包括XML Schema、XPath、WS-Addressing等SOA标准。最初的BPEL标准被定位于大规模分布式商业应用下的服务编程语言,不支持人机对话的人工流程,BPEL所描写的过程仅与Web服务通信,而这些Web服务却可以提供与用户的信息交换,但它们不是用户本身。BPEL从2002年提出后也是在不断更新,在随后加入了一些重要扩展规范,例如BPELJ(允许BPEL XML中加入Java程序段,需要澄清的是BPEL不仅能够执行Web服务,还可以通过厂商扩展调配JCA、JMS等)、BPEL4People和WS-HumanTask(虽然在分布式商业应用中广泛采用了Web服务,但是缺乏人员交互是应用于真实世界业务过程的一大差距,这个扩展使BPEL能够兼顾基于角色的人工活动编排过程)。可以说BPEL在构建符合标准的SOA架构中占据重要位置,是编排Service的杀手锏,但目前市面提供的BPEL产品在解决企业非流程集成场景方面仍有明显不足,我认为BPEL如果不出意外,肯定会成为工业界中业务集成方面的标准语言,如果成为完整的工作流工业标准目前还差一些。
BPEL是一种基于块(Block)的结构化编程语言,可以在符合BPEL标准的引擎上执行,作为一门简单的编程语言,包括了基本的顺序(Sequence)、选择(Switch)和循环(While)程序语言控制结构,与XPDL工作流实例不同,BPEL通过因为 receive和 pick活动提供进入流程的入口点,利用一个特定于消息的 XPath 表达式匹配从 WSDL相关消息集合(Correlation Set)的实例中定位实例操作。在BPEL中,一个流程可以调用其他服务,也可以响应来自客户端的请求(receive和 pick)。也就是说BPEL流程实例既可以作为服务的请求者,也可以扮演服务的提供者。
XPDL与BPEL的区别关系
XPDL与BPEL是完全不同且互补的标准,BPEL是一个“执行语言”,旨在提供一个Web服务编排定义,BPEL的定义关注一个进程以Web服务和XML数据集成为主的可执行。而XPDL则是一个与开发者相关实现无关的流程过程描述规范和交换接口,在工作流结构完整性方面XPDL较为成熟,但XPDL未在基于SOA架构下的服务编排方面给定更多标准化的交换格式,大部分BPM厂商均以XPDL扩展语法提供私有的扩展,而此部分正是BPEL所努力的,虽然BPEL已经向其不擅长的人工流程和非Web Service服务编排领域拓展规范,但仍然需要在非集成领域的流程规范方面向XPDL老大哥学习,比如在面向BPM业务分析师视角,目前BPEL2.0尚缺失对过程模拟规范的制定。

不分伯仲,各领风骚
下表数据来自个人对2010年初各BPM厂商提供的软件版本中对XPDL/BPEL导入导出的试用评估,请以BPM厂商说明为准,这里仅供参考。可以看出,无论是“老”贵的BPEL还是老资历的XPDL,在市面上很长一段时间将仍然并行在各个工作流产品中,面对这两个存在一定竞争关系的流程标准,BPMN至少已成赢家,XPDL和BPEL标准之争似乎在学术界已有落音,但是在2010年面对市场的商业化产品进程上,两者将继续不分伯仲,各领风骚。

2010版:从185项关键指标中评估BPMS系统
对一个BPM产品给出评价乊前,理智的用户会确认哪些功能戒特性是即买即用的(Out of the box),这些功能特性应该被包含在产品方案中,幵通过建模工具、配置戒编写脚本快速应用这些功能,但如果通过编程编译戒其他方法来实现这些功能,整体拥有成本和优化成本在产品生命周期中会变得很高。大多数用户戒纯BPM厂商的一致看法是,采用BPM产品的目标就是通过平台、工具和方法消除企业构建流程化架构的成本和风险,以技术和编码人员为主导的BPM项目将最终使BPM投资周期拉长,幵阷碍企业未来在流程分析、优化、重组的进程。
业务流程分析将是企业实施BPM的下一个亮点
当今世界经济的全球化正在加速,来自竞争对手的外部环境压力和变化及内部变化也在不断增长。各个组织要在这种趋势变化中保持竞争优势,一味地追求提高收入和削减成本是不够的,必须及时调整他们的业务流程,以便在运营管控过程不断变化时,能使组织的运作能力与市场需求的变化保持步调的一致。BPA(Business Process Analysis,业务流程分析) 为调整、优化业务流程提供科学的统计分析方法和工具。由于缺乏可落地流程的IT 架构平台的支撑,多数企业的解决方案采用模拟流程运行并产生用于绩效分析的仿真数据,但是从大量模拟数据和假设模型中提取出深刻的见解却成为一个非常严峻的挑战。
随着BPM市场近两年的飞速增长,现在很多企业从流程管理中获得比投资其他系统更高的收益。例如Gartner在最新的研究报告中显示:在成功的BPM项目中有78%的企业获得的内部报酬率高于15%,而有一些企业的这个数据达到了100%甚至是360%。这份研究还发现在业务流程管理越来越重视相关人员的参与,而不仅仅是系统与系统的整合。众所周知,通过BPM的实施可以减少错误、改进服务水平与增加业务流程透明度的能力。当企业实施BPM过后,几乎所有的企业都发现,业务流程透明度似乎并未从业务上得到明显的改善,企业得到了一张张电子的、可视化的流程图,并高效运转,这些真实的流程运行数据反映了当前组织中流程的效率、瓶颈和绩效,可是他们到底运转的怎么样?这个阶段,企业迫切希望能够及时、准确地了解到哪些组织、部门、岗位、员工和流程最有效率,瓶颈发生在哪里,跨部门协作的流程效率与员工效率的关系与影响如何,这些数据的发生是不是存在有规律的趋势,这些趋势对未来决策是否可以提供预测基础?这些接踵而来的问题普遍困惑着CIO和流程管理部门,没有这些一手数据,流程优化成了“摸石头过河”,业务流程分析开始进入到企业的视野中。
BPA是企业高层流程分析的“破冰船”
企业实施BPM的一个根本原因是通过IT手段固化业务流程,继而持续优化和改善流程,优化和改善流程的驱动力可以分为主动和被动两种模式,来自外部竞争环境的改变和内部的调整被迫要求企业的流程适应这种变化,而内部运营成本的压缩、效率和绩效的提升愿望则要求IT和管理部门能够主动提出优化和改善意见,BPA需要能够为这两种因素提供绩效数据的分析支撑,尤其能够主动为管理者提供高层的分析工具,促使IT部门主动达成对流程的优化和改良。高层流程分析能力与普遍BPM或Workflow系统提供的监控、统计报告不同,仅对流程活动数据和历史进行单一维度的统计远远满足不了流程决策者的需求,传统的统计分析报告仅能够为IT运维人员提供一些报告帮助。正如京卫医药集团的朱部长所说,探讨支撑高层流程分析的目的就是要解决如何帮助企业的CIO、管理层、流程分析师站在管理的视角上分析冰山之下的运营绩效数据,从而发现长期隐藏在IT背后的效率“秘密”,实施业务流程优化已成为集团信息化战略的既定目标。

BPA需要开放的集成能力 阅读全文…
