欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

Rose與PowerDesigner:兩款建模工具對(duì)比分析比較

系統(tǒng) 1892 0
但兩者所走的明星路線(xiàn)卻很不相同,Rose出道是時(shí),走的是UML面向?qū)ο蠼#笤傧驍?shù)據(jù)庫(kù)建模發(fā)展,而PowerDesigner則反其道而行之,它先是一個(gè)純粹的數(shù)據(jù)庫(kù)建模工具,后來(lái)才向面向?qū)ο蠼?,業(yè)務(wù)邏輯建模及需求分析
【IT168技術(shù)分析】

一、 二者的出身
作為世界最著名的兩大CASE工具,Rational Rose和PowerDesigner的名聲可謂如雷貫耳。Rose是當(dāng)時(shí)全球最大的CASE工具提供商Rational的拳頭產(chǎn)品,UML建模語(yǔ)言就是由Rational公司的三位巨頭Booch、Rumbaugh和Jacobson發(fā)明的,后來(lái)Rational被IBM收購(gòu),所以Rose 可謂出身名門(mén),嫁入豪族。而PowerDesigner也有一段好玩的歷史,作者王曉昀是一位中國(guó)人,在法國(guó)SDP軟件公司工作時(shí),由于苦覓一個(gè)好用的CASE工具未果,干脆自由開(kāi)搞,整了個(gè)AMC*Designor出來(lái),居然一炮打響,在法國(guó)賣(mài)得個(gè)“巴黎紙貴”,后來(lái)SDP被Powersoft公司收購(gòu),同年Sybase這只大黃雀又吃下了Powersoft這只螳螂,所以PowerDesigner也是驚艷出場(chǎng),星光四射。

但兩者所走的明星路線(xiàn)卻很不相同,Rose出道是時(shí),走的是UML面向?qū)ο蠼?,而后再向?shù)據(jù)庫(kù)建模發(fā)展,而PowerDesigner則反其道而行之,它先是一個(gè)純粹的數(shù)據(jù)庫(kù)建模工具,后來(lái)才向面向?qū)ο蠼?,業(yè)務(wù)邏輯建模及需求分析建模進(jìn)軍,最終變成“演視歌三棲”明星。

由于第一印象的影響,所以Rose常常給人的印象還是只是面向?qū)ο蠓治鲈O(shè)計(jì)的工具,而PowerDesigner給人的印象則還停留在數(shù)據(jù)庫(kù)建模工具上。其實(shí),現(xiàn)在的Rose和PowerDesigner都即可以進(jìn)行數(shù)據(jù)庫(kù)建模,也可以進(jìn)行面向?qū)ο蠼?,只是存在支持上的偏重而已?

二、 二者區(qū)別概述
Rose和PowerDesigner雖然在項(xiàng)目分析設(shè)計(jì)領(lǐng)域已經(jīng)成為被高度聚光的明星,但是在具體使用哪款工具的問(wèn)題上,不同的公司,不同的人,出于成本,習(xí)慣抑或個(gè)人喜好,往往有自己的判斷。由于筆者在不同的公司中被分別要求使用Rose或PowerDesigner進(jìn)行分析設(shè)計(jì)工作,所以對(duì)二者有著較為細(xì)致的體驗(yàn)。

