共用方式為


Microsoft Solutions Framework (MSF) 概觀

Microsoft Solutions Framework (MSF) 是以較少人員在較低風險下,更快速成功交付技術解決方案,而又能兼顧較高品質結果的可變通方法。 MSF 可協助小組直接解決技術專案失敗最常見的原因,以改善成功率、解決方案品質和業務衝擊。

MSF 著重於:

  • 確保業務目標和技術目標一致

  • 建立明確的專案目標、角色和責任

  • 實作反覆進行的里程碑/檢查點導向流程

  • 主動管理風險

  • 有效地回應變動

本文中所討論的 MSF 主要項目包括:

  • MSF 基本原則和心態:引導小組和小組成員如何共同合作以交付解決方案

  • MSF 小組模型:可讓專案調整規模、確保小組符合專案關係人的各種需求,以及定義目標導向的角色和責任

  • MSF 控管模型 (前身為 MSF 處理模型):透過識別主要專案活動之經證實的專案生命週期,來達成快速、高品質的結果

MSF 基本原則和心態

Microsoft Solution Framework (MSF) 的核心是多年經驗累積而成的原則和心態。 這些原則和心態是 MSF 的基礎,在各種 MSF 模型、流程和專業領域中,已然成為恒久不變的真理。 雖然這些概念是一般常識,但要正確了解及實作卻不是那麼容易。 不過,一旦理解,小組就能夠一起產生高品質的產品。

基本原則

下列 MSF 原則和概念可引導專案小組交付高品質的解決方案。 每個小組成員都應該要了解這些原則,並將其應用在與其他小組成員、與組織以及與專案關係人之間的互動。 MSF 的核心有九個基本原則:

  1. 促進開放的溝通。 為了讓您的小組提升效能和效率,您和您的小組需要在小組成員之間以及整個企業中共用適當層級的資訊。 小組必須了解所需完成的工作本質,以及小組成員與外部連絡人如何通訊。 比較困難的部分是要判定各種關係的適當層級,以及需要共用的資訊。

  2. 朝向共同的願景而努力。 擁有共同的願景可授權小組成員並提升其靈活度,讓小組成員能夠在達成願景的目標下,快速做出明智的決策。 共同的願景也可協助小組成員在發現需求有落差時,彌補該落差。

  3. 授權小組成員。 授權小組成員是在不斷變動的環境中生存的眾多方法之一,除此之外,小組成員也要學習開創成功之道以及互相協助。 如果小組成員無法充分發揮他們的實力,不但會消磨他們的創意,他們的士氣也會受到打擊,而無法協助建立高效能的小組。

  4. 建立明確的權責和共同的責任。 獲得授權的小組成員通常對於他們的決策會更有責任感,也比較願意共同為專案負責。 小組成員的責任感愈高,品質相對也愈高。 例如,如果某小組成員宣告已完成工作,但後來發現並未達到應有的品質,該小組成員需負責將完成的工作修正到所指定的品質等級。 藉由鼓勵正向的成長和責任,而不是處罰這類過失,讓小組成員分擔整體解決方案及其交付項目的責任。 如此一來,便能激勵小組中實力較強的成員協助其他成員充分發揮他們的實力。

  5. 漸進實現價值。 漸進實現價值可分為兩方面:

    1. 確定所交付的哪些項目對專案關係人具有最佳價值。

    2. 判定實現價值的最佳漸進方式,或是「交付頻率」。

  6. 保持靈活度,隨時準備好適應變動。 因為變動可能經常發生,並且在最糟的時刻發生,所以擁有處理變動的靈活方式,有助於將變動所造成的常見中斷情況降至最低。 保持靈活度的意思是,組織已經做好變動的準備,並且能夠順暢地適應及調整。

  7. 投資在品質上。 許多組織信奉品質這個經常定義不明確的詞彙,而不了解如何將品質量化。 您必須將品質主動納入解決方案交付生命週期,它並不會憑空發生。

  8. 從所有經驗中學習。 如果組織的所有層級不從過去的成敗中學習,怎麼能夠期望他們下次會進步? 小組成員必須了解並體認所有層級都提供學習機會:

    • 專案層級,例如微調整個專案的流程

    • 個人層級,例如如何改善與其他小組成員的互動

    • 組織層級,例如調整每個專案所收集的品質計量

  9. 與內部和外部客戶合作。 當客戶與專案小組共同合作時,即增加了專案成功的可能性。 這並不表示由客戶來執行小組的工作。 不過,如果客戶能夠與交付小組密切並漸進地合作,所達成的解決方案也比較能夠符合客戶的期望。 與客戶合作可彼此互惠;透過定期連絡,不僅有助於減少不確定性、縮短解決需求問題的時間,也讓小組更了解解決方案的價值主張。

