前言:
CMMI:Capability Maturity Model Integration 軟件能力成熟度模型
CMU/SEI:卡內基梅隆大學/軟件工程研究所
CDIO:構思(Conceive)、設計(Design)、實現(Implement)和運作(Operate),工程教育模式。
從2000年起,麻省理工學院和瑞典皇家工學院等四所大學組成的跨國研究獲得Knut and Alice Wallenberg基金會近2000萬美元巨額資助,經過四年的探索研究,創立了 CDIO 工程教育理念,並成立了以 CDIO命名的國際合作組織。
第一章 軟件工程基礎
一 軟件工程基本原理
1968年,聯邦德國召開一次國際會議上提出“軟件工程”。
1983年,著名軟件工程專家波漢姆(Barry Boehm)通過論文提出軟件工程7條基本原理。確保軟件產品質量和開發效率的原理的最小集合。
1 按照軟件生命周期的階段划分制定計划,嚴格依據計划進行管理。
共有六類計划,項目概要計划,里程碑計划,項目控制計划,產品控制計划,驗證計划和運行維護計划。
2 堅持進行階段評審。
統計結果顯示63%缺陷來自設計階段,並且發現於改正越晚,付出代價越高。每個階段評審目的為了盡早發現錯誤。
3 實行嚴格的產品控制。
變需求需要付出代價,但需求變更符合客觀需要,因此需要科學控制技術。主要實行基准配置管理(變更控制),定義基線,管理和控制基線。
4 采用現代程序設計技術。
實踐表明,采用先進的技術提高開發效率同時,提高維護效率。
5 結果應能清楚審查。
軟件產品作為邏輯產品,可視性差,難以度量。提高可視性,應根據目標和期限規定職責和標准,使之能夠被審查。
6 開發小組的人員應當少而精。
高素質開發人員意味着高效率,高質量。人員增加意味着增加交流討論開銷。
7 承認不斷改進軟件工程實踐的必要性。
通過過程分析,分析過程缺陷。開發工具,研究技術應對過程缺陷。
Barry Boehm簡介:
軟件工程估算模型COCOMO模型之父、軟件過程螺旋式模型之父,美國國家工程院院士,AIAA、IEEE、ACM會士(Fellow)
當前及今后一個時期看,可采用的技術/產品管理方面的標准體系或模型:

二 質量管理體系ISO9001
由全球第一個質量管理體系BS5750(BSI英國標准協會撰寫)轉化而來。
1 質量管理原則
包括以顧客為中心,高層管理者推動,全員參與,采用過程方法,系統的管理,持續改進,基於事實的決策,互利的供方關系。
2 建立和實施質量管理體系的步驟
確定顧客的需求和期望,建立公司的質量方針和質量目標,確定實現質量目標所需的過程和職責,針對每個過程實現質量目標的有效性確定測量方法,通過測量,確定每個過程的現行有效性,確定防止不合格項並消除產生原因的措施,尋找提高過程有效性和效率的機會,確定並優先考慮那些能提供最佳結果的機會,為實施已確定的改進,對戰略/過程和資源進行策划,實施改進計划,監控改進過程,對照預期結果評價實際結果,評審改進活動,確定必要的糾正/跟蹤措施。
3 過程方法
任何“得到輸入並將其轉化為輸出”的序列活動均可視為過程。系統識別和管理組織內所使用的過程,特別是這些過程的互相作用,稱為過程方法。
三 項目管理知識體系 PMBOK
Project Management Body of Knowledge。由美國PMI對項目管理所需的知識/技能和工具進行的概括性描述。
1 項目基本屬性
整體性,唯一性,一次性,目標性,多約束性,依賴性,沖突性,周期性。
2 項目參數
范圍,進度,資源,成本和質量。
3 項目生命周期
定義,策划,實施,收尾。

