项目管理基础:项目的生存周期模型
? ? ? ? ? ? ?
?
1、概念介紹
軟件生命周期模型是一個包含軟件產(chǎn)品開發(fā)、運(yùn)行和維護(hù)中有關(guān)過程、活動和任務(wù)的框架,它覆蓋了系統(tǒng)從需求定義到系統(tǒng)使用的結(jié)束階段。
特點(diǎn):
描述了開發(fā)的主要階段
定義了每個階段需要完成的任務(wù)和過程
規(guī)范了每個階段的輸入輸出
提供了一個標(biāo)準(zhǔn)框架,可以把必要的活動映射到該框架中去。
2、項(xiàng)目生命周期模型分類
比較常用的有瀑布模型、演化模型、螺旋模型、噴泉模型。
2.1 瀑布模型(Waterfall Model)
瀑布模型將項(xiàng)目的生存周期各個活動規(guī)定為按照線性順序連接成若干個階段的模型。包括需求分析、設(shè)計、編碼工作、測試、項(xiàng)目運(yùn)維。依照由前至后、相互銜接的固定順序,類似瀑布流水,逐級下落。
? ? ? ? ? ? ?
?
適用范圍:文檔型為驅(qū)動、適合那些項(xiàng)目需求十分明確的軟件項(xiàng)目。
優(yōu)點(diǎn):
容易理解、管理成本較低、強(qiáng)調(diào)開發(fā)階段性早期計劃及需求調(diào)研和產(chǎn)品測試。
缺點(diǎn):
客戶需要完整、準(zhǔn)確的表達(dá)自己的需求
在開始的前三個階段很難評估真正的進(jìn)度狀態(tài)
項(xiàng)目收尾階段可能會出現(xiàn)大量的集成測試工作
對項(xiàng)目的風(fēng)險控制能力較弱
2.2 增量模型(Incremental Model)
增量模型融合了瀑布模型的基本成分和原型實(shí)現(xiàn)的迭代特征,它假設(shè)可以將需求分為一系列增量產(chǎn)品,每個增量可以分別開發(fā)。增量模型強(qiáng)調(diào)每一個增量都是一個可操作的階段產(chǎn)品。
? ? ? ? ? ? ?
?
優(yōu)點(diǎn):融合了瀑布模型的優(yōu)點(diǎn)。另外還有以下幾個優(yōu)點(diǎn)
第一個可交付版本所需的成本和時間很少
開發(fā)由增量表示小系統(tǒng)所承擔(dān)的風(fēng)險會小很多
因?yàn)檩^快時間發(fā)布了第一個版本,可以減少客戶對需求的變更。
運(yùn)行增量投資,也就是項(xiàng)目開始時,可以僅對一個或兩個增量投入成本。
缺點(diǎn):
如果對客戶的變更要求規(guī)劃不得當(dāng),產(chǎn)生的初始增量可能會造成后來的增量不穩(wěn)定
前期需求沒有思考全面可能會造成一些增量需要重新開發(fā)、發(fā)布。
管理發(fā)生的成本、進(jìn)度和配置的復(fù)雜性會增加項(xiàng)目的成本。
2.3、演化模型(Evonlutionary Model)
演化模型主要針對事先不能完整定義需求的項(xiàng)目開發(fā),是在一個比較初期的原型基礎(chǔ)上,根據(jù)客戶在確認(rèn)原型的過程中提出意見和建議,從而逐漸改進(jìn)原型,直到客戶滿意。
優(yōu)點(diǎn):
任何功能一旦開發(fā)后,就可以進(jìn)入測試環(huán)節(jié),以便驗(yàn)證是否符合產(chǎn)品需求,可以幫助引導(dǎo)出高質(zhì)量的產(chǎn)品要求。
缺點(diǎn):
如果控制不當(dāng)讓客戶接觸到開發(fā)當(dāng)中不穩(wěn)定的功能,可能會對客戶以及開發(fā)人員帶來負(fù)面影響。
2.4、螺旋模型(Spiral Model)
螺旋模型可以看作是瀑布模型和演化模型的結(jié)合體,并加入了風(fēng)險分析。
? ? ? ? ? ? ?
?
螺旋周期:
制定計劃:確定項(xiàng)目的目標(biāo),選定實(shí)施方案,明確項(xiàng)目開發(fā)的限制條件。
風(fēng)險分析:分析所選方案、識別風(fēng)險、消除風(fēng)險。
實(shí)施工程:開發(fā)階段、階段驗(yàn)證產(chǎn)品的質(zhì)量。
客戶評估:客戶評估開發(fā)產(chǎn)品的質(zhì)量,提出改進(jìn)建議,建立下一個周期的開發(fā)計劃。
螺旋模型強(qiáng)調(diào)風(fēng)險分析、讓每個開發(fā)人員和客戶對每個演化層出現(xiàn)的風(fēng)險有所了解,然后做出應(yīng)有的反應(yīng)。特別適合龐大、復(fù)雜且有高風(fēng)險的項(xiàng)目。
優(yōu)點(diǎn):
支持客戶需求的動態(tài)變化,為客戶參與軟件開發(fā)的所有關(guān)鍵決策提供了方便,有助于提高軟件的適應(yīng)能力。
也為項(xiàng)目經(jīng)理及時調(diào)整管理決策提供了很好的支持,從而降低了軟件開發(fā)的風(fēng)險。
缺點(diǎn):
需要開發(fā)人員具備相當(dāng)豐富的風(fēng)險評估經(jīng)驗(yàn)和專門知識
過多的迭代可能會增加開發(fā)成本、延遲交付時間。
2.5、噴泉模型(Water Foundtain Model)
噴泉模型以客戶需求為動力,以對象作為驅(qū)動模型,適合面向?qū)ο蟮拈_發(fā)方法。
? ? ? ? ? ? ?
?
優(yōu)點(diǎn):
噴泉模型各個階段沒有明顯的界限,開發(fā)人員可以同步進(jìn)行,從而提高了軟件的開發(fā)效率。
缺點(diǎn):
噴泉模型各個開發(fā)階段是重疊的,開發(fā)過程會需要大量開發(fā)人員、不利于項(xiàng)目的管理。
IT技術(shù)分享社區(qū)
個人博客網(wǎng)站:https://programmerblog.xyz
文章推薦程序員效率:畫流程圖常用的工具程序員效率:整理常用的在線筆記軟件遠(yuǎn)程辦公:常用的遠(yuǎn)程協(xié)助軟件,你都知道嗎?51單片機(jī)程序下載、ISP及串口基礎(chǔ)知識硬件:斷路器、接觸器、繼電器基礎(chǔ)知識
?
總結(jié)
以上是生活随笔為你收集整理的项目管理基础:项目的生存周期模型的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JavaScript入门到精通,需要掌握
- 下一篇: oracle出错如何备份数据,备份ora