CMM實施手記之二:以項目形式管理SPI
北京SPIN 雅行
(本文曾于2002年7月刊載于《計算機世界》周報第25期F5、F6版)
國外的一項有關SPI的調查表明,沒有很好的對過程改進進行管理造成了至少70%以上的改進失敗或挫折!當我們問自己如下問題的時候,能否迅速給出滿意的答案——
SPI強調管理,自身是如何管理的?
SPI提供方法論,自己的方法論如何?
SPI說做事要有計劃性,自身計劃性如何?
SPI倡導風險管理,自身的風險被很好的識別了嗎?
本文試圖給出一種對SPI自身進行管理的方法:“以項目形式管理SPI”。
以項目形式管理SPI通常分為如下五步驟:
第一步 體系診斷
第二步 方案設計
第三步 項目策劃
第四步 過程管理
第五步 項目驗收總結
第一步 體系診斷
診斷是一切過程改進和管理咨詢的前奏,對于不以取證為目的的軟件過程改進來說,這一步尤其重要。
我們常講“理論聯系實際”,診斷就是實現此種聯系的必要步驟。
“過程診斷”和“過程審計”有著某種程度的相似性,通常的方式為面談、文檔查閱、檢查表填寫等形式。
典型的基于CMM的檢查表舉例如下:
等級二 可重復級提問單
軟件項目跟蹤和監督
典型的SPI診斷開銷大約為2-3人日,這和組織的成熟度,組織的歷史長短,管理和業務的復雜度都有關系。
對診斷過程的漠視是自頂向下改進策略的最大弊端。
第二步 方案設計
在了解了組織、項目的實際狀態以后,就可以有針對性的提出解決方案了,這一步驟稱為方案設計。
面向中小企業解決方案范例之一:
在以上方案中,我們可以看到主要的元素來自于CMM、SEBOK(軟件工程)、good practice (最佳實踐)。這種結果是與該企業的如下現狀相適應的:
首先,該企業沒有形成基本的軟件工程流程;
其次,項目沒有生命周期的概念,無明確啟動和驗收點,正如其項目經理所言“我們的項目結束點要等到下一起項目已經開始,本期項目不得不結束了,才會出現”;
再次,該企業整體管理基礎薄弱,資源提供不充分,這種情況下,在大企業順理成章的事情可能在這里都是問題,所以需要大量的變通和折衷策略,這些都被歸納在GOOD PRACTICE 中。
諸如此類的方案設計,存在兩個裁減特征,一是橫向裁減,可以在打破現有知識體系的基礎上,創造性的構建新體系;其二是縱向裁減,比如對于CMM的具體KPA,也可以分兩步或更多步來達到要求。所有這些裁減都會帶來更多的靈活性。
SPI方案的編制需要涵蓋如下內容:
〉本組織軟件過程改進的歷史
〉過程診斷
診斷方法
診斷結果和差距分析
〉改進方案
總體目標
總體工程化管理系統設計
詳細改進措施
〉資源需求預測
〉計劃進度概要
前提和承諾
資源需求預測
〉風險
〉里程碑
附錄:過程診斷提問單和原始數據
第三步 項目策劃
方案得到認可后,可啟動項目策劃。SPI的項目策劃要求與其它項目的策劃要求并無多少差異,主要是編制一份項目計劃,有如下內容:
〉項目目標
整體目標
本階段目標
〉假定和約束
〉項目組織
組織結構
接口關系
報告關系
責任矩陣
〉項目進度跟蹤方式
〉項目里程碑
〉交付物
文檔編制
人員培訓
〉風險管理
〉項目激勵
〉項目驗收
值得一提的SPI風險管理,SPI典型風險及化解策略如下:
計劃進度則使用諸如MSP之類的工具進行計劃和跟蹤:
第四步、過程管理
計劃制定好以后,還要對 SPI的的實施過程進行定期和不定期的過程跟蹤,才能確保及時糾正和預防計劃執行中的偏差,最終達成項目的成功。
一般可通過“周”和“里程碑”兩種周期進行跟蹤,周跟蹤的內容為進度、完成量、問題、風險,通過周報和周會的形式進行;里程碑跟蹤的內容為進度、工作量、人力開銷、風險等,還要對項目管理的經驗和教訓進行總結,里程碑也是識別典型案例和收集最佳實踐的良好時機。里程碑跟蹤活動通常包括“里程碑總結報告編制”和“里程碑總結會”兩種形式。
第五步、項目驗收總結
對于自底向上的軟件過程改進,并沒有標準的驗收準則可利用,這要求組織根據自身裁減的體系編制自己的驗收準則,驗收準則有定性和定量的不同形式,定量適合于有一定管理基礎的組織,需要有足夠的、可信的、可比的歷史數據。但多數中小軟件企業可能在起步階段只能選擇定性驗收的方式,這種定性驗收方式常常是“先僵化、在固化、后優化”理念的一種體現。
定性的檢查表可能會由如下問題組成:
項目是否有明確的啟動點?
項目啟動后是否對項目進行了策劃?
項目計劃是否被周期性維護?
是否在策劃階段識別了項目的配置項?
集成測試通過后是否對代碼進行了標定?
修訂后的配置項是否被重新審核?
SQA是否按照規定的周期對項目組進行過程審計?
等等
項目驗收后,進行SPI項目的最后一項活動——項目總結,需要提交書面報告并召開總結會,項目總結中要統計匯總SPI本身數據、進度、開銷、偏差及分析,還要識別和共享經驗教訓。這一階段的工作將為以后的SPI持續改進打下良好的基礎。SPI將進入下一個改進循環。
總之,以項目形式管理軟件過程改進,特別有利于提高團隊凝聚力、規避風險、明確目標、提供效率,而且由于SPI項目組與其它項目組形成了一種矩陣式組織結構,可以有效促進組間交流。所以對于SPI這樣一件比較復雜的工程來說,以項目形式進行管理將是成功的重要保證。
下兩期預告:
“之三:軟件過程改進利益分析”
“之四:管理體系設計三步曲”
[說明:本系列文章由作者在“北京軟件過程改進沙龍”的演講整理而成]
文章來源于領測軟件測試網 http://www.kjueaiud.com/