Rose走大而全,一站式的策略,它沒(méi)有將數(shù)據(jù)庫(kù)設(shè)計(jì)和面向?qū)ο笤O(shè)計(jì)清晰地分開(kāi),僅以不同的目錄來(lái)區(qū)分。而PowerDesigner將兩者劃分到獨(dú)立的模型文件中,分別對(duì)應(yīng)不同的設(shè)計(jì)環(huán)境,并通過(guò)模型之間的轉(zhuǎn)換工具建立各模型的關(guān)聯(lián)。即使對(duì)于數(shù)據(jù)庫(kù)設(shè)計(jì)模型,PowerDesigner也需要你選擇一個(gè)具體的數(shù)據(jù)庫(kù)產(chǎn)品及其版本,以便工作環(huán)境對(duì)具體數(shù)據(jù)庫(kù)敏感。所以Rose顯得大而化之,而PowerDesigner則比較精細(xì)和具體化。Rose的逆向工程,文檔輸出,代碼生成等輸入輸出功能上表現(xiàn)得比較生硬單調(diào),PowerDesigner在逆向工程,特別是文檔輸出和代碼生成這些功能上提供了精細(xì)的控制,讓用戶(hù)擁有高度的自由度。
Rose在操作體驗(yàn)上存在很多需要改進(jìn)的地方,Rose偏向于讓用戶(hù)用鼠標(biāo)進(jìn)行操作,對(duì)鍵盤(pán)操作支持不好。而PowerDesigner在用戶(hù)體驗(yàn)上得分很高,大部分操作都可以通過(guò)鍵盤(pán)完成,在充分熟悉其快捷鍵的前提下,PowerDesigner將給設(shè)計(jì)者一種行云流水的感覺(jué),用戶(hù)交互上更加人性化。此外,Rose往往占用更多的資源,容易異常退出,PowerDesigner則顯得輕便穩(wěn)定。所以,我個(gè)人對(duì)兩者的體驗(yàn)就是“Rose笨拙,PD利索”。下面將具體列出Rose和PowerDesigner的一系列的區(qū)別,相信大家可以借由這些比較而見(jiàn)微知著,窺斑知豹,以資在選擇工具時(shí),提供參考。
三、 模型組織和層次結(jié)構(gòu)上的區(qū)別
1、模型組織Rose將數(shù)據(jù)庫(kù)模型和對(duì)象模型放在一起,在進(jìn)行數(shù)據(jù)表模型設(shè)計(jì)時(shí),沒(méi)有特性化的東西。而PowerDesigner將兩者分開(kāi),其模型組織層級(jí)關(guān)系是:工作空間->模型類(lèi)型->具體語(yǔ)言/數(shù)據(jù)庫(kù)的模型->包->文件夾->Diagram->設(shè)計(jì)元素。在創(chuàng)建模型文件時(shí),會(huì)讓你選擇模型類(lèi)型,選擇模型類(lèi)型后,還可以選擇模型類(lèi)型下語(yǔ)言及版本相關(guān)的細(xì)分類(lèi)。不同設(shè)計(jì)模型對(duì)應(yīng)軟件工程的不同階段,如業(yè)務(wù)模型和需求模型屬于項(xiàng)目需求階段,而對(duì)象模型屬于概要和詳細(xì)設(shè)計(jì)階段,數(shù)據(jù)庫(kù)模型屬于詳細(xì)設(shè)計(jì)階段。它們之間雖然有很強(qiáng)的內(nèi)在聯(lián)系,但差異性也很明顯,硬將兩者放到一起,就象把猴子和猩猩關(guān)進(jìn)同一個(gè)籠子,為了兼顧和平衡兩者之間的考量,其結(jié)果是兩者都得不到很好的支持。

Rose與PowerDesigner:兩款建模工具對(duì)比分析比較

圖 1新建模型窗口(PD)
Rose與PowerDesigner:兩款建模工具對(duì)比分析比較

圖 2新建模型窗口(Rose)

PowerDesinger可以通過(guò)模型轉(zhuǎn)換工具進(jìn)行數(shù)據(jù)庫(kù)建模和面向?qū)ο竽P偷南嗷マD(zhuǎn)換。但Rose不能將對(duì)象轉(zhuǎn)換為表,也不能將表轉(zhuǎn)換為對(duì)象。

