UML建模工具詳解
本節(jié)繼續(xù)向大家介紹UML建模工具,在軟件開發(fā)過程中需要建立模型,而UML建模工具是比較受開發(fā)人員青睞的,這里向大家介紹一下UML建模工具方面的知識,歡迎大家一起來學(xué)習(xí)。
UML建模工具簡介
一、UML建模工具概述
UnifiedModelingLanguage(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建模工具的主要特點
標(biāo)準(zhǔn)建模語言UML的主要特點可以歸結(jié)為三點:
(1)UML統(tǒng)一了Booch、OMT和OOSE等方法中的基本概念。
(2)UML還吸取了面向?qū)ο蠹夹g(shù)領(lǐng)域中其他流派的長處,其中也包括非OO方法的影響。UML符號表示考慮了各種方法的圖形表示,刪掉了大量易引起混亂的、多余的和極少使用的符號,也添加了一些新符號。因此,在UML中匯入了面向?qū)ο箢I(lǐng)域中很多人的思想。這些思想并不是UML的開發(fā)者們發(fā)明的,而是開發(fā)者們依據(jù)最優(yōu)秀的OO方法和豐富的計算機科學(xué)實踐經(jīng)驗綜合提煉而成的。
(3)UML在演變過程中還提出了一些新的概念。在UML標(biāo)準(zhǔn)中新加了模板(Stereotypes)、職責(zé)(Responsibilities)、擴展機制(Extensibilitymechanisms)、線程(Threads)、過程(Processes)、分布式(Distribution)、并發(fā)(Concurrency)、模式(Patterns)、合作(Collaborations)、活動圖(Activitydiagram)等新概念,并清晰地區(qū)分類型(Type)、類(Class)和實例(Instance)、細(xì)化(Refinement)、接口(Interfaces)和組件(Components)等概念。
因此可以認(rèn)為,UML是一種先進實用的標(biāo)準(zhǔn)建模語言,但其中某些概念尚待實踐來驗證,UML也必然存在一個進化過程。
三、UML建模工具的應(yīng)用領(lǐng)域
UML的目標(biāo)是以面向?qū)ο髨D的方式來描述任何類型的系統(tǒng),具有很寬的應(yīng)用領(lǐng)域。其中最常用的是建立軟件系統(tǒng)的模型,但它同樣可以用于描述非軟件領(lǐng)域的系統(tǒng),如機械系統(tǒng)、企業(yè)機構(gòu)或業(yè)務(wù)過程,以及處理復(fù)雜數(shù)據(jù)的信息系統(tǒng)、具有實時要求的工業(yè)系統(tǒng)或工業(yè)過程等??傊琔ML是一個通用的標(biāo)準(zhǔn)建模語言,可以對任何具有靜態(tài)結(jié)構(gòu)和動態(tài)行為的系統(tǒng)進行建模。
此外,UML建模工具適用于系統(tǒng)開發(fā)過程中從需求規(guī)格描述到系統(tǒng)完成后測試的不同階段。在需求分析階段,可以用用例來捕獲用戶需求。通過用例建模,描述對系統(tǒng)感興趣的外部角色及其對系統(tǒng)(用例)的功能要求。分析階段主要關(guān)心問題域中的主要概念(如抽象、類和對象等)和機制,需要識別這些類以及它們相互間的關(guān)系,并用UML類圖來描述。為實現(xiàn)用例,類之間需要協(xié)作,這可以用UML動態(tài)模型來描述。在分析階段,只對問題域的對象(現(xiàn)實世界的概念)建模,而不考慮定義軟件系統(tǒng)中技術(shù)細(xì)節(jié)的類(如處理用戶接口、數(shù)據(jù)庫、通訊和并行性等問題的類)。這些技術(shù)細(xì)節(jié)將在設(shè)計階段引入,因此設(shè)計階段為構(gòu)造階段提供更詳細(xì)的規(guī)格說明。
編程(構(gòu)造)是一個獨立的階段,其任務(wù)是用面向?qū)ο缶幊陶Z言將來自設(shè)計階段的類轉(zhuǎn)換成實際的代碼。在用UML建模工具建立分析和設(shè)計模型時,應(yīng)盡量避免考慮把模型轉(zhuǎn)換成某種特定的編程語言。因為在早期階段,模型僅僅是理解和分析系統(tǒng)結(jié)構(gòu)的工具,過早考慮編碼問題十分不利于建立簡單正確的模型。
UML模型還可作為測試階段的依據(jù)。系統(tǒng)通常需要經(jīng)過單元測試、集成測試、系統(tǒng)測試和驗收測試。不同的測試小組使用不同的UML圖作為測試依據(jù):單元測試使用類圖和類規(guī)格說明;集成測試使用部件圖和合作圖;系統(tǒng)測試使用用例圖來驗證系統(tǒng)的行為;驗收測試由用戶進行,以驗證系統(tǒng)測試的結(jié)果是否滿足在分析階段確定的需求。
總之,標(biāo)準(zhǔn)建模語言UML適用于以面向?qū)ο蠹夹g(shù)來描述任何類型的系統(tǒng),而且適用于系統(tǒng)開發(fā)的不同階段,從需求規(guī)格描述直至系統(tǒng)完成后的測試和維護。
【編輯推薦】