1. 程式人生 > >使用Visio畫UML模型

使用Visio畫UML模型

Microsoft Office Visio“UML 模型圖” 模板為建立複雜軟體系統的面向物件的模型 (模型:建模系統的一種抽象表示,它從特定的視角並在某一抽象級別上指定建模系統。) 提供全面的支援。

1.用例圖

在開發專案的早期階段,使用用例圖 (用例:在用例圖中,當主角使用系統來完成某一程序時所發生的一組事件的表示方式。通常,用例是相當大的程序,而不是單個步驟或事務。) 來描述實際活動和動機。可以在隨後的各個階段對該用例圖進行細化,以反映使用者介面和設計細節。

 定義系統邊界 (系統邊界:在用例圖中,圍繞用例的指示系統的邊界。通過拖動“系統邊界”形狀上的選擇手柄,可以調整系統邊界的大小。) 可確定系統內部和外部之間的界限。

 參與者 (主角:在用例圖中,外部物件所充當的角色的表示法。因此,一個物理物件可以用幾個主角表示。通訊關係指示主角以何種方式參與到用例中來。) 代表外部物件所扮演的角色。一個物件可以扮演若干角色,因此可由若干參與者來代表。

 通訊關係 (通訊關係:在用例圖中,定義某個主角如何參與用例的關係。您可以將箭頭新增到關係上來指示資訊流動的方向。) 用於闡明用例中參與者的參與情況。

 用例 (用例:在用例圖中,當主角使用系統來完成某一程序時所發生的一組事件的表示方式。通常,用例是相當大的程序,而不是單個步驟或事務。) 是參與者通過系統完成一個過程時發生的一組事件。通常,用例是較大的過程,而不是單個步驟或事務。

2.靜態結構圖

使用靜態結構圖 (靜態結構圖:顯示模型的靜態結構的圖表;也就是存在的元素(例如類和型別)、這些元素的內部結構及其相互關係。) 來建立概念圖或類圖,概念圖用於表示實際概念以及概念之間的關係,類圖用於將軟體系統分解為各個部分。

 要將特性 (特性:類所含的資料定義。類的結構由其特性加以說明。特性的預設語法為:可見性名稱:型別表示式=初始值 {屬性字串}) 、操作 (操作:可以要求執行某個類的例項的服務。類的行為由一組操作表示。每一操作均具有一個名稱和一組引數。) 和其他屬性新增到類 (類:在靜態結構圖中,具有類似的結構、行為和關係的物件集。類在類(靜態結構)圖中宣告,代表所建模的系統中的概念。) 形狀,請雙擊該形狀,開啟“UML 類屬性”對話方塊。

 雙擊某個關聯可以新增修飾,如多重性 (多重性:可參與到特定關係中的物件個數,它用單個數字或從下限到上限的範圍來表示。最常見的多重性是 1、*(表示 0..無窮大)和 0..1。) 和導向性 (導向性:從多邊形到點,導向性指示可從多邊形獲知關於其所有點的資訊,但不能從點上獲知關於多邊形的資訊。在關聯上,導向性用箭頭來指示。) 。

 除了此處所示的名稱和型別外,特性還可以包括可見性 (可見性:一個元素對另一個元素可見或引用另一個元素的能力。如果一個元素要向另一個元素髮送訊息,後者對於前者必須是可見的。) ,這是一個初始值;特性還可指定範圍是類還是例項。

 如果要傳達詳盡的程式設計規範,則需要在圖表中完整定義操作的引數 (引數:可以更改、傳遞或返回的未繫結變數。引數可以包括通訊的名稱、型別和方向。引數用於指定操作、訊息、事件和模板等。) 。

3.包圖

使用包 (包:在 UML 中用類似於資料夾的符號表示的模型元素的組合。系統中的每個元素都只能為一個包所有,一個包可巢狀在另一個包中。) 圖將系統中的相關元素分組。一個包中可以含有下屬包、圖或單個元素。

4.活動圖