心態

上面討論的基本原則說明如何引導小組達到極致的成功,而引導小組成員個人達到極致的成功則稱為心態。 每一種心態都有助於小組成員達成其特定的解決方案交付。 最理想的情況是,小組成員已習慣這些心態,因此無論在工作上或下班後都抱持這些心態。 以下是每個小組成員都應內化的幾個心態:

  • 培養同儕小組。 如果您的組織能夠體現 MSF 基本原則 (特別是授權和權責),那麼以階層式專案結構來執行專案真的有意義嗎? 如果每個人都了解任務及其目標,因而對於交付解決方案有共同的願景,並各司其職,那麼每個人就會把自己當作同儕,並平等相待。 這不是在提倡無政府狀態或是由委員會管理,而是每個人都能夠為了成功交付解決方案而分擔責任。 每個角色在專案的各個層面都有自己的權責,但對於專案整體,也有共同承擔的責任。 如您所見,還是有專案經理的角色,但該角色的重點是確保在專案條件約束內交付專案,而不是管理小組成員。

  • 著眼於商業價值。 成功取決於所實現的商業價值。 這不僅表示交付客戶所需的項目,也表示實現客戶所想要的價值。 為了實現價值,每個小組成員都必須了解客戶認定的價值為何。 如果無法提供客戶商業價值,將使專案陷於風險中:偏離方向的風險;浪費大量時間、精力和金錢在錯誤方向的風險;甚至是取消的風險。

  • 以解決方案的觀點來行事。 由於大多數專案的大小和複雜度,當小組成員從執行面來看解決方案時,有時候會太專注於小細節,而忘了將最終解決方案放在心上。 這就是為什麼要如此強調擁有共同願景的原則。 當小組成員執行其份內的職責時,必須回頭看看解決方案的整個任務、目標和願景。 常有小組在自己的領域內做到盡善盡美,並確信這樣做是為了共通的利益,但卻發現需要重做主要工作,才能回到解決方案的正軌;他們落入細節的陷阱中,而無法看見解決方案。

  • 對成品引以為傲。 不僅是小組需要投資在品質上,小組成員也應該要知道,他們對品質的責任與其他小組成員相同,誰也不能將責任委託或推卸給其他人。 在整個解決方案交付生命週期中,確保品質是每個人的責任。 這種心態不但包括在小組成員本身的交付項目內提升品質,還包括提升程序制定和專案控管的品質。 這種心態也鼓勵每個小組成員深入了解完成整個任務所需的技能。 小組成員若能監督自己的品質,並盡力做到最好,即有助於最後產品的持續改進。

  • 不斷學習。 有時候光是自豪於您和您的小組所擁有的技能,並不足以完成最後的目標。 小組成員需要學習新技能,才能在其小組中成為更好的同儕。 由於大部分專案、小組和環境都是獨一無二的,因此每個專案都有可供學習、試驗,以及提升技能、流程和程序的機會。 為了利用這些機會,不只是小組成員,組織的所有層級也都必須持續地學習和改變。

  • 將服務品質內化。 服務品質 (QoS) 定義預期的解決方案作業特性,例如預期的解決方案可用性層級。 專案關係人和小組成員 (而不只是架構設計人員) 必須了解 QoS,以及滿足 QoS 對交付項目有何影響。 否則,專案關係人和小組成員可能會默默假設解決方案應該要如何表現。 由於這些假設很少會一致,因此每個小組成員需要一開始就做出明確的設計決策,以確保滿足 QoS。 如此一來,這些隱含的假設才能轉換成明確的 QoS 需求。 您應該一開始就在解決方案中設計 QoS,而不是等到事後才補救。

  • 養成良好的公民意識。 從軟體開發的觀點來看,良好的公民意識意指在工作的所有層面上,都要值得信賴、誠實、負責且令人尊敬。 其中包括 (但不限於) 您如何:

    • 與小組成員、組織和專案關係人互動

    • 參與專案並協助交付解決方案,包括做為公司、專案和運算資源的委託管理人。 這包括公開且樂意分享資源、資訊和知識。 良好的公民會致力並關心更多人的利益。

  • 履行您的承諾。 儘管有許多內嵌的制衡機制,MSF 還是以信任和授權為執行基礎,而小組成員必須履行其承諾才能贏得部分信任和授權。 MSF 建立了能夠讓小組成員和專案關係人信任的環境,相信其小組成員將會履行其所做出的承諾。 因為專案是相互依存的活動集合,所以一旦有一個小組成員未能達成其承諾,就會失衡並危及整個專案。

