摘要: 分析了當前企業應用集成面臨的問題,提出了利用分層模型將應用先劃分為小粒度的組件再橫向耦合的解決思路。將當前企業應用所需的集成功能歸納為界面集成、資產集成、復用集成、流程集成和信息集成五類,并指出在橫向分層模型設計時為能滿足上述五類集成應遵循平臺化、流程化、統一化三大原則。給出了一種基于分層模型的企業應用集成方案,介紹了該方案在銀行應用集成上的實踐成果及下一步的應用設想。
關鍵詞: 企業應用集成; 設計原則; 分層模型; 銀行應用
中圖分類號:TP391 文獻標志碼:A 文章編號:1006-8228(2012)10-14-03
引言
隨著大型企業不斷尋求在不同的自動化系統間交換信息,各類集成技術應運而生,從EAI[1](企業應用集成)的中心輻射型通信方式到ESB(企業服務總線)的分布式通信方式,再到更為靈活的SOA[2](面向服務的體系結構),已逐漸形成了支持多平臺、多協議的企業應用集成解決方案。這些方興未艾的技術逐漸將企業內和企業間的信息孤島整合在一起,很大程度上滿足了企業應用集成的需求。但問題在于,這些技術一般將不同的IT系統視為獨立的個體,主要著力于實現復雜和異構IT系統間的通信,對如何將不同系統的應用真正整合為一個整體缺少關注。因此如何能在一個全面互聯互通的基礎設施上橫向整合種類繁多的系統,把應用“互通”改造為應用“歸一”是企業應用整合發展到新境界所應重點關注的問題。
1 分層模型構想的由來
在企業應用集成實施前,企業內部大量的舊系統建設模式主要體現為端到端的設計,即各系統從后臺服務到前端展示自行實施,各成體系。這種“豎井式”的項目群形成了以核心系統為主,各種業務系統并存的格局。對任何成功的企業來說,應用集成時1+1>2的能力和投資回報的最大化才是他們的目標和關注的重心,如果僅用EAI手段將不同應用通過中間件或服務發布訂閱方式簡單連接無疑無法實現這個目標。因此,企業應用的集成不應一直沿用原有的按系統垂直劃分的思路,將應用劃分為小粒度的組件再橫向耦合才能徹底打通舊系統間的邏輯邊界。這種滲入式的應用集成將不僅能給企業帶來直接的競爭優勢,還能使未來的新系統建設具有更大的靈活性和可復用性。困難在于,千差萬別的應用造成組件的劃分也千差萬別,阻礙了不同應用的有效集成,因此,設計一個通用的分層模型用于指導不同應用在集成前的有效細分十分重要。
2 企業應用集成分類
為了能科學設計分層模型,首先需要歸納企業應用集成需求。根據研究,企業的應用集成需求可以分為五大類型,包括界面集成、資產集成、復用集成、流程集成和信息集成[3,4],下面簡要描述這些集成所提供的功能。
⑴ 界面集成:提供跨應用和設備的互動用戶體驗,使用戶可以通過任何設備以統一入口訪問所有的交易和系統服務。
⑵ 資產集成:提供企業資產有效連接,使不同系統中的信息可以在整個企業范圍內共享。
⑶ 復用集成:解決現有資產的重組,在擴展系統時如果能夠把原來的應用轉化為Web服務而加以重新利用,縮短建立新系統的周期。
⑷ 流程集成:使企業通過展示、自動化和監控企業內部運作來改變企業的運作方式。
⑸ 信息集成:將集成企業內外各種形式的業務信息。與訪問單個信息資源不同,信息集成基于統一的信息資源觀念,使連貫搜索、訪問、復制、轉化和分析成為現實。
上述五類集成的核心特征如表1所示,這些集成是互補的,忽視其中任何一個方面都會導致企業在降低成本、提高效率、增加收入等方面的失敗。同時它們各自也是相對獨立的,企業在開始進行業務整合時完全可以根據實際需求,從某一個方面著手,隨后再逐漸展開,最終實現業務整合的目標。
3 實現企業應用集成所需的設計原則
橫向分層模型設計的基本目標就是為滿足上述五類集成需求,使實現渠道業務展示和業務功能實現逐步走向分離,在此基礎上,企業應用的惟一前端能以統一的實現發揮企業產品的綜合優勢[5,6]。因此,橫向分層模型的設計至少應滿足平臺化、流程化、統一化三大原則。實現五類集成對應的設計原則如表2所示。
3.1 平臺化原則
⑴ 提供應用開發的技術標準,支持多廠商、多項目的獨立應用開發和統一集成部署。
⑵ 對于同一類系統所必需的登錄登出、權限、角色等功能提供可直接使用的基礎實現。
⑶ 后臺集中管理、控制、監控前臺的操作,如前臺界面的控制、版本升級和簡單維護等。
3.2 流程化原則
⑴ 可通過配置進行操作流程的整合,包括兩個方面:同一后端業務系統內流程整合,指上下文流程串接;跨后端業務系統的流程整合,提高前端業務處理的整合能力。
⑵ 可通過配置進行同一后端業務系統內流程串接,包括三種方式:第一種方式,針對業務非常頻繁的交易串接,根據已經配置好的交易聯動直接連動下一個交易;第二種方式,針對交易可能發生串接,可以讓用戶選擇是否連動下一個交易;第三種方式,針對交易可能串接多種選擇,可以讓用戶選擇需要串接的交易。
⑶ 跨后端業務系統的流程整合時,不同后端業務系統所需的要素在前臺集中錄入和采集,采用直通不落地方式,整合在一個界面、一個流程中,一次性采集。
3.3 統一化原則
⑴ 實現單點登錄,登錄后即可根據分配的崗位權限操作不同的業務應用系統。
⑵ 交互界面與后端的業務系統分離,用戶能通過統一的交互界面操作任何后端業務系統所提供的服務。
⑶ 前端統一實現多個后端業務系統的系統展示,后端業務系統的服務調用由前端統一封裝,操作柜員感覺不到后端不同業務系統的差異和風格。
⑷ 同一類業務處理中可以保持相同的用戶交互界面、統一的用戶交互過程控制,實現界面操作標準化。
4 一種橫向分層的企業應用模型
綜合上述企業應用集成需求和需滿足的設計原則,我們采用一種可通用的企業應用橫向分層模型如圖1所示。企業可根據該模型對各應用系統細分,每套系統最終分解為幾個分布在不同層次的服務,再將這些服務封裝為一個個可用的組件以服務方式提供給外界,徹底消除應用集成有可能對系統垂直建設形成壁壘的問題。
4.1 渠道門戶層
渠道門戶層的服務是支持多渠道部署的最前端的應用服務組件。渠道門戶層的服務主要實現用戶交互和展現的功能,包括用戶界面的基本元素、基本會話操作過程、提示信息的顯示、報表的格式訂制和打印、與后端服務的連接、渠道管理等等。這些服務可以用來針對一個特定渠道組裝前端應用,或者擴展一個現有渠道前端應用的功能。
4.2 業務操作層
業務操作層的服務是支持操作管理與控制和流程串接的共享服務組件。業務操作層的服務通常都是面向所有業務公共的服務,可以用來構建對一個業務的操作管理和控制的應用。包括對操作渠道的管理和控制(例如,哪些渠道可以在什么時間段開放操作,允許哪些類型的用戶接入,可以操作哪些業務等)、對操作主體的管理和控制(例如,對于用戶登錄和身份認證服務,哪些類型的用戶在什么時間段可以通過哪些渠道操作哪些業務,用戶的操作權限和操作過程中的授權控制等)。這些服務體現了業務操作制度的要求,是監控違章作業、控制操作風險的基本設施。
4.3 產品服務層
產品服務層的服務是針對特定產品線的專屬服務,提供產品的基本組件、產品的定義和創建、產品的管理和維護、產品的操作功能和運行過程等等。這些服務體現了面向客戶提供的產品和服務的完整的業務規則。
4.4 管理決策層
管理決策層的服務是支持信息分析、報告和利用的應用服務組件。這些組件通常是對各類業務信息進行分類、計量、統計、分析、評估、報告等加工,可以用來構建各種不同目的的管理信息應用系統。
4.5 基礎應用層
基礎應用層的服務是支撐應用集成、數據集成和信息安全集成的應用基礎設施組件。這些應用基礎設施提供服務發布、服務訪問、服務組合、應用互連、交易路由、差錯和異常的追蹤和處理、報文解析和轉換、對外連接、數據的傳輸、清洗和發布、信息加解密、安全認證等服務。這些服務支持各個應用系統訪問各個層次的服務,以及應用系統之間的互連和數據交換。
5 分層模型在銀行應用集成中的實踐
隨著銀行業經營產品數量和復雜度的迅速增加,業務子系統達到數以幾十計,造成一個柜員需面對若干個終端系統,記十幾套的柜員密碼和操作方法,終端利用率低,硬件投資浪費,各種開發方法不統一,基礎功能不能復用等等。因此,應用系統整合是實現銀行業務流程再造、組織重組等深層次變革的必然要求。在具體實踐中,本文提出的分層模型能較清晰地實現這幾十套系統的細化分層和后續的應用集成。以下簡要介紹分層模型在銀行系統整合中的應用效果,圖2展示了運用分層模型后銀行的IT架構片段(篇幅所限,圖中層間互聯僅描述了一個柜員日間操作場景)。
如圖2所示,經過分層整合后的銀行IT架構不再以業務系統為邊界,而以基礎組件為基礎服務,所有組件都從系統級服務提升為企業級服務。其中,個性化組件仍可分布在原有業務系統中,但公有組件和基礎組件已統一整合。系統集成后,渠道門戶層可同時為字符終端和瀏覽器提供服務請求,請求統一進入業務操作層,操作層根據請求類型調用產品服務層所提供的各類服務,并根據服務流程配置信息構建服務執行順序,實現憑證打印、重空使用、尾箱使用等公共類產品服務的可配置性。此外,管理決策層提供MIS類服務的基礎功能。基礎應用層為本地服務提供直接調用的API,為外系統提供服務調用代理,并通過適配器映射公共的后端服務。
6 結束語
企業應用集成的根本目的是提供一個實時的業務功能平臺,將企業內外的不同系統整合為一套系統,實現數據集成和轉換、業務過程協調、大范圍信息傳遞的目標。因此,企業應用集成可以分為流程整合和內容整合兩個方面。但當前IT行業對企業應用集成的研究主要側重于系統互聯互通方面的流程整合,而對側重功能互用的內容整合研究較少。本文提出的基于分層模型的企業應用集成方案恰恰彌補了這一不足,該方案已在某國有大型銀行II系統應用整合中成功實踐。該模型在其他行業企業應用集成的通用性尚有待于后期進一步驗證。