圖2是UML建模過程的一個高層視圖。這是一個迭代遞增的開發過程。使用此方法,不是在項目結束時一次性提交軟件,而是分塊逐次開發和提交。構造階段由多次迭代組成,每一次迭代都包含編碼、測試和集成,所得產品應滿足項目需求的某一子集,或提交給用戶,或純粹是內部提交。每次迭代都包含了軟件生命周期的所有階段。同時,每次迭代都要增加一些新的功能,解決一些新的問題。
因此,首先要做的工作是:選擇一些功能點,然后完成這些功能;之后再選擇別的功能點,如此循環往復。前兩個階段是初始( Inception)和細化 ( Elaboration) 階段。在初始階段,需要考慮項目的效益,并確定項目的范圍。這一階段需要與項目出資方進行討論。在細化階段,需要收集更為詳細的需求,進行高層分析和設計,并為構造階段制定計劃。運用這種迭代開發過程時,還有一些工作(如β測試、性能調試和用戶培訓等)要放到最后的移交階段(Transition)中進行。
事實上,涉及實際建模工作的微過程存在于上述的每次迭代中。迭代式開發是項目成功的重要保證。
2. UML實際建模過程
每次迭代都分為以下幾個階段:
分析階段 建模的目的是捕捉系統的功能需求,分析、提取所開發系統的"客觀世界"領域的類以及描述它們的合作概貌。
設計階段 建模的目的是通過考慮實現環境,將分析階段的模型擴展和轉化為可行的技術實現方案。
實現階段 具體工作就是進行編碼,同時對已構造的模型作相應的修正。
配置階段 通過模型描述所開發系統的軟硬件配置情況。
測試階段 使用前幾個階段所構造的模型來指導和協助測試工作。
在系統開發的不同階段,使用UML為系統建模,可以通過建立不同的模型,從不同的視角,以不同的詳略程度對系統進行描述。下面以一個商業管理信息系統的開發過程為例,具體介紹UML建模的實際過程:
(1) 需求
最初版本商業MIS的正文需求規格說明應當由代表系統最終用戶的人員提供,內容包括系統基本功能需求和對計算機系統的要求。大致描述如下:
· 它是一個商業支持系統;
· 采購員采購所需的商品;
· 保管員將采購的商品登記入庫;
· 調撥員將庫存商品調撥到相應的銷售部門;
· 銷售部門銷售商品;
· 統計部門核算商場經營狀況;
· 系統能運行于通用的技術環境(如Unix、Windows等)中,具有
良好的圖形用戶界面
· 系統容易維護,便于功能擴充 。
由于基于UML的系統開發采取增量和迭代方式,商業MIS的初始版本僅需要完成系統的最基本功能(基本業務),而其他功能的實現(如商品移管、電子訂貨、電子支付、網絡銷售等)則在以后的版本中完成。
(2) 分析
分析的任務是找出系統的所有需求并加以描述,同時建立模型,以定義系統中的關鍵領域類,應由系統用戶和開發人員合作完成。這一階段不要拘泥于設計細節和技術方案。
文章來源于領測軟件測試網 http://www.kjueaiud.com/