[摘 要] 針對目前的企業應用集成在實際應用中集成能力及擴展性差、互操作性不高、忽視業務流程集成、集成平臺缺乏靈活性和適應性等缺點,在面向服務架構和工作流管理系統之上,提出了基于SOA和WFM的企業應用集成系統SW-EAI。它具有松散耦合、業務流程集成、高度可集成及互操作能力等優勢。主要討論基于SOA和WFM的企業應用集成的體系架構以及企業應用集成的層次模型。
[關鍵詞] 企業應用集成 面向服務架構 工作流 互操作
一、引言
現今,越來越多的企業面臨著“信息孤島”帶來的挑戰。OA系統、ERP系統、CRM系統、SCM系統和財務系統等等,每一種信息系統都能很好地完成某一些功能,但卻難以形成一個完整的企業級業務流程。然而,這些企業并不能一夜之間將他們的那些孤立的應用系統全部放棄或替換,在當前的商業環境下從零開始重新開發他們的整個信息系統常常是不合算的。另一方面,這些企業需要不時地引進各種新的系統。重要是這些新方案是基于最新的架構,他們與原有的系統的架構也有著很大的不同。如何成功實施企業應用的整體集成,是每一個企業必須解決的問題。
企業應用集成就是為解決上述問題而產生的。企業成功實施EAI的關鍵在于把EAI提升到一定的高度,即在考慮企業應用架構之初就對其進行整體規劃的基礎上,建立一個完整的企業應用集成架構。通過架構,一方面來聯系橫貫整個企業的異構系統,以實現在企業內部系統之間無縫地共享和交換數據,并明確如何將相關的業務流程集成在一起。另一方面,在添加新的應用系統時就可以很方便地將它們插入到集成框架之中,使新的業務流程與已有的業務流程自然地銜接在一起,實現應用集成的目標。
二、面向服務架構和工作流管理
1.SOA
面向服務架構是一種客戶機/服務器軟件設計方法,其中應用由軟件服務和軟件服務使用者組成。SOA與多數一般的客戶機/服務器模型不同,它明確地強調軟件組件之間的松散耦合,及其獨立標準界面的使用。SOA描述了一套完善的開發模式來幫助客戶端應用連接到服務上。這些模式定制了系列機制用于描述服務、通知及發現服務、與服務進行通信。
SOA是支持以可重用組件和服務組裝業務流程,而這些組件和服務是其所運行的應用程序和計算平臺的獨立部分。而應用SOA的一大目標就是多應用的整合,不但是跨平臺的,而且被整合的應用仍能保持其自主性。服務之間必須是松耦合的,如果它們之間的耦合度過于緊密,整個系統架構將是非常脆弱的。所以需要將服務定義為業務邏輯單元,將IT邏輯從服務中剝離出來。這樣,服務就可以由不同的企業來提供,而且對于變更管理來講,任何一個服務的變化都不會影響到其他的服務。
2.WFM
工作流管理是實現企業業務流程自動化和經營過程重組的有力武器,將工作流管理用于企業應用集成有著良好的應用前景。基于新的企業管理思想,面向過程的計算機應用在今后的企業經營業務中將發揮更重要的作用,而工作流技術就是面向過程建模、優化、執行與監控的先進技術。
采用工作流技術為核心開發的業務系統的最大特點,是它們具有高度的靈活性,可以按照企業的具體需求,快速靈活地完成流程的應用;并可在客戶業務過程發生變化時,迅速地重組來滿足客戶需求。
三、基于SOA和WFM的企業應用集成架構SW-EAI
1.體系結構設計要求
面向服務的企業應用系統可以隨著企業業務的變化而逐漸變化,能夠實現“柔性化”的軟件系統,從而降低實施EAI的成本和風險。EAI解決方案底層的設計框架是面向服務的架構理念。依照SOA架構建設、改造、封裝各類企業服務,使這些服務可以被簡單地發現、調用、管理。
提出的基于面向服務架構和工作流管理的企業應用集成體系結構將重點集中于系統的可變,主要優勢在于達成一個可變的集成框架,該框架允許重用并重新組合服務,從而快速的產生新的功能模塊以適應系統所支持的飛快變化的商業需求。
2.基于SOA和WFM的企業應用集成的策略
面向服務的企業應用集成方法用面向服務架構的指導原則及理念來構造服務集群系統,在此系統中,業務用戶能夠動態地聯合和組成滿足不斷演化和改變的業務要求的高級流程。此方法通過強制分開每個服務的消費者和該服務的生產者,從而超越脆弱的、緊耦合的企業應用程序集成和B2B集成方法,增強了松散耦合的關鍵方面,這些在自動演化為滿足業務要求的集成場景中都是必需的。
然而,面向服務的企業應用集成框架本身并沒有設計提供如何構建合適的服務來滿足如今業務要求的指導,也沒有提供在最有效、可伸縮的情形下執行服務的方式來保證長期運行交互。工作流技術提供了必要的過程驅動指導,用于確保其將細粒度服務組合成實際的運行時業務流程。
因此,本文提出了基于面向服務架構和工作流管理技術的企業應用集成策略,如圖1所示,對企業應用系統首先進行面向服務架構的服務化,然后通過工作流技術來進行業務流程級別的集成,從而得出一個更加全面的企業應用集成框架。
3.基于SOA和WFM的企業應用集成體系結構SW-EAI
根據上述的集成策略,面向服務架構的異步消息、松耦合、粗細粒度服務的方法提供了應用集成的最佳基礎模型,而工作流管理提供了必要的過程驅動指導,用于確保其將細粒度服務組合成實際的運行時業務流程。通過這些方法的組合,企業可以朝著自動集成的企業集成遠景前進。圖2描述了基于面向服務架構和工作流管理的企業應用集成的體系結構SW-EAI。
各層的主要功能描述如下:
◆客戶訪問層
對企業應用來講,客戶一般分成以下幾類:一般客戶,隨機訪問客戶,商業客戶,動態商業伙伴。它們通過企業防火墻,外部交互網關后,訪問Web應用層的組件,充當了服務請求者的角色。
◆Web表示層
是在SW-EAI集成平臺基礎之上的Web應用,主要為企業用戶和個人用戶提供統一的調用界面。通過門戶的方式訪問不同的應用程序,在不同的集成應用程序之上,提供統一的界面。
◆流程集成層
流程集成層是SW-EAI系統的核心組成部分之一,它包含了以下一些組件:業務流程建模,流程部署,BPEL引擎,流程控制器,監控服務。BPEL引擎是流程集成層的核心,它連接其他幾個服務器模塊,共同對外提供一個統一的應用調用處理界面。流程集成主要起到了在企業信息系統中定制自動的系統集成服務的作用,通過可視化的建模,可以定義一個應用集成的流程,從而實現系統的自動集成。
◆服務組合層
服務組合層也是SW-EAI系統的核心組成部分之一,它主要是對細粒度的服務的組合,從而形成業務流程。
◆企業服務總線
這是面向服務架構體系中的基礎架構,各個服務通過總線來互相訪問。其中的消息服務作為消息總線連通了集成引擎層和企業應用系統的消息交互,并為集成引擎層進行消息格式轉換功能提供了元數據映射模式。
◆服務封裝層
服務封裝層是對企業現有的各種各樣的應用系統的功能發布為服務的形式,然后部署到企業服務總線中的服務目錄中心,方便業務流程層的調用。
◆外部交互網關
對外部調用的統一入口。它接收外部對企業信息資源調用的請求,將請求按照預定義規則和訪問者類型不同,分發給不同的門戶。
◆企業服務目錄中心
企業應用以服務的方式封裝后,所有關于這些服務的描述文件均要在這個企業服務目錄中心中注冊。對這些服務的調用均要首先在服務目錄中心搜索以決定調用的端口和方式。
◆企業元數據模式庫
主要存放企業應用集成中所涉及到的所有數據元模型、規則等。例如接口消息的模式,消息轉換模式,企業數據元模型模式等。它是一個存儲規則和模式的數據倉庫。
四、SW-EAI系統的層次模型
SW-EAI系統的體系結構圖,只是表明了集成架構中的各個模型以及它們的大致邏輯關系,并沒有真正的描述服務在SW-EAI中的功能作用及互相的調用關系。在此我們使用層次模式來描述基于面向服務架構和工作流管理的EAI集成平臺所能提供的各種模塊。
具體到技術層面上的劃分,SW-EAI的層次體系應該包括應用接口層,服務整合層,流程整合層和用戶交互層四個大的層面。
概括來講,SW-EAI的層次體系最下面的一層是應用接口層,它要解決的是應用集成服務器與被集成系統之間的連接和數據接口的問題以及被集成系統的數據轉換問題,通過建立統一的數據模型來實現不同系統間的信息轉換。再往上去就是服務整合層,它要解決的是構建模型服務架構中的服務集群系統,通過企業服務總線,把所有服務整合在一起,以便于流程層對服務的調用。服務整合層之上是流程整合層,它將不同的應用系統連接在一起,進行協同工作,并提供商業流程管理的相關功能,包括流程設計、監控和規劃,實現業務流程的管理。到了最上端的用戶交互層,則是為用戶在界面上提供一個統一的信息服務功能入口,通過將內部和外部各種相對分散獨立的信息組成一個統一的整體,保證了用戶既能夠從統一的渠道訪問其所需的信息,也可以依據每一個用戶的要求來設置和提供個性化的服務。
五、結束語
注意到新興面向服務架構為企業應用集成技術注入了新鮮的血液和動力,運用SOA和工作流技術來實現分布式企業應用集成系統將有助于解決在企業信息化建設中的信息孤島問題,克服傳統的企業應用集成技術所帶來的新的信息孤島。為此,我們研究并設計了一種基于SOA和WFM的企業應用集成框架,基于此框架,企業內部可以實現充分的應用集成,在跨領域跨企業的應用集成中,也可以平滑的過渡升級。具有良好的適應性和可擴展性。
參考文獻:
[1]Erasala, Naveen; Yen, David C.; Rajkumar, T.M.,Enterprise Application Integration in the electronic commerce world,Computer Standards and Interfaces Volume: 25, Issue: 2, May, 2003, pp.69~82
[2]Kobayashi, Takashi; Tamaki, Masato; Komoda,Business process integration as a solution to the implementation of supply chain management systems,Information and Management Volume40, Issue:8,September,2003,pp769~780
[3]McIntosh, Roger L,Open-source tools for distributed device control within a Service-Oriented Architecture ,Journal of the Association for Laboratory Automation Volume:9, Issue: 6, December, 2004, pp.404~410
[4]Papajorgji,Petraq; Beck, Howard W.; Braga, Jose Luis ,An architecture for developing service-oriented and component-based environmental models,Ecological Modelling Volume:179, Issue:1,November15,2004,pp.61~76
[5]任志宏 李 京 金蓓弘:基于Internet工作流的復合Web服務框架.計算機研究與發展,2003,40(7):1081~1087
[6]柴曉路:Web服務架構與開放互操作技術.北京:清華大學出版社,June, 2002
注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文