0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

常用UML建模工具介紹

jf_78858299 ? 來源:學(xué)java會前端 ? 作者:靖凱開源 ? 2023-05-05 11:09 ? 次閱讀

UML簡介

Unified Modeling Language (UML)又稱統(tǒng)一建模語言或標(biāo)準(zhǔn)建模語言,是始于1997年一個OMG標(biāo)準(zhǔn),它是一個支持模型化和軟件系統(tǒng)開發(fā)的圖形化語言,為軟件開發(fā)的所有階段提供模型化和可視化支持,包括由需求分析到規(guī)格,到構(gòu)造和配置。 面向?qū)ο蟮姆治雠c設(shè)計(OOA&D,OOAD)方法的發(fā)展在80年代末至90年代中出現(xiàn)了一個高潮,UML是這個高潮的產(chǎn)物。它不僅統(tǒng)一了Booch、Rumbaugh和Jacobson的表示方法,而且對其作了進一步的發(fā)展,并最終統(tǒng)一為大眾所接受的標(biāo)準(zhǔn)建模語言。

分類

UML定義了5類,10種模型圖

五種類圖定義

用例圖:從用戶角度描述系統(tǒng)功能,并指各功能的操作者。

靜態(tài)圖:包括類圖,包圖,對象圖。

  • 類圖:描述系統(tǒng)中類的靜態(tài)結(jié)構(gòu)
  • 包圖:是包和類組成的,表示包與包之間的關(guān)系,包圖描述系統(tǒng)的分層結(jié)構(gòu)
  • 對象圖:是類圖的實例

行為圖:描述系統(tǒng)動態(tài)模型和對象組成的交換關(guān)系。包括狀態(tài)圖和活動圖

  • 活動圖:描述了業(yè)務(wù)實現(xiàn)用例的工作流程
  • 狀態(tài)圖:是描述狀態(tài)到狀態(tài)控制流,常用于動態(tài)特性建模

交互圖:描述對象之間的交互關(guān)系

  • 順序圖:對象之間的動態(tài)合作關(guān)系,強調(diào)對象發(fā)送消息的順序,同時顯示對象之間的交互
  • 合作圖:描述對象之間的協(xié)助關(guān)系

實現(xiàn)圖:

配置圖:定義系統(tǒng)中軟硬件的物理體系結(jié)構(gòu)

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

(1)、用例圖:展示系統(tǒng)外部的各類執(zhí)行者與系統(tǒng)提供的各種用例之間的關(guān)系

(2)、類圖:展示系統(tǒng)中類的靜態(tài)結(jié)構(gòu)(類是指具有相同屬性和行為的對象,類圖用來描述系統(tǒng)中各種類之間的靜態(tài)結(jié)構(gòu))

(3)、對象圖:是類圖的一種實例化圖(對象圖是對類圖的一種實例化)

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

(5)、狀態(tài)圖:描述一類對象具有的所有可能的狀態(tài)及其轉(zhuǎn)移關(guān)系(它展示對象所具有的所有可能的狀態(tài)以及特定事件發(fā)生時狀態(tài)的轉(zhuǎn)移情況)

(6)、時序圖/順序圖:展示對象之間的一種動態(tài)協(xié)作關(guān)系(一組對象組成,隨時間推移對象之間交換消息的過程,突出時間關(guān)系)

(7)、合作圖:從另一個角度展示對象之間的動態(tài)協(xié)作關(guān)系(對象間動態(tài)協(xié)作關(guān)系,突出消息收發(fā)關(guān)系)

(8)、活動圖:展示系統(tǒng)中各種活動的執(zhí)行流程(各種活動的執(zhí)行順序、執(zhí)行流程)

(9)、構(gòu)件圖:展示程序代碼的物理結(jié)構(gòu)(描述程序代碼的組織結(jié)構(gòu),各種構(gòu)件之間的依賴關(guān)系)

(10)、配置圖:展示軟件在硬件環(huán)境中(特別是在分布式及網(wǎng)絡(luò)環(huán)境中)的配置關(guān)系(系統(tǒng)中硬件和軟件的物理配置情況和系統(tǒng)體系結(jié)構(gòu))

