• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 用于實現 Web 服務的 SOA 編程模型,第 10 部分: SOA 用戶角色

    發表于:2007-05-25來源:作者:點擊數: 標簽:
    使用面向服務的體系結構(Service-Oriented Architecture,SOA)的優勢之一就是可以將 IT 系統與其所支持的業務緊密結合。這對于那些開發和操作這些 IT 系統的人員所執行的任務和所需的知識與技能都有影響。本文將通過一個簡單的集成場景來說明團隊如何創建
    使用面向服務的體系結構(Service-Oriented Architecture,SOA)的優勢之一就是可以將 IT 系統與其所支持的業務緊密結合。這對于那些開發和操作這些 IT 系統的人員所執行的任務和所需的知識與技能都有影響。本文將通過一個簡單的集成場景來說明團隊如何創建和運行面向服務的解決方案。其中使用了用戶角色來描述所涉及的人員的技能和職責,是專門針對技術負責人撰寫的,目的在于幫助您了解如何組織與面向服務的解決方案開發相關的工作。

    引言

    每個組織都有差別。它具有自身的文化、結構、技術實力和資產。但很多組織都在被類似的問題所困擾:

    • 如何改進客戶服務和適應其不斷變化的需求
    • 如何實現低成本高效益
    • 如何與客戶、合作伙伴、競爭對手和供應商進行協作

    解決這些問題要求進行變更,而如果組織變更,支持它的 IT 系統也必須變更。

    有大量文章都對使用 SOA 管理 IT 系統中的變更的價值進行了討論。SOA 要求每個 IT 應用程序采用定義良好的接口來表示其支持的業務功能。這些接口(或服務)提供了 IT 功能目錄,可以在需要時調用這些功能??梢灾苯釉趹贸绦蜷g調用,也可以通過工作流應用程序或通過企業服務總線(Enterprise Service Bus,ESB)進行調用。如果處理得當,面向服務的方法將允許組織以能貼切地反映組織需求的靈活方式來設計 IT 系統的結構,并將其連接到一起。

    本文將說明組織如何著手引入 SOA??紤]到組織之間的差異,本文將根據用戶角色來對此過程加以說明。用戶角色是組織中典型職位的特征描述。用戶角色并不一定就相當于一個人。一個人或一個團隊可能擔任一個用戶角色。同樣,一個人也可以擔任多個角色。

    根據用戶角色,我們可以描述職責在組織內的分布情況、需要進行溝通和決策的地方以及所涉及的技能類型。通過這種方式,組織可以計劃如何進行人員部署,以根據特定于其組織的工作量分配這些角色。

    本文以一個簡單場景為例,在此場景中,組織決定使用 SOA 作為新的 IT 解決方案。文中通過用戶角色描述了組織如何創建和運行面向服務的解決方案。我們按照以下主題對全文進行劃分:

    • 簡單集成場景描述解決方案場景。
    • 將用戶角色投入工作說明如何構建和管理解決方案。
    • 總結與結束語對面向服務的方法進行了簡單的總結。




    回頁首


    簡單集成場景

    圖 1 顯示了本文中使用的場景。盡管此場景非常簡單,但仍然說明了 SOA 的很多特征。

    由于歷史的原因,該組織一半的客戶數據存儲在一個 IT 系統中,而另一半存儲在另一個 IT 系統中。這兩個系統獨立進行操作。我們計劃要創建單個客戶數據服務。當應用程序調用此服務時,服務會將請求路由到恰當的后端系統。

    經過一段時間后,客戶數據的位置可能會改變或添加來自其他系統的數據,因此該解決方案要求具有靈活的實現。每個后端系統都提供了用于提取其所屬數據的服務。ESB 中運行的一個中介為從公共服務路由到相應后端的服務提供支持。


    圖 1. 簡單集成場景
    簡單集成場景soa-progmodel10/figure1.gif" width="358" twffan="done"/>

    下面的部分描述用戶角色如何一起工作,以設計、開發和運行此解決方案。





    回頁首


    將用戶角色投入工作

    創建集成服務接口涉及到選擇恰當的方法并隨后進行解決方案開發和部署,然后運行解決方案。此過程通過面向服務的控制協調各項工作。這些階段與 SOA 生命周期的建模、裝配、運行和管理相對應。

    下面各節描述在各個階段所涉及到的角色以及其從事的工作。

    選擇方法

    新解決方案的需求不會從任何地方自己冒出來。企業架構師、業務分析人員和系統分析人員就是對這些需求進行標識、確定優先級并將其分組為項目的角色。

    企業架構師
    企業架構師負責組織的技術策略,是 SOA 遠景的負責人,主張有策略地思考,有戰術地行動。企業架構師不會想將大型項目“撕裂”和替代現有系統,而希望采用持續推出小的增強功能,以逐步遷移到所需的結構。

    業務分析人員
    業務分析人員尋找提高業務績效的方法。這可能涉及到更改人員工作方式、其所使用的工具和過程或支持它們的 IT 系統。在此場景中,業務分析人員認為有機會向客戶提供新服務。這需要對 IT 系統進行更改,因此業務分析人員與系統分析人員一起分析支持此新服務的可行性。

    系統分析人員
    系統分析人員將業務需求轉換為對 IT 系統的要求。

    與業務分析人員交流之后,系統分析人員認識到,這個新服務要求采用一致的方式訪問組織的客戶數據。目前這個數據駐留在兩個系統中,每個系統的接口和數據格式都不同。創建新客戶數據存儲庫是一項開銷太大的選項,因為會對現有系統造成影響。因此,在與企業架構師進行了討論后,系統分析人員建議為客戶數據使用一個公共服務接口。在這個接口中,請求將被路由到現有系統。

    此方法提供了所需的靈活性,將來可以在不更改新客戶服務應用程序的情況下將兩個客戶數據系統合并,因為公共客戶數據服務將調用應用程序與此實現細節分離開了。

    系統分析人員給出的新服務的 IT 解決方案包含足夠的細節,組織可以據此進行業務決策,以確定是否投資新 IT 解決方案。如果認為需要進行新投資,則會組成一個項目團隊來開發此解決方案。

    開發解決方案

    IT 解決方案要求混合使用硬件、軟件、應用程序和配置。本文將重點討論解決方案的軟件方面。

    軟件架構師
    軟件架構師負責將所需的功能劃分為組成軟件解決方案的組件。此人處理現有系統使用的規范和標準,并確定需要在何處編寫增強功能或新組件。

    軟件架構師從企業架構師處獲取指導信息,以確保項目的體系結構與 IT 策略的總方向一致。解決方案的需求來自系統分析人員。

    在此場景中,公共客戶數據服務的出現將新解決方案分成了兩半:

    1. 向客戶提供新功能的應用程序代碼,稱為公共客戶數據服務。
    2. 將公共客戶數據服務請求路由到相應的后端系統。

    軟件架構師選擇使用 Java 2 Platform Enterprise Edition (J2EE) 應用程序來實現新應用程序代碼。在公共客戶數據服務后,系統架構師為每個后端系統定義一個服務接口(為了清楚定義這些系統調用的方式),并指定一個 ESB 中介映射兩個服務接口級別間的請求和應答。

    開發人員
    開發人員設計和實現解決方案的各個部分,通常具有專門針對某個平臺、編程語言和/或業務領域的專業技能。以下開發人員類型通常會參加面向服務的解決方案的構建活動。

    • 應用程序開發人員:應用程序開發人員了解解決方案的業務領域,負責實現執行業務相關功能的應用程序代碼——在本例中為調用公共客戶數據服務的新 J2EE 應用程序。應用程序開發人員需要了解其應用程序開發環境(如 J2EE)以及如何從這些環境內調用服務。他們以軟件架構師或另一個開發人員提供的服務接口規范為基礎開展工作。
    • 組件開發人員:組件開發人員開發稱為組件 的自包含代碼塊。這些組件設計為可在多個應用程序中重用。在此場景中,組件開發人員可以為公共客戶數據服務編寫中介代碼。
    • 集成開發人員:集成開發人員負責通過配置組件并將其鏈接到一起來構建服務。這些組件可以由組件開發人員編寫,或作為 ESB 產品的一部分提供。集成開發人員通常對集成技術和模式有很好的理解,但其編程技能卻較為有限。如果集成場景要求使用復雜編程邏輯,集成開發人員將與組件開發人員合作,為集成創建新組件。

    測試工程師
    測試會在基于 SOA 的解決方案中的很多級別進行。每個解決方案組件需要獨立測試,以確保其行為正確。然后,重點轉向論證各個部分正確集成。大型解決方案或復雜解決方案要求特別注意是否能平穩地過渡到生產環境中。

    • 測試架構師:測試架構師指定如何測試解決方案,并標識獨立測試的解決方案部分所需的其他代碼。測試架構師可以將服務接口出現的位置作為插入測試代碼的地方,以測試以下方面:
      • 調用服務接口的組件可以對所有類型的數據做出響應。
      • 實現服務接口的組件可以處理所有類型的請求。

    在此場景中,測試架構師可利用公共客戶數據服務組件來簡化測試新 J2EE 應用程序所需的運行時環境。通過指定公共客戶數據服務的基于 J2EE 的實現來管理測試客戶數據,新應用程序可以在 J2EE 測試環境內進行全面的功能測試,從而縮短這個新代碼的最大部分的開發周期。

    • 測試實現人員:測試實現人員將編寫額外的測試代碼,運行測試驗證解決方案,然后將錯誤報告給相應的開發人員,并對修正后的代碼進行測試。測試實現人員將參與項目的多個階段,檢查各個組件的正確性、執行組件組的集成測試,并在部署期間測試解決方案是否已可以投入生產環境了。例如,是否可以啟動、停止、備份及在系統失敗后恢復和進行維護?

    部署解決方案

    從開發角度認為解決方案已完成且正常工作后,組織需要進行更改,以采用此解決方案,并為其提供支持。這要求同時在業務層和 IT 層進行準備和規劃。

    業務操作管理人員
    業務操作管理人員運行采用新業務服務的所有或部分業務,包括對其所屬的組織進行相應設置來使用新解決方案。由于面向服務的項目通常將業務各個部分連接到一起,所以業務操作管理人員要和其他業務操作管理人員協作,以確保其過程互補。對于此項目,業務操作管理人員要進行檢查,以確保對用戶數據的收集和使用采用了相同的策略,從而保證不會意外地違反與現有客戶的隱私協議。

    彈性工程師
    彈性工程師負責確保在需要時新解決方案可用。這包括,確保峰值負載時的可用性、不斷變化的業務活動期間的可用性和在故障(小故障、大故障或全面出現故障)后的可用性。

    在面向服務的環境中,解決方案需要具有端到端的彈性。這包括確保后端系統可以處理新服務通過調用公共客戶數據服務在其上增加的負載。這些現有系統還需要在新服務需要時能夠為可用狀態。因此,彈性工程師可能需要增加現有系統的容量,并相應更改其操作過程。

    IT 管理員
    IT 管理員對支持軟件解決方案的 IT 基礎結構進行配置。在此場景中,IT 管理員將配置 IBM WebSphere® Application Server 集群來支持新 J2EE 應用程序。他們將為應用程序和服務集成(Service Integration,SI)總線設置 IBM DB2® 數據庫服務器,以支持公共客戶數據服務接口和中介。最后,他們將為適配器配置服務器環境,該適配器連接到一個現有后端系統,這就提供了版本部署人員在其上添加解決方案組件的平臺。

    版本部署人員
    版本部署人員在生產環境中配置解決方案的組件。這包括安裝解決方案組件和使用其操作所需的資源(如數據庫表和隊列)對其進行配置。在某些情況下,版本部署人員需要現有系統中定義的其他資源,如用戶 ID。通常,版本部署人員與 IT 管理員協作對系統進行定義。

    當解決方案的所有組件就緒后,測試實現人員就可進行測試來確保所有組件都能正常工作。解決方案就可以投入生產使用了。

    在生產環境中運行解決方案

    很多 IT 部門都鼓勵其員工專門鉆研特定的技術或應用程序。不過,面向服務的解決方案集成了很多技術。

    在生產中,成功是以解決方案的端到端可用性為標準測定的。因此,操作過程要據此進行范圍劃定。面向服務的解決方案要求具有各種技能和多方面知識的人員進行協作。此外,與業務的聯系也變得更加重要。這一點可通過以下三個角色說明。

    服務水平管理人員
    服務水平管理人員與業務操作管理人員就新解決方案的服務水平達成一致。服務水平管理人員的知識需要涵蓋解決方案中使用的全部技術,包括支持公共客戶數據服務的現有系統。

    IT 操作人員
    IT 操作人員監視系統,并執行日常操作,如備份操作。當公共客戶數據服務就緒后,需要對每個現有系統的客戶數據的備份進行同步,以支持在系統故障后一致地還原客戶數據。

    事故分析人員
    事故分析人員對 IT 系統的意外錯誤和警報進行調查。為了追蹤丟失的客戶數據更新,可能需要事故分析人員檢查 J2EE 和現有后端系統上的診斷信息。

    面向服務的控制

    最后,需要適當的控制,以確保在恰當的時候能以不干擾現有操作為前提重用 IT 資產。企業架構師全面負責此事項,并將一些工作委派給專門角色。

    變更控制管理人員
    變更控制管理人員負責批準所有生產系統的變更。這包括新服務的使用,因為,即使新服務不要求對實現進行更改,也會影響服務上的負載。

    變更控制管理人員與 IT 部門的其他專家一起協作,驗證更改是否成功。例如,變更控制管理人員將和彈性管理人員進行核實,以確保新解決方案不會影響現有后端系統。變更控制管理人員確保 IT 操作人員可以監視新解決方案,并確保配備了解決方案所需的常規過程。

    資產管理人員
    資產管理人員負責維護組織的可重用 IT 資產。這包括開發、維護并向所有恰當的項目提供這些資產。

    公共客戶數據服務中的 IT 資產包括服務接口定義、接口上使用的任何數據類型以及中介組件。資產管理人員要確保這些資產采用恰當的標準開發(包括文檔),然后存儲在資產存儲庫中。

    對于后續的項目,資產管理人員將對設計進行復查,以確保沒有忽略任何重用機會。





    回頁首


    總結與結束語

    面向服務的方法允許組織集成和重用其現有 IT 資產。這就改變了組織中人員的交互方式,從而促進在整個組織中采用更為一致的方法。本文通過用戶角色對在組織中支持和使用 IT 系統的各種技能和職責進行了描述,并說明了這些角色如何在面向服務的環境中進行協作。

    致謝

    非常感謝進行 SWG User Roles(現在為 Common Customer Roles)工作的 IBM SWG Architecture Board 工作組的成員,如果沒有他們的幫助,就沒有可作為本文描述的 SOA 用戶角色的基礎的內容;同時也要感謝 Marcia Stockton 對此項用戶角色劃分工作的不斷支持。

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>