續:軟件項目量化管理(CMMI高成熟度)實踐經驗談——之概述篇
二、項目管理過程
軟件開發項目管理過程,從項目全視角來看,分為售前、售中、售后等三個大的階段。本文所談的是售中階段項目管理過程,在售中階段,項目管理主要分項目策划、項目跟蹤監控、項目結項歸檔等三部分。相關活動包含銷售活動、採購活動、資源活動、支持活動等。
1、項目策划
項目策划是一種具有建設性、邏輯性的思維的過程,在此過程中,總的目的就是把全部可能影響決策的決定總結起來,對未來起到指導和控制作用,終於借以達到方案目標。
它是一門新興的策划學。以詳細的項目活動為對象,體現一定的功利性、社會性、創造性、時效性和超前性的大型策划活動。
1.1、項目策划的原則
1、可行性原則
項目策划,考慮最多的便是其可行性。
"實踐是檢驗真理的唯一標准",相同,項目策划的創意也要經得住事實的檢驗。
2、創新性原則
創新是事物得以發展的動力,是人類賴以生存和發展的主要手段。每一個軟件項目都是全新。要依據項目特征值創新性的策划項目。
3、無定勢原則
世界萬物都處在一個變化的氛圍之中,沒有無運動變化的事物,事物就是在這樣的運動的作用下發展的。
4、價值性原則
項目策划要依照價值性原則來進行,這是其功利性的詳細要求與體現。比如:項目工作量最少的QPPO。就是項目的價值取向。
5、集中性原則
在戰爭中,集中優勢兵力攻擊對方關鍵性的部分,成為軍事謀略的上策。不論是軍事項目。還是軟件開發項目。都能夠借此達到勝利的目標。
6、智能放大原則
人的能量是無窮的,策划中的創意與構思也是無止境的,因此說項目策划要堅持智能放大的原則。
7、信息性原則
信息是項目策划的起點,詳細來說,包含下面幾項要求:
1)收集原始信息力求全面
2)收集原始信息要可靠真實
3)信息加工要准確、及時
4)保持信息的系統性及連續性
1.2、項目策划根據和准則
在企業進行CMMI評估過程中,在CMMI2、3級時就已經建立起項目管理過程及體系文件,並日臻成熟,所以,項目策划時是須要根據企業本身的CMMI體系文件,也就是公司SOP(標准體系文件),相關已經和准則例如以下:
1、項目過程定義裁剪准則
可裁剪屬性有:生命周期模型。項目類型,項目階段,評審級別,文檔是否裁剪。頻度,成本、進度容差,里程碑延遲等,詳見《組織過程裁剪指南》裁剪項目過程。
2、任務分解准則(WBS)
根據《項目定義過程》、《項目估算報告》、《項目實施計划》、《項目進度計划模版》等過程體系文件和指南。任務分解准則例如以下:
⑴、WBS分解分類:項目分解WBS(項目管理類型任務分解)、技術分解WBS(項目project任務及特有技術工作內容分解)。
⑵、WBS分解原則:
- 項目要求;
- 定義逐步求精。
- 人時(工作量):一般的任務不超過2周,也就是80人時;
- 任務責任到人;
- 團隊工作原則:項目經理在制定項目計划過程中,尤其是在任務分解。工期預計對關鍵過程中一定要與項目成員一起進行。
3、項目估算根據
參考體系文件《估算指南》,根據項目合同、需求、項目通知、任務分解,以及組織資產庫進行項目估算。
4、軟件項目風險管理規則
- 風險類別有:人員、客戶、管理、質量、測試、環境等;
- 風險系數有:高、中、低;
- 風險發生概率和風險影響范圍分別1~5分。
5、風險的管理策略
a. 當風險系數(高)在16~25之間。必須制定應急計划,而且隨時監控風險變化情況,一旦風險發生,則立馬啟動應急計划。
b. 當風險系數(中)在 9~15之間,可不制定應急計划,定期監控風險變更情況,隨時准備啟動緩解措施。
c. 當風險系數(低)在 1~8之間。可不制定應急計划,定期監控風險變更情況,必要時啟動緩解措施。
注:對於部分低風險,可選擇接受。
1.3、 策划過程及內容
項目策划過程就是項目經理接到項目啟動通知后,根據項目啟動通知和項目項目策划過程,在部門經理、項目級QA、CM等人員的配合下。進行項目過程定義、項目估算、項目實施計划的制定和維護、項目策划評審等工作。
輸出成果有:項目實施計划、項目估算報告、項目定義過程、進度計划。

