5.2 軟件過程模型
掌握常見軟件開發模型的基本概念。
瀑布模型:各階段的固定順序,如同瀑布流水。適用于需求明確,且很少發生較大變化的項目。
演化模型:
- 原型模型:適用于用戶需求不清,需求經常變化的情況,當系統規模不是很大也不太復雜的時候,采用該方法。
- 螺旋模型:對于復雜的大型軟件。增加了風險分析。
噴泉模型:主要用來描述面向對象的軟件開發過程。
軟件的質量度量指標
- 軟件維護的工作量比開發階段的工作量大,通常估計的是開發階段的工作量占軟件生命周期整個工作量的40%,維護階段的工作量則占60%,甚至更多。
- 軟件的正確性是指軟件完成所需功能的程度,不能直接等同說正確性可用每千行代碼的故障數來度量
- 軟件完整性是指軟件在安全方面抗攻擊的能力
- 軟件可用性用來度量軟件的用戶友好性
設計模式:是對被用來在特定場景下解決一般設計問題的類和相互通信的對象的描述。一般而言一個設計模式有4個基本要素:模式名稱,問題,解決的方案和效果。
設計模式使人們可以更加簡單方便的復用成功的設計和體系結構。
軟件項目開發成本,開發成本估算模型:
- IBM模型是靜態變量模型
- Putnam模型是一種動態多變量模型,一般應用于超過70000行代碼的項目
- COCOMO模型是一種精確且易于適用的成本估算模型。由基本、中、高級COCOMO模型組成。基本COCOMO模型是靜態單變量模型。