新聞中心
本節(jié)向大家介紹一下統(tǒng)一建模語言UML,主要包括UML基本概念和功能兩大部分內(nèi)容,希望通過本節(jié)的學(xué)習(xí)大家能夠掌握統(tǒng)一建模語言UML的一些基本知識(shí)。

目前創(chuàng)新互聯(lián)公司已為上千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管、網(wǎng)站托管維護(hù)、企業(yè)網(wǎng)站設(shè)計(jì)、富順網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
統(tǒng)一建模語言UML概述
1.基本概念
UML(統(tǒng)一建模語言,UnifiedModelingLanguage)是OMG(ObjectManagementGroup)組織在1997年發(fā)表的圖標(biāo)式軟件設(shè)計(jì)語言,是一個(gè)繪制軟件概念圖的圖形化記法(notation)。人們可以用它繪制圖形,用這些圖形來表示一個(gè)計(jì)劃進(jìn)行的軟件設(shè)計(jì)的問題域,或者用這些圖來表示一個(gè)已經(jīng)完成的軟件實(shí)現(xiàn)。
統(tǒng)一建模語言UML綜合了當(dāng)時(shí)很多種已存在的面向?qū)ο蟮慕UZ言、方法和過程,主要包括:
BoochMethod
Object-OrientedSoftwareEngineening
Schlaer-Mellor
Coad-Yourdon
ObjectModeingTechnique
UML可分為三個(gè)種不同的層次:概念層(Conceptual)、規(guī)格說明層(Specification)和實(shí)現(xiàn)層(Implementation)
概念層上的圖形與源代碼沒有什么嚴(yán)格的關(guān)系,它們與人類自然語言相關(guān)。它們是用來描述有關(guān)已經(jīng)存在的人類的問題領(lǐng)域的概念和抽象的速記。它們無須遵從嚴(yán)格的語義規(guī)則,因此它們的意思理解會(huì)有歧義、主題可被解釋。
規(guī)格說明層和實(shí)現(xiàn)層的圖形與源代碼有明顯的關(guān)系,實(shí)際上,規(guī)格說明層的圖是準(zhǔn)備用來轉(zhuǎn)換成成源代碼的,類似地,實(shí)現(xiàn)層的圖是打算用來描述已經(jīng)存在的源代碼的。在這些層次的圖形,有許多規(guī)則和語義學(xué)要遵從,這些圖較少有歧義,基本上都有嚴(yán)格的格式。
舉例:一條狗(Dog)是一只動(dòng)物(Animal)。
表示這句話的一個(gè)概念層次的統(tǒng)一建模語言UML圖如下
這個(gè)圖描繪了通過泛化(generalization)關(guān)系連接起來的稱為Animal(動(dòng)物)和Dog(狗)的兩個(gè)實(shí)體。Animal是Dog的泛化,一條Dog是一種特定的Animal。這是所有這張圖的意義了,沒有什么其他意思可以從中推斷出來了。這個(gè)概念模型沒有涉及任何有關(guān)計(jì)算機(jī)、數(shù)據(jù)處理和程序。我們可以聲稱,我們的寵物狗是一只動(dòng)物,我們或者可以談到屬于動(dòng)物界的生物學(xué)的分類上去。因此,這張圖是主題可解釋的。
不過,這張圖在規(guī)格說明層次和實(shí)現(xiàn)層次上有更明確的意思:
這些代碼定義了通過繼承關(guān)系連接的Animal類和Dog類,這個(gè)規(guī)格說明模型描述了程序的一部分。
一個(gè)概念層次上的圖沒有定義源代碼,也不應(yīng)該去定義源代碼。一個(gè)描述了某個(gè)問題解決方法的規(guī)格說明層次的圖,也不會(huì)去尋找任何像概念層那樣的問題的描述。
2.統(tǒng)一建模語言UML的功能
對(duì)一個(gè)軟件系統(tǒng)來說,UML具有以下主要功能[BOOCH99]:可視化功能;說明功能;建造功能和文檔化功能。
可視化(Visualizing)功能
這是非常有價(jià)值的,從一個(gè)可視化的圖上去評(píng)估一個(gè)系統(tǒng)的依存結(jié)構(gòu)比從代碼中去評(píng)估容易多了。
可視化可以促進(jìn)對(duì)問題的理解,并且方便設(shè)計(jì)師彼此交流和溝通。
可以比較容易的發(fā)現(xiàn)設(shè)計(jì)圖中可能存在的邏輯錯(cuò)誤,避免和減少意外發(fā)生。
說明(Specifying)功能
提供了一種通用的,精確的,沒有歧義的機(jī)制,來對(duì)一個(gè)軟件系統(tǒng)進(jìn)行說明。
建造(Costructing)功能
UML提供了自己的標(biāo)準(zhǔn)語法規(guī)則,可以使用建模工具軟件對(duì)一個(gè)系統(tǒng)設(shè)計(jì)模型進(jìn)行解釋,并將設(shè)計(jì)模型映射到計(jì)算機(jī)語言(如Java)上。也就是說,可以加快系統(tǒng)的設(shè)計(jì),實(shí)現(xiàn)過程。
通過統(tǒng)一建模語言UML可以反映系統(tǒng)的總貌。這樣,當(dāng)系統(tǒng)設(shè)計(jì)首先完成后,可以比較容易的發(fā)現(xiàn)可以復(fù)用的部分,從而降低開發(fā)成本。
文檔化(Documenting)功能
使用統(tǒng)一建模語言UML進(jìn)行設(shè)計(jì)可以同時(shí)產(chǎn)生系統(tǒng)設(shè)計(jì)文檔。文檔可以幫助開發(fā)人員更快的熟悉系統(tǒng),節(jié)省學(xué)習(xí)時(shí)間。
分享標(biāo)題:統(tǒng)一建模語言UML概念和功能簡介
分享鏈接:http://fisionsoft.com.cn/article/dhdgdei.html


咨詢
建站咨詢
