軟件生命周期
軟件生命周期:又稱為軟件生存周期其或系統開發周期
-
軟件的生命周期:計划,分析,設計,編碼,測試,運行,維護
計划:確定軟件開發總的目標;給出軟件的功能,性能,可靠性以及借口等方面的設想;研究完成該項目的可行性探討問題的解決方法;對可供使用的資源成本可取得的效益和開發的進度進行估計
需求分析:對開發的軟件進行詳細的定義,由用戶和用戶共同探討決定,那些需求可以滿足,並給予確切的描述,寫出軟件需求說明書。軟件研發的類型不同,需求的來源也不不同;
設計:是整個軟件工程的核心,需要完成軟件設計說明書,分為概要設計(HLD):在設計階段把各項需求轉換為相應的體系結構,每一步是功能明確的模塊。詳細設計(LLD):對每一個模塊要完成的任務進行具體的描述。
運行和維護:將軟件交付給用戶投入正式使用,以后進入維護階段,可能有多種原因需要對它將進行修改,如軟件錯誤,系統軟件升級,增強軟件功能,提高性能等。
軟件的研發流程模型:瀑布模型;迭代模型(螺旋模型:增量迭代和RUP模型:全量迭代);IPD模型
- 瀑布模型:順序開發,一次性將所有的活動都計划好,下一個活動的開始必須依賴於上一個活動的結束。
適用於規模小,需求非常明確,簡單維護性項目。應用最為廣泛的一種模型,最易理解
- 螺旋模型:綜合了瀑布模型和演化/漸增原型方法
分為四個象限:需求定義,風險分析;
分線評估,抉擇方案;
實施;
客戶評估;
- RUP模型(Rational Unified Process):所有工作流在該階段都有體現,就是先做一個整體框架,不斷的細化,迭代
分為兩個維度:橫軸:工作流軸,分為核心工作流(分析設計,實現測試)和輔助工作流(項目管理,配置管理)
縱軸:迭代過程,初始化-》可行性研究:項目邊界-》細化階段:詳細需求分析-》構造階段:在需求穩定的基礎上,做高質量化-》發布:測試並發布
- IPD模型(集成產品流程並發):從整個產品的各個角度出發,不僅針對研發,將開發周期或時間縮短一半。
分組:IPMT:集成產品管理組:負責決策
PDT:產品開發組:負責開發