使用活動圖 (活動圖:狀態圖的一個特例,其中所有的狀態都是動作狀態,並且轉換是由源狀態中動作的完成觸發的。) 來描述方法的內部行為,並表示由內部生成的動作驅動的流。

 物件的初始狀態 (狀態 (UML):在狀態圖或活動圖中,物件滿足某個條件、執行某個動作或等待某個事件期間所處的狀況。) 是圖表中任何事件都未對該物件起作用時的狀態。

 動作狀態 (動作狀態:在活動圖中,指具有內部動作且至少有一個傳出轉換參與了完成該內部動作的顯式事件的狀態型別。) 是一種代表已完成活動的狀態。

 當動作狀態的內部動作完成時即會從該動作狀態進行轉換 (轉換 (UML):在狀態圖或活動圖中,兩個狀態或動作狀態之間或狀態與其自身之間(複雜轉換有多個源和/或目標狀態)的關係。) 。

 要指示必須先完成各個並行活動然後才發生下一個活動,請使用連線轉換。

 雙擊來自動作狀態的狀態轉換可對其加註監護 (臨界:在狀態圖或活動圖中,指定事件何時發生的條件。無論其事件何時引發,都只對臨界計算一次。) 條件和動作表示式標籤。

 要指示可同時發生的活動,請使用叉形狀態轉換。

 最終狀態表示該圖表所表示的情況中的活動已結束。

5.狀態圖 

使用狀態圖 (狀態圖:狀態機的表示方式,它附加於類或方法,描述該類對外部激勵的響應。) 來顯示一個物件在其生命期內經歷的各個狀態的順序。

 物件的初始狀態 (狀態:主角表現出特定行為的時間段。) 是圖表中任何事件都未對該物件起作用時的狀態。

 狀態代表物件 (物件:表示目錄服務類的檢視。物件表示特定的網路資源並具有為其屬性指派的值。) 生命週期中的某一瞬間。雙擊“狀態”形狀可新增名稱並列出其內部動作和活動。

 轉換 (轉換:從一種狀態轉換成另一種狀態的允許途徑。) 指示作為對事件的響應結果,物件將從一種狀態轉換到另一種狀態並執行某個動作。

 觸發狀態轉換的事件 (事件:在狀態圖或活動圖中,觸發轉換的事件。在正處於給定的狀態或動作狀態時,物件會等待事件進入其他狀態。) 在狀態轉換字串中命名。雙擊一個狀態轉換,除事件簽名以外,還可用字串為其加註監護條件 (臨界:在狀態圖或活動圖中,指定事件何時發生的條件。無論其事件何時引發,都只對臨界計算一次。) 、動作表示式等標籤。

6.序列圖

使用序列圖 (序列圖:一種互動圖,顯示參與特定互動操作的物件及其按時間順序交換的訊息。) 來顯示參與互動的參與者 (主角:在用例圖中,外部物件所充當的角色的表示法。因此,一個物理物件可以用幾個主角表示。通訊關係指示主角以何種方式參與到用例中來。) 或物件 (物件:在其他應用程式中建立並匯入、嵌入或連結到 Visio 繪圖內的資訊。物件一詞用於表示來自其他應用程式的物件和 OLE 物件。) ,以及這些參與者或物件生成的按時間順序排列的事件 (事件:Visio 中發生的事件,如更改形狀公式或刪除頁等。) 。

序列圖中的縱向維代表時間,按時間先後依次向下排序。橫向維代表不同的參與者或物件。

 物件 (物件:表示目錄服務類的檢視。物件表示特定的網路資源並具有為其屬性指派的值。) 被表示為物件生命線 (物件生命線:在序列圖中,某個物件存在於特定時期的表示方式。如果物件是在圖表中所示的時間段內建立或破壞的,則生命線會在相應的點上停止或開始。) ,即:即它們在特定時間的存在狀態。調整線的長度可以指示物件已建立還是已消亡。

 箭頭表示物件之間的訊息 (訊息:在序列圖中,傳達資訊並導致某個動作的物件之間的通訊。訊息用水平箭頭表示。) 。物件也可以向自己傳送訊息。

 向生命線新增一個啟用點 (啟用:在序列圖中,物件或主角正在執行動作的時段。啟用用細長的矩形表示。) (也稱為控制的焦點)以指示物件執行動作的時段。

 返回的訊息用虛線表示。

