資源描述:
《第二章軟件生存周期及開發(fā)模型》由會員上傳分享,免費在線閱讀,更多相關內容在行業(yè)資料-天天文庫。
1、第二章軟件生存周期及開發(fā)模型軟件生存周期(SoftwareLifeCycle):軟件產品或軟件系統(tǒng)從設計、投入使用到被淘汰的全過程。軟件生存期的階段劃分(1)可行性研究與計劃(2)需求分析(3)總體設計上游(4)詳細設計(5)實現(xiàn)(6)集成測試(7)確認測試下游(8)使用和維護只考慮編寫程序涉及整個軟件生存周期擴展到軟件工作的范圍軟件開發(fā)模型:是軟件開發(fā)全部過程、活動和任務的結構框架。它能直觀表達軟件開發(fā)全過程,明確規(guī)定要完成的主要活動、任務和開發(fā)策略。軟件開發(fā)模型軟件開發(fā)模型也常稱為:軟件過程模型軟件生存期模型
2、軟件工程范型瀑布模型(線形順序模型)可行性研究與計劃需求分析設計編碼運行維護測試定義階段開發(fā)階段維護階段瀑布模型的特點1.階段間具有順序性和依賴性。2.推遲實現(xiàn)的觀點。3.每個階段必須完成規(guī)定的文檔;每個階段結束前完成文檔審查,及早改正錯誤。瀑布模型的選擇條件1.開發(fā)階段需求很少有變化2.分析設計人員對應用領域很熟悉3.低風險項目4.用戶使用環(huán)境很穩(wěn)定5.用戶除提出需求外,很少參與開發(fā)工作瀑布模型的缺點1.開發(fā)階段不能并行,更不能倒置2.容易出現(xiàn)問題堆積,導致重大錯誤。增量模型(遞增模型)先完成一個系統(tǒng)子集的開發(fā)
3、,再按同樣的開發(fā)步驟增加功能(系統(tǒng)子集),如此遞增下去直至滿足全部系統(tǒng)需求。系統(tǒng)的總體設計在初始子集設計階段就應作出設想。分析增量模型設計編碼測試分析設計編碼測試分析設計編碼測試分析設計編碼測試增量2增量3增量n增量1交付客戶增量2交付客戶增量3交付客戶增量n交付客戶日歷時間…..增量模型的特點1.任務或功能模塊驅動,可以分階段提交產品。2.多個任務單構成總任務。增量模型的選擇條件1.需求多變,可以分階段提交產品。2.分析設計人員對應用領域不熟悉,難以一步到位。3.用戶參與整個軟件開發(fā)工程中4.軟件公司自己有較好
4、的類庫或構件庫原型模型用戶測試運行原型建造/修改原型聽取用戶意見采用原型模型的軟件生存周期分析定義系統(tǒng)需求生成原型系統(tǒng)設計程序設計編碼測試運行和維護原型化含原型化的軟件生存期原型模型的特點可以得到比較良好的需求定義,容易適應需求的變化。有利于開發(fā)與培訓的同步。開發(fā)費用低、開發(fā)周期短、維護容易且對用戶更友好。原型模型的選擇條件對所開發(fā)的領域比較熟悉而且有快速的原型開發(fā)工具項目招投標時,可以以原型模型作為軟件的開發(fā)模型進行產品移植或升級時,或對已有產品原型進行客戶化工作時,原型模型是非常適合的。4.1噴泉模型進一步開
5、發(fā)實現(xiàn)和集成階段運行狀態(tài)實現(xiàn)階段面向對象設計階段計劃階段面向對象分析階段需求階段維護期噴泉模型特點主要用于支持面向對象開發(fā)過程體現(xiàn)了軟件創(chuàng)建所固有的迭代和無間隙的特征基于構件的開發(fā)模型屬于演化式開發(fā)或迭代式開發(fā),其開發(fā)過程:客戶的交流,獲得問題的定義標識基本類計劃與風險分析類的復用或重新開發(fā)構造系統(tǒng)用戶評估基于構件的開發(fā)模型特點:采用了先進的面向對象技術。基于構件庫的開發(fā),這是軟件復用的基礎,開發(fā)速度快。融合了螺旋模型特征支持軟件開發(fā)的迭代方法,是一種演化型的開發(fā)技術?;跇嫾拈_發(fā)模型思考題?“圖書館信息系統(tǒng)”
6、的開發(fā)選用什么樣的開發(fā)模型合適