在前期需求明確的情況下盡量采用瀑布模型或改進(jìn)型的瀑布模型;
在用戶無信息系統(tǒng)使用經(jīng)驗(yàn),需求分析人員技能不足情況下一定要借助原型;
在不確定性因素很多,很多東西前面無法計(jì)劃情況下盡量采用增量迭代和螺旋模型;
在需求不穩(wěn)定情況下盡量采用增量迭代模型;
在資金和成本無法一次到位情況下可以采用增量模型,軟件產(chǎn)品分多個(gè)版本進(jìn)行發(fā)布;
對(duì)于完全多個(gè)獨(dú)立功能開發(fā)可以在需求階段就分功能并行,但每個(gè)功能內(nèi)都應(yīng)該遵循瀑布模型;
對(duì)于全新系統(tǒng)的開發(fā)必須在總體設(shè)計(jì)完成后再開始增量或并行;
對(duì)于編碼人員經(jīng)驗(yàn)較少情況下建議不要采用敏捷或迭代等生命周期模型;
增量,迭代和原型可以綜合使用,但每一次增量或迭代都必須有明確的交付和出口準(zhǔn)則。
瀑布模型:(70年代的模型)
描述:略
優(yōu)點(diǎn):突出了需求的重要性
缺點(diǎn):需求不可能完成
螺旋模型:(80年代的模型)
描述:開發(fā)最初由一系列風(fēng)險(xiǎn)驅(qū)動(dòng)原型驅(qū)動(dòng)的,然后用一個(gè)瀑布模型完成系統(tǒng)
優(yōu)點(diǎn):可以解決需求問題
缺點(diǎn):時(shí)間太長
在前期需求明確的情況下盡量采用瀑布模型或改進(jìn)型的瀑布模型;
在用戶無信息系統(tǒng)使用經(jīng)驗(yàn),需求分析人員技能不足情況下一定要借助原型;
在不確定性因素很多,很多東西前面無法計(jì)劃情況下盡量采用增量迭代和螺旋模型;
在需求不穩(wěn)定情況下盡量采用增量迭代模型;
在資金和成本無法一次到位情況下可以采用增量模型,軟件產(chǎn)品分多個(gè)版本進(jìn)行發(fā)布;
對(duì)于完全多個(gè)獨(dú)立功能開發(fā)可以在需求階段就分功能并行,但每個(gè)功能內(nèi)都應(yīng)該遵循瀑布模型;
對(duì)于全新系統(tǒng)的開發(fā)必須在總體設(shè)計(jì)完成后再開始增量或并行;
對(duì)于編碼人員經(jīng)驗(yàn)較少情況下建議不要采用敏捷或迭代等生命周期模型;
增量,迭代和原型可以綜合使用,但每一次增量或迭代都必須有明確的交付和出口準(zhǔn)則。
瀑布模型:(70年代的模型)
描述:略
優(yōu)點(diǎn):突出了需求的重要性
缺點(diǎn):需求不可能完成
螺旋模型:(80年代的模型)
描述:開發(fā)最初由一系列風(fēng)險(xiǎn)驅(qū)動(dòng)原型驅(qū)動(dòng)的,然后用一個(gè)瀑布模型完成系統(tǒng)
優(yōu)點(diǎn):可以解決需求問題
缺點(diǎn):時(shí)間太長
迭代模型:(90年代的模型)
迭代式模型是RUP(Rational Unified Process,統(tǒng)一軟件開發(fā)過程,統(tǒng)一軟件過程)推薦的周期模型
描述:采用4階段和disciplines來組織軟件開發(fā)的生命周期模型
階段:先啟階段,精化階段,構(gòu)建階段,產(chǎn)品化階段
Discipline:由邏輯上相關(guān)的活動(dòng)組成,定義了如何組織活動(dòng)來得到一些artifact
特點(diǎn):以前的模型,都是階段和軟件開發(fā)活動(dòng)緊密相連的,而迭代模型,階段和軟件活動(dòng)時(shí)分離的
優(yōu)點(diǎn):更好的適應(yīng)需求管理,更好的范圍管理。缺點(diǎn):(有待補(bǔ)充)迭代式模型是RUP(Rational Unified Process,統(tǒng)一軟件開發(fā)過程,統(tǒng)一軟件過程)推薦的周期模型
描述:采用4階段和disciplines來組織軟件開發(fā)的生命周期模型
階段:先啟階段,精化階段,構(gòu)建階段,產(chǎn)品化階段
Discipline:由邏輯上相關(guān)的活動(dòng)組成,定義了如何組織活動(dòng)來得到一些artifact
特點(diǎn):以前的模型,都是階段和軟件開發(fā)活動(dòng)緊密相連的,而迭代模型,階段和軟件活動(dòng)時(shí)分離的
優(yōu)點(diǎn):更好的適應(yīng)需求管理,更好的范圍管理。缺點(diǎn):(有待補(bǔ)充)