软件开发之螺旋模型
螺旋模型采用一種周期性的方法來進(jìn)行系統(tǒng)開發(fā)。這會導(dǎo)致開發(fā)出眾多的中間版本。使用它,項目經(jīng)理在早期就能夠為客戶實證某些概念。該模型是快速原型法,以進(jìn)化的開發(fā)方式為中心,在每個項目階段使用瀑布模型法。這種模型的每一個周期都包括需求定義、風(fēng)險分析、工程實現(xiàn)和評審4個階段,由這4個階段進(jìn)行迭代。軟件開發(fā)過程每迭代一次,軟件開發(fā)又前進(jìn)一個層次。采用螺旋模型的軟件過程如下圖所示:
螺旋模型的優(yōu)勢包括:
1)設(shè)計上的靈活性,可以在項目的各個階段進(jìn)行變更。
2)以小的分段來構(gòu)建大型系統(tǒng),使成本計算變得簡單容易。
3)客戶始終參與每個階段的開發(fā),保證了項目不偏離正確方向以及項目的可控性。
4)隨著項目推進(jìn),客戶始終掌握項目的最新信息 , 從而他或她能夠和管理層有效地交互。
5)客戶認(rèn)可這種公司內(nèi)部的開發(fā)方式帶來的良好的溝通和高質(zhì)量的產(chǎn)品。
螺旋模型很大程度上是一種風(fēng)險驅(qū)動的方法體系,因為在每個階段之前及經(jīng)常發(fā)生的循環(huán)之前,都必須首先進(jìn)行風(fēng)險評估。在實踐中,螺旋法技術(shù)和流程變得更為簡單。迭代方法體系更傾向于按照開發(fā)/設(shè)計人員的方式工作,而不是項目經(jīng)理的方式。螺旋模型中存在眾多變量,并且在將來會有更大幅度的增長,該方法體系正良好運作著。下表是螺旋法能夠解決的各種問題:
| 用戶需求不夠充分 | 允許并鼓勵用戶反饋信息 |
| 溝通不明 | 在項目早期就消除嚴(yán)重的曲解 |
| 剛性的體系 | 開發(fā)首先關(guān)注重要的業(yè)務(wù)和問題 |
| 主觀臆斷 | 通過測試和質(zhì)量保證,作出客觀的評估 |
| 潛在的不一致 | 在項目早期就發(fā)現(xiàn)不一致問題 |
| 糟糕的測試和質(zhì)量保證 | 從第一次迭代就開始測試 |
| 采用瀑布法開發(fā) | 在早期就找出并關(guān)注風(fēng)險 |
缺點。
1)采用螺旋模型需要具有相當(dāng)豐富的風(fēng)險評估經(jīng)驗和專門知識,在風(fēng)險較大的項目開發(fā)中,如果未能夠及時標(biāo)識風(fēng)險,勢必造成重大損失。
2)過多的迭代次數(shù)會增加開發(fā)成本,延遲提交時間。
總結(jié)
- 上一篇: 国外出差见闻之印度
- 下一篇: C语言 ,嵌入式 ,数据结构 面试题目(