系統分析與設計——作業三

系統分析與設計——作業三

簡答題

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

從項目特點、風險特徵、人力資源利用角度思考

  • 瀑布模型:
    • 優點:
      • 降低軟件開發的複雜程度,提高軟件開發過程的透明性,開發過程的可管理性
      • 提供了開發過程的模板,有利於開發過程人員的組織、管理等,同時模型中階段評審和文檔控制等也使得分析、編碼、測試和維護等有一個統一的理論指導
      • 有利於開發方法和開發工具的研究和使用,提高軟件的質量和軟件開發的效率
    • 缺點:
      • 開發過程線性化,一般不可逆轉
      • 模型階段化明確固定,階段之間產生較多文檔,這也增加了工作量
      • 缺乏靈活性和可變性,由於需求的可變和不可預見性,會導致後期需求變更時成本非常高
      • 模型風險控制能力較差
      • 軟件開發的結果往往要到後期才能瞭解和明確
  • 增量模型:
    • 優點:
      • 人員分配靈活,剛開始時不用投入大量人力資源
      • 將待開發的軟件系統模塊化,分批次提交產品,使得客戶可以及時瞭解整個項目的進展,從而提高客戶對系統的信心
      • 以組件爲單位的開發進程使得風險得到一定的控制,提高了系統的穩定性和可維護性
    • 缺點:
      • 建立初始模型時,作爲增量基礎的基本業務服務的確定有一定難度
      • 若待開發的軟件系統很難被模塊化將會極大地增大工作量和提高開發難度
      • 並行開發的各個組件可能遇到不能集成或者難以集成的問題
  • 螺旋模型(含原型方法):
    • 優點:
      • 設計具備靈活性,可在項目各個階段進行變更
      • 客戶參與度高,及時滿足客戶的需求,保證了項目的正確開發方向
      • 以小的分段來構建大型系統,使成本計算變得簡單容易
      • 引入了風險分析,使得風險得到一定程度上的控制
    • 缺點:
      • 建設週期長,而軟件技術發展比較快,所以經常出現軟件開發完畢後,和當前的技術水平有了較大的差距,無法滿足當前用戶需求
      • 採用螺旋模型需要具有相當豐富的風險評估經驗和專門知識,在風險較大的項目開發中,如果未能夠及時標識風險,勢必造成重大損失
      • 過多的迭代會增加開發成本

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

  • 三大特點:
    • 以用戶爲中心(描述用戶使用產品的故事)
    • 以架構爲重心(軟件產品分解的領域最佳實踐)
    • 以風險驅動(早期暴露風險)
  • 與面向對象方法的關係:
    • 統一過程是基於UML、以構架爲中心、用例和風險驅動相結合的迭代增量過程,是當下流行構造面向對象系統的迭代軟件開發過程,它將軟件開發過程要素和軟件工件要素整合在統一的軟件工程框架中,是 一個面向對象的程序開發方法論

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

  • 劃分準則:
    • 初始階段:通過對文檔的評審確定用例需求理解正確、項目風險評估 合理、階段計劃可行,確定系統的業務模型,範圍等
      • 里程碑:生命週期目標里程碑
    • 細化階段:軟件體系結構設計完成,高風險業務需求和技術機制得到完善和解決,項目計劃細分等
      • 里程碑:生命週期體系結構里程碑
    • 構造階段:得到可以運行的軟件產品和較爲詳細的用戶手冊,能夠在測試環境裏進行部署運行
      • 里程碑:初始運行能力里程碑
    • 移交階段:確定最終目標是否實現,是否應該開始產品下一個版本的另一個開發週期
      • 里程碑:產品發佈里程碑

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

  • 原因:
    • 因爲通過統一過程,軟甲開發可以被分成四個階段,每個階段的里程碑明確,使得階段性需求易於評估
    • 每個迭代過程都有固定的時長和產品生成,進而爲企業按固定節奏生產、固定週期發佈軟件產品提供了依據
  • 好處:
    • 軟件項目開發更加規範化,便於項目的管理
    • 統一過程的風險驅動特性使得風險評估更加準確,風險更容易被控制
    • 通過統一過程的迭代式增量開發,能夠逐步解決高風險問題
    • 客戶能夠及時瞭解項目的進程,及時根據客戶的需求進行開發調整,提高客戶對項目開發的信心和團隊的信任度
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章