[1]工欲善其事必先利其器-------UML的使用(一)

目錄

  1. 什麼是UML
  2. 爲什麼要使用UML
  3. UML基本模型圖的介紹
  4. 現有哪些比較流行的UML工具

1.什麼是UML:

UML:Unified Modeling Language (UML)又稱統一建模語言.爲軟件開發的所有階段提供模型化和可視化支持,包括由需求分析到規格,到構造和配置。UML是80年代末至90年代面向對象的設計與實現方法發展高潮的產物。它的目標是以面向對象圖的方式來描述任何類型的系統,具有很寬的應用領域。其中最常用的是建立軟件系統的模型,但它同樣可以用於描述非軟件領域的系統。UML是一個通用的標準建模語言,可以對任何具有靜態結構和動態行爲的系統進行建模。

728DA9~1

2.爲什麼要使用UML:

軟件設計是一個複雜的階段,由於每個階段關心的細節往往不一樣,因此需要在不同的階段從不同的角度對設計過程進行審視,UML則適用於以面向對象技術來描述任何類型的系統,而且適用於系統開發的不同階段,從需求規格描述直至系統完成後的測試和維護。

3.UML基本模型圖的介紹

UML提供的基本模型圖包括:

(1).類圖:   展示系統中類的靜態結構,用來描述系統中各種類之間的靜態結構.

(2).對象圖:對象圖是對類圖的一種實例化

(3).包圖:是一種分組機制。在UML1.1版本中,包圖不再看作一種獨立的模型圖

 

(4).狀態圖:它展示對象所具有的所有可能的狀態以及特定事件發生時狀態的轉移情況

(5).用例圖:展示系統外部的各類執行者與系統提供的各種用例之間的關係.

(6).時序圖/順序圖:展示對象之間的一種動態協作關係(一組對象組成,隨時間推移對象之間交換消息的過程,突出時間關係)

(7).合作圖:從另一個角度展示對象之間的動態協作關係(對象間動態協作關係,突出消息收發關係)

(8).活動圖:展示系統中各種活動的執行流程(各種活動的執行順序、執行流程)

(9).構件圖:展示程序代碼的物理結構(描述程序代碼的組織結構,各種構件之間的依賴關係)

(10).配置圖:展示軟件在硬件環境中(特別是在分佈式及網絡環境中)的配置關係(系統中硬件和軟件的物理配置情況和系統體系結構)

 

4.現有哪些比較流行的UML工具:

現有的UML工具較多比較著名的三大工具分別是PowerDesigner,Visio,Rose。下面附幾篇較爲有用的文章

文章1---------解析三大UML常用工具的使用:

來自:http://blog.163.com/xzj_nj/blog/static/78276568201162111317844/

大致觀點如下:

PowerDesigner它對數據庫建模的支撐很好,對UML的建模行使到的各種圖的支持相對滯後。對中文的支持不足。所以使用它來進行UML開發的並不多,很多人都是用它來作爲數據庫的建模。

Rose是直接從UML發展而誕生的設計工具,它的出現就是爲了對UML建模的支持,ROSE一開始沒有對數據庫端建模的支持,但是在現在的版本中已經加入數據庫建模的功能。對系統的代碼框架生成有很好的支持。

Viso原來僅僅是一種畫圖工具,能夠用來描述各種圖形(從電路圖到房屋結構圖),到VISIO2000纔開始引進軟件分析設計功能到代碼生成的全部功能,所以它可以說用於圖形語義的描述比較方便,但是用於軟件開發過程的迭代開發則有點牽強。

在軟件工程中常用的圖包括:系統框圖/樹圖;UML圖;ER圖;Gantt圖;任意流程圖;其他任意的圖表。
系統框圖/樹圖的設計方面:Visio最好,rose不支持,PowerDesigner支持一點點不好用。
UML圖設計方面:三者都支持,Rose支持全系列的,而且很容易體現迭代、用例驅動等特性,相關性最好,缺點是圖形質量差,邏輯檢查與控制差,生成文檔不好也不適合自定義,也沒有設計對象的字典可以快速查找。PowerDesigner9.5全支持,優點就是圖形質量好,生成的文檔容易自定義,邏輯檢查與控制好,有設計對象的字典可以快速查找和快速在圖形中定位,缺點就是相互之間的銜接稍微麻煩一點。相比較起來Visio的圖形質量是最好的,但是銜接和相關性也是最差的,邏輯檢查和控制勉強能做一點點。

