公司從去年年底開始實施CMMI3,記得當初上培訓課的時候,聽着老師介紹過程管理,項目管理,工程過程,支持過程這四大類過程域的時候,全部門上下聽得稀里糊塗,從未想到這個鬼東西還這么復雜,這么麻煩。
公司之所以要實施CMMI3,一來是想規范一下項目開發流程,二來是拉更多的外包項目,因為有些項目投標時,有些客戶一定要求要通過了CMMI。全部門上下都沒有實施過CMMI的經驗,有些同事在以前上班的公司早已實施過CMMI,有些也輪不到他們去參與。所以實施CMMI3感覺有點像摸着石頭過河。實施七八個月,過程雖然痛苦,但收獲彼多。
CMMI分為五個等級:CMMI1.初始級 2. 已管理級 3. 已定義級4. 量化管理級 5. 優化管理級,公司可以直接評CMMI3級,但要評CMMI4級,要通過CMMI3級才可以實施,CMMI5級則要先通過CMMI4級。
CMMI3的體系文件主要分為四大類過程域:過程管理,項目管理,工程過程,支持過程,每個過程域下面都有相應的模板文件。
財富庫:財富庫里面包括六個子庫
庫名: |
存放內容 |
責任部門 |
標准過程庫 |
**公司CMMI標准過程集合(含過程、指南與文檔模板) |
EPG |
培訓庫 |
公司級培訓教材與相關資料 培訓工作資料保存 |
辦公室 |
開發研發類經驗 |
存放公司產品開發類、產品研發類、維護開發類項目在實施中的好的記錄與資料、經驗教訓,以供其它項目參考 |
**部門 |
過程改進經驗庫 |
存放公司過程改進中的優秀過程記錄,包括改進計划、改進報告、改進經驗、案例、評估記錄等資料 |
EPG |
測量庫 |
存放組織各部門的測量數據及測量分析報告 |
EPG、各測量責任部門 |
軟件構件庫 |
可供組織項目組復用的公用軟件、代碼 |
**部門 |
軟件項目開發活動中主要的幾個步驟 :項目立項->初步策划(包括編寫項目總體計划初稿,編寫項目進度計划初稿等)->需求調研(編寫用戶需求規格說明書和需求規格說明書)->總體策划(在初步策划的基礎上編寫計划書)->設計(概要設計和詳細設計)->編碼(根據詳細設計與編碼規范進行編碼)->單元測試->測試(集成,系統)->試運用->驗收交付->結項,開發過程中還有很多評審,比如需求規格說明書評審,概要設計說明書評審,詳細設計說明書等,每次評審時都有評審檢查單和評審報告或是評審會議紀要,這些都將
成為CMMI評審的直接證據或間接證據。
配置管理的工具:公司是用VSS版本控制器來進行配置管理,其他的版本控制 器也行,這是沒有特殊規定的。
PIID表:PIID表是用來記錄CMMI實施的直接證據,間接證據,訪談證據的Excel表,這個表相當重要,評審的時候要檢查這個表,然后去配置庫找相應的文檔。
角色: 在CMMI參與人員中,可分為很多角色,不同的角色各司其職。
PM:項目經理; DEV:開發人員; EGP:過程改進組; QA:質量保證員
CM:配置管理人員 SEPG 軟件工程過程組 SAM(部門經理) Tester 測試人員
GM:副總,副總經理,高層領導
不同的級別,在CMMI3實施中擔任不同的角色,訪談的時候也會對不同的角色分類訪談,各個角色人員必須熟悉自己任務與自己寫的文檔,對相關的其他工作與流程也要了解,因為評估師有可能會問及其他角色的問題.
訪談答案的准備:在訪談問題准備前,一般培訓老師會給出一些針對不同角色的訪談問題,然后由我們自己整理答案。在評估前,會有幾次的模擬訪談。
項目經理模擬訪談問題:
1. 項目介紹,自我介紹
2. 如何作項目估算
3. 如何作項目定義,裁減?
4. 怎么編寫項目計划?
5. 怎么做項目監控
6. 項目執行中出現偏差,如何處理?
7. 如何管理風險?
8. 測量分析活動如何做?
9. 何時做決策分析?針對什么問題,怎么做?
10. 項目如何做需求調研?
11. 如何分析需求?
12. 如何確認需求?
13. 如何管理需求變更?
14. 如何跟蹤需求?
開發人員設計人員模擬訪談問題:
1. 自我介紹,職責
2. 工作由誰分配?項目計划,進度計划,周例會;
3. 怎么根據需求做概要設計的?
4. 概要設計詳細設計如何評審?
5. 是否參與評審?發現了哪些問題?
6. 如何做詳細設計?
7. 如何判斷詳細設計夠了?足可以指導開發的工作。
8. 編碼是否有編碼規范?
9. 如何做單元測試?
10. 單元測試發現的缺陷如何處理?
11. 單元測試結束后,如何產品集成?
12. 手工如何做集成?
13. 集成環境是怎樣的?
14. 集成順序是如何?為何要這么做?
15. 開發人員如何修改BUG?
16. 是否存在開發人員覺得不是BUG,測試人員覺得是的情況。怎么解決?
17. 開發人員如何對配置庫進行使用?
18. 設計開發人員的職責是什么?
19. 接受過哪些跟設計開發相關的培訓?
20. QA有無檢查你們的工作?
EPG(過程改進小組)模擬訪談問題:
1. 如何策划公司過程改進工作的?策划過程?
2. 怎么確定改進的目標的?
3. 過程改進過程中收集了哪些過程改進的建議?
4. 如何對周期性的問題改進?
5. 改進計划 ?
6. 如何實施改進?
7. 改進效果的監控如何進行?
8. 財富庫如何管理?
9. 職責,培訓,工作產物放在哪里,如何監控,QA如何檢查工作。
QA(質量保證)模擬訪談問題:
1. 如何做項目質量的保證?
2. 如何對策划的過程進行檢查?
3. 如何檢查需求規格說明書?(對工作產品德檢查)
4. 對項目的檢查,發現最主要的問題是什么?
5. 造成這些問題的原因?
6. 發現的問題如何溝通解決的?
7. 誰來檢查你的工作? 第三方QA
8. 問題長時間沒有解決如何做?
9. 質量保證過程的方針?
10. 對EPG提出了哪些建議?是否接受?
測試人員模擬訪談問題:
1. 項目測試目的?
發現問題,確保產品達到需求的要求。
2. 如何對測試計划?
對象,進度,開始准則
3. 如何寫用例?
根據需求規格說明書,覆蓋測試需求;項目特別的流程分析,異常情況,用例發現缺陷的能力。
4. 測試和開發之間銜接。
開發人員集成完成后,給安裝包,進入測試環境進行測試,測試完后發現的缺陷提交到MANTIS,(缺陷管理過程的流程:分派,解決,驗證,分版本解決)
5. 對於測試結果的地分析?(怎么通過結果分析,是否達到要求可通過測試,測試用力的覆蓋和缺陷解決率,穩定性,是否達到結束要求准則)
6. 測試報告的內容?
7. 職責,資源,培訓,
8. 其他角色的關系,人員怎么安排,如何分配,怎么確認,怎么做匯報。與PM,QA的關系。
9. 測試環境,軟硬件?怎么組建這些測試環境,工具….測試用例的數據准備,考慮特例。等價類,邊界值。如何判斷測試解釋結束,通過的方法。
10. 打開關閉趨勢,產品是否穩定。測試輪數太少。
對於CMMI3的一個很大的感觸就是文檔太多,成本太高,小項目根本不可能嫌錢。CMMI3歷時七八個月,加了無次班,但受益匪淺。