關鍵字:比較
自從1997年正式發布UML以后,大量商用UML建模CASE工具粉墨登場。這樣為我們提供了許多的選擇,同時也要求我們在選擇正確的UML建模工具以更好地適應我們業務和軟件應用程序開發需求,達到最好的投資回報率(ROI)方面做大量的調查。
在這篇文章中,我們將比較兩款CASE工具的UML建模能力、雙向工程特性和項目生命周期支持:Sparx Systems的Enterprise Architect(EA)專業版V.3.51和IBM Rational的Rational Rose企業版V.2002。
為什么我們需要UML建模
CASE工具今天,系統的構建變得越來越復雜,UML建模CASE工具為項目相關人員(如,項目經理,分析員,設計者,構架師,開發者等)提供了許多的好處。
UML建模CASE工具允許我們應用規范的面向對象分析和設計的方法與理論,遠離糾纏不清的源代碼,達到構建和設計變得更直觀,更容易地理解與修改的層次。在大型項目中,使用CASE工具更重要。通過使用CASE工具:
* 通過用例模型,業務/系統分析可以捕獲到業務/系統需求。
* 設計者/構架師所作的設計模型能在不同層次的同一層內清晰表達對象或子系統之間的交互(典型的UML圖如類圖和交互圖)。
* 開發者能快速地將模型轉變為一個可運行的應用程序,尋找類和方法的子集,以及理解它們如何交互。
模型被看作是藍圖和構建系統的最終手冊。同樣,建模也就是一種從高層并以適當的形式來考慮一個設計的表述和理解它怎樣運行的能力。 出于這些動機,UML CASE工具以及對應的方法論為我們提供了一種因系統太復雜而不能理解下層源代碼的描述系統的方法,同時允許我們更快更便宜地開發正確的軟件解決方案。
當然,要考慮CASE工具在UML建模能力,項目生命周期支持,雙向工程,數據建模,性能,價格,可支持性,易使用性等方面的不同。這篇文章將探索Rose與EA在UML建模,項目生命周期支持以及雙向工程領域的相同點和不同點,希望能幫助你在你的項目中選擇正確的工具。 UML建模特性 UML標準由三部分組成,即:構造塊(如對象,類,消息),構造塊間的關系(如關聯,泛化)和圖(如,活動圖)。UML profile使用UML可擴展性機制擴展標準UML符號,即,構造型,標注值和約束。
EA專業版V.3.51和Rational Rose V.2002.05都支持UML 1.4 九種圖中的八種標準UML圖 - 用例圖,類圖,序列圖,協作圖,活動圖,狀態圖,實現圖(組件)圖,部署圖,和幾種UML Profiles. 如果需要,對象圖可以使用協作圖來創建。不同點僅僅存在于創建UML圖(表1)和擴展UML profiles時所支持的一些特性。
UML圖 功能 EA Rose 用例圖 建立描述領域的邊界 Yes No.但是,一些工作使用文本或包。 序列 協作 序列圖與協作圖之間的相互轉化 No Yes 序列 更改消息的范圍 Yes No 序列 顯示消息層次號碼 Yes No 序列協作 在瀏覽器中創建對象 Yes UML Profiles EA Rose 業務流程建模 支持Eriksson-Penker業務流程建模擴展 使用UML活動圖 業務建模 No Yes 數據建模 Yes Yes 用戶體驗建模 Yes No Web建模 Yes Yes Yes No XML DTD No Yes表2. EA和Rose的UML Profile比較雙向工程 雙向工程包括正向工程 - 從模型到代碼 和反向工程?。拇a到模型。一旦設計完成后,使用模型(設計模型和數據模型)信息能夠生成特定編程語言的源代碼或者數據庫的DDL腳本。當開發人員添加/更改代碼或數據庫實現時,設計和數據模型能夠通過雙向工程同步代碼或DDL腳本以保持一致。
表3顯示了EA和Rose雙向工程的特征。
語言 EA Rose ANSI C++ Yes Yes Visual C++ No Yes VB6 Yes Yes Java Yes Yes C# Yes No VB.NET Yes No Delphi Yes No.DelphiLink.html第三方附加項 J2EE/EJB No Yes CORBA No Yes Ada83, Ada95 No Yes Database Yes. 從數據模型到DDL腳本的正向工程。ODBC數據源的反向工程 Yes.DB2,Oracle, SQL 92, SQL Server, Sybase COM No Yes. 只是反向工程 Web應用程序 No Yes
原文轉自:http://www.anti-gravitydesign.com