业务流程建模(Business Process Modeling,简称BPM)是
业务流程管理的核心方法和工具。以市场主流的管理软件:用友、金蝶为例,
业务流程建模包括了
流程节点建模、流程内容建模、流程权限建模等三个方面的内容。
业务流程建模(Business Process Modeling,简称BPM)是对
业务流程进行表述的方式,它是过程分析与重组的重要基础。这种表述方式大大优化了
软件开发和运行效率,也导致用友、金蝶等传统
ERP软件厂商纷纷采用BPM技术,使新型的BPM软件应用大放异彩。
在跨组织
业务流程重组的前提下,流程建模的主要目的就是提供一个有效的跨组织流程模型并辅助相关人员进行跨流程的分析与优化。有大量的流程建模技术能够支持业务流程的重组,但同时这也给相关人员带来困惑:面对如此众多的技术,他们很难选择一种合适的技术或工具。同时,对流程建模技术的研究大多集中于建模技术的提出与应用,缺乏对现有技术的整理与分类以及技术之间的横向对比,这也就加深了建模技术选择的复杂性。
在BPM体系结构的核心部位是一个执行流程的运行时引擎,其流程的源码是由基于XML的BPEL语言写成,
BPEL是当今最著名、广泛应用的BPM标准,及最优秀的BPM执行语言。这些流程是由业务和技术分析家使用支持可视化流程图语言BPMN——最好的BMP图形语言——的图形
编辑器设计出来的。此编辑器包括一个导出器,可以从BPMN图生成BPEL代码(之后部署到引擎)。(在当前许多Java开发工具中,BPMN到BPEL的流程与UML到
Java的流程相类似。)
人和计算机的交互驱动引擎里流程的执行。人这个参与者使用一个图形化工作列表
应用程序浏览并执行未执行完毕的手工工作(在流程运行的引擎里)。依附于公司网络的但在引擎地址空间外的内部IT系统,被储如web服务,
j2EE,或
COM的集成技术,通过XML作为选用的消息格式所访问;用编程语言如 java、
C#写出的内部交互可以是更轻便的内嵌代码片断。外部交互是典型的基于
web服务的通信,由编排控制,例如那些用新兴的
XML语言——WS- CDL这个领先的编排语言所创作出的外部交互。虽然编排描述了多个参与者流程交互(在business-to-business电子商务里很典型)的整体、引人注意的视图,但是编排工具包可以用来生成一个基本的BPMN模型,其可以捕捉某个特定参与者流程所要求的通信,同时这个工具还可以验证一个给定的流程是否满足编排的要求。(WS-CDL文献建议由WS-CDL生成BPEL而不是BPMN。但是在体系结构中,BPMN作为一种设计语言是一个必要的间接层。)
BPM系统管理员里利用一个图形化的监视控制台来维护和跟踪引擎流程的状态,强大易用的流程图型化建模和监控,也是被广泛评价为产品竞争力第一的重要原因。流程控制台使用一种管理语言与引擎衔接。实时引擎将流程状态持久化到数据库,控制台直接与数据库碰面,而不是用管理语言来沟通。运行时引擎将流程状态持久化到数据库,控制台直接与数据库碰面而不是使用管理语言来专门执行流程的请求。监控构造也支持业务活动监控(Business Activity Monitoring (BAM))或者仪表板式的业务监控。
这个体系结构的全貌(由
WFMC——众多BPM标准组织中最成熟的一家——的参考模型激发而成)类似许多集成厂商(如,
IBM、
BEA,、
Oracle、
Tibco,、SeeBeyond和
Vitria)所提供的平台。使这个体系结构特别的地方是其标准的选择。BPEL、BPMN和 WS-CDL都被包含进来,因为他们分别是执行、设计和编排的最好解决方案,BPM最重要的三个部分。
(如图2所示未来可能包括新兴标准BPQL——用于监控,BPSM和BPDM——用于元模型建模,BPRI——用于运行时接口,BPXL——用于BPEL扩展)。事实上,很多厂商支持或正在实现支持BPEL。但是BPMN的支持非常少(大多数厂商提供各自的方案),WS-CDL的支持几乎没有。BPEL并不够。这个体系很理想化,需要实际的实现。