軟件工程推進方法第5章課件_第1頁
軟件工程推進方法第5章課件_第2頁
軟件工程推進方法第5章課件_第3頁
軟件工程推進方法第5章課件_第4頁
軟件工程推進方法第5章課件_第5頁
已閱讀5頁,還剩29頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

軟件工程推進方法

講稿李超成都信息工程學院

2005.6軟件工程推進方法講稿李超成都信息工程第五章軟件開發模型與開發方法

軟件開發模型是軟件開發的全部過程、活動、任務和管理的結構框架。軟件開發模型可以直觀地描述一個組織在開發某項軟件過程中的全部活動,以及在開發過程中的人員組織管理,工作順序和任務管理,軟件質量保證等全部內容。對軟件開發模型的選用直接影響軟件開發周期和人員使用,直接影響到軟件開發的生產性和軟件的質量。第五章軟件開發模型與開發方法軟第五章軟件開發模型與開發方法

軟件開發模型與軟件工程軟件開發模型是將軟件開發中的主要活動細分為:

系統需求分析程序設計程序編碼測試運行維護系統設計人員管理項目管理第五章軟件開發模型與開發方法軟件開發模型與軟件工程系統第五章軟件開發模型與開發方法

軟件開發模型與軟件工程

根據不同的應用系統合理地組織軟件開發階段,由不同的軟件開發階段的組織關系確定了軟件的開發模型。軟件開發模型就是用一定的流程將軟件開發的各個主要環節連接起來,并可用規范的方式操作全過程,如同工廠的生產線。

第五章軟件開發模型與開發方法軟件開發模型與軟件工程第五章軟件開發模型與開發方法

軟件開發模型與軟件工程常見的軟件開發模型有:瀑布(線性)模型,演化模型(原型開發模型),螺旋模型,XP開發模型、PSP開發模型,快速原型模型,形式化描述模型等。由于現在還沒有任何一種方法能夠解決軟件危機中的所有問題,所以在軟件開發的各個階段采用綜合治理的方法,軟件開發模型直接影響軟件開發的周期和軟件質量,是軟件開發的組織管理形式,是軟件工程的最重要內容。

第五章軟件開發模型與開發方法軟件開發模型與軟件工程第五章軟件開發模型與開發方法

瀑布式模型瀑布模型概念需求分析系統設計合同需求規格說明程序設計編程測試運行及維護隱含要求及需求確認導出要求?當事人驗證追蹤:前向……后向……需求管理:修改需求瀑布模型概要圖第五章軟件開發模型與開發方法瀑布式模型需求分析系統設第五章軟件開發模型與開發方法

瀑布式模型瀑布模型特點

瀑布模型是早期出現的軟件工程模型(又稱為線性模型),它在出現后一直在大量使用,很多軟件組織為了有效地使用瀑布開發模型實施開發,制定了軟件開發規范和一些標準。其中明確了各個階段應交付的產品,下一階段如何使用上一階段的成果物,為嚴格控制軟件開發進度,保證軟件質量,成功地開發軟件創造了有力條件。瀑布模型在支持結構化開發,控制軟件開發的復雜性,促進軟件工程化等方面起到了顯著的作用。但是,它太理想化,太單純。

第五章軟件開發模型與開發方法瀑布式模型第五章軟件開發模型與開發方法

瀑布式模型瀑布模型特點瀑布模型中軟件開發的各階段之間具有如下特性:從上一階段承接的成果物作為本階段的工作對象;對上一階段成果物實施本階段的活動;給出本階段的成果物,作為下一階段的輸入;對本階段的工作進行評審,若本階段的工作得到確認,則繼續下階段的工作,否則返回前一階段或更前一階段。

第五章軟件開發模型與開發方法瀑布式模型第五章軟件開發模型與開發方法

瀑布式模型瀑布模型特點

該模型最重要的缺點是缺乏靈活性,無法通過開發活動完善本來就不太確定的軟件需求,開發客戶真正需要的軟件。

使用瀑布式開發需要客戶和開發人員對軟件需求進行充分地交流、溝通、充分地發掘需求,使軟件需求盡可能滿足客戶的需求,否則會造成需求不確定的開發,會給以后的開發帶來大量的返工。經驗表明,早期的需求分析中的錯誤,要改正它所需要的開銷等于實現該錯誤所需開銷的100倍到1000倍。系統需求錯誤對軟件開發影響最大,帶來的損失最大。隨著軟件開發項目規模的增大,該模型對于需求不能完全確定的軟件開發項目將產生很大的風險。

第五章軟件開發模型與開發方法瀑布式模型第五章軟件開發模型與開發方法

演化模型

在項目開發的初始階段,如果人們對軟件的需求認識往往不夠清楚,開發人員和客戶都應當隨著開發不斷的深入,不斷提高對系統的認識,很難做到軟件開發一次成功,重復開發在所難免。演化模型就是為減少對軟件認識的差異,先建立試驗核心系統,交給客戶使用,探索可行性,對其進行評估,再進一步提出精化系統,增強軟件能力需求,或用此核心系統作為系統原型與客戶共同探討目標軟件的需求,充分發掘客戶對軟件系統的全部需求,然后再進行深入開發。第五章軟件開發模型與開發方法演化模型第五章軟件開發模型與開發方法

