軟體過程模型 可行性分析與項目開發計劃:可行性分析報告、項目開發計劃 需求分析:軟體需求說明書 概要設計:概要設計說明書 詳細設計:詳細設計文檔 編碼:源程式清單 測試:軟體測試計劃、測試用例、報告 維護:更正性維護、適應性維護、預防性維護、完善性維護(就(糾)是(適)魚(預)丸(完)) 能力成熟度... ...
軟體過程模型
可行性分析與項目開發計劃:可行性分析報告、項目開發計劃
需求分析:軟體需求說明書
概要設計:概要設計說明書
詳細設計:詳細設計文檔
編碼:源程式清單
測試:軟體測試計劃、測試用例、報告
維護:更正性維護、適應性維護、預防性維護、完善性維護(就(糾)是(適)魚(預)丸(完))
能力成熟度模型
(1)階段式模型
成熟度等級 | 過程域 |
初始級 | 雜亂無章、混亂,無明確定義步驟。 |
已管理級 | 建立了基本的項目管理過程,為項目服務。需求管理,項目計劃,項目監督與控制、供應商合同管理、度量與分析、過程和產品質量保證。 |
已定義級 | 過程已經文檔化、標準化,為組織服務。需求開發、技術解決方案、產品集成,驗證、確認、組織級過程焦點、組織級過程定義、組織級培訓、集成項目經理、風險管理、集成化的團隊、決策分析和解決方案、組織集成環境。 |
定量管理級 | 過程已度量和控制。組織過程性能、定量項目管理。 |
優化級 | 集中於過程改進。組織級改革與實施、因果分析和解決方案。 |
(2)連續式模型
連續式分組 | 過程域 |
過程管理 | 組織級過程焦點、組織級過程定義、組織級培訓、組織級過程性能、組織級改革與實施。 |
項目管理 | 項目計劃、項目監督與控制、供應商合同管理、集成項目管理、風險管理、集成化的團隊、定量項目管理。 |
工程 | 需求管理、需求開發、技術解決方案、產品集成、驗證、確認。 |
支持 | 配置管理、度量和分析、過程和產品質量保證、決策分析和解決方案、組織級集成環境、因果分析和解決方案。 |
軟體過程模型
(1)瀑布模型
適用於需求明確,要求文檔標準。
(2)V模型
強調測試的重要性。
(3)增量模型
先開發核心必要模塊。
(4)演化模型(原型模型、螺旋模型)
適用於需求不明確。
(5)噴泉模型
適用於面向對象開發。
(6)基於構件的開發模型
強調軟體復用。
(7)螺旋模型
(a)指定計劃。
(b)風險分析
(c)實施工程
(d)用戶評估
強調風險控制,適合大項目開發。
(8)統一過程RUP/UP
適用於用例和風險驅動,以架構為中心,迭代並且增量。
技術階段 | 內容與產品 |
起始階段 | 確定項目範圍、邊界。產生構想文檔、初始用例模型、初始項目術語、初始業務用例、初始風險評估、項目計劃、業務模型等。 |
精化階段 | 建立架構選擇構件,淘汰最高風險因素。 |
構建階段 | 完成架構開發併進行測試。 |
交付階段 | 將軟體交付給用戶群體,產品有β測試。 |
軟體開發方法
結構化方法:瀑布模型。
4大價值觀:溝通、簡單、反饋、勇氣(擁抱變更)。
結構化設計
項目管理
五大過程組、十大知識域、47個子過程。
風險顯露度
RE=P*C
P是風險發生的概率,C是風險發生時帶來的項目成本。
風險的成本估算完成後,可以針對風險表中的每個風險計算其風險曝光度。某軟體小組計劃項目中採用60個可復用的構件,每個構件平均是100LOC,每個LOC的成本是13元人民幣。下麵是該小組定義的一個項目風險:
1、風險識別:預定要復用的軟體構件中只有60%將被集成到應用中,剩餘功能必須定製開發。
2、風險概率:50%。
3、該項目風險的風險曝光度()
解析:風險曝光度,測量的是資產的整個安全性風險,它將表示實際損失的可能性與表示大量可能損失的資訊結合到單一數字評估中。在形式最簡單的定量性風險分析中,風險曝光度可透過將風險可能性及影響相乘算出。
風險曝光度(risk exposure)=錯誤出現率(風險出現率)*錯誤造成損失(風險損失)風險識別
該風險可能發生概率為50%。所以該項目風險的風險曝光度是(60*100*13)*(1-60%)*50%=15600。
甘特圖
PERT圖
某軟體項目的活動圖如下圖所示,其中頂點表示項目里程碑,連續頂點的邊表示包含的活動,邊上的數字表示相應的活動持續時間(天),則完成該項目的最少時間為()天。活動BC和BF最多可以晚()天而不會影響項目的進度。
解析:關鍵路徑ABDGFJ和ABCEFJ,工期18天。
關鍵路徑上的總時差為0,即BC總時差0,BF總時差7。
McCabe環路複雜度
採用McCabe度量法計算下圖所示程式的環路複雜度()。
解析:公式V(G)=m-n+2,m為弧度,n為節點數量。
11-10+2=3