本科課程:軟件工程-軟件構件與軟件重用(二)

一、統一過程模型(RUP)

適用於大規模軟件的開發
四個階段:初始階段、細化階段、構造階段、交付階段
每個階段:里程碑,階段評估

初始階段: 明確項目目標
產出:1、項目藍圖
2、初始用例模型、初始項目術語表
3、初始風險評估、項目計劃
4、業務模型、若干原型
里程碑:明確生命週期的目標

細化階段: 明確設計方案

產出:1、用例模型、需求模型
2、軟件體系結構描述、設計模型、軟件原型
3、風險評估、成本估算、進度時間的審覈標準
4、
里程碑:

構造階段: 開發軟件產品
採用:增量/迭代模型
建立:並行開發機制
產出:1、特定平臺上的繼承產品
2、用戶手冊
3、

交付階段: 達成讀評估
產出:1、達成度評估報告
2、達成的產品
3、用戶文檔
里程碑:產品的發佈

RUP的特點:
1、採用二位結構
2、採用UML工具和方法
3、以用例驅動,以體系結構爲核心
4、集成分階段、增量、迭代、風險、面向對象過程模型的優點

優點:迭代的優勢

  • 減小風險
    可基於rational提供的工具完成活動

二、敏捷開發過程模型

敏捷開發過程更加強調增量迭代過程來快速構件軟件

敏捷開發流程:
1、市場需求、創意規劃
2、全局設計、功能設計、增量迭代設計
3、增量開發
4、增量成品軟件

學術觀點:
1、總目標是儘可能早的並持續地交付有價值的軟件是客戶滿意
2、應對用戶需求的頻繁變化

常用的方法:
1、極限編程(XP)
2、敏捷統一過程模型(AUP)
3、自適應軟件方法(ASD)
4、動態系統開發方法(DSDM)
5、特性驅動開發(FDD)
6、敏捷迭代的增量和過程(SCKDM)

極限編程

學術觀點:
1、溝通、簡明、反饋、勇氣。即通過充分的溝通,使產品的設計儘可能地明瞭。
2、12個實踐技巧:
開發人員的編程技巧
採用構件思想→進行簡單設計→結對互助編程→測試驅動開發(TDD)
小組的實踐方法
編碼規範代碼共享→穩定的進度→隱喻(在代碼仲體現未來的整體)→持續集成
項目整體的實踐方式
團隊協作 + 整體規劃 → 不間斷的小版本發佈 → 客戶測試

敏捷統一過程模型(AUP)

自適應軟件開發(ASD)

基於複雜系統混沌理論的指導高速度、高變化軟件項目開發的框架

精益軟件卡法方法(Lean)

主要觀點:延遲決策、儘早交付

動態系統開發方法

它討論了包括組織結構、項目管理、估算、工具環境、測試、配置管理、風險管理、重用等各個方面的內容

特性驅動開發

以功能特性爲開發粒度通過構件及時地構建軟件

敏捷迭代的增量和過程

發佈產品的重要性高於一切,團隊根據小版本軟件進行決策。

軟件工程方法論:
重量級方法:CMM能力成熟度模型、RUP統一軟件開發過程
輕量級方法:XP極限編程、ASD敏捷軟件開發

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