常用UML建模工具

工欲善其事必先利其器,本文向大家介紹幾款常用UML建模工具,UML是個好東西,但是過分的依賴于UML也不是一件好事,因為有時候它會把簡單的東西復(fù)雜化。

1、Rational Rose

官網(wǎng):http://www-03.ibm.com/software/products/en/ratirosefami

Rational Rose是Rational公司出品的一種面向?qū)ο蟮慕y(tǒng)一建模語言的可視化建模工具。用于可視化建模和公司級水平軟件應(yīng)用的組件構(gòu)造。它包括了統(tǒng)一建模語言(UML),OOSE,以及OMT。其中統(tǒng)一建模語言(UML)由Rational公司3位世界級面向?qū)ο蠹夹g(shù)專家Grady Booch、Ivar Jacobson、和Jim Rumbaugh通過對早期面向?qū)ο笱芯亢驮O(shè)計方法的進一步擴展而得來的,它為可視化建模軟件奠定了堅實的理論基礎(chǔ)。

Rational Rose 是一個完全的、具有能滿足所有建模環(huán)境(Web開發(fā),數(shù)據(jù)建模,Visual Studio和 C++ )靈活性需求的一套解決方案。Rose 允許開發(fā)人員,項目經(jīng)理,系統(tǒng)工程師和分析人員在軟件開發(fā)周期內(nèi)在將需求和系統(tǒng)的體系架構(gòu)轉(zhuǎn)換成代碼,消除浪費的消耗,對需求和系統(tǒng)的體系架構(gòu)進行可視化,理解和精練。通過在軟件開發(fā)周期內(nèi)使用同一種建模工具可以確保更快更好的創(chuàng)建滿足客戶需求的可擴展的、靈活的并且可靠的應(yīng)用系統(tǒng)。

在面向?qū)ο髴?yīng)用程序開發(fā)領(lǐng)域,Rational Rose是影響其發(fā)展的一個重要因素。Rational Rose自推出以來就受到了業(yè)界的矚目,并一直引領(lǐng)著可視化建模工具的發(fā)展。越來越多的軟件公司和開發(fā)團隊開始或者已經(jīng)采用Rational Rose,用于大型項目開發(fā)的分析、建模與設(shè)計等方面。

Rose2002功能上可以完成UML的9種標(biāo)準(zhǔn)建模,即靜態(tài)建模(用例圖類圖對象圖組件圖配置圖)和動態(tài)建模(合作圖序列圖狀態(tài)轉(zhuǎn)移圖活動圖),為了使靜態(tài)建??梢灾苯幼饔糜诖a,Rose提供了類設(shè)計到多種程序語言代碼自動產(chǎn)生的插件。同時,作為一款優(yōu)秀的分析和設(shè)計工具,常用UML建模工具Rose具有強大的正向和逆向工程能力。正向工程這里指的是由設(shè)計產(chǎn)生代碼,逆向工程指由代碼歸納出設(shè)計。通過逆向工程Rose可以對歷史系統(tǒng)作出分析,然后進行改進,再通過正向工程產(chǎn)生新系統(tǒng)的代碼,這樣的設(shè)計方式我們稱之為再工程。

2、PowerDesigner

Power Designer 是Sybase公司的CASE工具集,使用它可以方便地對管理信息系統(tǒng)進行分析設(shè)計,他幾乎包括了數(shù)據(jù)庫模型設(shè)計的全過程。利用Power Designer可以制作數(shù)據(jù)流程圖、概念數(shù)據(jù)模型、物理數(shù)據(jù)模型,還可以為數(shù)據(jù)倉庫制作結(jié)構(gòu)模型,也能對團隊設(shè)計模型進行控制。他可以與許多流行的軟件開發(fā)工具,例如PowerBuilder、Delphi、VB等相配合使縮短開發(fā)時間和使系統(tǒng)設(shè)計更優(yōu)化。

