UML建模-面向?qū)ο笤O(shè)計(jì):為什么要學(xué)習(xí)UML
來源:易賢網(wǎng) 閱讀:1344 次 日期:2014-07-23 17:47:41
溫馨提示:易賢網(wǎng)小編為您整理了“UML建模-面向?qū)ο笤O(shè)計(jì):為什么要學(xué)習(xí)UML”,方便廣大網(wǎng)友查閱!

一、為什么要學(xué)習(xí)UML

UML是Unified Modeling Language(統(tǒng)一建模語(yǔ)言)的簡(jiǎn)稱。UML是對(duì)軟件密集型系統(tǒng)中的制品進(jìn)行可視化、詳述、構(gòu)造和文檔化的語(yǔ)言。制品{Artifact}是指軟件開發(fā)過程中產(chǎn)生的各種各樣的產(chǎn)物,如模型、源代碼、測(cè)試用例等。

1) UML建模可以達(dá)到以下目的:

2) 使用模型可以更好地理解問題

3)使用模型可以加強(qiáng)人員之間的溝通

4)使用模型可以更早地發(fā)現(xiàn)錯(cuò)誤或疏漏的地方

5)使用模型可以獲得設(shè)計(jì)結(jié)果

6)模型為最后的代碼提供依據(jù)

二、UML的歷史

1997年,OMG組織(Object Management Group對(duì)象管理組織)發(fā)布了統(tǒng)一建模語(yǔ)言(Unified Modeling Language,UML)。UML的目標(biāo)之一就是為開發(fā)團(tuán)隊(duì)提供標(biāo)準(zhǔn)通用的設(shè)計(jì)語(yǔ)言來開發(fā)和構(gòu)建計(jì)算機(jī)應(yīng)用。UML提出了一套IT專業(yè)人員期待多年的統(tǒng)一的標(biāo)準(zhǔn)建模符號(hào)。通過使用UML,這些人員能夠閱讀和交流系統(tǒng)架構(gòu)和設(shè)計(jì)規(guī)劃--就像建筑工人多年來所使用的建筑設(shè)計(jì)圖一樣。

2003年,UML已經(jīng)獲得了業(yè)界的認(rèn)同。在所見過的專業(yè)人員的簡(jiǎn)歷中,75%都聲稱具備UML的知識(shí)。然而,在同絕大多數(shù)求職人員面談之后,可以明顯地看出他們并不真正了解UML。通常地,他們將UML用作一個(gè)術(shù)語(yǔ),或?qū)ML一知半解。大家對(duì)UML缺乏理解的這種狀況,促進(jìn)我撰寫這篇關(guān)于UML 1.4的快速入門文章。當(dāng)閱讀完本文時(shí),您還不具備足夠的知識(shí)可以在簡(jiǎn)歷上聲稱自己掌握了UML,但是您已具有了進(jìn)一步鉆研該語(yǔ)言的良好起點(diǎn)。

圖片一

三、UML的特點(diǎn)

1)UML的主要特點(diǎn)包括:

2)統(tǒng)一的標(biāo)準(zhǔn)

3)面向?qū)ο?。UML是支持面向?qū)ο筌浖_發(fā)的建模語(yǔ)言。

4)可視化、表現(xiàn)能力強(qiáng)

5)獨(dú)立于過程,UML不依賴于特定的軟件開發(fā)過程。

6)概念明確,建模表示法簡(jiǎn)潔,圖形結(jié)構(gòu)清晰,容易掌握和使用。

網(wǎng)頁(yè)制作Webjx文章簡(jiǎn)介:UML是Unified Modeling Language(統(tǒng)一建模語(yǔ)言)的簡(jiǎn)稱。UML是對(duì)軟件密集型系統(tǒng)中的制品進(jìn)行可視化、詳述、構(gòu)造和文檔化的語(yǔ)言。制品{Artifact}是指軟件開發(fā)過程中產(chǎn)生的各種各樣的產(chǎn)物,如模型、源代碼、測(cè)試用例等。

四、UML中的視圖

UML中的視圖包括用例視圖(Use Case View)、邏輯視圖(Logical View)、實(shí)現(xiàn)視圖(Implementation View)、進(jìn)程視圖(Process View)、部署視圖(Deployment View)等,這5個(gè)視圖被稱作”4+1”視圖.如下圖所示:

圖片二

邏輯視圖。邏輯視圖關(guān)注功能,不僅包括用戶可見的功能,還包括為實(shí)現(xiàn)用戶功能而必須提供的"輔助功能模塊";它們可能是邏輯層、功能模塊等。

開發(fā)視圖。開發(fā)視圖關(guān)注程序包,不僅包括要編寫的源程序,還包括可以直接使用的第三方SDK和現(xiàn)成框架、類庫(kù),以及開發(fā)的系統(tǒng)將運(yùn)行于其上的系統(tǒng)軟件或中間件。開發(fā)視圖和邏輯視圖之間可能存在一定的映射關(guān)系:比如邏輯層一般會(huì)映射到多個(gè)程序包等。

