RUP(Rational Unified Process)筆記整理
RUP,統一軟件開發過程是一種麵向對象且基於網絡的程序開發方法論。
RUP的思路:Implementing BestPractices
·迭代式開發
在軟件開發的早期階段就想完全、準確的捕獲用戶的需求幾乎是不可能的。實際上,我們經常遇到的問題是需求在整個軟件開發工程中經常會改變。迭代式開發允許在每次迭代過程中需求可能有變化,通過不斷細化來加深對問題的理解。
迭代式開發的優點:降低風險;
得到早期用戶反饋;
持續性的測試和集成;
適應變更;
提高複用性。
迭代式開發示意圖:
·需求管理
需求管理是一種用於查找、記錄、組織和跟蹤係統需求變更的係統化方法。包括:提取、組織係統的功能和約束,並將他們寫成文檔;估計需求的變化並評估它們會產生的影響;跟蹤需求的實現。
RUP的開發活動是用例驅動的(Use case-driven)、他強調要在透徹理解提交的係統將如何被使用的基礎上建造係統。用力和腳本的表示方法用於編排從需求捕獲到測試的過程流,並提供從開發到提交係統的可跟蹤的線索。
·使用構件架構
對體係結構進行自下而上的設計、實現和測試;用一種係統化的做法來定義好的體係結構;采用定義明確的接口來使得變更有彈性;采用現成的和通過逆向工程得到的構件;用高級別的用例來驅動;易於直觀上的理解。
·可視化建模
RUP往往和UML聯係在一起,對軟件係統建立可視化模型幫助人們提供管理軟件複雜性的能力。RUP告訴我們如何可視化的對軟件係統建模,獲取有關體係結構於組件的結構和行為信息。保證了設計和實現上的一致性,保證沒有歧義的溝通。
·檢驗質量
在RUP中軟件質量評估不再是事後進行或單獨小組進行的分離活動,而是內建於過程中的所有活動,這樣可以及早發現軟件中的缺陷。
方法:為每個關鍵模塊創建測試用例並測試,從而保證所有的需求被正確的實現。不可接受的應用性能和不能接受的可靠性對一個軟件係統的影響同等重要。眼見軟件的可靠性,例如:內存泄露、性能瓶頸。對每一次迭代進行測試。
·控製變更
迭代式開發中如果沒有嚴格的控製和協調,整個軟件開發過程很快就陷入混亂之中,RUP描述了如何控製、跟蹤、監控、修改以確保成功的迭代開發。RUP通過在軟件開發過程中控製、追蹤和監控項目的所有變更,從而啟動每次迭代;為每個開發者建立安卻的工作空間;對不同工作間的改動提供隔離機製,控製所有的軟件製品:模型、代碼、文檔等。
RUP的基本特征:
·迭代式增量開發
將軟件開發分為一係列的迭代過程,在每個迭代過程中逐步增加信息、進行細化;根據具體情況決定迭代的次數、每次迭代延續的時間以及迭代工作流;每次迭代都選擇目前風險影響最大的用例進行,以分解和降低風險。
·用例(UseCase-driven)驅動
采用用例來捕獲對目標係統的功能需求;采用用例來驅動軟件的整個開發過程,保證需求的可跟蹤性,確保係統的所有功能均被實現;將用戶關心的軟件係統的業務功能模型和開發人員關心的目標軟件係統的功能實體模型結合起來,提供一種貫穿整個軟件生存周期的開發方式,使得軟件開發的各個階段的工作自然、一致的協調起來。
·以軟件體係結構為中心
強調在開發過程的早期,識別出與軟件體係結構緊密相關的用例,並通過對這些用例的分析、設計、實現和測試,形成體係結構框架;在後續階段中對已形成的體係結構框架進行不斷細化,最終實現整個係統;在開發國政的早期形成良好的軟件體係結構,有利於對係統的理解、支持重用和有效的組織軟件開發。
最後更新:2017-04-03 12:53:51