系統分析與設計作業(三):軟件模型與統一過程

系統分析與設計作業(三):軟件模型與統一過程

簡答題

  • 簡述瀑布模型、增量模型、螺旋模型(含原型方法),並分析優缺點(從項目特點、風險特徵、人力資源利用角度思考)

1. 瀑布模型:
瀑布模型的示例圖如下所示:

瀑布模型在大方向上可分爲三個階段:定義階段、開發階段、維護階段,細分的話有六個部分:軟件計劃、需求分析、軟件設計、程序編碼、軟件測試、運行維護,並規定了它們自上而下、相互銜接的固定次序,如同瀑布流水,逐級下落。
瀑布模型的過程是從上一項活動接收該項活動的工作對象作爲輸入,利用這一輸入實施該項活動應完成的內容給出該項活動的工作成果,並作爲輸出傳給下一項活動。同時評審該項活動的實施,若確認,則繼續下一項活動;否則返回前面,甚至更前面的活動

優點:
(1)爲項目提供了按階段劃分的檢查點。
(2)當前一階段完成後,只需要去關注後續階段。
(3)可在迭代模型中應用瀑布模型
(4)它提供了一個模板,這個模板使得分析、設計、編碼、測試和支持的方法可以在該模板下有一個共同的指導

缺點:
(1)各個階段的劃分完全固定,階段之間產生大量的文檔,極大地增加了工作量。
(2)由於開發模型是線性的,用戶只有等到整個過程的末期才能見到開發成果,從而增加了開發風險。
(3)通過過多的強制完成日期和里程碑來跟蹤各個項目階段。
(4)瀑布模型的突出缺點是不適應用戶需求的變化。

2. 增量模型:
增量模型的示例圖下圖:

增量模型是把待開發的軟件系統模塊化,將每個模塊作爲一個增量組件,從而分批次地分析、設計、編碼和測試這些增量組件。運用增量模型的軟件開發過程是遞增式的過程。相對於瀑布模型而言,採用增量模型進行開發,開發人員不需要一次性地把整個軟件產品提交給用戶,而是可以分批次進行提交。

優點:
(1)第一個可交付版本所需要的成本和時間是較少的,從而可減少開發由增量表示的小系統承擔的風險
(2)由於很快發佈第一個版本,因此可以減少用戶需求的變更
(3)允許增量投資,即在項目開始時可以僅對一個或兩個增量投資

缺點:
(1)如果沒有對用戶的變更要求進行規劃,那麼產生的初始增量可能會造成後來增量的不穩定
(2)如果需求不像早期思考的那樣穩定和完整,那麼一些增量就可能需要重新開發,重新發布
(3)由於進度和配置的複雜性,可能會增大管理成本,超出組織的能力

3. 螺旋模型:
螺旋模型的示例圖如下:

螺旋模型是一種演化軟件開發過程模型,它兼顧了快速原型的迭代的特徵以及瀑布模型的系統化與嚴格監控。螺旋模型最大的特點在於引入了其他模型不具備的風險分析,使軟件在無法排除重大風險時有機會停止,以減小損失。同時,在每個迭代階段構建原型是螺旋模型用以減小風險的途徑。螺旋模型更適合大型的昂貴的系統級的軟件應用。

優點:
(1)設計上的靈活性,可以在項目的各個階段進行變更。
(2)以小的分段來構建大型系統,使成本計算變得簡單容易。
(3)客戶始終參與每個階段的開發,保證了項目不偏離正確方向以及項目的可控性。
(4)隨着項目推進,客戶始終掌握項目的最新信息 , 從而他或她能夠和管理層有效地交互。
(5)客戶認可這種公司內部的開發方式帶來的良好的溝通和高質量的產品。

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

  • 簡述統一過程三大特點,與面向對象的方法有什麼關係?

三大特點:
(1)軟件開發是一個迭代過程。
(2)軟件開發是由Use Case驅動的。
(3)軟件開發是以架構設計爲中心的。

統一軟件過程是一個面向對象且基於網絡的程序開發方法論,它與面向對象的軟件過程相似,都是理解性的軟件工程工具,爲了把開發中面向過程的方面(例如定義的階段,技術和實踐)和其他開發的組件(例如文檔,模型,手冊以及代碼等等)整合在一個統一的框架內。

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

RUP中的軟件生命週期在時間上被分解爲四個順序的階段,分別是:初始階段、細化階段、構造階段和交付階段。每個階段結束於一個主要的里程碑;每個階段本質上是兩個里程碑之間的時間跨度。在每個階段的結尾執行一次評估以確定這個階段的目標是否已經滿足。如果評估結果令人滿意的話,可以允許項目進入下一個階段。

初始階段:
在這個階段中所關注的是整個項目進行中的業務和需求方面的主要風險。初始階段結束時是第一個重要的里程碑:生命週期目標里程碑

細化階段:
細化階段的目標是分析問題領域,建立健全的體系結構基礎,編制項目計劃,淘汰項目中最高風險的元素。細化階段結束時第二個重要的里程碑:生命週期結構里程碑。

構造階段:
構建階段是一個製造過程,其重點放在管理資源及控制運作以優化成本、進度和質量。構建階段結束時是第三個重要的里程碑:初始功能里程碑。

交付階段:
交付階段的重點是確保軟件對最終用戶是可用的。在交付階段的終點是第四個里程碑:產品發佈里程碑。

  • 軟件企業爲什麼能按固定節奏生產、固定週期發佈軟件產品?它給企業項目管理帶來哪些好處?

因爲企業內部有一套成熟的軟件開發、項目迭代的項目管理方法。企業內部的多年的管理經驗沉澱,能幫助項目開發人員充分應對項目範圍、費用、時間、質量、人力資源、風險、採購等方面的分析與管理,能夠確保項目按照預定的範圍、成本、進度和質量順利完成。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章