處理視圖。處理視圖關(guān)注進(jìn)程、線程、對(duì)象等運(yùn)行時(shí)概念,以及相關(guān)的并發(fā)、同步、通信等問題。處理視圖和開發(fā)視圖的關(guān)系:開發(fā)視圖一般偏重程序包在編譯時(shí)期的靜態(tài)依賴關(guān)系,而這些程序運(yùn)行起來之后會(huì)表現(xiàn)為對(duì)象、線程、進(jìn)程,處理視圖比較關(guān)注的正是這些運(yùn)行時(shí)單元的交互問題。

物理視圖。物理視圖關(guān)注"目標(biāo)程序及其依賴的運(yùn)行庫(kù)和系統(tǒng)軟件"最終如何安裝或部署到物理機(jī)器,以及如何部署機(jī)器和網(wǎng)絡(luò)來配合軟件系統(tǒng)的可靠性、可伸縮性等要求。物理視圖和處理視圖的關(guān)系:處理視圖特別關(guān)注目標(biāo)程序的動(dòng)態(tài)執(zhí)行情況,而物理視圖重視目標(biāo)程序的靜態(tài)位置問題;物理視圖是綜合考慮軟件系統(tǒng)和整個(gè)IT系統(tǒng)相互影響的架構(gòu)視圖。

五、UML建模工具

市面上UML建模工具很多,比較流行的有Rational Rose ,Microsoft Visio、Enterprise Architect 、Visual UML等?!禪ML建模-面向?qū)ο笤O(shè)計(jì)》系列文章使用的UML建模工具是Enterprise Architect 7.0,此工具還是比較好用的。

六、UML的應(yīng)用領(lǐng)域

UML具有很廣泛的應(yīng)用領(lǐng)域,其中最常用的是為軟件系統(tǒng)建模,主要領(lǐng)域有:企業(yè)信息系統(tǒng)、銀行金融系統(tǒng)、電信、交通、國(guó)防、航空、零售領(lǐng)域、科學(xué)計(jì)算、分布式的基于Web的服務(wù)。UML還可以用來描述其他非軟件系統(tǒng),比如一個(gè)機(jī)構(gòu)的組成和機(jī)構(gòu)的工作流程等等。

七、UML的構(gòu)成

《UML建模-面向?qū)ο笤O(shè)計(jì)》系列文章描述了常見的一些UML圖,主要包括了用例圖(Use Case Diagram)、類圖(Class Diagram)、活動(dòng)圖(Activity Diagram)、時(shí)序圖(Sequence Diagram)、狀態(tài)圖(Statechart Machine Diagram)、部署圖(Deployment Diagram)、業(yè)務(wù)處理模型(Business Process Model)、數(shù)據(jù)建模(Data Modeling Diagram)等等。

1、需求階段如何書寫Use Case

用例描述文檔的書寫是系統(tǒng)分析人員對(duì)用戶需求的深刻理解的體現(xiàn)。是后期時(shí)序圖和實(shí)際開發(fā)的重要依據(jù)。也可以對(duì)作為項(xiàng)目估算的依據(jù),以及根據(jù)UC復(fù)雜度和開發(fā)周期來衡量開發(fā)人員的工作效率。因此UC的書寫規(guī)范及其重要,就工作用的一些經(jīng)驗(yàn),比如書寫格式、書寫內(nèi)容及其注意事項(xiàng)與大家分享。

網(wǎng)頁(yè)制作Webjx文章簡(jiǎn)介:UML是Unified Modeling Language(統(tǒng)一建模語(yǔ)言)的簡(jiǎn)稱。UML是對(duì)軟件密集型系統(tǒng)中的制品進(jìn)行可視化、詳述、構(gòu)造和文檔化的語(yǔ)言。制品{Artifact}是指軟件開發(fā)過程中產(chǎn)生的各種各樣的產(chǎn)物,如模型、源代碼、測(cè)試用例等。

2、設(shè)計(jì)階段如何畫用例圖(Use-Case Diagram)

例試圖描概括了用例中角色和系統(tǒng)之間的關(guān)系,描述了系統(tǒng)功能需求,角色和系統(tǒng)的交互以及系統(tǒng)的反應(yīng)。是客戶和開發(fā)人員全貌理解項(xiàng)目需求功能比較好的一個(gè)方式,也是后續(xù)功能迭代的依據(jù)和方向。

3、類與類之間的關(guān)系圖(Class Diagram,UML圖)

本文針對(duì)類之間常用的關(guān)系進(jìn)行了簡(jiǎn)單的描述,主要有:關(guān)聯(lián)關(guān)系、泛化、依賴、聚合和組合。

4、UML建模之活動(dòng)圖介紹(Activity Diagram)