2、工作空間PowerDesigner有工作空間的概念,一個(gè)工作空間下可以同時(shí)打開(kāi)多個(gè)設(shè)計(jì)模型文件;而Rose同時(shí)僅能打開(kāi)一個(gè)設(shè)計(jì)文件,如果在設(shè)計(jì)時(shí),需要參考其他的Rose設(shè)計(jì)模型,則需要反復(fù)關(guān)閉現(xiàn)有模型,打開(kāi)參考模型,顯得設(shè)計(jì)上比較欠考慮。這個(gè)問(wèn)題上兩者的差異恰似Eclipse和JBuilder的區(qū)別,Eclipse可以同時(shí)打開(kāi)多個(gè)工程,而JBuilder只能同時(shí)打開(kāi)一個(gè)工程。
3、設(shè)計(jì)界面PowerDesigner的設(shè)計(jì)界面可以左右上下移動(dòng),而Rose只能向右,向下移動(dòng),此外。PowerDesigner可以將模型元素放大很多倍,而Rose只能放大到正常倍數(shù),不過(guò)Rose的Overview工具可以使用戶(hù)快速定位到設(shè)計(jì)區(qū)中特定的區(qū)域,有點(diǎn)類(lèi)似于游戲界面中常用的小地圖,挺不錯(cuò);
Rose與PowerDesigner:兩款建模工具對(duì)比分析比較
圖 3 Overview工具(Rose)
而在PowerDesigner中,你可以通過(guò)F8快捷鍵查看Diagram的總覽圖,不過(guò)只得通過(guò)放大操作定位到定位區(qū)域。
4 對(duì)模型和語(yǔ)言的支持
?對(duì)設(shè)計(jì)模型的支持力度和廣度
PowerDesigner對(duì)對(duì)象模型和數(shù)據(jù)庫(kù)建模兩者的支持力度已經(jīng)大抵相等,此外,還支持概念模型、業(yè)務(wù)模型、需求模型、XML模型、信息流模型、自由模型的分析設(shè)計(jì)。不過(guò)對(duì)后面這幾個(gè)模型的支持比較初級(jí),而且在實(shí)際的應(yīng)用中,這些模型用得也比較少,PowerDesigner的突出亮點(diǎn)還是在數(shù)據(jù)庫(kù)建模和對(duì)象模型的設(shè)計(jì)上。

對(duì)于數(shù)據(jù)庫(kù)模型,PowerDesigner支持20余種數(shù)據(jù)庫(kù),對(duì)于同一數(shù)據(jù)庫(kù)的不同版本還提供單獨(dú)的支持,以便在設(shè)計(jì)數(shù)據(jù)庫(kù)模型時(shí),提供數(shù)據(jù)庫(kù)和版本相關(guān)的設(shè)計(jì)。對(duì)于面向?qū)ο竽P?,PowerDesigner支持11種主流語(yǔ)言,為對(duì)Java 5.0提供單獨(dú)的支持。
Rose基本上可以說(shuō)是一個(gè)對(duì)象模型設(shè)計(jì)工具,對(duì)數(shù)據(jù)庫(kù)模型的支持相對(duì)粗糙,內(nèi)嵌的只支持Oracle 8數(shù)據(jù)庫(kù),對(duì)其他數(shù)據(jù)庫(kù)設(shè)計(jì)的支持需要通過(guò)安裝插件的方式獲得,且對(duì)數(shù)據(jù)庫(kù)物理存儲(chǔ)參數(shù)等較細(xì)粒度的內(nèi)容支持得比較粗糙。Rose的對(duì)象模型主要支持Java、VC和VB三種語(yǔ)言。

?對(duì)Java語(yǔ)言的支持
Rose對(duì)Java語(yǔ)言的支持更好,不但為不同版本的JDK提供了支持(不過(guò)Rose 2003還不支持JDK 5.0),還為Java具體產(chǎn)品及設(shè)計(jì)模式(如EJB、Corba、Servlet,GOF設(shè)計(jì)模式等)提供了內(nèi)嵌性的支持,這些支持直接反應(yīng)在Rose的主菜單上。正因?yàn)槿绱?,使Rose背上的沉重的歷史負(fù)擔(dān),如EJB和Corba這種語(yǔ)言級(jí)的東西是易變且不斷更新的,如何在這些具體產(chǎn)品的地位和影響已經(jīng)降低時(shí),對(duì)其作出割舍而又保證版本的兼容性,是擺在設(shè)計(jì)者面前的難題。
PowerDesigner僅提供語(yǔ)言級(jí)對(duì)象設(shè)計(jì)的支持,不涉及語(yǔ)言?xún)?nèi)部的具體產(chǎn)品。其次因?yàn)樗脑O(shè)計(jì)工作區(qū)是和具體的模型類(lèi)型及語(yǔ)言細(xì)分類(lèi)相關(guān)的,而非在主菜單中直接提供支持,所以PowerDesigner在升級(jí)時(shí)顯得更加從容一些。
這也是為什么PowerDesigner能以每年一個(gè)版本的速度升級(jí),而Rose在2003版本后,新版本還遲遲投入市場(chǎng)的內(nèi)在原因,否則以IBM的財(cái)力,研發(fā)能力不至于對(duì)市場(chǎng)反應(yīng)如果緩慢。

