企業應用集成
商業計算術語之一
企業應用集成(Enterprise Application Integration, EAI) 是完成在組織內、外的各種異構系統,應用和數據源之間共享和交換信息和協作的途徑,方法學,標準和技術。企業應用集成所連接的應用包括各種電子商務系統,企業資源規劃系統,客戶關係管理系統,供應鏈管理系統,辦公自動化系統,資料庫系統,數據倉庫等。
是企業內針對計算機應用的現代化、穩固化以及協調化的計劃、方法和工具的商業計算術語。一個企業一般都有現有的傳統應用程序和資料庫,當附加或移動到一個應用英特網、電子商務、外聯網以及其他新技術的新的應用程序時,企業希望能夠繼續使用這些傳統的應用程序和資料庫。企業應用集成包括發展一個企業業務和它的應用程序的全新視圖,觀看現有的應用程序對新的視圖適應的情況,然後想辦法使在加入新的應用程序和數據時,已經存在的應用程序可以高效的重新使用。
EAI的原則是集成多個系統並保證各個系統互不干擾。
企業應用集成主要分為用戶界面集成,流程集成,應用集成,數據集成幾個層面。
用戶界面集成,用戶交互的集成
流程集成,跨應用系統的業務流程的集成
應用集成,多應用系統間的交互
數據(信息)集成,保證多個系統中的信息保持一致
EAI的目標,決定其包括的內容很複雜。試想一下,要使各類IT應用彼此如意地溝通,EAI肯定要擁有與CRM、MIS這樣的應用系統打交道的能力。這種能力,就像為使用不同語言的人提供翻譯一樣,中介者自身首先要能夠與雙方良好溝通。掌握外語不容易,擁有與已有系統溝通的能力也很困難——這些已有的系統可能分佈在企業的不同地域;系統所使用的平台可能是微軟的產品,也可能是Novell的產品;系統的開發工具可能VC,也可能是早期的COBOL——EAI,要涉及到信息系統的底層結構、硬體平台、軟體內部甚至部分業務流程等方方面面的各個層次。因此,EAI的集成也分為若干層次。這裡,列出了基於中間件的EAI解決方案的4個類型:
對業務過程進行集成的時候,企業必須在各種業務系統中定義、授權和管理各種業務信息的交換,以便改進操作、減少成本、提高響應速度。業務過程集成,包括業務管理、進程模擬以及綜合任務、流程、組織和進出信息的工作流,還包括業務處理中每一步都需要的工具。
為兩個應用系統中的數據和程序提供接近實時的集成。在一些B2B集成中,它可以用來實現CRM系統與企業後端應用和Web的集成,構建充分利用多個業務系統資源的電子商務網站。
為了完成應用集成和業務過程集成,必須首先解決數據和資料庫的集成問題。在集成之前,必須首先對數據進行標識並編成目錄,另外還要確定元數據模型。這三步完成以後,數據才能在資料庫系統中分佈和共享。
要實現系統的集成,底層的結構、軟體、硬體以及異構網路的特殊需求都必須得到集成。平台集成處理一些過程和工具,以保證這些系統進行快速安全的通信。
基於雲的數據集成在很多時候是有效的。但是基於雲的應用集成(基於雲的EAI)就有點新品上市的意味了。像SnapLogic和Boomi這樣的廠商協助我們殺進基於雲的數據集成領域,像Informatica這樣的重量級選手則協助其成為主流技術。第一個基於雲的應用集成平台:iON是第一個功能完整的,為雲應用集成構建的套件。
通過以上集成,EAI使得企業眾多信息系統都與一個由中間件組成的底層基礎平台相連接,各種“應用孤島”、“信息孤島”通過各自的“適配器”(可以理解成一個轉介面)連接到一個匯流排上,然後再通過一個消息隊列實現各個應用之間的交流。就像幾個只會講各自母語的人遇到了一個“萬能翻譯”一樣,不同的信息系統之間終於可以流暢對話了。
這樣,EAI使得企業內部的應用系統能夠通信順暢。系統之間藉助EAI實現良好的溝通,可以極大地減少以往通過手工處理導致的資源消耗(列印成本、人力成本、時間成本),為企業創造了價值。在這基礎上,它還可促進一個企業與另一個企業的應用系統的整合,以實現企業同供應商、經銷商等合作夥伴之間更加緊密的協作關係。
Java消息服務,Java中用於訪問面向消息中間件的規範,用於在不同系統之間通過交換消息進行集成。
Web服務。
XML,用於表示數據和信息的格式標準。
面向服務的架構。
企業應用集成產品是指連接異構系統的中間件,產品在了解各種應用系統的數據模型和API的基礎上,開發出各種應用系統的適配器,用於從應用系統提取和插入數據,並提供管道,匯流排或類似的手段將不同適配器連接起來。
EAI(Enterprise Application Integration,企業應用集成)是一種全新的戰略企業解決方案,它利用通用的中間件(middle ware)融合了企業已有的應用軟體、商業封裝式應用軟體以及新代碼三方面的功能。一般意義上的EAI通過建立底層結構,來聯繫橫貫整個企業的異構系統、應用、數據源等,完成在企業內部的ERP、CRM、SCM、資料庫、數據倉庫,以及其他重要的內部系統之間無縫地共享和交換數據的需要。
有了EAI,企業就可以將企業核心應用和新的Internet解決方案結合在一起。然而,要構建一個有效的電子商務解決方案,必須使這些系統能夠協調地工作。例如當用戶通過Internet訂購一個產品時,該產品需要被包裝發運,用戶需要付款,產品庫存信息需要進行修改更新,原材料或新的備件需要被及時訂購,這一系列的工作流都靠系統自動地推動。因此,電子商務並不是奇特的、搶眼的Web站點的問題,而是新的基於Web的系統和現有的在企業中運行的後台應用系統之間的集成問題。所以說,EAI的概念應當從基本的連接器擴展到工作流配置的層次。
EAI技術的發展經歷了從不成熟到逐漸成熟的坎坷歷程,回顧EAI技術的發展過程, EAI技術的演變經歷了十多年的時間,產生了幾代從不成熟到逐漸成熟的EAI技術,為企業帶來不斷增長的商業價值。下面對EAI技術的演變過程進行簡要說明:
20世紀60年代到70年代期間,企業應用大多是用來替代重複性勞動的一些簡單設計。當時並沒有考慮到企業數據的集成,惟一的目標就是用計算機代替一些孤立的、體力性質的工作環節。
20世紀80年代,企業規模開始擴大,企業業務和數據日趨複雜,一些公司開始意識到應用集成的價值和必要性,很多公司的技術人員試圖在企業系統整體概念的指導下對已經存在的應用進行重新設計,以便將它們集成在一起。此時,點到點(Point-to-Point)的集成技術開始出現,在各個應用系統之間通過各自不同的介面進行點到點的簡單連接,實現信息和數據的共享。點到點的應用集成也被稱為第0代EAI技術。
20世紀80年代末和90年代初,隨著企業規模的進一步擴大,應用系統不斷增加,簡單的點到點連接已經很難滿足不斷增長的應用集成要求,企業迫切需要新的集成方法:可以少寫代碼,無須巨額花費,就可以將各種舊的應用系統和新的系統集成起來。第1代EAI技術的出現在一定程度上解決了這些問題,它採用CORBA/DCOM、MOM(消息中間件)等技術,實現了對企業信息的集成,促進了企業的進一步發展。
20世紀90年代中後期,企業業務的迅速發展以及與電子商務的結合對應用集成解決方案提出了更高的要求,局限於信息集成的第1代EAI集成技術很難實現企業業務流程的自動處理、管理和監控,基於業務流程管理/集成(BPM/BPI)的第2代EAI集成技術成為更加合適的集成選擇方案。第2代EAI集成技術通過實現對企業業務流程的全面分析管理,可以滿足企業與客戶、合作夥伴之間的業務需求,實現端到端的業務流程,順暢企業內外的數據流、信息流和業務流。第2代EAI集成技術是當前集成技術發展的主流。
目前,EAI技術正向第3代集成技術演變:即根據不同行業集成技術的特點,推出基於行業的預建構集成包,預先解決行業共性的問題,從而縮短EAI項目開發周期。
延展諮詢專家唐志明先生認為,企業的應用集成分為三個層次,而且每個層次的意義和目的不相同,如圖所示:
企業應用集成
業務集成通常會實現業務邏輯在多個信息系統之間的流轉。技術實現並不是唯一有效的這手段,通過規範管理要素是更好的選擇,即統一業務邏輯。
數據集成是解決信息系統底層的數據同步性、時效性問題,其目的是解決數據來源的唯一性,真實性、時點性(數據是動態的,不同時點的數據有不同的狀態)。
數據集成是業務集成的技術基礎,但對這種技術實現精度的要求可高可低,其衡量標準是緊急程度和代價的多少。
管理評估、流程梳理、流程優化、流程落地、IT情景規劃、軟體選型、系統實施、專家服務等。
在企業計算領域,企業服務匯流排是指由中間件基礎設施產品技術實現的、通過事件驅動和基於XML消息引擎,為更複雜的面向服務的架構提供的軟體架構的構造物。企業服務匯流排通常在企業消息系統上提供一個抽象層,使得集成架構師能夠不用編碼而是利用消息的價值完成集成工作。
企業服務匯流排提供可靠消息傳輸,服務接入,協議轉換,數據格式轉換,基於內容的路由等功能,屏蔽了服務的物理位置,協議和數據格式。
ESB架構(ESB Architecture)
匯流排一詞是對在一台電腦的不同設備間運輸比特的物理匯流排的引申。ESB在更高抽象層次上提供類似的功能。在一個使用ESB的企業架構(en:enterprise architecture)中,應用將通過匯流排交互,而匯流排扮演著應用間的信息調度(message broker)的角色。這種方法的主要優點是它減少了應用間交互所需的點對點連接的數量。這樣,另一方面使得對主要軟體變化帶來的影響進行分析更簡單更直觀了。通過減少一個應用系統的連接點數量,對這個系統中的一個組件的改造過程變得簡單了。