一、概述
BPMN(Business Process Modeling Notation)业务过程建模表示符号,也就是说,BPMN只是像UML一样的,是一种模型,用来表示业务过程的建模的,它只是一堆符号。
它被称为服务组合建模语言,只是根据它的功能来讲的。
BPEL4WS(Business Process Executaion Language for Web Services):Web Services的业务过程执行语言。它的作用是用来组合Web Services的,所以被称为服务组合编程语言。就像C/C++,Java一样,它写出来的程序也是可执行的,所以才有语言两个字。
Pires对Web服务组合的定义,“Web服务组合是通过组合基本Web服务提供增值服务的能力,这些基本服务可以由别的组织提供”。含义有三点:首先,服务组合当然要组合其它服务;其次,组合成的服务是更有价值的一个服务;第三,可以使用别人已做好的服务。
业务过程通常由领域专家来完成。但是能过我们对业务流程的监控和不断的改进,也就是进行BPR,也可以达到类似于专家级别的效果,这样的结果是由工作流管理系统或BPM这样的软件在业务人员的配合下共同完成的。
活动之间需要传递信息,实现任务的应用程序和服务需要与工作流引擎或是BPM软件之间交换信息,这些都需要有一个数据交换格式的定义的问题。这些问题的实现是由类似DataFields或SchemaType这种形式来描述。
一个一个的Web Service组合在一起,共同完成一个业务过程。而它们通过BPEL4WS或XPDL联系在一起,由执行它们的引擎执行。
Web Service的调用是通过消息来实现的,因此服务组合语言通常包括“接收消息”和“发送消息”原语。它们共同形成了对外的接口。
服务组合(Service Composition):是以特定方式按给定的应用逻辑将若干服务组织成为一个逻辑整个的过程、方法和技术。
因为服务组合技术是用来描述业务过程的,而业务过程又需要在实际的运营过程中不断的调整和优化。所以它也有一个生命周期:
(1)建模
相应的语言:BPMN,UML,EDOC Business Process等。
(2)分析和仿真
就是对业务过程的验证和仿真运行。
(3)实现
就是编程实现。把建模阶段用相应的语言描述的模型变成可以执行的具体语言。BPMN规范规定了从模型到BPEL4WS的自动转换。
(4)部署和执行
就是类似于软件的安装、运行。服务在执行引擎上的分布。
(5)监控
就是对业务过程运行过程的监控,提供一些实时的显示或报警功能。
(6)优化
总结经验,改进过程。