BPM业务流程建模(BPM, Business Process Modeling)是
业务流程管理的核心方法和工具。以市场主流的管理软件:
用友网络、金蝶为例,业务流程建模包括了流程节点建模、流程内容建模、流程权限建模等三个方面的内容。BPM通常由业务分析师执行,他们在建模领域提供专业知识;由对建模过程具有专门知识的主题专家进行;或者更常见的情况是由同时包含两者的团队组成。或者,可以使用流程挖掘工具直接从事件日志中获取流程模型。
业务流程
建模BPM
业务流程建模(BPM, Business Process Modeling)是对业务流程进行表述的方式,它是过程分析与重组的重要基础。这种表述方式大大优化了软件开发和运行效率,也导致
用友网络、金蝶等传统ERP软件厂商纷纷采用BPM技术,使新型的BPM软件应用大放异彩。
在跨组织业务流程重组的前提下,流程建模的主要目的就是提供一个有效的跨组织流程模型并辅助相关人员进行跨流程的分析与优化。目前有大量的流程建模技术能够支持业务流程的重组,但同时这也给相关人员带来困惑:面对如此众多的技术,他们很难选择一种合适的技术或工具。同时,目前对流程建模技术的研究大多集中于建模技术的提出与应用,缺乏对现有技术的整理与分类以及技术之间的横向对比,这也就加深了建模技术选择的复杂性。
在BPM体系结构的核心部位是一个执行流程的运行时引擎,其流程的源码是由基于
XML的BPEL语言写成,BPEL是当今最著名、广泛应用的BPM标准,及最优秀的BPM执行语言。这些流程是由业务和
技术分析家使用支持
可视化流程图语言BPMN——最好的BMP图形语言——的图形编辑器设计出来的。此编辑器包括一个导出器,可以从BPMN图生成BPEL代码(之后部署到引擎)。(在当前许多Java开发工具中,BPMN到BPEL的流程与
统一建模语言到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))或者仪表板式的业务监控。
在这个平台上的开发过程如下:
1.从一个WS-CDL choreography生成一个初始的BPMN模型。如果流程并不是从一个编排衍生而来则越过此步。
2.设计BPMN模型
3.从BPMN模型生成BPEL
4.开发必要的人和系统(内部和外部)的接口
5.部署BPEL代码和其必要的接口到引擎
6.使用管理和监控接口跟踪正在运行的流程。
这个体系结构的全貌(由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并不够。这个体系很理想化,需要实际的实现。
编程语言工具
BPM套件软件提供了编程接口(Web服务、应用程序接口(API)),这些接口允许构建企业应用程序以利用BPM引擎。该组件通常被称为BPM套件的引擎。
为BPM引入的编程语言包括:
业务流程执行语言(BPEL)
Web服务编排描述语言(WS-CDL)
一些特定于供应商的语言:
集成信息系统(ARIS)的体系结构支持EPC
Java流程定义语言(JBPM)
与业务流程建模相关的其他技术包括模型驱动的体系结构和面向服务的体系结构。
参考资料
Warning: Invalid argument supplied for foreach() in
/www/wwwroot/newbaike1.com/id.php on line
362