實施SOA可能帶來的主要優勢有5點:
一,SOA可通過互聯網服務器發布,從而突破企業內網的限制,實現與供應鏈上下游伙伴業務的緊密結合.通過SOA架構,企業可以與其業務伙伴直接建立新渠道,建立新伙伴的成本得以降低.
二,SOA與平臺無關,減少了業務應用實現的限制.要將企業的業務伙伴整合到企業的"大"業務系統中,對其業務伙伴具體采用什么技術沒有限制.
三, SOA具有低耦合性特點,增加和減少業務伙伴對整個業務系統的影響較低.在企業與各業務伙伴關系不斷發生變化的情況下,節省的費用會越來越多.
四, SOA具有可按模塊分階段進行實施的優勢.可以成功一步再做下一步,將實施對企業的沖擊減少到最小.
五, SOA的實施可能并不具有成本顯著性.這要分三種情況加以討論:
·當企業從零開始構建業務系統時,采用SOA架構與不采用SOA架構成本可看做是相同的.
·當企業業務發展或發生企業重組等變化而原有系統不能滿足需要,而需要重構業務系統時,采用SOA架構與不采用SOA架構成本可看做是相同的.
·當企業業務發生緩慢變化并可預見到將來需要重構業務系統時,由于可以按模塊分階段逐步實施SOA以適應變化的需要,這樣企業不需一下投入一大筆經費進行系統改造,而是根據企業業務發展情況和資金情況逐步投入,緩解了信息投入的壓力.
但是,SOA并不是天上掉下來的餡餅,企業要實施SOA必須具備一定的條件,否則很難實施成功.SOA會給企業信息設施和管理帶來以下4方面的挑戰:
一, 人才的匱乏
SOA是近年來才出現的新概念,懂得和深入了解SOA的人不多,SOA專家更是寥寥無幾.企業需要的SOA人才,要有SOA架構師,以及熟悉SOA的開發技術人員,同時各SOA應用部門的關鍵人員,也需要理解SOA的內涵以實現與業務的結合.
二, 開發平臺和開發工具的選擇
實施SOA對開發平臺和開發工具沒有特別要求,這給企業對平臺和工具的選擇造成了盲目性.對于不具備豐富實施經驗的企業,很有可能選擇到最終不適合自身發展需要的平臺和工具.這要求企業既要對各開發平臺和工具有深刻的了解,又要對自身業務及發展方向有深刻的了解.
對于SOA開發工具來說,總的要求是能夠"多快好省"的滿足企業實施SOA的需要.雖然一些企業已經推出了SOA開發工具,但還未看到其中有相當成熟的"王者"出現.
三,技術環境的限制
SOA可通過互聯網送達到每個角落,這同時也要求了強大的送達能力.在現實網絡環境中,送達能力由于帶寬的限制往往是達不到的.
松耦合往往提高調試的難度,這是筆者的觀點.最緊的耦合就是所有代碼都在一個過程中完成,一旦發生問題可立即追蹤的問題點.采用面向對象的開發后,尤其是程序跨進程后,耦合度大為減低,但程序發生錯誤后要花更高的代價才能找到問題點.當采用Remoting、Web服務及分布式處理后,耦合性進一步降低,但調試難度也越來越高.實施SOA也會面臨這個問題,眾多的分布式服務,到底是哪一個出了問題,很難確認.問題往往在若干步后,經過了若干服務才體現出來,要最終到問題的源頭非常困難.
網絡的不穩定性會對SOA系統造成影響.隨著時間的增加及數據量的增加,影響程度可能會逐步加大并達到很嚴重的程度.
四, 安全性的影響
松耦合可能會給攻擊者找到漏洞的機會.當整個SOA系統節點眾多業務復雜時尤其會給攻擊造成可乘之機.
數據安全性也難以得到保證,某些關鍵性數據可能會在非預期的節點流出
文章來源于領測軟件測試網 http://www.kjueaiud.com/