Rational Rose、PowerDesign、visio這三個軟件的功能與異同

      ROSE是直接從UML發展而誕生的設計工具,它的出現就是爲了對UML建模的支持,ROSE一開始沒有對數據庫端建模的支持,但是在現在的版本中已經加入數據庫建模的功能。ROSE主要是在開發過程中的各種語義、模塊、對象以及流程,狀態等描述比較好,主要體現在能夠從各個方面和角度來分析和設計,使軟件的開發藍圖更清晰,內部結構更加明朗(但是它的結構僅僅對那些對掌握UML的開發人員,也就是說對客戶瞭解系統的功能和流程等並不一定很有效),對系統的代碼框架生成有很好的支持。但對數據庫的開發管理和數據庫端的迭代不是很好。
     PowerDesigner原來是對數據庫建模而發展起來的一種數據庫建模工具。直到7.0版纔開始對面向對象的開發的支持,後來又引入了對UML的支持。但是由於PowerDesigner側重不一樣,所以它對數據庫建模的支持很好,支持了能夠看到的90%左右的數據庫,對UML的建模使用到的各種圖的支持比較滯後。但是在最近得到加強。所以使用它來進行UML開發的並不多,很多人都是用它來作爲數據庫的建模。如果使用UML分析,它的優點是生成代碼時對Sybase的產品PowerBuilder的支持很好(其它UML建模工具則沒有或者需要一定的插件),其他面嚮對象語言如C++,Java,VB,C#等支持也不錯。但是它好像繼承了Sybase公司的一貫傳統,對中國的市場不是很看看好,所以對中文的支持總是有這樣或那樣的問題。
VISIO原來僅僅是一種畫圖工具,能夠用來描述各種圖形(從電路圖到房屋結構圖),也是到VISIO2000纔開始引進軟件分析設計功能到代碼生成的全部功能,它可以說是目前最能夠用圖形方式來表達各種商業圖形用途的工具(對軟件開發中的UML支持僅僅是其中很少的一部分)。它跟微軟的office產品的能夠很好兼容。能夠把圖形直接複製或者內嵌到WORD的文檔中。但是對於代碼的生成更多是支持微軟的產品如VB,VC++,MS SQL Server 等(這也是微軟的傳統),所以它可以說用於圖形語義的描述比較方便,但是用於軟件開發過程的迭代開發則有點牽強。
三種產品各有側重點,各有優缺點,主要是看你的選擇和你的開發方式和環境。


從自己的經驗談談, 我是從目的和支持的角度來談的。
首先談一個目的問題。現在都講究面向對象的分析和設計,俺也就基於oo講起吧。版本就是Rational Suite 2002 VS PowerDesigner 9.5 VS Visio 2002。


第一,Case軟件的一個基本功能就是作圖。
在軟件工程中,我們做的圖大概有以下幾種:系統框圖/樹圖;UML圖;ER圖;Gantt圖;任意流程圖;其他任意的圖表。
系統框圖/樹圖用在比較隨意、沒有形成特定的文檔的時候,在這個環節上面,Visio最好,rose不支持,PowerDesigner支持一點點不好用。


          UML圖中,三者都支持,Rose支持全系列的,而且很容易體現迭代、用例驅動等特性,相關性最好,缺點是圖形質量差,邏輯檢查與控制差,沒有Name和Code的區分(PowerDesigner的特性)不太適合中國人,生成文檔不好也不適合自定義,也沒有設計對象的字典可以快速查找。PowerDesigner 9.5全支持,優點就是圖形質量好,生成的文檔容易自定義,邏輯檢查與控制好,有設計對象的字典可以快速查找和快速在圖形中定位,缺點就是相互之間的銜接稍微麻煩一點,對UML和RUP不熟練的人用了,體現不出來迭代和用例驅動,熟練的人用了還算比較好解決。相比較起來Visio的圖形質量是最好的,但是銜接和相關性也是最差的,邏輯檢查和控制勉強能做一點點。
ER圖不用說了,做得最好的是PowerDesigner,Rose和Visio比較業餘。
Gantt圖用於項目計劃,Visio可以做,其他的都不支持。但是建議你不要用Visio做,還是用Project做好啦。
任意流程圖不被Rose支持,Rose只支持面向業務的活動圖和麪向用例的活動圖,限制比較多。PowerDesigner 9.5支持,用起來還可以。Visio最好,因爲它的圖形質量最好,而且預定義的元素也最多。
Rose不支持其他任意的圖表。PowerDesigner 9.5支持,但是預定義的元素不多。這一點Visio最好,不用多說了。


第二,好的Case軟件支持Case文檔與代碼、Case文檔與數據庫之間的雙向轉換。
Rose文檔能夠與代碼、數據庫雙向轉換,是通過中間插件實現的。PowerDesigner最好,大集成,支持與代碼和數據庫之間的雙向轉換,而且不需要插件。Visio是通過VBA和宏實現的,用起來稍微麻煩,雖然這個技術不難,但是現在懂這個的好像不太多。
其次談一個支撐和協作問題。
Rose有相對最新最完整UML支持,PowerDesigner和Visio稍微滯後一點。Rose有RUP體系的支持和一系列支持RUP的軟件與Rose協作,這一點是PowerDesigner和Visio望塵莫及的。但是PowerDesigner有一個優點就是“一站式”分析設計,不需要任何插件就可以與代碼和數據庫雙向轉換,Rose這方面需要Rational公司提供的相應的插件(數據庫不要,只是客戶端代碼要),這個鼕鼕的錢真他媽的貴!這方面PowerDesigner真好:)。Visio感覺不入流。
可能還有其他方面,我也不一一羅列了,大家可以根據自己的環境取捨。我的建議是:如果你的團隊對業務和英文比較熟悉但是對RUP不太熟悉,建議你使用Rose,因爲它有完整的RUP理論支撐而且相關性很好;如果你的團隊對業務和英文稍遜而且系統分析員能夠良好地理解RUP,那麼建議你採用PowerDesigner;當然,如果你不準備全面採用RUP開發過程,PowerDesigner是最好的Visio都是必需的,但是隻是作爲Rose或者PowerDesigner的補充。  

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