Power Designer是能進行數(shù)據(jù)庫設(shè)計的強大的軟件,是一款開發(fā)人員常用的數(shù)據(jù)庫建模工具。使用它可以分別從概念數(shù)據(jù)模型(Conceptual Data Model)和物理數(shù)據(jù)模型(Physical Data Model)兩個層次對數(shù)據(jù)庫進行設(shè)計。在這里,概念數(shù)據(jù)模型描述的是獨立于數(shù)據(jù)庫管理系統(tǒng)(DBMS)的實體定義和實體關(guān)系定義;物理數(shù)據(jù)模型是在概念數(shù)據(jù)模型的基礎(chǔ)上針對目標(biāo)數(shù)據(jù)庫管理系統(tǒng)的具體化。

PowerDesigner 6.0支持數(shù)據(jù)流圖,8.0支持UML的UseCase/sequence/class視圖。

3、Visual Paradigm for UML

官網(wǎng):http://www.visual-paradigm.com/product/vpuml/

Visual Paradigm for UML (VP-UML)是一款功能強大、跨平臺、使用最便捷、直觀的UML建模和CASE工具,它可以整合在其他CASE工具或者其他IDE工具中,這種“一站購物式”的軟件解決方案要遠遠優(yōu)于常規(guī)的Model-Code-Deploy的開發(fā)進程。

Visual Paradigm for UML支持UML建模、數(shù)據(jù)庫建模、對象關(guān)系映射、逆向工程和Java雙向工程等等,功能異常強大。

4、Jude

一個號稱中日xp合作開發(fā)出來的小uml工具,只有幾m的大小,功能也還不錯。也是java做的,速度還是很快的。如果不需要使用逆向工程之類的高級功能的話,強烈推薦這個常用UML建模工具,并且它是免費的。

5、SystemArchitect

一個很受歡迎的高端UML建模工具,支持雙向工程(Round-tripEngineering)。

6、StarUML

StarUML(簡稱SU),是一種創(chuàng)建UML類圖,是一種生成類圖和其他類型的統(tǒng)一建模語言(UML)圖表的工具。StarUML是一個開源項目之一發(fā)展快、靈活、可擴展性強(zj)。唯一不足之處,在反向工程時,只能生成類圖,不能生成類之間的關(guān)系。

Rational Rose & PowerDesigner & VISIO比較

ROSE是直接從UML發(fā)展而誕生的設(shè)計工具,它的出現(xiàn)就是為了對UML建模的支持,ROSE一開始沒有對數(shù)據(jù)庫端建模的支持,但是在現(xiàn)在的版本中已經(jīng)加入數(shù)據(jù)庫建模的功能。ROSE主要是在開發(fā)過程中的各種語義、模塊、對象以及流程,狀態(tài)等描述比較好,主要體現(xiàn)在能夠從各個方面和角度來分析和設(shè)計,使軟件的開發(fā)藍圖更清晰,內(nèi)部結(jié)構(gòu)更加明朗(但是它的結(jié)構(gòu)僅僅對那些對掌握UML的開發(fā)人員,也就是說對客戶了解系統(tǒng)的功能和流程等并不一定很有效),對系統(tǒng)的代碼框架生成有很好的支持。但對數(shù)據(jù)庫的開發(fā)管理和數(shù)據(jù)庫端的迭代不是很好。

PowerDesigner原來是對數(shù)據(jù)庫建模而發(fā)展起來的一種數(shù)據(jù)庫建模工具。直到7.0版才開始對面向?qū)ο蟮拈_發(fā)的支持,后來又引入了對UML的支持。但是由于PowerDesigner側(cè)重不一樣,所以它對數(shù)據(jù)庫建模的支持很好,支持了能夠看到的90%左右的數(shù)據(jù)庫,對UML的建模使用到的各種圖的支持比較滯后。但是在最近得到加強。所以使用它來進行UML開發(fā)的并不多,很多人都是用它來作為數(shù)據(jù)庫的建模。如果使用UML分析,它的優(yōu)點是生成代碼時對Sybase的產(chǎn)品PowerBuilder的支持很好(其它UML建模工具則沒有或者需要一定的插件),其他面向?qū)ο笳Z言如 C++,Java,VB,C#等支持也不錯。但是它好像繼承了Sybase公司的一貫傳統(tǒng),對中國的市場不是很看看好,所以對中文的支持總是有這樣或那樣的問題。

