摘自:SOA中國路線圖
不以規(guī)矩,不能成方圓 —— 《孟子 · 離婁上》
治理(governance)是一個比較廣泛的概念,是業(yè)務(wù)和技術(shù)的橋梁。在面向服務(wù)的體系結(jié)構(gòu)中,只有通過 SOA 的可管理性才能保證 IT 與業(yè)務(wù)的一致性。
?在傳統(tǒng)的企業(yè)IT架構(gòu)里, 當(dāng)系統(tǒng)僅僅是部門級“豎井”系統(tǒng)時,軟件模塊之間的關(guān)系簡單, 治理不是一個很突出的問題。而在實施SOA的時候,把傳統(tǒng)的“豎井”系統(tǒng)打散成為一個個可復(fù)用的服務(wù),治理的問題就突出了。SOA的自身特點和應(yīng)用模式?jīng)Q定了需要一種高層的規(guī)劃和管控,即進行SOA治理。
?SOA治理就是在SOA生命周期內(nèi),通過定義策略標(biāo)準(zhǔn),驗證和保證架構(gòu)內(nèi)SOA資產(chǎn)按照一定的服務(wù)質(zhì)量正常運作。
?企業(yè)治理包括IT治理和業(yè)務(wù)治理。IT治理是管理企業(yè)的IT資源、IT流程和IT需求,以提供指導(dǎo),使這些資產(chǎn)支持業(yè)務(wù)需求。IT治理是一個決策和責(zé)任框架,用于鼓勵I(lǐng)T中所希望的行為。SOA治理是IT治理的一種特殊化,其將關(guān)鍵IT治理決策置于服務(wù)構(gòu)件、服務(wù)和業(yè)務(wù)流程的生命周期上下文中。SOA治理對生命周期進行有效管理,生命周期是其關(guān)鍵目標(biāo)。SOA治理包括對IT方面的治理,也包括對業(yè)務(wù)方面的治理,還包括對架構(gòu)的治理。
目前國際上通行的IT治理標(biāo)注主要有4個:ITIL、COBIT、ISO/IEC17799和PRINCE2。COBIT重點在于IT控制和IT度量;ITIL重點在于IT過程管理,強調(diào)IT支持和IT交付;ISO/IEC17799重點在于IT安全控制。PRINCE2重點在于項目管理。
?SOA治理的價值主要包括:1、保證自治域(不同企業(yè)或者企業(yè)內(nèi)不同系統(tǒng))間的業(yè)務(wù)協(xié)作;2、整合IT與業(yè)務(wù),靈活應(yīng)對業(yè)務(wù)的動態(tài)變化;3、確保構(gòu)建合適的SOA應(yīng)用和基礎(chǔ)設(shè)施;4、確保整個SOA生命周期的規(guī)范性。
SOA治理通過一個治理的框架、制度和計劃,保證構(gòu)建SOA應(yīng)用和SOA基礎(chǔ)設(shè)施的過程透明和有序。其主要內(nèi)容包括:企業(yè)戰(zhàn)略治理、SOA運營模式治理、SOA和服務(wù)生命周期治理、SOA治理的關(guān)鍵技術(shù)、SOA治理平臺等幾個層次。
SOA生命周期治理?
?SOA的生命周期包括開發(fā)期、運行期和變更期3個階段,相應(yīng)地,SOA的治理包括開發(fā)期治理、運行期治理和變更期治理。
開發(fā)時期SOA治理集中在治理服務(wù)構(gòu)建和支持工件的策略應(yīng)用上,從需求管理開始,包括架構(gòu)設(shè)計、實現(xiàn)、測試、質(zhì)量控制、文檔,直到服務(wù)正式運行。在這個過程中,SOA治理要保生成可用的架構(gòu)、實現(xiàn)、文檔和UML模型及服務(wù)合約, 并能夠快速查找同時方便重用。
運行時期SOA治理包括所有與服務(wù)執(zhí)行和運營相關(guān)的工作。治理需要全程不間斷地監(jiān)控服務(wù)和流程執(zhí)行,關(guān)注如調(diào)用的服務(wù)、調(diào)用者、調(diào)用參數(shù)、調(diào)用時間等信息,并且要能預(yù)先偵測性能瓶頸,關(guān)注服務(wù)提供者和消費者雙方都認(rèn)可的服務(wù)質(zhì)量等級,觀測日志和異常情況。
??變更期SOA治理的工作是確保服務(wù)及相關(guān)系統(tǒng),在合約、策略或者Schema發(fā)生變化時不會中斷。?
SOA治理的關(guān)鍵技術(shù)
1、注冊中心和存儲庫
注冊中心的功能主要有服務(wù)發(fā)現(xiàn)、服務(wù)發(fā)布和企業(yè)策略的符合性檢查、輔助元數(shù)據(jù)管理、策略管理等。?
存儲庫用來在服務(wù)開發(fā)生命周期中存儲工件的元數(shù)據(jù),自動化服務(wù)生命周期管理的過程,提供集中管理任何類型軟件資產(chǎn)元數(shù)據(jù)的方法,治理服務(wù)生命周期中非常復(fù)雜的工作流程。
2、?測試和驗證
?測試和驗證有利于預(yù)防SOA中策略和流程可能發(fā)生的沖突。
3、策略管理和執(zhí)行?
策略有利于保證治理的可執(zhí)行性、可理解性、 業(yè)務(wù)主導(dǎo)、可操作性和可預(yù)測性。策略從整個企業(yè)范圍一般可分為企業(yè)策略、業(yè)務(wù)策略、流程策略、 技術(shù)標(biāo)準(zhǔn)依從性策略、安全策略等。
4、監(jiān)控和管理
?監(jiān)控和管理需要策略依從性和QoS標(biāo)準(zhǔn)的可視化,有效的可視化代表著有效的可控性,推動SOA的演化和成熟。服務(wù)監(jiān)控實現(xiàn)一般是由服務(wù)定期向監(jiān)控接口發(fā)送可被監(jiān)控設(shè)備捕獲的信息,對接口做功能性的內(nèi)部驗證和響應(yīng)。監(jiān)控接口也能支持問題確定的跟蹤模式,狀態(tài)消息提供了更多的詳情。
SOA治理框架
?企業(yè)SOA治理的過程和平臺
任何治理實現(xiàn)都應(yīng)該以企業(yè)體系結(jié)構(gòu)的4個支柱即人員、流程、技術(shù)和服務(wù)為中心。一般SOA治理會經(jīng)歷3個級別5個階段。
?????SOA治理的步驟
SOA治理應(yīng)該有條理、按計劃、分步驟地實施。首先從一些小項目或原型項目開始建立最初的SOA過程,再啟動SOA治理工具鏈的選購進程,努力使治理平滑地集成到特定的SOA生命周期,以獲得大多數(shù)人的認(rèn)可和支持。進行有效SOA治理,大致分為以下幾個步驟。
?(1)定義組織級與業(yè)務(wù)密切相關(guān)的SOA目標(biāo)和戰(zhàn)略。
(2)建立與SOA成熟度適合的SOA目標(biāo)、標(biāo)準(zhǔn)、策略和過程。?
(3)具體實施最佳實踐,使治理策略發(fā)生作用。
(4)分析和改進SOA治理過程。
SOA管控與治理平臺
?作為一個有效的SOA治理實施工具,SOA的管控與治理平臺完成基于域管理的多應(yīng)用跨平臺管理,包含IT與業(yè)務(wù)策略管理、管理儀表盤、元數(shù)據(jù)管理、服務(wù)仿真、服務(wù)網(wǎng)絡(luò)發(fā)現(xiàn)和服務(wù)虛擬化。