本篇,我們重點來講述一下VSTS中的管理理論基礎——MSF,它是VSTS同期釋出後,重點宣揚的一種理念,是一整套的可借鑑的開發流程和方案集合。
 
MSF概念界定
 
       MSF(Microsoft Solution Framework),它來自於超過25年的微軟與眾多合作伙伴的最佳應用實踐,是一個將軟體開發流程、原則和公認的做法完全整合的集合,並且提供了很好的模板級解決方案實現來支援團隊開發。
 
       這裡首先要明確一點,雖然仍舊將MSF作為產品進行釋出,但是,它不是一套軟體,而是一個體系,一個Framework,VSTS中整合了最新的MSF 4.0。
 
團隊開發的問題
 
       相信大家在團隊開發過程中都有下面類似的經歷,可能專案經理的感覺更為深刻,但是,即使是普通的開發人員,也會對下面的情況有所感觸:
 
◆專案中缺少必要的邊界管理,變更管理等等,最後產品與需求定義完全脫離
◆溝通存在障礙,團隊開發效率低下
◆過程管理不夠靈活,缺少應對靈活性
◆開發人員關注最新的技術,最cool的功能,可能未必是客戶需要的
◆如此等等
 
       那麼,作為軟體界當之無愧的老大,微軟是如何面對這些問題,如何實踐一個專案的呢?他們有哪些成功經驗呢?而我們又如何才能得到他們的專家級解決方案呢?
 
微軟解決方案框架(MSF)
 
       微軟將自己的最佳實踐作為VSTS的管理理念基礎,提供了一套通過最佳實踐而得到的過程方法論——MSF。MSF融合進了IT行業的世界觀方法論:IT世界的目標是如何將主要力量,豐富的技術與人和過程進行高效結合,而不是更多的技術。
 
       MSF來自於微軟全球產品組,諮詢部門,資訊科技部門以及與眾多合作伙伴的成功經驗的總結,包含了兩個模型和三個準則,即:團隊模型、過程模型;專案管理準則、風險管理準則、就緒管理準則。這些模型和準則是值得我們借鑑和學習的,但是,根據每個專案的不同特徵,我們應該學會靈活變通,使其真正發揮效用,盲目服從既定的準則,一成不變,勢必是要摔跟頭的。
 
       下面我們來簡單瞭解一下MSF的兩個模型和三個準則,感興趣的朋友可以針對專案所需進一步深入研究,這裡只拋磚引玉,讓大家有一個巨集觀的理解,正如上文所說,重要的在於借鑑和靈活變通,完全照搬不是一種聰明的做法。
 
團隊模型
 
       阻礙專案成功的一個重要的人的因素就是,專案不能以一個團隊的方式進行溝通和運作。MSF提出的團隊模型,可以有效避免團隊之間的隔閡和分離,提高團隊的合作效率,從而提高專案成功的可能性。
 
       MSF團隊模型將整個團隊人員分成六種核心角色,包括:程式管理角色、開發角色、測試角色、釋出管理角色、使用者體驗角色和產品管理角色(我將在後續文章中詳細介紹團隊模型的各種角色職責和目標),每種角色承擔不同的職責,完成不同的任務,任務之間彼此連線連續,從而角色之間互有溝通,這樣,就加強了團隊的合作,提高了工作的效率。
 
過程模型
 
       過程模型是MSF中一個非常重要的內容,分為構思(規劃)階段,計劃(設計)階段,開發階段,穩定階段,部署階段,通過每個階段交付不同的成果,可以促進專案的依次交付,增加專案的可預見性和可控制性,使最終專案成果與預期目標保持一致,各個階段的銜接也給專案提供一個從開始到結束的過渡。
 
       過程模型的一個重要特點就是使用里程碑確保專案的方向保持正確,里程碑可以計劃監控專案的進展,並制定主要的成果的交付時間,可以使專案人員和客戶清晰看到我們的成果。里程碑是需要稽核的,只有通過稽核,才能進入到下一個階段。同時,MSF過程模型是一個迭代的過程,這樣,也可以把專案細化,從而也降低了風險。
 
       過程模型可以很好地和團隊模型進行結合,不同的階段由不同的角色來推動,同時不同的角色支援不同階段的里程碑實現。
 
專案管理準則
 
       專案管理可以被用來描述一個角色以及在某個領域裡的技能和專長,這裡要注意,專案管理不是專案經理一個人來完成的,它作為一種活動由很多人來共同完成。
 
       MSF 用一種分散式的小組方法來進行專案管理,通過將小組角色抽象成為一套職能職責,而不是特定的職位描述,這樣可以提高責任性,並允許大範圍的可伸縮性,既適用於小的專案,也適用於非常巨大和複雜的專案。
 
風險管理準則
 
       風險是會給專案順利進行帶來負面影響的可能性。MSF中給我提供了一些可借鑑的準則來管理和控制風險,提高專案成功的機率。
 
       MSF定義了以下風險管理原則:
 
◆風險是不可避免的
◆識別風險是一項正面的活動,是我們專案中一定要做的活動
◆有效管理風險,風險管理過程需要貫穿專案始終
◆風險評估,MSF認為這是一項持續的活動,不能僅在專案之初討論風險之後了事,要在專案的不同階段識別風險,管理風險
◆強調主動規避風險
◆不能簡單地以風險的數量來評價專案的價值
 
就緒管理準則
 
       就緒管理是 MSF 中的核心準則,其最終的目標是預先確定團隊針對每個專案需要的技能,提前進行準備。這一準則所採用的方法將用於對規劃、構建和管理成功解決方案的知識、技能和能力進行管理。持續的就緒管理將給企業組織帶來巨大的技術架構儲備,也給遠期企業組織的發展帶來不可估量的基礎能量。就緒管理需要有規劃有重點分類別進行持續操作,隨著就緒管理工作的深入,企業在專案過程中也會減少障礙,提高效率,建立越來越大的知識庫。
 
結束語
 
       以上初步介紹了MSF的整體框架,包括兩個模型和三個準則,具體實施過程中,這些都是交匯在一起的,如何能夠避重就輕,取長補短,得到適應自己組織的方法準則,還需要在工作中進一步體會和借鑑MSF的理論,逐步摸索,以形成適合於自身團隊的流程模型,從而按部就班,輕便靈活地進行專案開發。  
     
       本篇筆者只對基礎理論進行了巨集觀闡述,感興趣的朋友可以詳細研究。後續文章將會對VSTS的各個角色版本進行一下體驗,將一些心得和大家分享。