自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

最好UML建模工具的選擇標(biāo)準(zhǔn)解析

開發(fā) 架構(gòu)
在學(xué)習(xí)UML的過程中,經(jīng)常會(huì)遇到UML建模工具的問題,這里就向大家介紹一下最好UML建模工具的選擇標(biāo)準(zhǔn),相信通過本文的學(xué)習(xí)你一定會(huì)掌握選擇UML建模工具的方法。

選擇一種最好UML建模工具標(biāo)準(zhǔn)

以下標(biāo)準(zhǔn)用于評(píng)估一種UML工具。當(dāng)然,除了已被列出的以外,可以用這些標(biāo)準(zhǔn)來評(píng)估的產(chǎn)品還很多,但如果你想選擇最好的,請(qǐng)花時(shí)間按照清單對(duì)產(chǎn)品作測試。如果你特別重視某項(xiàng)標(biāo)準(zhǔn)而在清單中沒有列出,請(qǐng)告訴我們。

信息倉儲(chǔ)支持

對(duì)于一個(gè)大項(xiàng)目,信息倉儲(chǔ)(Repository)對(duì)在開發(fā)人員之間共享組件設(shè)計(jì)是必要的。兩個(gè)以上的開發(fā)人員可以共享同一模型的的組件,甚至可以通過在適當(dāng)級(jí)別上定義所有權(quán)和共享權(quán)來合作進(jìn)行單一組件的開發(fā)。信息倉儲(chǔ)通常用提供數(shù)據(jù)共享和并發(fā)控制等特性的數(shù)據(jù)庫來實(shí)現(xiàn)。通過提供鎖定和只讀訪問,信息倉儲(chǔ)允許一個(gè)開發(fā)人員擁有整個(gè)模型而其他人對(duì)該模型及其組件只讀訪問,或者將這些組件結(jié)合到自己的設(shè)計(jì)中。重要的是:這種工具應(yīng)該允許你從另一個(gè)模型只引入你所需要的組件而不必引入整個(gè)模型。

構(gòu)造信息倉儲(chǔ)的另一個(gè)令人感興趣的方法是利用項(xiàng)目的源代碼,使用源碼控制系統(tǒng)來提供并發(fā)控制。這種方法的好處是在源碼和模型之間有更高級(jí)別的同步,另一個(gè)好處是更除去了另一個(gè)數(shù)據(jù)源--別忘了,如果你為信息倉儲(chǔ)使用了數(shù)據(jù)庫,你必須對(duì)各種存儲(chǔ)數(shù)據(jù)分別備份并完成在模型、信息倉儲(chǔ)和源代碼之間的三方同步,而不止是在代碼和模型之間的兩方同步。
有了建模工具對(duì)信息倉儲(chǔ)的支持,對(duì)任何組件的修改將被自動(dòng)傳播到所有引入該組件的設(shè)計(jì)。

雙向工程

對(duì)源代碼(Java,C++,CORBAIDL)的正向和逆向工程的能力是一項(xiàng)復(fù)雜的需求,不同廠商在不同程度上成功地支持這一點(diǎn)。對(duì)正向和逆向工程這兩方面的成功結(jié)合,定義為雙向工程。
正向工程在第一次從模型產(chǎn)生代碼時(shí)非常有用,這將為你節(jié)省許多用于編寫類、屬性、方法代碼的瑣碎工作的時(shí)間。
在以前沒有模型存在的情況下,將代碼轉(zhuǎn)換成模型;或者在迭代結(jié)束,重新同步模型和代碼時(shí),逆向工程非常有用。

在一個(gè)迭代開發(fā)周期中,一旦一個(gè)模型作為迭代的一部分被修改,另一輪的正向工程應(yīng)允許所有加入該模型的新的類、方法、屬性的代碼被更新。這個(gè)步驟通常不被開發(fā)者采用,因?yàn)樵S多工具在這個(gè)過程中沒有辦法管理源代碼,問題在于源代碼中不只包含與模型有關(guān)的信息。工具必須精于對(duì)在新一輪正向工程之前已有的源代碼進(jìn)行重新構(gòu)造。
至少,最好UML建模工具應(yīng)成功支持一開始的正向工程和全過程的逆向工程。同樣,建模工具對(duì)純Java語言的逆向工程的支持應(yīng)該毫無問題。一定要針對(duì)你自己的源代碼確認(rèn)這一點(diǎn),因?yàn)槲覀円姷竭^優(yōu)秀的工具在對(duì)Java的一些特性如內(nèi)聯(lián)類(innerclasses)等進(jìn)行逆向工程時(shí)失敗了,每一次進(jìn)行逆向工程時(shí),你不得不把討厭的代碼注釋掉----確實(shí)非常痛苦。

