Posted on 2009-08-20 00:16
JAVA的世界 閱讀(2227)
評論(0) 編輯 收藏 所屬分類:
項目生命周期和組織
1. 瀑布模型
瀑布模型是一個經典的軟件生命周期模型,一般將軟件開發分為:可行性分析(計劃)、需求分析、軟件設計(概要設計、詳細設計)、編碼(含單元測試)、測試、運行維護等幾個階段,瀑布模型中的每項開發活動具有以下特點:
l 從上一項開發活動接受該項活動的工作成果作為輸入;
l 利用這一輸入,實施該項活動應完成的工作內容;
l 給出該項活動的工作成果,作為輸出傳給下一項開發活動;
l 該項活動的實施工作成果進行評審,若其工作成果得到確認,則繼續進行下一開發活動,否則返回前一項,甚至更前項。盡量減少多個階段間的反復,以較小的費用來開發軟軟件。
2. 螺旋模型
螺旋模型是一個演化軟件過程模型,將原型實現的迭代特征與線性順序(瀑布)模型中的控制結合起來。使軟件的增量版本的快速開發成為可能。在這個模型中,軟件開發式一系列的增量發布。在早期的迭代中,發布的增量可能是一個之上的模型或原型,在以后的迭代中,被開發系統的更完善版本逐步產生。
螺旋模型的開發過程具有周期性重復的螺旋線狀。四個象限分別標志每個周期的四個階段:制定計劃、風險分析、實施工程和客戶評估。螺旋模型強調了風險分析,特別是用于龐大而復雜的、高風險系統。
3. 迭代模型
大多數傳統的項目生命周期中,階段是以其中的主要活動命名的:需求分析、設計、編碼、測試。傳統的軟件開發工作大部分強調一個序列化過程,其中一個活動需要在另一個開始之前完成。但是在迭代式的過程中,每個階段都包括不同比例的所有活動。
迭代式開發模型從組織管理的角度將整個軟件開發生命周期分析四個階段:初始、細化、構造、移交,可進一步描述為周期(Cycle)、階段(Phase)、迭代(Iteration)。核心工作流從技術角度描述迭代模型的靜態組成部分,包括:業務建模、需求獲取、分析與設計、實現、測試、部署,幾乎每個部分在所有的時間段內均有工作量,只是大小不同而已。
初始階段:系統地闡述項目的范圍,選擇可行的系統構架,計劃和準備業務案例。
細化階段:細化構想,細化過程和基礎設施,細化構架并選擇構件。
構造階段:資源管理和控制,過程最優化,完成構件的開發并依據評價標準進行測試,根據構想的驗收標準評估產品的發布。
移交階段:同步并使開發的構造增量集成到一致的實施基線中,根據完整的構想和需求集的驗收標準評估與實施有關的工程活動的實施基線。