4 項目管理基本過程
啟動過程,策划過程,執行過程,控制過程,結束過程。
5 項目管理基本職能
項目整體管理,項目范圍管理,項目時間管理,項目成本管理,項目質量管理,項目人力資源管理,項目溝通管理,項目風險管理,項目采購管理。
6 項目管理成熟度模型(PMMM)
Project Management Maturity Model。與CMMI類似分為初始級,可重復級,已定義級,受管理級,優化級。


四 軟件能力成熟度模型集成CMMI
1 什么是CMMI
Capability Maturity Model Integration。目的是為提高組織過程和管理產品開發/發布和維護能力提供保障,幫助組織客觀評價自身能力成熟度和過程域的能力,為過程改進建立優先級以及執行過程改進。
1984年,國防部希望將軟件外包,委托CMU/SEI進行研究,制定工程制度,評估和改進開發過程和能力,已達開發功能正確,縮短開發進度,節約開發成本,確保軟件質量目標。
1987年,Watts S.Humphreg提出關於軟件的《過程成熟度模型框架和成熟度問卷簡要描述》,之后再國防部軟件承包商內試行CMMI評估。
1990年后,SEI把基於CMMI的評估作為商業行為推向市場。
1993年,SEI發布完整的SW-CMM v1.1。
CMM推出后,不同領域發展了自己的CMM系列,包括系統工程SE-CMM,集成和產品開發IPD-CMM,人力資源P-CMM等。
2000年12月,SEI發布成熟度模型集成,整合CMM v2.0,SE-CMM,IPD-CMM v0.98。

v1.3對模型進行化簡,4/5級通用實踐進行調整,機構改進與部署(OID)改為機構性能管理(OPM)
2 CMMI和過程改進
IDEAL,啟動(Initiating),診斷(Diagnosing),建立(Establishing),行動(Acting),推進(Leveraging)。
診斷是識別和改進現有開發過程的過程。

3 CMMI結構框架
過程域(PA)表示整個過程改進活動中側重關注或改進的某個方面的問題(維度)。v1.3版中共計22個過程域。


根據機構和項目組,項目管理,過程管理分類:

過程域間的關系:


4 CMMI的階梯表示
22個過程域按階梯式表示法(5級)分成四個組:


級別2 受管理級基本特征:
分派給項目組的項目需求得到管理。
項目的規模,工作量,成本,進度作了估計,並制定了項目開發計划,按照計划進行項目開發。
在開發全過程中,按計划對項目進行監督和控制。
過程和產品相對於計划和標准的符合性得到客觀評價,糾正不符合項。
產品配置項及其變更得到管理。
定義了過程和產品的基本度量,進行測量,對測量數據進行分析。
供方協議得到管理。
級別3 已定義級:
達到級別2包含的每個過程域目標。
制定和維護機構標准過程集(OSSP Organization's Set of Standard Processes)。
建立和維護機構過程資產(OPA Organizational Process Assets)
OPA包含OSSP,生命周期描述,剪裁指南及准則,機構度量數據庫(Repository),機構過程資產庫(OPAL Organization's Process Assets Library)(過程數據庫和文檔),機構過程性能基線(OPPB,Organization's Process Performance Baselines)及其計算模型描述。
項目組一致遵循機構裁剪指南,對OSSP進行裁剪,形成項目自定義過程(PDP Project Definied Processes),按項目定義過程進行項目開發。
達到級別2和級別3所包含的所有過程域的目標。
過程制度化的程度應達到“已定義級”。
級別4 定量管理級
達到等級2,3和4所含每個過程域的特定目標。
達到等級2,3所含每個過程域的共性目標。
識別對過程性能和項目定量目標產生顯著影響的過程或子過程,並采用統計學或其他定量技術定量地控制這些過程。
級別5 持續優化級
達到等級2,3,4和5所含過程域的全部特定目標。
達到2,3級所含過程域的共性目標。
根據對造成過程性能偏差的共同原因的定量理解,持續改進過程性能。
第二章 案例機構設置及崗位職責
一 案例介紹及機構設置
1 確定軟件生命周期
瀑布模型適用於“以自身研發產品為核心的系統集成服務提供商”這一類公司使用。

