主要模型
前言
在UML系統開發中有三個主要的模型:
功能模型
從用戶的角度展示系統的功能,包括用例圖。
對象模型
採用對象、屬性、操作、關聯等概念展示系統的結構和基礎,包括類圖、對象圖、包圖。
動態模型
展現系統的內部行為。 包括序列圖、活動圖、狀態圖。
圖的功用
綜述
UML是資料庫設計過程中,在E-R圖(實體-聯繫圖)的設計後的進一步建模。要了解一下UML設計中有的圖例及基本作用。首先對UML中的各個圖的功用做一個簡單介紹:
用例圖
描述角色以及角色與用例之間的連線關係。說明的是誰要使用系統,以及他們使用該系統可以做些什麼。一個用例圖包含了多個模型元素,如系統、參與者和用例,並且顯示了這些元素之間的各種關係,如泛化、關聯和依賴。
類圖
類圖是描述系統中的類,以及各個類之間的關係的靜態視圖。能夠讓我們在正確編寫代碼以前對系統有一個全面的認識。類圖是一種模型類型,確切的說,是一種靜態模型類型。類圖表示類、接口和它們之間的協作關係。
對象圖
與類圖極為相似,它是類圖的實例,對象圖顯示類的多個對象實例,而不是實際的類。它描述的不是類之間的關係,而是對象之間的關係。
包圖
包圖用於描述系統的分層結構,由包或類組成,表示包與包之間的關係。
活動圖
描述用例要求所要進行的活動,以及活動間的約束關係,有利於識別並行活動。能夠演示出系統中哪些地方存在功能,以及這些功能和系統中其他組件的功能如何共同滿足前面使用用例圖建模的商務需求。
狀態圖
描述類的對象所有可能的狀態,以及事件發生時狀態的轉移條件。可以捕獲對象、子系統和系統的生命周期。他們可以告知一個對象可以擁有的狀態,並且事件(如訊息的接收、時間的流逝、錯誤、條件變為真等)會怎么隨著時間的推移來影響這些狀態。一個狀態圖應該連線到所有具有清晰的可標識狀態和複雜行為的類;該圖可以確定類的行為,以及該行為如何根據當前的狀態變化,也可以展示哪些事件將會改變類的對象的狀態。狀態圖是對類圖的補充。
序列圖
(順序圖)
序列圖是用來顯示你的參與者如何以一系列順序的步驟與系統的對象互動的模型。順序圖可以用來展示對象之間是如何進行互動的。順序圖將顯示的重點放在訊息序列上,即強調訊息是如何在對象之間被傳送和接收的。
協作圖
和序列圖相似,顯示對象間的動態合作關係。可以看成是類圖和順序圖的交集,協作圖建模對象或者角色,以及它們彼此之間是如何通信的。如果強調時間和順序,則使用序列圖;如果強調上下級關係,則選擇協作圖;這兩種圖合稱為互動圖。
構件圖
(組件圖)
描述代碼構件的物理結構以及各種構建之間的依賴關係。用來建模軟體的組件及其相互之間的關係,這些圖由構件標記符和構件之間的關係構成。在組件圖中,構件是軟體單個組成部分,它可以是一個檔案,產品、執行檔和腳本等。
部署圖
(配置圖)
是用來建模系統的物理部署。例如計算機和設備,以及它們之間是如何連線的。部署圖的使用者是開發人員、系統集成人員和測試人員。部署圖用於表示一組物理結點的集合及結點間的相互關係,從而建立了系統物理層面的模型。
一:這十種模型圖各有側重,
1:用例圖側重描述用戶需求,
2:類圖側重描述系統具體實現;
二:描述的方面都不相同,
1:類圖描述的是系統的結構,
2:序列圖描述的是系統的行為;
三:抽象的層次也不同,
1:構件圖描述系統的模組結構,抽象層次較高,
2:類圖是描述具體模組的結構,抽象層次一般,
3:對象圖描述了具體的模組實現,抽象層次較低。
在有的文獻書籍中,將這九種模型圖分為三大類:
結構分類、動態行為和模型管理:
1:結構分類包括用例圖、類圖、對象圖、構件圖和部署圖,
2:動態行為包括狀態圖、活動圖、順序圖和協作圖,
3:模型管理則包含類圖。