UML基礎專題 UML狀態圖與UML活動圖詳解
本文和大家重點討論一下UML狀態圖與UML活動圖,UML狀態圖表示某個類所處的不同狀態和該類的狀態轉換信息。而UML活動圖表示在處理某個活動時,兩個或者更多類對象之間的過程控制流。
UML基礎專題之UML狀態圖與UML活動圖
UML狀態圖
UML狀態圖表示某個類所處的不同狀態和該類的狀態轉換信息。每個類都有狀態,但不是每個類都應該有一個UML狀態圖。只有當行為的改變和狀態有關時才創建UML狀態圖。一般只描述在系統活動期間具有三個或更多潛在狀態的類的UML狀態圖。
UML狀態圖的符號集包括5個基本元素:初始起點,它使用實心圓來繪制;狀態之間的轉換,它使用帶箭頭的線段來繪制;狀態,它使用圓角矩形來繪制;判斷點,它使用空心圓來繪制;一個或者多個終止點,它們使用內部包含實心圓的圓來繪制。要想繪制UML狀態圖,首先需要繪制起點和一條指向該類的初始狀態的轉換線段。狀態本身可以在圖上的任意位置繪制,然后只需使用狀態轉換線條將它們連接起來。
下圖顯示了一個培訓班的UML狀態圖。圖的中心有一個判斷點,如果有學員退學,則需要判斷是否還有學員繼續學習:如果還有,則培訓班繼續,否則只好被迫停止。
一個培訓班的UML狀態圖
序列圖示例
UML活動圖
UML活動圖表示在處理某個活動時,兩個或者更多類對象之間的過程控制流。UML活動圖可用于在業務單元的級別上對更高級別的業務過程進行建模,或者對低級別的內部類操作進行建模。
UML活動圖的符號集與UML狀態圖中使用的符號集類似。像UML狀態圖一樣,UML活動圖也從一個連接到初始活動的實心圓開始。活動是通過一個圓角矩形(活動的名稱包含在其內)來表示的。活動可以通過轉換線段連接到其他活動,或者連接到判斷點,這些判斷點連接到由判斷點的條件所保護的不同活動。結束過程的活動連接到一個終止點(就像在UML狀態圖中一樣)。作為一種選擇,活動可以分組為泳道(swimlane),泳道用于表示實際執行活動的對象。
圖6-10中顯示的UML活動圖有兩個泳道,因為有兩個對象控制著各自的活動:樂隊經理和報告工具。整個過程首先從樂隊經理選擇查看他的樂隊銷售報告開始。然后報告工具檢索并顯示他管理的所有樂隊,并要求他從中選擇一個樂隊。在樂隊經理選擇一個樂隊之后,報告工具就檢索銷售信息并顯示銷售報告。該UML活動圖表明,顯示報告是整個過程中的***一步。
【編輯推薦】