HTML文檔化

對(duì)象最好UML建模工具應(yīng)能為對(duì)象模型及其組件無縫地產(chǎn)生HTML文檔。HTML文檔提供對(duì)象模型的靜態(tài)視圖,以便開發(fā)者通過瀏覽器迅速查詢而不需要加載建模工具本身。另外,通過產(chǎn)生HTML文檔,所需建模工具的許可證(licenses)會(huì)因減去那些對(duì)模型只需要有只讀權(quán)限的人而減少。
HTML文檔應(yīng)包括模型中每個(gè)圖形的一張位圖,并允許通過超鏈接瀏覽整個(gè)模型。產(chǎn)生HTML文檔所需的時(shí)間應(yīng)是合理的。現(xiàn)在許多產(chǎn)品在不同程度上成功支持這一點(diǎn)。再說一遍,你必須親自測試這個(gè)特性,在特征表上有打勾并不能保證成功支持。

完全UML1.3支持

雖然許多工具聲稱完全支持UML1.3,實(shí)際上,這是一項(xiàng)復(fù)雜的需求,一些工具并不能做到廣告所聲稱的完全支持。至少應(yīng)支持的圖表有:用例圖(UseCasediagrams),類圖(Classdiagrams),協(xié)作圖(Collaborationdiagrams),順序圖(Sequencediagrams),包圖(Packagediagrams),狀態(tài)圖(Statediagrams)。

類和方法的選擇列表

最好UML建模工具應(yīng)在一些關(guān)鍵界面上提供選擇列表:
協(xié)作圖(CollaborationDiagrams)和順序圖(SequenceDiagrams)--工具應(yīng)允許從模型的類列表中選擇一個(gè)類,把一個(gè)對(duì)象分配給它,并允許對(duì)象間傳送的消息能夠從接收消息對(duì)象(類)的有效方法列表中選取。
類圖(ClassDiagram)--工具應(yīng)允許從別的包或模型的類列表中選擇并引入類。
選擇列表特性在直觀上對(duì)建模工具至關(guān)重要,可以看作是必備特性。能夠迅速從列表中選擇一個(gè)對(duì)象到另一個(gè)對(duì)象的消息,給開發(fā)順序圖和協(xié)作圖帶來很大的方便。

數(shù)據(jù)建模集成

最好UML建模工具應(yīng)允許集成數(shù)據(jù)建模工具。有許多方法可以提供這種功能。一種方法是UML工具提供將對(duì)象模型轉(zhuǎn)換成DDL(數(shù)據(jù)定義語言,用于為類創(chuàng)建表的SQL)。另一種方法是UML工具輸出元數(shù)據(jù)到能夠輸入這些元數(shù)據(jù)的數(shù)據(jù)建模工具,并將其作為數(shù)據(jù)模型的基礎(chǔ)。一套先進(jìn)、完整的工具應(yīng)允許數(shù)據(jù)模型和對(duì)象模型之間在每次設(shè)計(jì)的迭代之后同步。

版本控制

建模工具應(yīng)允許儲(chǔ)存各種版本,以便后續(xù)迭代開始時(shí),以前的版本仍然可以得到,并用于重建或保持基于該版本的已有代碼。

模型導(dǎo)航

最好UML建模工具應(yīng)提供強(qiáng)的導(dǎo)航支持以允許開發(fā)者全盤瀏覽模型中的所有圖表和類。一種方法是提供一個(gè)按名字排序的類目錄或選擇列表,以便設(shè)計(jì)人員隨意跳到圖表中想去的類。對(duì)于大的圖表,工具應(yīng)使得在縮放和平移時(shí),能夠輕松實(shí)現(xiàn)瀏覽。工具也應(yīng)允許在使用雙向工程時(shí),對(duì)類的源代碼輕松瀏覽。

打印支持

