一、來源
二、簡介
1、含義:
RUP(Rational Unified Process,統一軟件開發過程)是一個面向對象且基於網絡的程序開發方法論。
2、本質:
RUP是風險驅動的、基於Use Case技術的、以架構爲中心的、迭代的、可配置的軟件開發流程。我們可以針對RUP所規定出的流程,進行客戶化定製,定製出適合自己祖師的使用的軟件流程。RUP是一個流程定義平臺,是一個流程框架。
3、與UML關係:
UML爲RUP開發的基礎,兩者都爲面向對象的主要成果,兩者相輔相成。
4、與面向對象技術關係:
RUP爲面向對象技術的一種開發方法論,RUP依附於面向對象技術而存在。
三、主要內容
1、4個開發過程:
初始階段:在系統開發之前爲系統建立商業案例並確定項目的邊界,該階段關注整個項目進行中的業務和需求方面的主要風險。
細化階段:分析問題領域,建立健全的體系結構基礎,編制項目計劃,淘汰項目中最高風險的元素。在該階段必須理解整個系統,對體系結構做出決策,同時爲項目建立支持環境。
構造階段:所有剩餘的構件和應用程序功能被開發並集成爲產品,所有的功能被詳細的測試。
交付階段:確保軟件對最終用戶是可用的。
2、6大經驗:
迭代式開發:該開發形式是爲在開發過程中用戶的需求經常變更而實行的,在迭代式開發中允許在每次迭代過程中需求發生變化,通過不斷細化來加深對問題的理解。
管理需求:客戶需求是一個連續的過程,RUP描述瞭如何提取、組織系統的功能和約束條件並將其文檔,化,例如用例和腳本則爲較爲有效的方法。
體系結構:RUP描述瞭如何設計一個有彈性、能適應變化的、易於理解的、有助於重用的軟件體系結構。
可視化建模:在這個過程中RUP與UML是聯繫在一起的,這樣可以幫助人們提供管理軟件複雜性的能力。
驗證軟件質量:在RUP中將軟件質量驗證放到了軟件生命週期中。
控制軟件變更:RUP描述瞭如何控制、跟蹤、監控、修改以確保成功的迭代開發,防止其他來自其他空間的變更。
二維開發模型:RUP軟件開發生命週期以橫軸爲時間組織、縱軸爲內容組織的二維軟件開發模型
3、9大工作流:
6個核心過程工作流:商業建模、需求、分析和設計、實現、測試、部署
3大核心支持工作流:配置和變更管理、項目管理、環境
4、10大要素:
開發前景
達成計劃
標識和減小風險
分配和跟蹤任務
檢查商業理由
設計組件構架
對產品進行增量式的構建和測試
驗證和評價結果
管理和控制變化
提供用戶支持
四、影響
1、有利:提高了團隊生產力,確保了全體成員共享相同的知識基礎。建立了簡潔和清晰的過程結構,爲開發過程提供較大的通用性。
2、不足:RUP知識一個開發過程,沒有涵蓋軟件過程的全部內容;不支持多項目的開發結構,降低了開發組織內大範圍實現重用的可能性。
附:思維導圖