當前我國社會經濟的發展正進入到“信息化”與“工業化”相融合的階段,這不但對信息化與業務的結合提出了更高的要求,也對信息化的集成整合提出了更高的要求。在“兩化融合”的背景下,企業信息化的發展越來越注重信息系統的集成和信息資源的整合,集成整合程度的高低已成評價信息化水平的一個極為重要的標志。
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.guhuozai8.cn/
本文標題:基于SOA和BPM的集成整合平臺研究