經(jīng)驗(yàn)總結(jié) 深入學(xué)習(xí)最常用UML圖的使用
本文和大家重點(diǎn)討論一下常用UML圖的概念,UML狀態(tài)圖表示某個(gè)類所處的不同狀態(tài)和該類的狀態(tài)轉(zhuǎn)換信息,而活動(dòng)圖表示在處理某個(gè)活動(dòng)時(shí),兩個(gè)或者更多類對(duì)象之間的過程控制流。具體內(nèi)容請(qǐng)看詳細(xì)介紹。
最常用UML圖
用例圖
用例圖從用戶的角度描述了系統(tǒng)提供的一個(gè)功能單元。用例圖的主要目的是幫助開發(fā)團(tuán)隊(duì)以一種可視化的方式理解系統(tǒng)的功能需求,包括基于基本流程的角色(actors,也就是與系統(tǒng)交互的其他實(shí)體)關(guān)系,以及系統(tǒng)內(nèi)用例之間的關(guān)系。
類圖
類圖表示不同的實(shí)體(人、事物和數(shù)據(jù))如何彼此相關(guān);換句話說,它顯示了系統(tǒng)的靜態(tài)結(jié)構(gòu)。常用UML圖中類圖可用于表示邏輯類,邏輯類通常就是業(yè)務(wù)人員所談及的事物種類;類圖還可用于表示實(shí)現(xiàn)類,實(shí)現(xiàn)類就是程序員處理的實(shí)體。實(shí)現(xiàn)類圖或許會(huì)與邏輯類圖顯示一些相同的類。然而,實(shí)現(xiàn)類圖不會(huì)使用相同的屬性來描述,因?yàn)樗芸赡芫哂袑?duì)諸如Vector和HashMap這種事物的引用。
序列圖
常用UML圖中序列圖顯示具體用例(或者是用例的一部分)的詳細(xì)流程。它幾乎是自描述的,并且顯示了流程中中不同對(duì)象之間的調(diào)用關(guān)系,同時(shí)還可以很詳細(xì)地顯示對(duì)不同對(duì)象的不同調(diào)用。序列圖有兩個(gè)維度:垂直維度以發(fā)生的時(shí)間順序顯示消息/調(diào)用的序列;水平維度顯示消息被發(fā)送到的對(duì)象實(shí)例。
狀態(tài)圖
狀態(tài)圖表示某個(gè)類所處的不同狀態(tài)和該類的狀態(tài)轉(zhuǎn)換信息。有人可能會(huì)爭(zhēng)論說每個(gè)類都有狀態(tài),但不是每個(gè)類都應(yīng)該有一個(gè)狀態(tài)圖。只對(duì)感興趣的狀態(tài)的類(也就是說,在系統(tǒng)活動(dòng)期間具有三個(gè)或更多潛在狀態(tài)的類)才進(jìn)行狀態(tài)圖描述。
活動(dòng)圖
活動(dòng)圖表示在處理某個(gè)活動(dòng)時(shí),兩個(gè)或者更多類對(duì)象之間的過程控制流。常用UML圖中活動(dòng)圖可用于在業(yè)務(wù)單元的級(jí)別上對(duì)更高級(jí)別的業(yè)務(wù)過程進(jìn)行建模,或者對(duì)低級(jí)別的內(nèi)部類操作進(jìn)行建模。與序列圖相比,活動(dòng)圖在表示上不夠技術(shù)性的,但有業(yè)務(wù)頭腦的人們往往能夠更快速地理解它們。
構(gòu)件圖
構(gòu)件圖提供系統(tǒng)的物理視圖。常用UML圖中構(gòu)件圖的用途是顯示系統(tǒng)中的軟件對(duì)其他軟件構(gòu)件(例如,庫函數(shù))的依賴關(guān)系。構(gòu)件圖可以在一個(gè)非常高的層次上顯示,從而僅顯示粗粒度的構(gòu)件,也可以在構(gòu)件包層次上顯示。
部署圖
部署圖表示該軟件系統(tǒng)如何部署到硬件環(huán)境中。它的用途是顯示該系統(tǒng)不同的組件將在何處物理地運(yùn)行,以及它們將如何彼此通信。因?yàn)椴渴饒D是對(duì)物理運(yùn)行情況進(jìn)行建模,系統(tǒng)的生產(chǎn)人員就可以很好地利用這種圖。
【編輯推薦】