軟體專案過程模型與規劃

2021-09-19 04:01:38 字數 3009 閱讀 1745

一、簡單題

1、簡述瀑布模型、增量模型、螺旋模型(含原型方法),並分析優缺點。

瀑布模型:

瀑布模型是乙個比較線性的專案開發方法。軟體生命週期被分成下圖的多個階段。專案程序像瀑布一樣在各個階段流動,並按順序完成各個階段。

優點:定義了軟體開發基本流程與活動:

(1)為專案提供了按階段劃分的檢查點。

(2)當前一階段完成後,只需要去關注後續階段。

(3)可在迭代模型中應用瀑布模型。

(4)它提供了乙個模板,這個模板使得分析、設計、編碼、測試和支援的方法可以在該模板下有乙個共同的指導

缺點(1)依賴問題:  前面需求模糊,後面工作不明確而導致最終產品和需求不符

(2) 容錯問題: 在後期發現需求問題,工作量難接受

(3)資源調配問題: 知識技能需求不同 ,人員數量要求不同

增量模型

在增量模型中,產品不斷地實現新的增量(新的功能/特徵),並且對每個增量進行設計,實現與測試。當產品實現所有要求時,就可以作為成品交付。

優點:(1)將待開發的軟體系統模組化,可以分批次地提交軟體產品,使使用者可以及時了解軟體專案的進展

(2)以元件為單位進行開發降低了軟體開發的風險。乙個開發周期內的錯誤不會影響到整個軟體系統。

(3)開發順序靈活。開發人員可以對元件的實現順序進行優先順序排序,先完成需求穩定的核心元件。當元件的優先順序發生變化時,還能及時地對實現順序進行調整。

缺點:(1)在專案早期開發可能有所變化 ,對於開發人員的要求較高,需有乙個高素質的專案管理者和乙個高技術水平的開發團隊

(2)要求待開發的軟體系統可以被模組化。如果待開發的軟體系統很難被模組化,那麼將會給增量開發帶來很多麻煩。

螺旋模型

螺旋模型,採用一種週期性的方法來進行系統開發。通常螺旋模型由四個階段組成:制定計畫、風險分析、實施工程和客戶評估。螺旋模型中,發布的第乙個模型甚至可能是沒有任何產出的,可能僅僅是紙上談兵的乙個目標,但是隨著一次次的交付,每乙個版本都會朝著固定的目標邁進,最終得到乙個更加完善的版本。它尤其重視風險分析階段,特別適用於龐大並且複雜,非常高風險的專案。

(1)設計上的靈活性,可以在專案的各個階段進行變更。

(2)以小的分段來構建大型系統,使成本計算變得簡單容易。

(3)客戶始終參與每個階段的開發,保證了專案不偏離正確方向以及專案的可控性。

(4)隨著專案推進,客戶始終掌握專案的最新資訊 , 從而他或她能夠和管理層有效地互動。

(5)客戶認可這種公司內部的開發方式帶來的良好的溝通和高質量的產品。

缺點:很難讓使用者確信這種演化方法的結果是可以控制的。建設週期長,而軟體技術發展比較快,所以經常出現軟體開發完畢後,和當前的技術水平有了較大的差距,無法滿足當前使用者需求。

2、簡述統一過程三大特點,與物件導向的方法有什麼關係?(1)用例驅動(use case driven)

用例驅動意味著開發團隊使用從**和測試中採集的需求的用例。

(2)以架構為中心

軟體架構提供所有開發的中心點

(3)迭代和增量

迭代和增量方法允許我們從不完整的知識開始開發,每個迭代都是瀑布的工作流程,,每個迭代產品在增量(製品是可執行的),利於及時交付使用並反饋。並且有著固定的迭代週期(等量的人月),利於量化團隊/個人生產率。

關係:統一軟體開發過程是乙個物件導向且基於網路的程式開發方**。

3、簡述統一過程四個階段的劃分準則是什麼?每個階段關鍵的里程碑是什麼?

統一過程的四個階段:初始階段,細化階段,構造階段,交付階段。

里程碑:

(1)初始階段結束時是第乙個重要的里程碑:生命週期目標(lifecycle objective)里程碑。生命週期目標里程碑評價專案基本的生存能力。

(2) 細化階段結束時第二個重要的里程碑:生命週期結構(lifecyclearchitecture)里程碑。生命週期結構里程碑為系統的結構建立了管理基準並使專案小組能夠在構建階段中進行衡量。此刻,要檢驗詳細的系統目標和範圍、結構的選擇以及主要風險的解決方案。

(3)構建階段結束時是第三個重要的里程碑:初始功能(initial operational)里程碑。初始功能里程碑決定了產品是否可以在測試環境中進行部署。此刻,要確定軟體、環境、使用者是否可以開始系統的運作。此時的產品版本也常被稱為「beta」版。

(4) 在交付階段的終點是第四個里程碑:產品發布(product release)里程碑。此時,要確定目標是否實現,是否應該開始另乙個開發周期。在一些情況下這個里程碑可能與下乙個週期的初始階段的結束重合。

4、軟體企業為什麼能按固定節奏生產、固定週期發布軟體產品?它給企業專案管理帶來哪些好處?

rup中的每個階段可以進一步分解為迭代。乙個迭代是乙個完整的開發迴圈,產生乙個可執行的產品版本,是最終產品的乙個子集,它增量式地發展,從乙個迭代過程到另乙個迭代過程到成為最終的系統。企業通過採用up過程,可以按固定節奏生產、固定週期發布軟體產品。

這樣帶來的好處是:提高了團隊生產力,在迭代的開發過程、需求管理、基於元件的體系結構、視覺化軟體建模、驗證軟體質量及控制軟體變更等方面,針對所有關鍵的開發活動為企業提供了必要的準則、模板和工具指導,並確保全體成員共享相同的知識基礎。它建立了簡潔和清晰的過程結構,為開發過程提供較大的通用性。

系統分析 軟體專案過程模型與規劃

2 簡述統一過程三大特點,與物件導向的方法有什麼關係?3 簡述統一過程四個階段的劃分準則是什麼?每個階段關鍵的里程碑是什麼?4 軟體企業為什麼能按固定節奏生產 固定週期發布軟體產品?它給企業專案管理帶來哪些好處?實踐題 不需要提交 大作業準備 瀑布模型 增量模型 螺旋模型up的三大特點 1 軟體開發...

系統分析與設計 軟體專案過程模型與規劃

簡述瀑布模型 增量模型 螺旋模型 含原型方法 的優缺點 瀑布模型 優點 降低軟體開發的複雜程度,提高軟體開發過程的透明性,提高軟體開發過程的可管理性 推遲軟體實現,強調在軟體實現前必須進行分析和設計工作 以專案的階段評審和文件控制為手段有效地對整個開發過程進行指導,保證了階段之間的正確銜接,能夠及時...

系統分析與設計 軟體專案過程模型與規劃

從專案特點 風險特徵 人力資源利用角度思考 增量模型 螺旋模型 初始階段 生命週期目標 lifecycle objective 里程碑。生命週期目標里程碑評價專案基本的生存能力。細化階段 生命週期結構 lifecycle architecture 里程碑。生命週期結構里程碑為系統的結構建立了管理基準...