最好UML建模工具應(yīng)允許一張大圖表能夠準(zhǔn)確地用多個(gè)頁面打印出來,并提供打印預(yù)覽和縮放功能,輕松地使圖表能夠在所需頁數(shù)內(nèi)放置。允許將一張圖表放置在單頁中的能力在清單中是高要求。不幸的是,我們發(fā)現(xiàn)許多工具很難用無縫的方式完成這項(xiàng)重要的任務(wù)。

圖表視圖

最好UML建模工具應(yīng)能方便定制類及其細(xì)節(jié)的視圖。例如,它應(yīng)有可能從圖表中排除所有的get/set方法,因?yàn)樗鼈儠?huì)對(duì)闡明一個(gè)圖表造成混亂。方法的全部信息應(yīng)允許容易地根據(jù)不同級(jí)別細(xì)節(jié)的需要顯示或隱藏。屬性和方法的可見性(private,protected,public)是用于選擇什么該顯示,什么該隱藏的另一個(gè)尺度。

輸出圖表

一個(gè)經(jīng)常被忽略的關(guān)鍵特性是用某種格式輸出圖表,以便引入到文字處理文檔或Web頁面中。用于輸出的最流行圖像格式是GIF、PNG和JPEG。輸出時(shí),工具應(yīng)允許你定義所產(chǎn)生圖形的首選分辨率和尺寸。這個(gè)功能需求來自那些野心勃勃,需要寫一本包括圖表的UML書籍的作者,或者希望將他們的工作展示在網(wǎng)站上的人。

腳本

用腳本編程是最好UML建模工具應(yīng)該支持的另一個(gè)強(qiáng)大的特性。有了腳本功能,高級(jí)用戶可以創(chuàng)建能在建模工具內(nèi)直接訪問對(duì)象模型的腳本來添加其它功能,例如:為當(dāng)前開發(fā)的項(xiàng)目做的項(xiàng)目管理表格,定制文檔,定制代碼,報(bào)表和度量。一個(gè)定制代碼的例子是集合類和用于訪問集合類的get/set方法。
為了方便使用腳本,建模工具應(yīng)公開訪問自身對(duì)象模型的接口,以便在開發(fā)時(shí)能提供對(duì)對(duì)象模型組件的訪問。(如果這一句聽起來有點(diǎn)繞口,請(qǐng)?jiān)僮x一遍。)例如,腳本編寫者應(yīng)能在整個(gè)迭代周期中訪問類圖中類的集合,從而能夠通過類對(duì)象的accessor方法來訪問類的屬性。當(dāng)然,腳本語言自身應(yīng)該是面向?qū)ο蟮模灰粋€(gè)明顯的選擇就是Java語言本身,另一種選擇就是Python腳本語言。

【編輯推薦】

  1. 最強(qiáng)UML建模工具:Visual Paradigm Suite 4.0最新版特性
  2. 免費(fèi)UML建模工具盡情體驗(yàn)
  3. 專家推薦 UML建模工具TrufunPlato2004中文版使用
  4. UML建模工具中EA和Rose的兩種特性對(duì)比,誰更具優(yōu)勢?
  5. UML建模工具中EA和Rose的比較

 

 

責(zé)任編輯:佚名 來源: csdn.net
相關(guān)推薦

2010-06-08 15:33:19

UML建模工具

2010-07-12 11:04:54

UML建模工具

2010-07-08 14:48:38

UML建模工具

2010-07-12 11:14:09

UML建模工具

2010-06-28 09:44:48

UML建模工具Rose

2010-06-12 09:09:33

UML需求分析

2010-06-28 13:27:51

常用UML建模工具

2010-06-08 15:44:18

UML建模工具

2010-06-28 10:11:11

UML建模工具-Rat

2010-06-08 18:53:43

UML建模工具

2010-06-30 14:46:49

UML類圖

2010-07-05 13:55:40

UML圖分類

2010-06-18 18:42:43

UML建模語言

2010-06-11 16:46:02

免費(fèi)UML建模工具

2010-06-13 13:13:12

UML建模

2010-06-30 16:06:28

UML建模優(yōu)點(diǎn)

2010-07-09 13:09:48

UML靜態(tài)建模

2010-06-13 13:00:01

UML及項(xiàng)目管理建模

2010-06-13 12:49:23

UML及建模

2010-06-17 10:05:35

UML動(dòng)態(tài)建模
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)