1.4、項目策划過程實踐
1、項目開發過程定義
在項目過程定義中。在項目級QA的協助下,參考《組織過程裁剪指南》和《軟件生命周期》裁剪定制適合於項目的生命周期模型。制定《項目定義過程》;因為本項目需求比較明白,所以採用了瀑布模型;定義階段例如以下:
- 需求階段
- 設計階段
- 編碼及單元測試階段
- 集成測試階段
- 系統測試階段
- 驗收測試階段
當中。需求、編碼及單元測試、系統測試、驗收測試為里程碑。
2、項目估算
項目估算是參照任務分解模版和《估算指南》,分別定義項目project活動、項目管理活動、項目支持活動三部分。
⑴.項目project活動按本項目實踐的瀑布模型生命周期和PDP,主要定義例如以下:需求開發、需求評審、軟件設計、設計評審、編碼與測試、代碼走查、單元測試、集成測試、系統測試、項目驗收等活動。
⑵.項目管理活動分解活動例如以下:項目立項、項目策划、周報例會、項目結項、其它項目管理活動(比如:需求管理、量化管理等)、項目度量;
⑶.項目支持活動分解為配置管理和質量保證兩類活動。
1)、編碼工作量估算(代碼行數)
項目工作活動中。編碼活動估算,是依據項目實際情況和前期需求及資產庫,工作范圍和軟件功能分解到詳細功能模塊(樹狀結構)。估算代碼行數,估算方法為Delphi,估算記錄例如以下圖所看到的。
使用Delphi法估算代碼行數。估算兩輪,第一輪會議室辦公用品管理、后台配合兩個模塊的估算額定偏差超過20%,因此僅對兩個模塊進行了第二輪估算。
2)、工作產品規模估算(頁數等)
項目project活動中,基於項目wbs的規模和工作量估算”中對除編碼階段外其他階段進行工作產品規模估算,並通過計算得到工作量
3、項目實施計划
項目實施包含:項目概況、項目組構成及人力資源計划、項目預算及進度計划、干系人參與計划、度量分析計划、.其他子計划等6部分內容,具體內容例如以下圖所看到的。
1)、項目概況
項目概況介紹了項目背景和基本信息及建設目標等內容,核心內容為項目目標,比例如以下圖項目過程性能目標(Project's QPPO),以及項目范圍、驗收標准、待交付產品或服務、項目工作環境、項目風險等。
2)、項目組構成及人力資源計划
項目組由項目經理、QA、CM、需求開發者、設計人員、編碼人員、測試人員構成,按下表的職責分工協作,由項目經理全面負責。
當中,人力資源計划是依據項目實際情況和資產庫。分別選配0基礎、中級、高級技術人員,以及相關技術專業。
假設人員能力不足,則安排專業技能培訓計划。
在項目組構成及人力資源計划中主要體現項目組構成、角色與職責、項目所需知識與技能分析、項目培訓計划。
3)、項目預算及進度計划
項目預算及進度計划包含項目生命周期、項目工作量及預算分配、項目一級計划、里程碑標定說明等4項內容。因為此項目需求清晰完整。所以生命周期模型選擇瀑布模型,由此定義興許內容。
項目工作量及預算分配。按需求開發、軟件設計、編碼與測試、集成測試、系統測試、項目驗收、項目管理、支持過程及估算工作量。確定工作量預算分配比比例如以下:11%、23%、26%、7%、10%、4%、13%、6%。
期中。預算還包含人力成本、差旅費用、其它費用。
進度計划例如以下表所看到的。
項目里程碑是必須設置的。此項目定義例如以下:需求開發、編碼與測試、系統測試、產品驗收4個里程碑。
4)、項目干系人參與計划
項目干系人參與計划主要包含:項目干系人識別及職責定義、干系人參與計划、外部干系人溝通計划等3部分內容,例如以下表所看到的為項目干系人識別及職責定義。
干系人參與是按項目各個階段協商安排計划。計划內容例如以下:階段、任務名稱、參與人員、開始日期、完畢日期、任務完畢驗收標准。
外部干系人參與計划,主要計划內容有:溝通方式、溝通內容、發起人、外部干系人、溝通頻率。
5)、度量分析計划
度量分析計划包含項目度量目標及度量指標、度量分析計划等兩部分。因為度量是比較主要的內容,並且基本同樣,再此略。
6)、其他子計划
其他子計划包含:數據管理計划、項目監控計划、需求管理計划、決策分析計划、項目評審計划、項目測試計划。
數據管理計划為識別項目需納入數據管理范圍的數據項。並計划其管理級別等相關信息。
具本的數據項請參見:配置管理計划。
項目監控計划主要是有:
- 項目管理
- 項目周報
- 風險管理
- 周例會
- 里程碑評審
- 日常監控報告
- 配置管理
- 配置管理周報
- 質量保證
- 質量保證周報
- 度量分析
- 項目進度度量
- 項目工作量度量
- 規模度量
- 過程質量度量
- 產品質量度量
4、項目進度計划
在完畢實施計划后。開始對項目實施計划進行細化,當中。項目進度計划是當中重要細化內容,並貫穿項目全周期。
項目進度計划是子計划。主要是基於項目實施計划中的資源、進度計划、里程碑等各項內容。在項目實施過程中進行任務分配、人力資源分配、時間分配。上述分配要與project進度相協調。
任務管理模型例如以下表所看到的:
在項目進度計划編排過程,須要注意下面原則和情況:
- 任務分配漸進式,也就是說在任務分解漸進精細的過程中,任務也要逐步分配到人。詳細任務,讓開發者看到2周就能夠了,再多分配。則在調整任務時,將耗費非常大精力。
- 根據里程碑識別並確定關鍵路徑,在任務進度安排過程中,應先尋求關鍵路徑並在關鍵路徑上安排一定的機動時間和節假日。以便應付意想不到的困難和問題。
。
- 理順任務間的關系。提高並行化;
- 做好項目基線(基於MS Project)。
注:項目基線是特指項目的規范、應用標准、進度指標、費用指標以及人員和其它資源使用指標等。基線隨着項目的進展而變化,主要原因有:(1)時間指標無法實現。(2)各項任務延期完畢。(3)里程碑未達到;(4)有些工作不能按時開始;(5)人員不能按計划到位;(6)設備性能被過高預計。(7)高峰期人員工效不高;(8)預算過高或過少;(9)工作完畢量超過或未達到計划。
——智庫.百科
5、項目配置管理計划
配置管理計划是軟件開發計划的一部分,它設立了項目的配置管理策略及實踐。
受控級別說明:
- 低:不必隨時跟蹤版本號。但要求將階段性成果在配置庫內必須有,如項目周報,不要求跟蹤版本號等,但必須檢查是否已放入配置庫對應位置。
- 中:表示該配置項受控。其每一個版本號須要審核、評審或測試。由配置管理project師存放03.Baseline下對應位置。
- 高:表示基線控制。修訂須要通過變更控制過程來嚴格控制,並要跟蹤版本號及存放位置的正確性。全部納入基線庫的工作產品必須定為高級。其他則依據項目須要來定。
- 密:機密文件。不可復制。不可拷貝。
下圖為落實配置管理所建立配置管理庫的結構圖。
6、質量保證計划
質量保證計划主要是由QA來完畢,在此略。