演化模型用戶評價原型生產產品演化開發模型系統需求分析系統設計程序設計程序編碼測試修改系統需求系統設計程序設計程序編碼測試運行維護第五章軟件開發模型與開發方法演化模型用戶評價原型演化開第五章軟件開發模型與開發方法

演化模型演化開發又稱為原型開發。主要有三種形式:一種是客戶界面原型,主要描述系統輸入、輸出界面,是客戶了解系統操作或與系統的對話方式。另一種是可以運行的原型,它實現開發軟件所要求功能的一些重要子集。再一種是可用程序原型,它基本實現重要部分或全部功能集合,但是還需要進行改進才能完全適應客戶工作。

第五章軟件開發模型與開發方法演化模型第五章軟件開發模型與開發方法

螺旋模型

螺旋模型是綜合了瀑布模型和演化模型的優點,加入兩者所忽視的風險分析而建立的一種軟件開發模型。軟件風險主要有技術風險,人力風險,資源風險,開發時間或進度風險,投資風險和市場風險等。任何軟件開發項目中都包含各種風險,不同的項目其風險有大有小。在進行一項軟件開發時,需要先進行風險評估,而一般風險評估都是系統分析人員和項目經理根據已往的工作經驗初步作出的,其準確性很難保證。對于開發項目規模越大,軟件開發中各種風險因素和不確定性就越大,項目評估準確性越小,所冒的風險越大。為減少項目開發中的風險,或將項目風險控制在可以操作的范圍內,可以減少因為項目風險評估不準確帶來的損壞,最有效的方式是采用螺旋模型,多次開發,在每次開發前評估風險,及時識別風險,分析風險,最終控制損失。第五章軟件開發模型與開發方法螺旋模型第五章軟件開發模型與開發方法

螺旋模型螺旋式開發的一個完整階段由制定計劃、風險分析、實施工程、客戶評估四個主要活動組成。沿螺旋線自內向外每旋轉一圈,開發就完成四個主要活動,產生一個新版本。螺旋模型螺旋模型第五章軟件開發模型與開發方法螺旋模型螺旋模型螺旋模型第五章軟件開發模型與開發方法

XP開發模型

XP極端編程(eXtremeProgramming)是一種要求首先開發出最重要的特性,迅速向客戶提供所需的功能,它通過非常短的迭代周期來應對需求的變化,隨著代碼的演進通過重構來滿足新的需求,從而使整個項目失敗的風險減到最小的開發方法。XP的生命周期包括4個基本活動:編碼、測試、聆聽和設計。第五章軟件開發模型與開發方法XP開發模型第五章軟件開發模型與開發方法

XP開發模型XP項目的狀態變遷圖第五章軟件開發模型與開發方法XP開發模型XP項第五章軟件開發模型與開發方法

XP開發模型XP的特點是:XP是一種開發紀律,以簡單性、交流、反饋和勇氣為基本宗旨;XP適合規模小、進度緊、需求變化大、質量要求嚴的項目。XP以最高的效率和質量來解決客戶目前的問題,以最大的靈活性和最小的代價來滿足客戶未來的需求,XP在平衡短期和長期利益之間做了巧妙的選擇。第五章軟件開發模型與開發方法XP開發模型軟件工程推進方法

講稿李超成都信息工程學院

2005.6軟件工程推進方法講稿李超成都信息工程第五章軟件開發模型與開發方法

軟件開發模型是軟件開發的全部過程、活動、任務和管理的結構框架。軟件開發模型可以直觀地描述一個組織在開發某項軟件過程中的全部活動,以及在開發過程中的人員組織管理,工作順序和任務管理,軟件質量保證等全部內容。對軟件開發模型的選用直接影響軟件開發周期和人員使用,直接影響到軟件開發的生產性和軟件的質量。第五章軟件開發模型與開發方法軟第五章軟件開發模型與開發方法

軟件開發模型與軟件工程軟件開發模型是將軟件開發中的主要活動細分為:

系統需求分析程序設計程序編碼測試運行維護系統設計人員管理項目管理第五章軟件開發模型與開發方法軟件開發模型與軟件工程系統第五章軟件開發模型與開發方法

軟件開發模型與軟件工程

根據不同的應用系統合理地組織軟件開發階段,由不同的軟件開發階段的組織關系確定了軟件的開發模型。軟件開發模型就是用一定的流程將軟件開發的各個主要環節連接起來,并可用規范的方式操作全過程,如同工廠的生產線。

第五章軟件開發模型與開發方法軟件開發模型與軟件工程第五章軟件開發模型與開發方法

