1. 程式人生 > >UML建模語言7種圖(以銀行ATM系統為例)

UML建模語言7種圖(以銀行ATM系統為例)

1 用例圖:
       描述了系統提供的一個功能單元。以一種視覺化的方式理解系統的功能需求,"角色"與系統內用例之間的關係。
       本例中,參與者"銀行儲戶"和ATM機。簡化後的ATM機僅有取款、存款及其餘功能。其餘功能不做詳細說明。

2 類圖:
        顯示系統的靜態結構。邏輯類、實現類,實現類就是程式設計師處理的實體。類在類圖上使用包含三個部分的矩形來描述,如圖2所示。最上面的部分顯示類的名稱,中間部分包含類的屬性,最下面的部分包含類的操作(或者說"方法")。
       本例中許多單個的帳戶組成了帳戶庫,帳戶具有帳戶型別、帳戶號、餘額三個屬性。許多銀行儲戶組成了儲戶庫。ATM系統包含了許多ATM機。銀行儲戶及ATM機兩個類包含哪些屬性,哪些操作,它們的可見性及操作的返回型別、引數個數、引數型別從類圖上都一目瞭然。通過類圖不僅可以使設計者明確的表達自己的設計意圖,也能幫助自己整理思路,充實及優化自己的設計。

3 序列圖:
       顯示具體用例(或者是用例的一部分)的詳細流程。它幾乎是自描述的,並且顯示了流程中中不同物件之間的呼叫關係,同時還可以很詳細地顯示對不同物件的不同調用。 序列圖有兩個維度:垂直維度以發生的時間順序顯示訊息/呼叫的序列;水平維度顯示訊息被髮送到的物件例項。 
       本例以時間為順序描述了顧客在ATM機上取款時資訊的流動情況,順序圖著重於物件間訊息傳遞的時間順序。

4 狀態圖:
       表示某個類所處的不同狀態和該類的狀態轉換資訊。包括5個基本元素:初始起點,它使用實心圓來繪製;狀態之間的轉換,它使用具有開箭頭的線段來繪製;狀態,它使用圓角矩形來繪製;判斷點,它使用空心圓來繪製;以及一個或者多個終止點,它們使用內部包含實心圓的圓來繪製。
       本例描述了顧客在ATM機上進行操作會經歷的幾種狀態,及各種狀態之間轉換的條件。因為是簡化了的例子,所以除了等待顧客插入磁卡的起始狀態和結束服務的終止狀態,顧客會處於輸入密碼、選擇服務型別、存款及取款四種狀態。

5 活動圖:
       表示在處理某個活動時,兩個或者更多類物件之間的過程控制流。適合用於對較高級別的過程建模,比如公司當前在如何運作業務,作為一種選擇,活動可以分組為泳道(swimlane),泳道用於表示實際執行活動的物件。
        順序圖著重時間的順序,而活動圖側重於各部分之間的相互制約,對於一些並行的活動能夠有效的表示出來。

6 元件圖:
      提供系統的物理檢視,顯示系統中的軟體對其他軟體元件(例如,庫函式)的依賴關係。
7 部署圖:
       表示該軟體系統如何部署到硬體環境中。用途是顯示該系統不同的元件將在何處物理地執行,以及它們將如何彼此通訊。
      部署圖(協作圖)著重於表達物件之間的靜態連線關,與順序圖上的訊息傳遞是一一對應的。