模型的提出——編碼修正模型、瀑布模型、增量模型、演化模型、統一過(guò)程模型、MSF模型
?
1.軟件生存周期模型是指一個(gè)包括軟件產(chǎn)品開(kāi)發(fā)、運行和維護有關(guān)過(guò)程、活動(dòng)和任務(wù)的框架,其中這些過(guò)程、活動(dòng)和任務(wù)覆蓋了從該系統的需求定義到系統的使用終止。P53
?
2.所有模型的內在基本特征.P53
?
描述了開(kāi)發(fā)的主要階段
定義了每一個(gè)階段要完成的主要過(guò)程和活動(dòng)
規范了每一個(gè)階段的輸入和輸出(提交物)
提供了一個(gè)框架,可以把必要的活動(dòng)映射到該框架中
?
3.傳統軟件工程過(guò)程模型的主要代表是編碼修正模型、瀑布模型、增量模型、演化模型和螺旋模型。IBM公司的統一過(guò)程(簡(jiǎn)稱(chēng)RUP)、敏捷過(guò)程(AP)和微軟解決方案(MSF)等則是現代軟件工程模型的主要代表。P53
?
4.編碼修正模型是所有模型中最為古老的也是最簡(jiǎn)單的模型,該模型將軟件開(kāi)發(fā)分為編碼和測試兩個(gè)活動(dòng)。該模型特點(diǎn)如下:P54
?
最適用于很小且簡(jiǎn)單的項目
成本可能很低
易于使用,人員只需要很少的專(zhuān)業(yè)知識,任何寫(xiě)過(guò)程序的人都可以使用
對于一些非常小的、開(kāi)發(fā)完后就會(huì )很快丟棄的軟件可以采用
對于規模稍大的項目,采用這種模型是很危險的。由于缺乏預先的計劃并且通常伴隨著(zhù)不正規的開(kāi)發(fā)方式,容易導致代碼碎片,交付的產(chǎn)品重量也很難保證。且因為設計沒(méi)有很好地文檔化,因此代碼維護困難。
?
5.瀑布模型是典型的軟/硬件開(kāi)發(fā)模型。包括需求、設計、編碼、測試、運行與維護幾個(gè)階段。每一個(gè)階段交付產(chǎn)品為:軟件需求規格說(shuō)明書(shū)、系統設計說(shuō)明書(shū)、實(shí)際代碼和測試用例、最終產(chǎn)品、產(chǎn)品升級等。該模型主要特點(diǎn)如下:P54~P55
?
每一階段都以驗證/確認活動(dòng)作為結束,其目的是盡可能多地消除本階段產(chǎn)品中存在的問(wèn)題。
在隨后的階段里,盡可能對前面階段的產(chǎn)品進(jìn)行迭代。
?
6.瀑布模型的優(yōu)缺點(diǎn)。P55
?
? ?優(yōu)點(diǎn):
?
容易理解、管理成本低。
它不提供有形的軟件成果,除非到生存周期結束時(shí)。但文檔產(chǎn)生并提供了貫穿生命期的進(jìn)展過(guò)程的充分說(shuō)明。允許基線(xiàn)和配置早期接受控制。前一步作為下一步被認可的、文檔化的基線(xiàn)。
? ? 缺點(diǎn):
?
客戶(hù)必須能夠完整、正確和清晰地表達其需要。但在系統開(kāi)發(fā)中經(jīng)常發(fā)現用戶(hù)與開(kāi)發(fā)人員溝通存在巨大差異、用戶(hù)提出含糊需求又被開(kāi)發(fā)人員隨意解釋?zhuān)约坝脩?hù)需求會(huì )隨著(zhù)時(shí)間推移不斷變化等問(wèn)題。
可能要花費更多的時(shí)間來(lái)建立一些用處不大的文檔。
在開(kāi)始的兩個(gè)或者三個(gè)階段,很難評估真正的進(jìn)度狀態(tài)。
在一個(gè)項目的早期階段,過(guò)分強調了基線(xiàn)和里程碑處的文檔。
開(kāi)發(fā)人員一開(kāi)始就必須理解其應用。
當接近項目結束時(shí),出現了大量的集成和測試工作。
直到項目結束之前,都不能演示系統的能力。
?
7.V 模型是瀑布模型的一個(gè)變形,它在每一個(gè)環(huán)節都強調了測試,同時(shí)又在每一個(gè)環(huán)節都做到了對實(shí)現者和測試者的分離。V模型被廣泛應用于軟件外包中。
?
8.增量模型(增量生存周期模型)是由瀑布模型演變而來(lái)的,它是對瀑布模型的精化。該模型有一個(gè)假設,即需求可以分段,成為一系列增量產(chǎn)品,對每一增量可以分別地開(kāi)發(fā)。在開(kāi)始開(kāi)發(fā)時(shí),需求就很明確,并且產(chǎn)品還可以被適當地分解為一些獨立的、可交付的軟件,成為構造增量。在開(kāi)發(fā)中,期望盡快交付其中的一些增量產(chǎn)品。P57~P58
?
9.增量模型的優(yōu)缺點(diǎn)。P59
?
? ? 優(yōu)點(diǎn):
?
第一個(gè)可交付版本所需要的成本和時(shí)間是很少的。
開(kāi)發(fā)由增量表示的小系統所承擔的風(fēng)險是不大的。
由于很快發(fā)布了第一個(gè)版本,因此可以減少用戶(hù)需求的變更。
允許增量投資,即在項目開(kāi)始時(shí),可以?xún)H對一個(gè)或兩個(gè)增量投資。
? ? 缺點(diǎn):
?
如果沒(méi)有對用戶(hù)的變更要求進(jìn)行規劃,那么產(chǎn)生的初始增量可能會(huì )造成后來(lái)增量的不穩定。
如果需求不像早起考慮到的那樣穩定和完整,那么一些增量就可能需要重新開(kāi)發(fā)、重新發(fā)布。
管理發(fā)生的成本、進(jìn)度和配置的復雜性,可能會(huì )超出組織的能力。
?
10.演化模型顯式地把增量模型擴展到需求階段。為了第二個(gè)構造增量,使用了第一個(gè)構造增量來(lái)精化需求。
?
?
11.演化模型的優(yōu)缺點(diǎn)。P60
?
? ? 優(yōu)點(diǎn):
?
在需求不能予以規范時(shí),可以使用這一演化模型。
用戶(hù)可以通過(guò)運行系統的實(shí)踐,對需求進(jìn)行改進(jìn)。
與瀑布模型相比,需要更多用戶(hù)/獲取方的參與。
? ? 缺點(diǎn):
?
演化模型的使用仍然處于初步探索階段,因此具有較大的風(fēng)險,需要有效的管理。
該方法的使用很容易成為不編寫(xiě)需求或設計文檔的接口,即使需求或實(shí)際可以很清晰的描述。
用戶(hù)/獲取方不理解方法的自然屬性,因此當結果不夠理想時(shí),可能產(chǎn)生抱怨。
?
12.螺旋模型中開(kāi)發(fā)工作是迭代進(jìn)行的,即只要完成了開(kāi)發(fā)的一個(gè)迭代過(guò)程,另一個(gè)迭代過(guò)程就開(kāi)始了。P60
?
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。
Copyright ? 2009-2022 56dr.com. All Rights Reserved. 特網(wǎng)科技 特網(wǎng)云 版權所有 特網(wǎng)科技 粵ICP備16109289號
域名注冊服務(wù)機構:阿里云計算有限公司(萬(wàn)網(wǎng)) 域名服務(wù)機構:煙臺帝思普網(wǎng)絡(luò )科技有限公司(DNSPod) CDN服務(wù):阿里云計算有限公司 百度云 中國互聯(lián)網(wǎng)舉報中心 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證B2
建議您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流瀏覽器瀏覽本網(wǎng)站