軟件開發模型與軟件工程常見的軟件開發模型有:瀑布(線性)模型,演化模型(原型開發模型),螺旋模型,XP開發模型、PSP開發模型,快速原型模型,形式化描述模型等。由于現在還沒有任何一種方法能夠解決軟件危機中的所有問題,所以在軟件開發的各個階段采用綜合治理的方法,軟件開發模型直接影響軟件開發的周期和軟件質量,是軟件開發的組織管理形式,是軟件工程的最重要內容。

第五章軟件開發模型與開發方法軟件開發模型與軟件工程第五章軟件開發模型與開發方法

瀑布式模型瀑布模型概念需求分析系統設計合同需求規格說明程序設計編程測試運行及維護隱含要求及需求確認導出要求?當事人驗證追蹤:前向……后向……需求管理:修改需求瀑布模型概要圖第五章軟件開發模型與開發方法瀑布式模型需求分析系統設第五章軟件開發模型與開發方法

瀑布式模型瀑布模型特點

瀑布模型是早期出現的軟件工程模型(又稱為線性模型),它在出現后一直在大量使用,很多軟件組織為了有效地使用瀑布開發模型實施開發,制定了軟件開發規范和一些標準。其中明確了各個階段應交付的產品,下一階段如何使用上一階段的成果物,為嚴格控制軟件開發進度,保證軟件質量,成功地開發軟件創造了有力條件。瀑布模型在支持結構化開發,控制軟件開發的復雜性,促進軟件工程化等方面起到了顯著的作用。但是,它太理想化,太單純。

第五章軟件開發模型與開發方法瀑布式模型第五章軟件開發模型與開發方法

瀑布式模型瀑布模型特點瀑布模型中軟件開發的各階段之間具有如下特性:從上一階段承接的成果物作為本階段的工作對象;對上一階段成果物實施本階段的活動;給出本階段的成果物,作為下一階段的輸入;對本階段的工作進行評審,若本階段的工作得到確認,則繼續下階段的工作,否則返回前一階段或更前一階段。

第五章軟件開發模型與開發方法瀑布式模型第五章軟件開發模型與開發方法

瀑布式模型瀑布模型特點

該模型最重要的缺點是缺乏靈活性,無法通過開發活動完善本來就不太確定的軟件需求,開發客戶真正需要的軟件。

使用瀑布式開發需要客戶和開發人員對軟件需求進行充分地交流、溝通、充分地發掘需求,使軟件需求盡可能滿足客戶的需求,否則會造成需求不確定的開發,會給以后的開發帶來大量的返工。經驗表明,早期的需求分析中的錯誤,要改正它所需要的開銷等于實現該錯誤所需開銷的100倍到1000倍。系統需求錯誤對軟件開發影響最大,帶來的損失最大。隨著軟件開發項目規模的增大,該模型對于需求不能完全確定的軟件開發項目將產生很大的風險。

第五章軟件開發模型與開發方法瀑布式模型第五章軟件開發模型與開發方法

演化模型

在項目開發的初始階段,如果人們對軟件的需求認識往往不夠清楚,開發人員和客戶都應當隨著開發不斷的深入,不斷提高對系統的認識,很難做到軟件開發一次成功,重復開發在所難免。演化模型就是為減少對軟件認識的差異,先建立試驗核心系統,交給客戶使用,探索可行性,對其進行評估,再進一步提出精化系統,增強軟件能力需求,或用此核心系統作為系統原型與客戶共同探討目標軟件的需求,充分發掘客戶對軟件系統的全部需求,然后再進行深入開發。第五章軟件開發模型與開發方法演化模型第五章軟件開發模型與開發方法

演化模型用戶評價原型生產產品演化開發模型系統需求分析系統設計程序設計程序編碼測試修改系統需求系統設計程序設計程序編碼測試運行維護第五章軟件開發模型與開發方法演化模型用戶評價原型演化開第五章軟件開發模型與開發方法

演化模型演化開發又稱為原型開發。主要有三種形式:一種是客戶界面原型,主要描述系統輸入、輸出界面,是客戶了解系統操作或與系統的對話方式。另一種是可以運行的原型,它實現開發軟件所要求功能的一些重要子集。再一種是可用程序原型,它基本實現重要部分或全部功能集合,但是還需要進行改進才能完全適應客戶工作。

第五章軟件開發模型與開發方法演化模型第五章軟件開發模型與開發方法

螺旋模型

螺旋模型是綜合了瀑布模型和演化模型的優點,加入兩者所忽視的風險分析而建立的一種軟件開發模型。軟件風險主要有技術風險,人力風險,資源風險,開發時間或進度風險,投資風險和市場風險等。任何軟件開發項目中都包含各種風險,不同的項目其風險有大有小。在進行一項軟件開發時,需要先進行風險評估,而一般風險評估都是系統分析人員和項目經理根據已往的工作經驗初步作出的,其準確性很難保證。對于開發項目規模越大,軟件開發中各種風險因素和不確定性就越大,項目評估準確性越小,所冒的風險越大。為減少項目開發中的風險,或將項目風險控制在可以操作的范圍內,可以減少因為項目風險評估不準確帶來的損壞,最有效的方

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論