VISIO原來僅僅是一種畫圖工具,能夠用來描述各種圖形(從電路圖到房屋結(jié)構(gòu)圖),也是到VISIO2000才開始引進軟件分析設(shè)計功能到代碼生成的全部功能,它可以說是目前最能夠用圖形方式來表達各種商業(yè)圖形用途的工具(對軟件開發(fā)中的UML支持僅僅是其中很少的一部分)。它跟微軟的office產(chǎn)品的能夠很好兼容。能夠把圖形直接復(fù)制或者內(nèi)嵌到WORD的文檔中。但是對于代碼的生成更多是支持微軟的產(chǎn)品如VB,VC++,C#,MS SQL Server 等(這也是微軟的傳統(tǒng)),所以它可以說用于圖形語義的描述比較方便,但是用于軟件開發(fā)過程的迭代開發(fā)則有點牽強。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 建模
    +關(guān)注

    關(guān)注

    1

    文章

    312

    瀏覽量

    60802
  • UML
    UML
    +關(guān)注

    關(guān)注

    0

    文章

    122

    瀏覽量

    30876
  • 軟件系統(tǒng)
    +關(guān)注

    關(guān)注

    0

    文章

    63

    瀏覽量

    9511
收藏 人收藏

    評論

    相關(guān)推薦

    【PPT】UML統(tǒng)一建模語言

    本帖最后由 assingle 于 2011-2-22 10:11 編輯 【PPT】UML同意建模語言附件下載:
    發(fā)表于 02-22 10:10

    UML建模工具推薦

    本文推薦五個免費的UML建模工具。對軟件開發(fā)而言,軟件的對象模型有助于他們對軟件的需求以及系統(tǒng)的架構(gòu)和功能進行溝通。
    發(fā)表于 07-19 08:33

    如何用UML建模開發(fā)嵌入式軟件?

    如何用UML建模開發(fā)嵌入式軟件?
    發(fā)表于 04-25 07:58

    利用UML映射工具實現(xiàn)系統(tǒng)可靠性建模

    許多可靠性建模技術(shù)是基于可靠性框圖、故障樹、Markov 鏈等表示方法,但系統(tǒng)架構(gòu)師、產(chǎn)品經(jīng)理和軟件開發(fā)者往往對這些表示方法不太熟悉,他們通常使用統(tǒng)一建模語言UML)來對
    發(fā)表于 05-30 14:00 ?17次下載

    UML在流程工業(yè)優(yōu)化調(diào)度工藝描述系統(tǒng)中的應(yīng)用

    UML在流程工業(yè)優(yōu)化調(diào)度工藝描述系統(tǒng)中的應(yīng)用 結(jié)合建模工具Rational Rose說明如何在系統(tǒng)開發(fā)過程中運用UML建模。通過流程工業(yè)優(yōu)
    發(fā)表于 02-22 16:24 ?22次下載

    基于UML的嵌入式硬件系統(tǒng)模型

    闡述了統(tǒng)一建模語言UML的基本語法結(jié)構(gòu)和基本建模步驟,介紹建模設(shè)計方法中 的層次構(gòu)架模式。參照基本建模
    發(fā)表于 04-19 15:54 ?38次下載
    基于<b class='flag-5'>UML</b>的嵌入式硬件系統(tǒng)模型

    基于UML對象建模的財務(wù)軟件設(shè)計研究

    本篇目的在于研究基于UML對象建模的財務(wù)軟件設(shè)計。基于當(dāng)前UML、財務(wù)軟件設(shè)計相關(guān)知識,能夠去優(yōu)化分析基于UML的財務(wù)軟件設(shè)計相關(guān)需求,開發(fā)設(shè)計一個
    發(fā)表于 11-13 17:16 ?6次下載
    基于<b class='flag-5'>UML</b>對象<b class='flag-5'>建模</b>的財務(wù)軟件設(shè)計研究

    如何使用實時UML的進行雷達軟件的設(shè)計

    實時統(tǒng)一建模語言(UML)和面向?qū)ο蟮?b class='flag-5'>建模技術(shù)代表著雷達軟件設(shè)計的一個發(fā)展方向。文中介紹了使用UML的用例圖、狀態(tài)圖、順序圖等進行系統(tǒng)分析、
    發(fā)表于 03-26 15:09 ?20次下載
    如何使用實時<b class='flag-5'>UML</b>的進行雷達軟件的設(shè)計

    最流行的uml建模工具有哪些

    UnifiedModelingLanguage(UML)又稱統(tǒng)一建模語言或標(biāo)準(zhǔn)建模語言,是始于1997年一個OMG標(biāo)準(zhǔn),它是一個支持模型化和軟件系統(tǒng)開發(fā)的圖形化語言,為軟件開發(fā)的所有階段提供模型化和可視化支持,包括由需求分析到規(guī)
    的頭像 發(fā)表于 09-25 09:37 ?2.7w次閱讀
    最流行的<b class='flag-5'>uml</b><b class='flag-5'>建模</b><b class='flag-5'>工具</b>有哪些

    什么是UML圖?常見的UML工具有哪些?

    例子,來自億圖圖示 需注意,UML是一種建模語言,不是一個開發(fā)過程。常用的作UML圖軟件有plantUML、Graphiz等等,這些都是較為專業(yè)的,這里推薦三款小白式商用繪制
    的頭像 發(fā)表于 06-22 14:10 ?4707次閱讀
    什么是<b class='flag-5'>UML</b>圖?常見的<b class='flag-5'>UML</b>圖<b class='flag-5'>工具</b>有哪些?

    基于實時UML的雷達軟件設(shè)計

    實時統(tǒng)一建模語言 (UML)和面向?qū)ο蟮?b class='flag-5'>建模技術(shù)代表著雷達軟件設(shè)計的一個發(fā)展方向。文中介紹了使用UML的用例圖、狀態(tài)圖、順序圖等進行系統(tǒng)分析
    發(fā)表于 03-26 14:06 ?24次下載

    UML統(tǒng)一建模語言

    UML-Unified Modeling Language 統(tǒng)一建模語言,又稱標(biāo)準(zhǔn)建模語言。是用來對軟件密集系統(tǒng)進行可視化建模的一種語言。UML
    的頭像 發(fā)表于 05-05 10:15 ?911次閱讀
    <b class='flag-5'>UML</b>統(tǒng)一<b class='flag-5'>建模</b>語言

    UML相關(guān)基本知識介紹

    UML - Unified modeling language UML (統(tǒng)一建模語言),是一種用于軟件系統(tǒng)分析和設(shè)計的語 言工具, 用于幫助軟件開發(fā)人員進行思考和記錄思路的結(jié)果。簡單
    的頭像 發(fā)表于 05-05 10:22 ?667次閱讀
    <b class='flag-5'>UML</b>相關(guān)基本知識<b class='flag-5'>介紹</b>

    五個免費UML建模工具介紹

    UML工具很多是商用的,價格不菲;而免費的UML建模工具,功能完善的很少。以下推薦的是五個免費的UML
    的頭像 發(fā)表于 05-05 11:10 ?6327次閱讀
    五個免費<b class='flag-5'>UML</b><b class='flag-5'>建模</b><b class='flag-5'>工具</b><b class='flag-5'>介紹</b>

    UML和繪圖工具Visio解析

    轉(zhuǎn)化成指定的程序語言代碼。 本章介紹通過UML繪圖工具: visio。visio是Windows系統(tǒng)下創(chuàng)建圖表的工具。
    的頭像 發(fā)表于 05-05 11:11 ?1514次閱讀
    <b class='flag-5'>UML</b>和繪圖<b class='flag-5'>工具</b>Visio解析