5 輸入和輸出功能的比較
?反向工程
從將程序代碼轉(zhuǎn)換為設(shè)計(jì)模型的逆向工程功能上看,Rose更象一個(gè)IDE,它會(huì)對(duì)需要逆向工程操作的程序代碼進(jìn)行深度語(yǔ)義檢查,如果存在諸如程序代碼引用了類(lèi)庫(kù)之外的類(lèi),反向工程將失敗,而且在報(bào)告失敗之前,窗口會(huì)陷入長(zhǎng)時(shí)間無(wú)響應(yīng)狀態(tài)。
PowerDesigner僅對(duì)需逆向工程的程序代碼進(jìn)行淺度語(yǔ)法檢查,這種淺度語(yǔ)法檢查不涉及包,類(lèi)之間的關(guān)聯(lián),僅對(duì)諸如類(lèi)名是否和類(lèi)文件名匹配,是否少了“}” 等語(yǔ)法性的內(nèi)容進(jìn)行檢查。即便存在錯(cuò)誤,PowerDesigner也允許你忽略錯(cuò)誤,繼續(xù)進(jìn)行逆向工程操作,這種寬松的限制帶來(lái)了很大的便利。
Rose與PowerDesigner:兩款建模工具對(duì)比分析比較
圖 4逆向工程失敗選擇三種選擇(PD)
忽略錯(cuò)誤后,PowerDesigner會(huì)盡量修補(bǔ)錯(cuò)誤,例如代碼中少了對(duì)應(yīng)的“}”,它將會(huì)補(bǔ)上,類(lèi)名和文件名不一致,將忽略類(lèi)文件名保持類(lèi)名不變。

Rose一直宣揚(yáng)的理念是IDE和設(shè)計(jì)工程進(jìn)行雙向互通:在Rose中完成模型設(shè)計(jì)后導(dǎo)出為IDE所用的代碼,IDE編碼調(diào)整后又逆向工程到Rose。理念很美,深具吸引力,但是在實(shí)現(xiàn)中,往往很少有開(kāi)發(fā)團(tuán)隊(duì)會(huì)這樣做。一般CASE工具只是在分析設(shè)計(jì)階段使用,甚至很大比例的設(shè)計(jì)師僅把它當(dāng)成畫(huà)圖的工具。
真正進(jìn)入編碼開(kāi)發(fā)階段后,將加入大量設(shè)計(jì)時(shí)不涉及的類(lèi)和方法,如果將這些非骨架性的東西Reverse到CASE工具中,反而會(huì)使原來(lái)清晰的設(shè)計(jì)變得霧里花,水中月。所以即使編碼時(shí),需要對(duì)原分析模型進(jìn)行調(diào)整,一般也是手工去調(diào)整設(shè)計(jì)模型,而不是通過(guò)逆向工程去同步,畢竟分析設(shè)計(jì)是骨架性的,而編碼是血肉性的,兩者有屬性上的區(qū)別。如果真的需要頻繁進(jìn)行的代碼和UML轉(zhuǎn)換,最好使用類(lèi)似于Together一樣的工具,它嵌入到IDE中,使代碼和模型轉(zhuǎn)換方便快捷。

