螺旋模型 (Spiral Model)
? ? ? ?軟件風(fēng)險是任何軟件開發(fā)項目中都存在的實際問題,而且項目越大,軟件越復(fù)雜,風(fēng)險就越大,這些風(fēng)險在不同程度上損害項目產(chǎn)品的質(zhì)量。所以,在項目研發(fā)過程中需要及時識別并分析風(fēng)險,并采取適當(dāng)措施以消除或減少風(fēng)險的危害。
? ? ? ?螺旋模型是在快速原型模型和瀑布模型的基礎(chǔ)上,增加風(fēng)險分析策略,結(jié)合多種方法盡量降低風(fēng)險,保證項目的產(chǎn)品質(zhì)量。當(dāng)產(chǎn)品交付出去以后,在定制新需求前,評估之前的工作成果,然后進行新需求的風(fēng)險分析,接著瀑布模型方式開發(fā),直到交付出去產(chǎn)品,螺旋模型沿著螺線進行若干次迭代,圖中的四個象限代表了以下活動:
? ? ? ?1. 功能計劃:確定軟件功能,理清限制條件,制定研發(fā)方案
? ? ? ?2. 風(fēng)險分析:評估研發(fā)方案,考慮如何識別和消除風(fēng)險
? ? ? ?3. 項目生產(chǎn):軟件開發(fā)、測試和部署
? ? ? ?4. 客戶反饋:工作復(fù)盤,提出修正建議,制定下一步計劃。
優(yōu)勢:
? ? ? ?以進化的開發(fā)方式為中心,在每個項目階段結(jié)合使用瀑布模型與快速原型模型。
? ? ? ?強調(diào)了其他模型所忽視的風(fēng)險分析劣勢:
? ? ? ?強調(diào)風(fēng)險分析,但要求許多客戶接受并相信這種分析,是不容易的場景:
? ? ? ?特別適合于大型復(fù)雜的系統(tǒng)
