圖例解析三大UML圖用法
本文和大家重點討論一下UML圖的概念,這里主要向大家描述一下UML狀態圖,活動圖,組件和部署圖的用法,相信通過本文的學習你對這幾種UML圖的用法有初步的認識。
UML狀態圖
對象擁有行為和狀態。對象的狀態是由對象當前的行動和條件決定的。UML圖中狀態圖statechartdiagram顯示出了對象可能的狀態以及由狀態改變而導致的轉移。
我們的模型例圖建立了一個銀行的在線登錄系統。登錄過程包括輸入合法的密碼和個人賬號,再提交給系統驗證信息。
登錄系統可以被劃分為四種不重疊的狀態:GettingSSN,GettingPIN,Validating,以及Rejecting。每個狀態都有一套完整的轉移transitions來決定狀態的順序。
狀態是用圓角矩形來表示的。轉移則是使用帶箭頭的連線表示。觸發轉移的事件或者條件寫在箭頭的旁邊。我們的圖上有兩個自轉移。一個是在GettingSSN,另一個則在上GettingPIN。
初始狀態(黑色圓圈)是開始動作的虛擬開始。結束狀態也是動作的虛擬結束。
事件或條件觸發動作時用(/動作)表示。當進入Validating狀態時,對象并不等外部事件觸發轉移。取而代之,它產生一個動作。動作的結果決定了下一步的狀態。
UML活動圖
活動圖activitydiagram是一個很特別的流程圖。UML圖中活動圖和狀態圖之間是有關系的。狀態圖把焦點集中在過程中的對象身上,而活動圖則集中在一個單獨過程動作流程。活動圖告訴了我們活動之間的依賴關系。
對我們的例子來說,我們使用如下的過程。
“通過ATM來取錢。”
這個活動有三個類Customer,ATM和Bank。整個過程從黑色圓圈開始到黑白的同心圓結束。活動用圓角矩形表示。
活動圖可以被分解成許多對象泳道swimlanes,可以決定哪些對象負責那些活動。每個活動都有一個單獨的轉移transition連接這其他的活動。
轉移可能分支branch成兩個以上的互斥的轉移。保護表達式(在[]中)表示轉移是從一個分支中引出的。分支以及分支結束時的合并merge在圖中用菱形表示。
轉移也可以分解fork成兩個以上的并行活動。分解以及分解結束時的線程結合join在圖中用粗黑線表示
組件與UML配置圖
組件component是代碼模塊。組件圖是是類圖的物理實現。
UML圖中配置圖Deploymentdiagrams則是顯示軟件及硬件的配置。
下面的配置圖說明了與房地產事務有關的軟件及硬件組件的關系。
物理上的硬件使用節點nodes表示。每個組件屬于一個節點。UML圖中組件用左上角帶有兩個小矩形的矩形表示。
【編輯推薦】