活動(dòng)圖描述的是對(duì)象活動(dòng)的順序關(guān)系所遵循的規(guī)則,它著重表現(xiàn)的是系統(tǒng)的行為,而非系統(tǒng)的處理過程?;顒?dòng)圖能夠表示并發(fā)活動(dòng)的情形,活動(dòng)圖是面向?qū)ο蟮摹?/P>

5、UML建模之狀態(tài)圖(Statechart Diagram)

狀態(tài)圖重點(diǎn)在于描述對(duì)象的狀態(tài)及其狀態(tài)之間的轉(zhuǎn)移,狀態(tài)圖的基本元素主要有:狀態(tài)、轉(zhuǎn)移、動(dòng)作、自身轉(zhuǎn)移、組合狀態(tài)、進(jìn)入節(jié)點(diǎn)、退出節(jié)點(diǎn)、歷史狀態(tài)、并發(fā)區(qū)域等,狀態(tài)中的事件分為調(diào)用事件(Call)、變化事件(Change)、時(shí)間事件(Time)和信號(hào)事件(Singal)。最后以實(shí)例對(duì)狀態(tài)對(duì)進(jìn)行了分析。

6、UML建模之時(shí)序圖(Sequence Diagram)

時(shí)序圖(Sequence Diagram)是顯示對(duì)象之間交互的圖,這些對(duì)象是按時(shí)間順序排列的。順序圖中顯示的是參與交互的對(duì)象及其對(duì)象之間消息交互的順序。時(shí)序圖中包括的建模元素主要有:對(duì)象(Actor)、生命線(Lifeline)、控制焦點(diǎn)(Focus of control)、消息(Message)等等。最后,以課程創(chuàng)建功能演示一時(shí)序圖實(shí)例。

7、UML建模之業(yè)務(wù)處理模型(Business Process Model,BPM)

業(yè)務(wù)處理模型是一組活動(dòng)的集合,描述了活動(dòng)從開始到結(jié)束在時(shí)間或者空間上的順序,以及輸入和輸出。業(yè)務(wù)處理模型最終輸出要能夠滿足業(yè)務(wù)需要。包括輸入、輸出、資源、消息和目標(biāo)等元素。最后以實(shí)例進(jìn)一步說明了業(yè)務(wù)邏輯模型。

8、UML建模之?dāng)?shù)據(jù)建模(Data Model Diagram)

主要介紹了數(shù)據(jù)庫(kù)建模所涉及建模元素,主要包括模式 Schema、主鍵 Primary、外鍵 Foreign key、關(guān)系 Relationship、約束 constraint、索引 Index、觸發(fā)器 Trigger、存儲(chǔ)過程 Stored Procedure、視圖 View等等,并配以實(shí)例加以說明。

八、總結(jié)

至此,《UML建模-面向?qū)ο笤O(shè)計(jì)》系列文章已經(jīng)寫完,UML建模也就告一段落,在整理這些文中的過程中,參考了許多國(guó)內(nèi)外有價(jià)值的文章,在此對(duì)這些文章的作者表示感謝。在寫這些文章的過程中也得到園子里朋友的鼓勵(lì)和支持,是你們的支持和鼓勵(lì)使的我寫文章更加有士氣和信心,在此表示感謝。希望《UML建模-面向?qū)ο笤O(shè)計(jì)》系列文章對(duì)園子里的朋友有幫助,并希望園子里的朋友批評(píng)指正。后續(xù)還會(huì)發(fā)布一些《Net設(shè)計(jì)模式》系列的文章,主要是以設(shè)計(jì)原理,實(shí)例,源碼的方式說明各個(gè)設(shè)計(jì)模式,請(qǐng)大家關(guān)注,再此感謝。最后以一本UML書中的一個(gè)例子結(jié)束:

如果以建造房子比喻,那么學(xué)習(xí)UML的過程,就是學(xué)習(xí)如何從建筑工人成長(zhǎng)為建筑師的過程。一個(gè)軟件工程師不能簡(jiǎn)單地只是掌握堆砌磚瓦的技術(shù),還應(yīng)該有設(shè)計(jì)高樓大廈的能力。

更多信息請(qǐng)查看IT技術(shù)專欄

更多信息請(qǐng)查看網(wǎng)頁(yè)制作
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!
相關(guān)閱讀網(wǎng)頁(yè)制作

2025國(guó)考·省考課程試聽報(bào)名

  • 報(bào)班類型
  • 姓名
  • 手機(jī)號(hào)
  • 驗(yàn)證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡(jiǎn)要咨詢 | 簡(jiǎn)要咨詢須知 | 加入群交流 | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號(hào):滇ICP備2023014141號(hào)-1 云南省教育廳備案號(hào):云教ICP備0901021 滇公網(wǎng)安備53010202001879號(hào) 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號(hào)
云南網(wǎng)警備案專用圖標(biāo)
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號(hào):hfpxwx
咨詢QQ:526150442(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報(bào)警專用圖標(biāo)