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