?文檔導(dǎo)出功能
PowerDesigner對(duì)文檔導(dǎo)出提供了精細(xì)的控制,你不但可以對(duì)文檔所包含的內(nèi)容項(xiàng)進(jìn)行設(shè)置,還可以對(duì)內(nèi)容項(xiàng)的格式進(jìn)行設(shè)置。如導(dǎo)出的表結(jié)構(gòu)是否包括名稱(chēng)、數(shù)據(jù)類(lèi)型、備注等項(xiàng)目,這些項(xiàng)目在表欄中的寬度占比,顏色,字號(hào)等等,不一而足。

PowerDesinger 12.0 還新增了一個(gè)多模型文檔整合導(dǎo)出的Milti-Model Report模型,允許你以多個(gè)模型作為輸入生成為統(tǒng)一文檔,實(shí)現(xiàn)模型設(shè)計(jì)按階段分開(kāi),文檔又統(tǒng)一整合的目的。

由于PowerDesigner文檔導(dǎo)出的設(shè)置非常精細(xì),所以要設(shè)置好一個(gè)文檔導(dǎo)出模式實(shí)非不易。有鑒于此,PowerDesinger提供了三種常用的導(dǎo)出模板,用戶(hù)也可以自己定義模板。通過(guò)模板可以迅速完成設(shè)計(jì)模型文檔的導(dǎo)出工作。
而Rose沒(méi)有導(dǎo)出模板的概念,更不能對(duì)導(dǎo)出項(xiàng)和格式進(jìn)行設(shè)置,你只能按Rose的系統(tǒng)內(nèi)置的方式進(jìn)行模型文檔的發(fā)布。

?代碼導(dǎo)出
在導(dǎo)出設(shè)計(jì)模型的代碼時(shí),PowerDesigner提供了精細(xì)的控制,不但可以進(jìn)行對(duì)象級(jí)別,還可以進(jìn)行代碼級(jí)別的控制(如是否要生成字段備注的代碼,外鍵代碼在表體代碼內(nèi)聲明還是在表體外部聲明等),而Rose沒(méi)有提供代碼導(dǎo)出的控制,也只能按其系統(tǒng)內(nèi)部設(shè)置的方式導(dǎo)出代碼。
Rose與PowerDesigner:兩款建模工具對(duì)比分析比較
圖 5 數(shù)據(jù)庫(kù)模型導(dǎo)出設(shè)置(PD)
?
生成測(cè)試數(shù)據(jù)
PowerDesigner可為數(shù)據(jù)表生成批量的測(cè)試數(shù)據(jù),而且你還可以制定測(cè)試數(shù)據(jù)的生成規(guī)則。這個(gè)功能給初期項(xiàng)目的開(kāi)發(fā)測(cè)試帶來(lái)很大的便利。Rose中沒(méi)有提供類(lèi)似的功能。

Rose與PowerDesigner:兩款建模工具對(duì)比分析比較


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦?。?!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 亚洲九九夜夜 | 欧美日韩不卡在线 | 精品AV综合一区二区三区 | 香港三日本三级三级三级 | 国产精品视频一区二区三区不卡 | 精品99在线| 久久精品国产一区二区三区不卡 | 99re热这里只有精品视频 | 一级特黄欧美 | 久久国产精品视频 | 91短视频在线播放 | 男女超猛烈啪啦啦的免费视频 | 亚洲第一色视频 | 欧美午夜精品久久久久免费视 | 草比网站| 国产熟妇另类久久久久XYZ | 91精品国产日韩91久久久久久 | 精品区在线观看 | 国产精品乱码一区二三区小蝌蚪 | 欧美日韩大片在线观看 | 午夜视频国语 | 日本一区二区三区四区 | 91最新视频 | 九一精品 | 91精品久久久久久久久久 | 精品九九 | 婷婷在线观看网站 | 刑事侦缉档案1 | 伊人艹| 999毛片免费观看 | 日本理论片好看理论片 | 通天帝国| 奇米影视8888 | 亚洲网站免费看 | 无码一区二区三区曰本A片 欧美综合激情网 | 伊人狠狠丁香婷婷综合色 | 99色综合| 成人精品视频在线观看 | 日韩欧美综合在线 | 成人欧美| www.夜夜骑 |