- 軟件生存週期定義
軟件生存週期模型是描述軟件開發過程中各種活動如何執行的模型。軟件生存週期模型確立了軟件開發和演繹中各階段的次序限制以及各階段或機動的準則,確立開發過程所遵守的規定和限制,便於各種活動的協調,便於各種人員的有效通信,有利於活動重用,有利於活動管理.
- 軟件生存週期的類型:
瀑布模型
螺旋模型
快速原型模型
增量模型
噴泉模型
統一過程
① 快速原型模型
快速原型是快速建立起來的可以在計算機上運行的程序,它所能完成的功能往往是最終產品能完成的功能的一個子集。
快速原型模型如圖所示。
快速原型模型的優點
(1)有助於滿足用戶的真實需求。
(2)原型系統已經通過與用戶的交互而得到驗證,據此產生的規格說明文檔能夠正確地描述用戶需求。
(3)軟件產品的開發基本上是按線性順序進行。
(4)因爲規格說明文檔正確地描述了用戶需求,因此,在開發過程的後續階段不會因爲發現規格說明文檔的錯誤而進行較大的返工。
(5)開發人員通過建立原型系統已經學到了許多東西,因此,在設計和編碼階段發生錯誤的可能性也比較小,這自然減少了在後續階段需要改正前面階段所犯錯誤的可能性。
(6)快速原型的突出特點是“快速”。開發人員應該儘可能快地建造出原型系統,以加速軟件開發過程,節約軟件開發成本。
原型的用途是獲知用戶的真正需求,一旦需求確定了,原型可以拋棄,當然也可以在原型的基礎上進行開發。
②增量模型
增量模型也稱爲漸增模型,是Mills等於1980年提出來的。
使用增量模型開發軟件時,把軟件產品作爲一系列的增量構件來設計、編碼、集成和測試。
每個構件由多個相互作用的模塊構成,並且能夠完成特定的功能。
增量模型的優點
(1)能在較短時間內向用戶提交可完成一些有用的工作產品,即從第1個構件交付之日起,用戶就能做一些有用的工作。
(2)逐步增加產品的功能可以使用戶有較充裕的時間學習和適應新產品,從而減少一個全新的軟件可能給用戶組織帶來的衝擊。
(3)項目失敗的風險較低,雖然在某些增量構件中可能遇到一些問題,但其他增量構件將能夠成功地交付給客戶。
(4)優先級最高的服務首先交付,然後再將其他增量構件逐次集成進來。因此,最重要的系統服務將接受最多的測試。
每個增量構件應當實現某種系統功能,因此增量構件
的開發可以採用瀑布模型的方式,如圖所示
。
③噴泉模型
噴泉模型是典型的面向對象生命週期模型。
“噴泉”一詞體現了迭代和無間隙特性。圖中代表不同階段的圓圈相互重疊,這明確表示兩個活動之間存在重疊
④統一過程
由Booch、Jacobson及Rumbaugh提出,統一過程模型如圖所示
。
統一過程的階段
統一過程有4個階段,分別是初始階段、細化階段、構造階段和移交階段。
① 初始階段。初始階段主要關注項目計劃和風險評估,其目的是確定是否值得開發目標信息系統。
② 細化階段。細化階段關心定義系統的總體框架,其目標是:細化初始需求(用況)、細化體系結構、監控風險並細化它們的優先級、細化業務案例以及制訂項目管理計劃。
③構造階段。構造階段是建立系統,構造信息系統的第1個具有操作質量的版本,以能夠交付給客戶進行b測試的版本結束,有時稱爲測試版本。
④ 移交階段。移交階段包含b測試時期,以發佈完整的系統而終止,其目標是確保信息系統真正滿足客戶的需求。
⑤瀑布模型
瀑布型:
1思想
從製作時間上按工序把問題簡化 ,將功能實現與製作分開便於分工協作
- 優點
1 .奠定了軟件工程方法的基礎
2流水依賴 便於分工協作
3 推遲物理實現,易於修改文檔,有複審質量保證
- 不足
與用戶見面晚,成功率低
- 適用範圍
適用與系統要求明確的系統 ,各種應用軟件的開發均可使用
開發方法: 遵循軟件生命期的劃分,明確規定每個階段的任務,上已階段完成確定的任務後就產生一定格式的文檔給下一階段不同階段的任務,一般有不同級別的軟件人員承擔.
開發特點 : 1時間的順序性和依賴性
2.推遲實現的觀點
3 . 質量保證的觀點
⑥ 螺旋模型