MSF 小組模型

MSF 小組模型將一般解決方案交付活動和責任區分為七個關注小組。 這些小組相互依存並涵蓋多項專業領域。 如下表所示,為了達成平衡,這些角色對於相關需求、必須關注的領域及交付解決方案的相關目標,都有各自獨特的觀點。 這些角色可以為了小型的小組情況而合併,也可以為了大型的小組情況而擴展。

這些角色並沒有暗示或建議任何類型的組織圖或職稱集合,因為這些角色會依組織和小組而有很大的不同。 在大多數情況下,角色會分散在 IT 組織內的不同群組之間,有時候會與企業用戶社群在一起,也會與外部顧問和合作夥伴在一起。

角色

目標

職務領域

產品管理

  • 確保解決方案實現商業價值

  • 在專案條件約束內定義解決方案

  • 確保滿足客戶的需求和期望

  • 行銷/公司通訊

  • 業務分析

  • 產品規劃

方案管理

  • 在專案條件約束內交付解決方案

  • 設定用來滿足贊助商需求和期望的方法

  • 專案管理

  • 方案管理

  • 資源管理

  • 流程保證

  • 專案品質管理

  • 專案作業

架構

  • 設計在專案條件約束內達成業務目標的解決方案

  • 解決方案架構

  • 技術架構

開發

  • 建置符合規格的解決方案

  • 解決方案開發

  • 技術諮詢

使用者經驗

  • 充分發揮解決方案的可用性

  • 加強使用者整備和效率

  • 確保滿足使用者的需求和期望

  • 存取範圍

  • 國際化

  • 技術支援通訊

  • 訓練

  • 可用性

  • 使用者介面設計

測試

  • 唯有在確定解決方案的所有層面都符合或超出其各自定義的品質等級之後,才核准解決方案

  • 回復測試

  • 功能測試

  • 可用性測試

  • 系統測試

發行/營運

  • 順暢地部署及轉換至營運

  • 確保滿足 IT/業務營運的需求和期望

  • 發行管理

  • 交付基礎結構

  • 作業

  • 建置管理

  • 工具管理

MSF 控管模型

控管模型 (前身為處理模型) 的設計是為了適時提供正確的指引給適當的人員。 其結構可讓小組更快交付解決方案的主要部分 (之前必須先專注在優先順序最高的功能,並將較不重要的功能移至後續發行)。 此模型的結構有助於促使小組對於如何交付解決方案的各部分,快速達成共識。 控管模型是 MSF 的彈性元件,已成功用來改進專案控制力、讓風險降到最低、提升解決方案品質,以及加快開發速度。 因為 MSF 可完全自訂,所以組織應該能夠調整控管模型,以配合其業務流程和現有的解決方案交付方式。

MSF 控管模型結合專案控管和程序制定。 專案控管著重在最佳化解決方案交付程序,以及有效使用專案資源。 程序制定著重在定義、建置及部署符合專案關係人需求和期望的解決方案。

MSF 控管模型的主要層面包括活動的重疊追蹤、同步處理檢查點,以及為客戶實現價值的漸進方法。

追蹤

MSF 控管模型可藉由使用活動的重疊追蹤,促進專案控管與程序制定。 在一個層級中,追蹤是特定活動的重疊、經協調的群組,這些活動旨在針對每個追蹤產生相關的交付項目。 不過,MSF 追蹤的功能不只如此,每個追蹤都有不同的任務,並代表專案進度和焦點的變更。 追蹤會使用每個追蹤中的檢閱和稱為檢查點的同步處理點 (後面將有討論),協助判定是否達成追蹤目標。 此外,還會使用主要檢查點來結束每個追蹤,如此可切換責任來引導許多活動,並可鼓勵小組採用更適合下一個追蹤目標的觀點。

MSF 控管模型包含五個重疊制定追蹤,以及一個橫跨制定追蹤的持續性控管追蹤。

控管追蹤圖表

顯示六個模型堆疊的圖表

