当前我国社会经济的发展正进入到“信息化”与“工业化”相融合的阶段,这不但对信息化与业务的结合提出了更高的要求,也对信息化的集成整合提出了更高的要求。在“两化融合”的背景下,企业信息化的发展越来越注重信息系统的集成和信息资源的整合,集成整合程度的高低已成评价信息化水平的一个极为重要的标志。
1.集成整合技术的发展分析
集成整合技术主要经历了从点对点集成技术、企业应用集成技术(EntERPrise Application Integration,EAI)到目前主流的面向服务架构(Service-Oriented Architecture,SOA)及业务流程管理(Business Process Management,BPM)的发展过程,如图1所示。
图1 集成整合技术的发展过程
集成整合技术的发展经历传统的点对点的集成方式、企业应用集成方式(EAI)、面向服务架构(SOA)、业务流程管理(BPM)、协作、无处不在的服务等六个过程。
2.面向服务架构SOA
SOA是一种软件系统架构,这种架构使应用系统能够按照统一的标准来封装自己的功能单元和接口,使之成为一个个的服务,并且以一个标准协议对外发布。应用系统的服务与服务之间通过定义良好的接口和契约联系起来,实现系统及功能模块之间的集成整合。
3.业务流程管理BPM
BPM 是利用人员、系统和信息之间的协作使软件能力与业务、技术相融合的方法和IT工具,能够快速实现业务流程的优化,促进业务不断创新。BPM 的出现解决了企业业务流程实时改变所带来的敏捷性、实时效果评估、资源整合与优化等问题。
3.1 BPM的架构体系
完整的BPM 架构由BPM 平台、业务流程管理模式和图形化流程设计环境以及整合各种资源的底层SOA平台等主要元素组成。BPM 基于SOA 架构,它通过捆绑其它应用系统的服务来制作并提供跨应用系统的BPM 流程,也可以组合已有的业务服务来生成新的服务,对其基本要素进行模块化管理,并且可以循环使用。
3.2 BPM的优势和局限型
BPM 近年来备受关注,缘于技术具有的特点和优势,主要体现在:
(1)以业务为主导
(2)能提供有效适应业务流程变化的能力
(3)实现了业务活动的监控
(4)能够与以流程为中心的企业管理相结合
BPM 在实际应用中,仍然存在一定的局限性,主要表现在:
(1)与业务系统接口的紧耦合带来实施和应用的困难
(2)应用系统的接口设计难度大
(3)问题处理的难度增加
4.基于SOA和BPM的集成整合平台
SOA 和BPM 是在各自独立的背景下产生并发展起来的,而当它们的发展出现交汇时,促使集成整合进化到一个新的阶段。
4.1 SOA和BPM的融合
从技术特点看,SOA 和BPM 是相通和互补的。业务流程本身就是一系列的服务,因此BPM 与SOA 面向服务的基本理念在根本上是一致的。SOA 具备的松散耦合、灵活变化和可重用机制,是BPM 所带来的流程优化和流程重组所需要的,而BPM 提供的流程编排和流程重组的能力,也正是SOA 所期待的。因此将SOA与BPM 相结合,先以SOA 实现应用系统的服务化,再以此为基础实施BPM,形成服务与流程协作的机制,其结果是使企业能够将组成业务流程和底层IT 基础架构的各个要素视为可以重用或组合的标准组件(服务),从而可以随时改进或重组业务流程,适应市场的变化和获得业务的竞争优势。
4.2 基于SOA和BPM的集成整合平台架构
将SOA 和BPM 相互结合,可以构建以流程集成为核心的集成整合平台。SOA 通过信息系统抽象,提供标准接口的服务,BPM 指导业务流程创建, 使用服务。通过“服务”,业务和技术获得了统一,而集成主要是以BPM 为中心进行业务流程集成。基于SOA 和BPM 的集成整合平台的架构如图2所示。
图2 基于SOA和BPM的集成整合平台架构
在集成整合平台中,底层是基础构件,提供集成整合所需的系统平台和应用系统的元素,包括Web 服务、技术组件和从应用系统中抽象出来的应用组件,还可以提供支撑云计算应用的云服务;中间层是SOA 架构,包括企业服务总线、业务逻辑服务和控制服务,为上层的BPM 提供封装为服务的业务系统功能和IT 基础架构的功能;上层是BPM 平台,包括业务流程建模标注、业务活动监控、业务规则管理和流程引擎,它根据预先制定的流程模型,将一系列服务组成业务流程,并由流程引擎驱动流程运作,完成用户所需的业务功能。
在基于SOA 和BPM 的流程管理中,企业业务流程中的功能单元被封装为服务,统一由流程引擎来驱动,流程是衔接和连续的,具备较好的灵活性,通过可视化工具即可维护。在图3的例子中,传统的业务流程经过SOA 和BPM 的改造后,业务流程是可编排和可管理的,因此业务流程发生变化时,通过流程管理工具可以将服务重新按业务要求进行编排或重组,快速实现新的业务流程。
图3 以流程集成为核心的集成整合示例
4.3 基于SOA和BPM的集成整合平台的关键技术
SOA 和BPM 各自都有成熟的技术架构,将两者结合起来构建的集成整合平台,主要是要解决SOA 与BPM 的交互。在BPM 中,主要与SOA 交互的是流程设计器和流程引擎。SOA 架构是由企业服务总线ESB 负责为SOA 提供连通服务的,因此解决问题的关键是解决BPM 的流程设计器和流程引擎与ESB 的交互,包括ESB 的连通服务技术、流程设计器和流程引擎与ESB交互技术。
(1)ESB 连通服务技术
ESB是传统中间件技术与XML、Web服务等技术结合的产物。ESB 提供了网络中最基本的连接中枢,使软件服务和应用程序组件在其上流动和交互,是构筑企业神经系统的必要元素。ESB 的作用是实现企业内部信息的准确、高效和安全传递。它可以消除不同应用之间的技术差异,让不同的应用服务协调运作,实现不同服务之间的通信与整合。ESB 可以连接企业各种纷繁复杂的应用,并且将它们整合在一起。ESB 能够以合理、符合业务需要的节奏连接应用程序和调节消息流量,从而达到提高效率和可靠性、加快响应速度的目的。
ESB 的架构如图4所示。在ESB 的架构中,服务路由目录和业务服务目录负责路由服务请求。Web 服务在服务路由目录和业务服务目录的角色中都放置了一个UDDI 目录,因而可以动态发现和调用服务。这样的目录可以视为ESB 的一部分;业务服务编排的作用是通过若干业务服务来组合业务流程, 因此它将通过ESB 调用服务,然后再通过ESB 将业务流程公开为客户端可用的其它服务;ESB 网关组件的作用是使两个或多个组织的服务在受控且安全的方式下对彼此可用,这有助于查看这些连接到ESB 的组件,但它们并不属于ESB,而是一个附加的部分。
图4 企业服务总线(ESB)的架构
(2)流程设计器和流程引擎与ESB 交互技术在BPM 中主要与SOA 交互的是流程引擎和流程设计器,它们都是采用业务流程执行语言(BPEL),并通过连接ESB 与SOA 进行交互。流程设计器首先通过图形化的设计界面,用业务流程建模标注(BPMN)设计出流程模型,并从流程模型自动生成BPEL。用BPEL描述的流程交给流程引擎执行。因此从流程设计到执行,都是由BPEL 作为与SOA 交互的媒介。BPEL 流程执行时与Web 服务交互应用的过程如图5 所示。
图5 BPEL 与ESB 及Web 服务交互示意图
首先由客户端(JSP)通过消息发起流程,创建流程实例并传入相关参数;流程在Receive节点将参数存入与BPEL 流程绑定的WSDL 接口的输入变量BO中;添加invoke节点调用外部的Web服务。Web服务根据输入变量BO完成查询数据库、启动其他工作流等相关业务处理并返回输出值给BPEL流程;流程在Reply节点把输出值返回给前台JSP,至此流程结束。
5.以流程集成为核心的集成整合的实施路径
在烟草行业企业的流程集成中, 主要采用了三条路径来达到高效的业务价值,分别是“服务关注型”、“流程/服务迭代型”和“流程关注型”,如图6所示。
图6 服务关注型、流程关注型和服务/流程迭代型实施策略的示意图
(1)服务关注型
这种模式主要关注服务平台的建设。它针对企业已经存在着很多大型“烟囱式”应用的情况,因此服务的集成和整合在SOA 架构部署中有着很高的优先级;企业需要启动一个很大的集成项目,对现有的大型的企业遗留应用进行集成和重用,并通过一个坚实的外部服务平台实现和业务合作伙伴进行企业协同;这种模式下的SOA 项目将会演变成一个个服务平台的建设;虽然主要关注点是服务平台的建设,但随着企业的发展业务流程优化的需求将逐步浮出水面。
(2)流程关注型
这种模式下,企业并不重视服务的部署,相反会直接在应用系统内部部署新的业务流程;基础服务平台的项目将被滞后部署,这样做意味着业务流程和应用之间的集成工作有可能会重做,并有可能导致服务复用的失败;这种模式适用于短期速赢的业务流程优化项目,在中长期项目中一般很少使用这样的模式。
(3)流程/服务迭代型
这种方式从一个相对简单的流程开始,好处是一方面能减轻底层服务层的复杂性,另一方面会降低项目的风险;实施的初期将主要关注一个核心的业务流程,成功后将逐渐铺开到其它的核心流程;在项目推进过程中企业对ROI(投入产出比)较为关注;到了项目中后期,业务流程将逐步复杂,因而对应的SOA 服务的部署会变得困难,但这种复杂性恰恰能提升企业的价值;随着业务流程的增加和相关服务的实现,企业将积累相当有用的成功经验,并对下一阶段的项目推进有积极的作用。
从以上对三种实施路径特点的比较可以看出,流程/服务迭代型具有较好的特点,因此可以作为企业信息化建设的首选。当然如何选择还是应当根据自身的实际,选择适合企业自己特点和需求的实施路径。
6.结语
本文针对当前企业信息化的重点和难题——信息化集成整合的技术进行了探讨, 在对主流的集成整合技术SOA 和BPM 进行分析的基础上,着重提出了两者结合的集成整合平台方案, 重点描述了集成整合平台的架构, 可以为企业的信息化集成整合提供一个有效的解决方案。目前我国企业信息化的集成整合程度还不高,在实施过程中也遇到很多难题。本文虽然提出了三个实施的途径, 但具体的实施方法、步骤还需要细化,这有待于后续的进一步研究探讨。
转载请注明出处:拓步ERP资讯网http://www.toberp.com/
本文标题:基于SOA和BPM的集成整合平台研究