角色解析 CIO如何組建理想的SOA團隊 軟件開發領域的主要發展趨勢是從傳統軟件體系結構過渡到面向服務的體系結構 (SOA)。在傳統軟件體系結構中,將項目視為單個新應用程序的交付。在 SOA 中,將項 目視為集成服務的交付——一些是新建的,一些是現有的。無論其規模和預算如何,幾 乎所有信息技術(Information Technology,IT)部門當前都在進行過渡到 SOA 的工 作。您可能已經讀過多篇關於 SOA 采用、成熟度模型和實現的文章了。本文將描述在 組織采用 SOA 或過渡到更高的 SOA 成熟度水平的過程中,您的 IT 團隊成員中所需的 一組新角色及其各自的職責。 在形成 SOA 團隊時,最大的範式轉換是從組合應用程序交付過渡到服務交付。傳統軟 件開發人員通常構建應用程序中的一個模塊,或典型的三層體系結構中的單個層的一部 分。開發人員的一個例子就是在模型-視圖-控制器(Model-View-Controller,MVC)體系 結構中負責控制器或模型層的人員。在 SOA 環境中,這些開發人員現在負責服務實 現。他們並不需要知道何時、如何或為什麼調用服務以及誰調用服務。他們所關心的就 是,服務進行什麼工作以及需要符合什麼樣的服務水平協議(Service Level Agreement,SLA)。 為了進行此範式轉換,您需要形成完整的 SOA 團隊,其中的每個角色的職責與傳統軟 件開發團隊中的相同角色略有不同。本文將說明 SOA 團隊中以下角色的情況: 架構師 開發人員 業務分析人員 項目經理 在典型的 IT 組織中還包括多個其他角色,包括基礎設施支持、數據庫支持、安全性等 等。不過,了解了這些主要角色如何改變後,您就能夠對其他角色進行調整,以與其匹 配。 理解架構師的角色 在較大的組織中,通常有兩個體系結構小組。企業體系結構小組定義組織內的每個應用 程序小組都必須遵循的控制策略、最佳實踐和過程。應用程序體系結構小組負責其特定 應用程序的體系結構,確保體系結構能夠支持當前和將來的業務需求。 企業架構師 在 SOA 組織中,企業架構師的角色是推動和促進 SOA 的采用。他們需要幫助應用程序 架構師和各個開發小組理解 SOA 的基礎知識並將業務需求轉換為有意義的服務,以便 這些小組進行實現和公開。 僅由您自己的應用程序或業務流程使用的服務幾乎沒有價值。企業架構師需要確保所有 應用程序架構師定期討論其項目,以確定他們可以公開或使用的服務。在不能重用現有 服務的情況下,企業架構師還需要確保充分利用構建新服務的每個機會。促進對現有服 務的重用肯定比編寫新服務具有更高的優先級。最後,他們必須確認服務是在可靠的技 術之上構建的,且能夠滿足所確立的 SLA。 企業架構師負責定義測定和跟蹤 SLA 的機制。他們定義有關控制、安全性、災難恢複 等等的策略和過程。他們通常是涉及到 Web 服務管理、編排和企業服務總線的解決方 案的主要決策者。 應用程序架構師 應用程序架構師的角色是確保所編寫的代碼是面向服務的,且遵循可用於面向服務的開 發的最佳實踐和流程。他們需要在不會對解決方案進行過度設計的前提下將業務需求轉 換為有意義的服務。典型的服務創建和使用比代碼的直接調用開銷更大。因此,確定作 為服務公開的粒度級別以及如何進行公開是此角色的主要工作職能。 應用程序架構師還要與組織中的企業架構師及其他應用程序架構師緊密合作,以確保充 分利用每個服務重用機會,且恰當地對服務進行構建、發現、安全保護、使用和測定。 應用程序架構師最終負責服務交付和使用(非功能要求)的所有技術方面的工作,包括 SLA 遵循情況的可測定性、符合控制策略、執行和確保安全策略等等。 閱讀不同 SOA 文獻中關於架構師的信息時,您可能會遇到術語業務架構師,即應該理 解業務情況並設計服務的人員。在我的 SOA 團隊定義中,此角色的工作由應用程序架 構師完成,而不是由企業架構師完成。應用程序架構師或業務架構師是業務小組和技術 小組間負責技術設計方面的協調人,而業務分析人員則是負責業務方面的協調人。
arrow
arrow
    全站熱搜

    我喵了就算 發表在 痞客邦 留言(0) 人氣()