控管追蹤

控管追蹤的重點在於依據一組可能變動的專案條件約束,平衡專案資源的有效使用與解決方案的交付。 此外,控管追蹤也支援程序的持續改進。

良好的專案控管可提供剛好足夠的監督、程序、指引和嚴謹度,以有效使用專案資源、交付解決方案,以及處理取捨決策,並依據一組可能變動的專案條件約束來取得平衡。 MSF 控管追蹤致力提供並不斷持續改進良好的專案控管。 其包含整個專案中的離散和連續性活動。

控管追蹤的目標如下:

  • 引導制定活動,以交付具有可重複且可靠結果的解決方案

  • 最佳化並持續提升小組效能和輸送量、解決方案品質,以及程序改進

  • 安全的核准來自:

    • 解決方案符合其需求並足以使用的使用者

    • 解決方案準備部署的作業

    • 完成專案的客戶

制定追蹤

程序制定是定義、建置及部署解決方案的詳細步驟順序。 基本上,制定追蹤可協助小組對其展望達成高度共識,並建立實現該願景的方法選項 (展望追蹤);評估這些選項,並規劃所選取的選項 (規劃追蹤);建置解決方案 (建置追蹤);確定解決方案如預期般交付 (穩定追蹤);以及最後部署該解決方案 (部署追蹤)。

每個制定追蹤的目標如下:

展望

  • 在專案條件約束的範圍內,培養對需求的清楚了解。

  • 召集所需的小組,設想出具有最符合那些需求之選項和方法的解決方案,並充分滿足那些條件約束。

計劃

  • 將概念性的解決方案轉化成具體的設計和計劃,以內建在建置追蹤中。

組建

  • 依據規劃追蹤交付項目,建置解決方案的各部分,例如設計、計劃、排程和需求。

穩定

  • 提升解決方案品質,以符合部署至生產環境的發行準則。

  • 驗證解決方案符合專案關係人的需求和期望。

  • 從使用者的觀點驗證解決方案的可用性。

  • 充分提升成功率,並且讓在解決方案目標環境中部署和操作解決方案的相關風險降至最低。

部署

  • 成功將解決方案整合至指定環境內的生產環境中。

  • 將其餘交付解決方案的責任,從專案小組移轉至營運,並盡可能順暢且快速地支援小組。

檢查點

檢查點是 MSF 的中心主題,可用來規劃及監視專案進度,以及標註交付項目和活動的完成。 檢查點可用來提供明確的機會給小組和客戶,讓他們能夠重新確認專案範圍,或是調整專案範圍,以反映不斷變動的客戶或業務需求,或是調解專案進行期間可能突然出現的風險和問題。 有許多原因會用到檢查點,例如:

  • 協助同步處理工作項目。

  • 提供進度和品質的外部檢視。

  • 允許中途修正。

  • 將檢閱的重點放在目標和交付項目上。

  • 提供繼續進行之前的工作核准點。

MSF 會區分兩種類型的檢查點:主要檢查點和過渡檢查點。 主要檢查點會標示主要活動和主要交付項目的完成,包括針對指定追蹤所規劃的活動結束。 過渡檢查點是由小組定義,以指出追蹤內的進度,以及將大型工作切割成可運作的小型工作。

反覆進行的方法

解決方案要等到部署至生產環境並有效使用之後,才會提供商業價值。 因此,MSF 控管模型的生命週期包括以漸進方式將解決方案開發並部署至生產環境中,進而確保實現商業價值以及小組的整體策略遠景和目標。 小組的強大多維度業務表示法,加上在整個流程中明確專注於對業務的影響,就是 MSF 確保專案實現技術承諾的方式。

反覆開發的實作是 MSF 中一再出現的主題。 文件、設計、計劃和其他交付項目都是以反覆進行的方式來開發的。 如同您的預期,MSF 控管模型就是反覆進行的方法。

摘要

Microsoft Solutions Framework 是組織想要快速開發高品質商業相關技術解決方案的有效工具。 其彈性可輕鬆適應大部分的技術專案,並協助小組有效地溝通及協調重要活動。

參考書目

請注意,本文部分內容擷取自 Microsoft Solutions Framework Essentials (ISBN 9780735623538)。 Microsoft Press. 著作權所有,並保留一切權利。

請參閱

概念

使用 Visual Studio ALM 和 TFS 追蹤工作

使用 Team 專案成品,選擇流程範本