SOA并不是你購買的,而是需要花精力部署的。一些公司在預算很有限的情況下就嘗試SOA架構。要想實施一個SOA項目,除了所需要的眾多的中間件外,治理工具、培訓、咨詢、基礎設施和安全都需要龐大的投資。
在生產環境中管理SOA是非常具有挑戰性的,因為SOA天生就是分布式和松散耦合的。所在,在實施SOA時,千萬不要吝嗇花在生命周期管理工具上的經費,否則一旦出現問題,發現并修理故障無異于大海大海撈針。有些公司可能會在不借助任何外力幫助的情況下嘗試部署SOA項目,以便節省高昂的顧問費用。除非你的IT人員對于SOA項目非常有經驗,否則為了節省成本而不是用外部顧問會給你帶來災難性的后果。
建議:建立一個SOA路線圖,這包含一系列的項目投資組合以及SOA能給整個企業帶來的長遠利益。為整個SOA項目創建一個合理的財政理由,突出SOA能給整個公司帶來的投資回報率(ROI)、凈現值(NPV)和內部回報率(IRR)等最重要的財務指標。如果你能營造足夠好的商業案例,那么你就能得到足夠的預算支持你的SOA項目。此外,市場上有很多開源SOA產品可供使用,它們的性能與商業產品沒有任何差別,這可以大大降低部署SOA解決方案的整體成本。
5.缺乏所需搭建SOA架構所需的技能
要想成功實施SOA項目,企業需要具備很多專門的角色和技能集,但這可能是企業目前所部具備的。你需要SOA架構師、業務流程建模師、工具堆棧系統管理員、數據架構師以及其它許多技能。聘請這些人才需要花費很大一筆錢。在沒有任何SOA實施經驗的情況下就貿然部署SOA項目是一個重大的錯誤。SOA影響到企業所有的IT部門,包括測試、基礎設施和安全。它要比簡單地派遣幾個開發人員參加幾個技術培訓班要復雜得多。同時還不要忘了業務人員。由于工藝改進,業務人員也需要進行培訓,甚至可能對流程工具進行培訓。
建議:制定一個廣泛的培訓和資源計劃,當你提供SOA商業案例時,你可以把這個計劃作為你最初向企業申請經費請求的一部分。盡量減少你向企業管理層申請經費的次數,并盡可能提高能預先拿到的預算數額。否則,管理層將會把SOA項目看成是一個耗費預算的無底洞。
6.項目管理沒有跟上
到了最后,SOA項目失敗的原因仍然歸結公司項目管理不利上來。項目經理的職責是管理活動范圍、減輕風險,使每個人都能各司其職,并與各個層次的員工進行溝通和協調。收集要求是至關重要的,并且分析癱瘓必須要加以避免。如果你的企業總是盡力使項目正常運轉,那么你部署SOA成功的概率就會增加一倍。
建議:把你最好的項目管理資源放在SOA項目上;蛘邚耐獠科刚堃粌晌籗OA專家負責你的SOA項目。不論你選擇誰擔當項目經理,這個人必須有成功領導大型SOA項目的經驗,并且技術功底足夠深厚在概念層上對SOA有一個較深的了解。
7.把SOA當作一個項目,而不是一個架構
很多企業都天真地認為部署SOA只不過是另一類型的項目而已。 SOA是一個軟件體系架構,部署者在實施過程中只有堅持面向服務的原則,并且確保交付成果與架構和路線圖是一致的,SOA才能達到預期的利益。SOA需要專業化。企業的商業服務必須是在SOA架構師、開發人員、數據架構師、網絡架構師和安全專家的共同努力下開發出來的。過去那種一個人扮演多個角色的時代已經一去不復返了。而在SOA堆棧的各個層次也是專業化的。你的設計團隊包含用戶界面設計師、業務流程建模師、數據服務專家、業務規則專家、ESB專家等等。所有這些專家可能同時為開發同一個服務而相互合作,所以需要高水平的協作。
建議:標準的IT團隊結構對于SOA并不是很有效。我更喜歡一個矩陣結構的團隊和高度協作化的環境。跳出思維定式并拆掉封閉專家的小盒子,形成一個更加開放的空間,讓這些專家開展密切合作。在任何活動區域都豎起一塊白板,以供專家們使用。盡可能多地取消例會,用更加具有協作性的手段取代它。
8.低估了SOA的復雜性
從概念上來說SOA非常簡單,它只不過是IT經過這么多年的發展和積累,演化出來的一種高級產物。SOA不是一個很難理解的概念,但它卻很難正確部署。SOA 和 BPM的美妙之處就在于它們給最終用戶帶來的簡約,通過整合不同的后端系統是它們看起來像就像一個復合應用。SOA的缺點就在于大大增加了開發和管理軟件的復雜性。建設SOA是一個軟件工程范疇的活動。而不是簡單的拖放開發,許多開發人員正在努力轉型以適應這種不同。部署SOA需要堅持SOA標準和最佳做法(治理),并且需要能真正了解SOA概念復雜性的和人才參與。
由于部署一個SOA需要考慮那么多的事情,部署人員往往會忽略安全性。盡可能早地搜集安全方面的需求是至關重要的,因為這樣可以使得基本架構從一開始就支持安全性。否則,如果后期才考慮安全性的話,極有可能架構將會發生重大變化。
建議:不管你是如何小心謹慎,在SOA實施道路上,都會遇到各種技術問題和集成問題。你要對此做好充分的思想準備。有些問題是由于你的 編碼造成的,還有一些可能是與你使用的工具有關。供應商的產品遠遠沒有達到成熟階段,出現問題也是很正常的。你要制定一個切合實際的期望,不要為了單純得追逐時間和數量而忽略項目質量。從小處開始,慢慢積累。從項目一開始就把安全因素考慮在內,不要事后才想到。
文章來源于領測軟件測試網 http://www.k11sc111.com/