ER圖方面:PowerDesigner做得最好,Rose和Visio比較業餘。
Gantt圖方面,Visio可以做,其他的都不支持。

任意流程圖不被Rose支持,Rose只支持面向業務的活動圖和麪向用例的活動圖,限制比較多。PowerDesigner9.5支持,用起來還可以。Visio最好,因爲它的圖形質量最好,而且預定義的元素也最多。

任意的圖表支持方面:Rose不支持其他任意的圖表。PowerDesigner9.5支持,但是預定義的元素不多。這一點Visio最好。

作者給出的建議是:如果團隊對業務和英文比較熟悉但是對RUP不太熟悉,建議使用Rose,因爲它有完整的RUP理論支撐而且相關性很好;如果對業務和英文稍遜而且系統分析員能夠良好地理解RUP,那麼建議採用PowerDesigner;如果不準備全面採用RUP開發過程,PowerDesigner是最好的,Visio都是必需的,但是隻是作爲Rose或者PowerDesigner的補充。

 

文章2-------最好UML建模工具的選擇標準解析

http://developer.51cto.com/art/201006/207931.htm

文章3-------十二個開源UML工具的介紹

http://www.educity.cn/se/1383513.html

1. StarUML

StarUML是一個開源UML項目,可以開發快速,靈活,可擴展,多功能並且免費的UML/MDA平臺。此項目運行在Win32平臺之上。StarUML項目的目標是成爲Rational Rose、Together等商業UML工具的替代者。

2. Netbeans UML Plugin

NetBeans UML插件目前支持以下UML圖:活動圖,類圖,序列圖,狀態圖,以及用例圖。你可以在圖編輯器中排列圖,拖曳圖案和類等等。

3. Acceleo

Acceleo是一個代碼生成器,可以將模型轉換成代碼(MDA方式)。Acceleo提供JEE,.NET,PHP等代碼的轉換,以及用於Eclipse的模板編輯器。

4. ArgoUML

ArgoUML是領先的開源UML建模工具,支持所有的標準UML 1.4圖。它運行在Java平臺上,支持大約十種國家的語言。

5. BOUML

BOUML是一個免費的UML 2工具箱,可以用來定義並生成C++,Java,Idl,Php以及Python代碼。它運行在Unix/Linux/Solaris,Mac OS X(Power PC以及Intel)以及Windows上。BOUML速度很快,而且無需很多內存來管理數以千計的類。

6. Eclipse UML2 Tools

UML2工具是一系列基於GMF的編輯器,可以查看並編輯UML模型。這個工具專注自動生成所有UML圖類的編輯器。

7. Umbrello UML Modeller

Umbrello UML建模器是一個UML圖工具,在軟件開發的過程中使用。在分析和設計過程中尤其好用。也可以用於軟件設計的文檔化。

8. Frame UML

Frame UML是一個免費UML工具,支持UML 2.xx。在Windows上運行,從模型生成源代碼/CHM,或使用JavaScript解析源代碼爲模型。支持對象圖之外的12種圖。

9. UMLet

UMLet是一個開源UML工具,有一個簡單的用戶界面。它可以快速畫圖,並將圖導出爲eps,pdf,jpg,svg以及剪貼板。可以使用Eclipse共享圖,以及創建新的、自定義的UML元素。

UMLet可以單獨運行或者作爲Eclipse插件在Windows,OS X以及Linux上運行。

10. TinyUML

TinyUML是一個免費工具,用於簡單快速的創建UML 2圖。它在Java平臺上運行,需要Java SE 6及以上。

11. Taylor

Tayler MDA是一個基於Eclipse的、專門的UML建模工具。它使用了基於協議的技術,用於從流水線UML模型生成最多的代碼。包含基於JPA/EJB3以及JSF/Seam/Facelets的JEE應用的模版。

12. Papyrus UML

Papyrus是一個UML2中的專業建模工具。此開源工具基於Eclipse環境。

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