- 相關(guān)推薦
對面向服務(wù)的企業(yè)信息構(gòu)架探討
[摘 要] 本文了信息系統(tǒng)建設(shè)中存在的,提出通過構(gòu)建面向服務(wù)的企業(yè)信息架構(gòu)是解決企業(yè)“信息孤島”和 企業(yè)信息系統(tǒng)缺乏柔性等題目的有效,并全面先容了SOA架構(gòu)的基本概念、特點和SOA架構(gòu)的上風(fēng),了SOA 架構(gòu)的構(gòu)建過程和構(gòu)建策略。[關(guān)鍵詞] 企業(yè)信息構(gòu)架;SOA;服務(wù)
一、引言
面對知識的迅猛和經(jīng)濟全球化的挑戰(zhàn),黨和國家作出了“以信息化帶動化,積極推進信息技術(shù)在各行各業(yè)的廣泛”的重大決策。當(dāng)前,企業(yè)的信息化意識也明顯進步,信息化進程正在加快,企業(yè)信息化工作在進步生產(chǎn)率和企業(yè)競爭力方面正在形成巨大的潛力。中國企業(yè)信息化建設(shè)大致可分為兩種模式:一種是具有宏觀治理背景的“自上而下”模式,例如煙草業(yè)、電信業(yè)和銀行業(yè)信息化建設(shè)等。這些企業(yè)在系統(tǒng)建設(shè)之初,無法對未來可能發(fā)生的變化作出清楚的預(yù)見和預(yù)備,因此系統(tǒng)建設(shè)時特別夸大IT系統(tǒng)的穩(wěn)定性與一致性,系統(tǒng)缺乏柔性和適用性,面對日益頻繁而又深刻的業(yè)務(wù)變化,其應(yīng)變能力不免捉襟見肘;另一種是“自下而上”的模式。在一個企業(yè)內(nèi)部,多種系統(tǒng)、多個應(yīng)用并存。今天是財務(wù)軟件,明天是ERP,再過幾天又是SCM、CRM!耙粋部分一個服務(wù)器”的現(xiàn)象比比皆是,這也造成了企業(yè)內(nèi)部形成了各種不同形式的“信息孤島”,企業(yè)數(shù)據(jù)的一致性無法保證,信息及時共享、反饋難。“信息孤島”使得大量的信息資源不能充分發(fā)揮應(yīng)有的作用,效率低下,這已經(jīng)成為阻礙企業(yè)信息化建設(shè)進一步發(fā)展的最大障礙。
要徹底解決上述題目,企業(yè)就必須建立一個靈活的、快速響應(yīng)的客戶支持基礎(chǔ)架構(gòu),它可以包容現(xiàn)有的應(yīng)用并滿足未來的客戶需求和業(yè)務(wù)需求。與其他企業(yè)信息架構(gòu)方法相比,面向服務(wù)的企業(yè)信息架構(gòu)(SOA——Service-Oriented Architecture)能讓企業(yè)信息系統(tǒng)變得更有彈性,能更快地響應(yīng)業(yè)務(wù)需求,從而實現(xiàn)更好的業(yè)務(wù)靈活性,使企業(yè)能夠?qū)焖俚淖兓鞒鲇行У捻憫?yīng),并利用變化來獲得競爭上風(fēng)。
二、SOA概述
1.什么是SOA? SOA的思想最早是由Gartner于1996年提出,他為SOA描述的遠景目標(biāo)是:讓信息系統(tǒng)變得更有彈性,以更快地響應(yīng)業(yè)務(wù)單位的需求,實現(xiàn)實時企業(yè)(Real-Time Enterprise)。目前對SOA尚未有一個同一的、業(yè)界廣泛接受的定義。一般以為:SOA(面向服務(wù)的架構(gòu))是一個組件模型,它將應(yīng)用程序的不同功能單元——服務(wù)(Service),通過服務(wù)間定義良好的接口(Inte***ce)和契約(Contract)聯(lián)系起來。接口采用中立的方式定義,獨立于具體實現(xiàn)服務(wù)的硬件平臺、操縱系統(tǒng)和編程語言,使得構(gòu)建在這樣的系統(tǒng)中的服務(wù)可以使用同一和標(biāo)準(zhǔn)的方式進行通訊。
SOA 作為一種信息系統(tǒng)架構(gòu),為解決業(yè)務(wù)集成的需要,支持將企業(yè)的業(yè)務(wù)作為鏈接服務(wù)或可重復(fù)業(yè)務(wù)任務(wù)進行集成,可在需要時通過訪問這些服務(wù)和任務(wù)。這個網(wǎng)絡(luò)可以是企業(yè)的內(nèi)部網(wǎng)絡(luò),也可以是國際互聯(lián)網(wǎng)。通過采用不同的技術(shù),對來自分布在不同物理位置的不同的服務(wù)進行組合,可讓終極用戶感覺似乎這些服務(wù)就安裝在本地桌面上一樣。根據(jù)需要,這些服務(wù)可以將自己組裝為按需應(yīng)用程序——即相互連接的服務(wù)提供者和使用者集合,彼此結(jié)合以完成特定業(yè)務(wù)任務(wù),使您的業(yè)務(wù)能夠適應(yīng)不斷變化的情況和需求(在有些情況下,甚至不需要人工干預(yù))。
2.SOA 架構(gòu)的分層模型。在SOA 系統(tǒng)中,不同的功能模塊可以被分為7層:第1層是企業(yè)信息系統(tǒng)中已經(jīng)存在的程序資源,如ERP、SCM或CRM系統(tǒng)等;第2層是組件層。在這一層中我們用不同的組件把底層系統(tǒng)的功能封裝起來;第3層是SOA 系統(tǒng)中最重要的服務(wù)層。在這層中我們要用底層功能組件來構(gòu)建我們所需要的不同功能的服務(wù);第4層是貿(mào)易流程層。在這一層中我們利用已經(jīng)封裝好的各種服務(wù)來構(gòu)建貿(mào)易系統(tǒng)中的貿(mào)易流程;第5層為表示層。我們利用表示層來向用戶提供用戶接口服務(wù),這一層可以用基于門戶(portal)的系統(tǒng)來構(gòu)建。以上這5層都需要有一個集成的環(huán)境來支持它們的運行,第6層中的企業(yè)服務(wù)總線(ESB)提供了這個功能。第7層主要為整個SOA 系統(tǒng)提供一些輔助的功能,例如服務(wù)質(zhì)量治理、安全治理這一類的輔助功能。
3.SOA的特點。簡單地說,SOA 架構(gòu)具有以下一些典型特點:
(1)松耦合性。這一點使SOA區(qū)別于大多數(shù)其他的組件架構(gòu)。松耦合性要求SOA 架構(gòu)中的服務(wù)請求者到服務(wù)提供者的綁定與服務(wù)之間應(yīng)該保持一種松耦合的關(guān)系,也就是一種相對獨立無依靠的關(guān)系。SOA將服務(wù)使用者和服務(wù)提供者在服務(wù)實現(xiàn)和客戶如何使用服務(wù)方面隔離開來。這就意味著,服務(wù)請求者不知道提供者實現(xiàn)的技術(shù)細節(jié),比如程序設(shè)計語言、部署平臺等等。服務(wù)請求者往往通過消息調(diào)用操縱,請求消息和響應(yīng),而不是通過使用API和文件格式。這使得服務(wù)能夠在完全不服務(wù)使用者的情況下進行修改。
(2)位置透明性。位置透明性要求SOA系統(tǒng)中的所有服務(wù)對于他們的調(diào)用者來說都是位置透明的,也就是說每個服務(wù)的調(diào)用者只需要知道他們調(diào)用的是哪一個服務(wù),但并不需要知道所調(diào)用服務(wù)的物理位置在哪里。
(3)服務(wù)的可重用性。服務(wù)的可重用性設(shè)計明顯地降低了本錢。為了實現(xiàn)可重用性,服務(wù)只工作在特定處理過程的上下文中,獨立于底層實現(xiàn)和客戶需求的變更?芍赜梅⻊(wù)采用通用格式提供重要的業(yè)務(wù)功能,為開發(fā)職員節(jié)約了大量時間。
(4)協(xié)議無關(guān)性。協(xié)議無關(guān)性要求每一個服務(wù)都可以通過不同的協(xié)議來調(diào)用。SOA 架構(gòu)的這些特性為企業(yè)信息系統(tǒng)架構(gòu)提供了更加靈活的構(gòu)建方式,基于SOA的企業(yè)信息架構(gòu),可以從底層架構(gòu)的級別來保證整個系統(tǒng)的松耦合性以及靈活性,這都為未來企業(yè)業(yè)務(wù)邏輯的擴展,實現(xiàn)業(yè)務(wù)靈敏性打好了基礎(chǔ)。
三、構(gòu)建基于SOA的企業(yè)信息架構(gòu)
1.基于SOA的企業(yè)信息系統(tǒng)上風(fēng)。基于SOA的企業(yè)信息系統(tǒng)的核心思想是讓企業(yè)業(yè)務(wù)應(yīng)用不受限于信息技術(shù),讓企業(yè)輕松應(yīng)對貿(mào)易服務(wù)變化和發(fā)展的需要。SOA著眼于日常的業(yè)務(wù)應(yīng)用,并將它們劃分為單獨的業(yè)務(wù)功能和流程,即所謂的服務(wù)。基于SOA的企業(yè)信息系統(tǒng)架構(gòu)與其他企業(yè)信息系統(tǒng)架構(gòu)相比有以下上風(fēng):
(1)基于SOA的企業(yè)信息系統(tǒng)能更加真實地反映出與業(yè)務(wù)模型的結(jié)合。企業(yè)信息系統(tǒng)架構(gòu)環(huán)境中單個應(yīng)用程序是無法包容用戶的各種業(yè)務(wù)需求的,即使是一個大型的ERP解決方案,仍然不能滿足這個用戶不斷膨脹、變化的業(yè)務(wù)需求。在其他類型的企業(yè)信息架構(gòu)中,為了對市場快速做出反應(yīng),企業(yè)只能在現(xiàn)有的信息系統(tǒng)基礎(chǔ)上通過不斷開發(fā)新應(yīng)用、擴展現(xiàn)有應(yīng)用來支撐其現(xiàn)有的業(yè)務(wù)需求。SOA貿(mào)易應(yīng)用思想是“業(yè)務(wù)驅(qū)動服務(wù),服務(wù)驅(qū)動技術(shù)”。在采用SOA的企業(yè)信息系統(tǒng)中,系統(tǒng)的核心放在服務(wù)上,而服務(wù)是同業(yè)務(wù)流程結(jié)合在一起,因此能夠使信息系統(tǒng)更加精確地表示業(yè)務(wù)模型。
(2)基于SOA的企業(yè)信息系統(tǒng)能更好地支持貿(mào)易流程。一方面,從信息技術(shù)角度來看,SOA使用可替換的技術(shù)和方法(例如消息機制),通過把服務(wù)聯(lián)系在一起而非編寫新代碼來構(gòu)架業(yè)務(wù)應(yīng)用。經(jīng)過適當(dāng)構(gòu)架后,這種消息機制的應(yīng)用答應(yīng)企業(yè)僅通過調(diào)整原有服務(wù)模式而非***進行大規(guī)模新的應(yīng)用代碼的開發(fā),使得在貿(mào)易環(huán)境許可的時間內(nèi)對變化的市場條件做出快速的響應(yīng);另一方面,SOA也不僅僅是一種信息系統(tǒng)的架構(gòu)和信息系統(tǒng)開發(fā)的方***——它還包含治理。例如,應(yīng)用SOA后,治理者可以方便地治理這些搭建在服務(wù)平臺上的企業(yè)應(yīng)用,而不是治理單一的應(yīng)用模塊。其原理是,通過分析服務(wù)之間的相互調(diào)用,SOA使得公司治理職員方便地拿到什么時候、什么原因、哪些貿(mào)易邏輯被執(zhí)行的數(shù)據(jù)信息,這樣就幫助了企業(yè)治理職員或應(yīng)用架構(gòu)師迭代地優(yōu)化他們的企業(yè)業(yè)務(wù)流程、應(yīng)用系統(tǒng)。
(3)SOA有利于業(yè)務(wù)的集成,解決了“信息孤島”。SOA要求開發(fā)者從服務(wù)集成的角度來設(shè)計軟件,考慮復(fù)用現(xiàn)有的服務(wù),或者檢查如何讓服務(wù)被重復(fù)利用。通過服務(wù)的重用,可方便地實現(xiàn)各業(yè)務(wù)應(yīng)用的集成,實現(xiàn)單一用戶視圖。SOA中的服務(wù)既可以定義為功能,又可同時對外定義為對象、應(yīng)用等等。這使得SOA 可適應(yīng)于任何現(xiàn)有系統(tǒng),并使得系統(tǒng)在集成時不必刻意遵循任何特殊定制。SOA 的最佳策略是與現(xiàn)有的系統(tǒng)共存,而不是替換已經(jīng)運行中的系統(tǒng)。通過將原有的應(yīng)用和資源轉(zhuǎn)變?yōu)榭晒蚕淼臉?biāo)準(zhǔn)服務(wù),SOA將打破“信息孤島”,保存原有信息系統(tǒng)的資產(chǎn)。
2.基于SOA的企業(yè)信息系統(tǒng)構(gòu)建過程。由于SOA 涉及到業(yè)務(wù)的諸多方面,因此需要從一開始就對SOA 項目進行細心的規(guī)劃和設(shè)計。SOA的實施大致經(jīng)過以下幾個步驟:
(1)建模。這一步幾乎和技術(shù)沒有任何關(guān)系,所有事項都與企業(yè)的業(yè)務(wù)相關(guān)。建模是要確定企業(yè)的業(yè)務(wù)活動或流程實際是什么,并對企業(yè)的業(yè)務(wù)體系結(jié)構(gòu)進行記錄。建模業(yè)務(wù)流程的程度將依靠于預(yù)期實現(xiàn)的深度。企業(yè)信息架構(gòu)師將對實際的業(yè)務(wù)服務(wù)進行建模,企業(yè)信息系統(tǒng)開發(fā)職員將對單個服務(wù)進行建模。
(2)組裝。對業(yè)務(wù)流程進行了建模和優(yōu)化后,開發(fā)職員可以開始構(gòu)建新的服務(wù),并重用已有的服務(wù),然后對其進行組裝以組合形成應(yīng)用程序,從而實現(xiàn)這些流程。
(3)部署。進行了建模和組裝后,要將組成SOA 的資產(chǎn)部署到安全的集成環(huán)境中。此環(huán)境本身提供專門化的服務(wù),用于集成業(yè)務(wù)中涉及的職員、流程和信息。這種級別的集成可幫助確保將企業(yè)的所有主要元素連接到一起協(xié)同工作。此外,部署工作還需要滿足業(yè)務(wù)的性能和可用性需求,并提供足夠的靈活性,以便吸納新服務(wù)(并使舊服務(wù)退役),而不會對整個系統(tǒng)造成大的。
(4)治理。SOA部署后,需要從信息技術(shù)和業(yè)務(wù)兩個角度對系統(tǒng)進行治理和監(jiān)視。在治理過程中收集的信息用于幫助實時地了解業(yè)務(wù)流程,從而能更好地進行業(yè)務(wù)決策,并將有用的信息進行反饋,以進行持續(xù)的流程改進工作。在這一步中,還進行系統(tǒng)的監(jiān)視和優(yōu)化,找出技術(shù)體系結(jié)構(gòu)和業(yè)務(wù)體系結(jié)構(gòu)中有待改進之處,以對相關(guān)的業(yè)務(wù)進行重新構(gòu)建或改進。
3.基于SOA的企業(yè)信息架構(gòu)構(gòu)建原則和策略。國內(nèi)外企業(yè)成功實施SOA架構(gòu)的經(jīng)驗,我們可以看到,實施SOA有一定的策略和原則,有一定的論。
(1)做好現(xiàn)有信息系統(tǒng)評估和SOA系統(tǒng)規(guī)劃工作。要對企業(yè)現(xiàn)有的信息系統(tǒng)做全面的評估,了解已有的系統(tǒng)能用多少,有多少需要改造,還需要上哪些新的系統(tǒng),將來的新系統(tǒng)該如何滿足企業(yè)業(yè)務(wù)應(yīng)用的需求,還可能為這個新的系統(tǒng),需要投進的資本大概有多少等?傊,要有整體的規(guī)劃,這也是實施SOA最為基礎(chǔ)的一步。
(2)通常采用迭代的方法來實施SOA。企業(yè)在采用SOA的架構(gòu)進行信息系統(tǒng)改造時,不可能立即進行全面的轉(zhuǎn)換。事實上,孤注一擲的方法會增加失敗的風(fēng)險。通常采用迭代的方法逐步通過各個采用階段,首先開發(fā)少數(shù)試點項目服務(wù),然后緩慢擴展,逐步將企業(yè)的信息系統(tǒng)更新為在SOA 內(nèi)工作的服務(wù)。
(3)關(guān)注本錢和受益。SOA反對四處出擊,要按本錢受益順序確定服務(wù)開發(fā)的優(yōu)先級,按投資回報率(ROI)分階段實施項目。通過仔細的規(guī)劃,啟動本錢要限制在現(xiàn)有預(yù)算內(nèi)。經(jīng)過一段時間后,服務(wù)模塊的重用會確保以后每個新業(yè)務(wù)應(yīng)用程序的啟動本錢很低。
(4)SOA實施的各階段分工要明確。實施SOA,不可能所有的開發(fā)構(gòu)建工作由企業(yè)自己的IT團隊來完成,也不可能像一般的應(yīng)用軟件系同一樣能夠從市場上立即購買、安裝后就能使用。SOA實施的各階段可由企業(yè)內(nèi)外不同的部分來協(xié)作完成,如流程分析和建模工作可由專業(yè)的咨詢公司來做,系統(tǒng)實施交給IT企業(yè),企業(yè)的IT團隊則主要抓項目治理。
(5)使用SOA成熟度模型。SOA成熟度模型(SOA Matu-rity Model)可以為IT和業(yè)務(wù)用戶提供一種框架,使其能夠正確地評估SOA在企業(yè)中的適用性和收益,幫助企業(yè)成功實施SOA。
(6)重視企業(yè)SOA人力資源建設(shè)。SOA的“業(yè)務(wù)驅(qū)動服務(wù),服務(wù)驅(qū)動技術(shù)”思想決定后,企業(yè)就需要一批熟悉SOA服務(wù)的人才,也就是既熟悉企業(yè)業(yè)務(wù)流程,又熟悉信息技術(shù),并能在兩者之間能夠找到很好平衡點的新型復(fù)合型人才。SOA固然不是新概念,但企業(yè)中真正具備成功實施經(jīng)驗的人才還是彌足珍貴的。在實施SOA過程中,企業(yè)不可能一味依靠乙方的氣力完玉成面轉(zhuǎn)向SOA這一浩大的工程,培養(yǎng)自己的人才隊伍對于很多企業(yè)自身來說是個長期工程。
四、結(jié)論
通過構(gòu)建面向服務(wù)的企業(yè)信息架構(gòu)可以解決企業(yè)“信息孤島”和企業(yè)信息系統(tǒng)缺乏柔性等題目。企業(yè)實施SOA可以充分保存過往的信息系統(tǒng)投資,通過建立一個能夠屏蔽底層系統(tǒng)復(fù)雜性的基礎(chǔ)架構(gòu),為信息資產(chǎn)的自由活動構(gòu)建一個基礎(chǔ)平臺。然后,將原有系統(tǒng)中的各個業(yè)務(wù)功能封裝成服務(wù),并根據(jù)業(yè)務(wù)的需求進行重新組合,終極復(fù)合成新的業(yè)務(wù)系統(tǒng),快速滿足新的業(yè)務(wù)需求,從而實現(xiàn)企業(yè)信息架構(gòu)的業(yè)務(wù)靈敏性。
:
[1] 鄧景毅.企業(yè)信息架構(gòu)(EIA)的構(gòu)建[J]. 企業(yè),2005,(10).
[2] 葉宇風(fēng).基于SOA的企業(yè)應(yīng)用集成[J].微學(xué)與機,2006,(5).
[3]周佳.架構(gòu)設(shè)計師與SOA. http://blog.csdn.net/zhoujia1983/archive/2005/12/15/553426.aspx,2005,(12).
[4] Bobby Woolf.SOA and Web services.http://www-128.ibm.com/developerworks/cn/webservices/newto/index. html,2005,(10).
[5]Jason Bloomberg,.Principles of SOA. http://geek-swithblogs.net/jschneebaum/articles/ 38549.aspx,2005,(4).
[6]Hao He.What is Service-Oriented Architecture? http://webservices.xml.com /pub/a/ws/2003/09 /30/soa.html,2003,(9).
[7]Qusay H.Mahmoud.Service-Oriented Architecture (SOA)and Web Services: Road to Enterprise Application Integration(EAI). http://java.sun.com/developer/technical Articles/WebServices/soa/,2005,(4).
【對面向服務(wù)的企業(yè)信息構(gòu)架探討】相關(guān)文章:
企業(yè)信息化網(wǎng)絡(luò)構(gòu)架的選擇12-09
淺析面向能力培養(yǎng)的高等教育教學(xué)模式探討03-18
企業(yè)信息化模式的概念和意義探討03-24
基于面向知識管理的中小企業(yè)信息化建設(shè)策略03-22
服務(wù)補救策略及步驟探討03-07
面向服務(wù)的架構(gòu)(SOA)在電子商務(wù)中的應(yīng)用03-22
淺析《文心雕龍》的理論構(gòu)架12-05