7.協作圖

使用協作圖 (協作圖:顯示某組物件如何為了由一個用例描述的一個系統事件而與另一組物件進行協作的互動圖。) 來顯示物件角色之間的關係,如:為實現某個操作或結果在物件間交換的一組訊息。

 在分類器角色 (分類器角色:協作角色的一種型別。它是協作中的某個物件的槽,用只顯示名稱空間的類矩形符號表示。) 形狀中,物件的 (物件:在其他應用程式中建立並匯入、嵌入或連結到 Visio 繪圖內的資訊。物件一詞用於表示來自其他應用程式的物件和 OLE 物件。) 指定器字串下加有下劃線,以指示該物件是一個例項。您還可在冒號之前加入物件名。

 連結(即關聯角色 (關聯角色:協作角色的一種型別,它描述兩個分類器角色之間的關係。它由兩個類角色元素之間的路徑表示,可以包括相應關聯的帶下劃線的名稱。) )指示關係;如果有箭頭,還同時指示導向性 (導向性:從多邊形到點,導向性指示可從多邊形獲知關於其所有點的資訊,但不能從點上獲知關於多邊形的資訊。在關聯上,導向性用箭頭來指示。) 。

 雙擊一個連結,再單擊“訊息”可以定義沿連結傳遞的訊息。需要根據巢狀的呼叫對過程訊息編號。

 第一條訊息始終來自圖表中包括的上下文之外。

8.元件圖

使用元件圖 (元件圖:顯示程式碼本身的結構的實現圖。從元件圖中,您可以瞭解各軟體元件(如原始碼檔案或動態連結庫)之間的編譯器和執行時依賴關係。) 將系統劃分為內聚性元件,並顯示程式碼本身的結構。

 在元件圖中,元件 (元件:在元件圖和部署圖中,元件指系統中的可分配實現單元。例如,元件可以代表程式碼的物理模組(源、二進位制或可執行檔案)或人力系統中的業務文件。) 是通用型別而非例項。要顯示元件例項,請使用部署圖 (部署圖:顯示執行時系統的結構的實現圖。從部署圖中,您可以瞭解到軟體和硬體元件之間的物理關係以及處理節點的元件分佈情況。) 。

 依賴關係 (依賴關係:兩個元素之間的關係,它指示對目標元素的更改可能導致源元素的更改。) 指示客戶元件在某種程度上依賴於供應商元件。

9. 部署圖

使用部署圖 (部署圖:顯示執行時系統的結構的實現圖。從部署圖中,您可以瞭解到軟體和硬體元件之間的物理關係以及處理節點的元件分佈情況。) 來顯示執行時系統的結構,並傳達以下相關資訊,即如何配置和部署構成應用程式的軟硬體元素。

 在部署圖中,節點 (節點:在部署實現圖中,表示某個正在處理的資源的執行時物理物件。節點通常都是計算裝置,但也可以表示人力資源或機械處理資源。) 可以代表通用型別或特定例項。

 將元件 (元件:在元件圖和部署圖中,元件指系統中的可分配實現單元。例如,元件可以代表程式碼的物理模組(源、二進位制或可執行檔案)或人力系統中的業務文件。)和物件 (物件:表示目錄服務類的檢視。物件表示特定的網路資源並具有為其屬性指派的值。) 例項放入某個節點例項內即指示這些元件和物件駐留在該節點上。

 通過依賴關係 (依賴關係:兩個元素之間的關係,它指示對目標元素的更改可能導致源元素的更改。) (有時還要藉助介面 (介面:在不指定內部結構的情況下,指定類、元件、包或其他元素的外部可見操作。介面只有操作,沒有特性、狀態或關聯。) )可以連線各元件。您可以使用構造型 (構造型:用法區別的表示方式。構造型是現有元素的子類,具有與該元素相同的特性和關係,但目的和可能的附加約束不同。) 來指示確切的依賴關係。