介紹一下UML的主要功能及其特點
對於一些不瞭解UML的程式設計師來說一聽到 UML? 恩 聽說過 不過沒有詳細研究過.....等。 但是隨著現在對於專案的要求也越來越高,使用圖的方式來更明確、清晰的表達專案中的架設思想、專案結構、執行順序等 一些邏輯思維 是越來越重要和不可缺少的一部分了。
下面我們來看看UML吧?
首先,我們來看看什麼是UML? UML有哪些特點 ? UML都能幹什麼?
UML呢 其實就是一種視覺化建模型的工具。當然了 UML的全文Unified Modeling Language(統一建模語言)也很好的闡述了這一作用。
UML支援從需求分析開始的軟體開發的全過程。UML通過三類圖形建立系統模型:用例(Use Case)圖、靜態結構圖(物件類圖、物件圖、元件圖、配置圖)和動態行為圖(順序圖、協同圖、狀態圖、活動圖),這些圖可以從不同的抽象角度實現系統的視覺化。
UML模型檢視:
1.用例圖:從使用者角色描述系統功能,並指出各功能的操作者,描述系統應該具備的功能,即被稱為參與者的外部使用者所能觀察到的功能,從使用者角色描述系統功能,並指出各功能的操作者。
2.靜態圖:(類圖和包圖)描述形同中類的靜態結構、表示類之間的關係、依賴、聚合。包由包或類組成的,表示包與包之間的關係。包圖用於描述系統的分層結構。
3.行為圖:描述系統的動態模型和組成物件間的互動關係,其中狀態圖描述類的物件所有可能的狀態以及事就愛你發生時狀態的轉移條件。
4.互動圖:描述物件間的互動關係,其中順序圖顯示物件之間的動態合作關係,它強調物件之間的訊息傳送的順序,同時顯示物件之間的互動;合作圖描述物件間的協作關係。合作圖跟順序圖相似,顯示物件間的動態合作關係。
5.實現圖:其中構件圖描述程式碼部件的物理結構及各部件之間的依賴關係 。配置圖定義系統中硬體的物理體系結構。
邏輯檢視:描述用例檢視中提出的系統功能的實現。邏輯檢視既描述系統的靜態結構,也描述系統內部的動態協作關係。
元件檢視(實現檢視):描述系統的實現模組以及它們之間的依賴關係。
併發檢視(程序檢視):考慮資源的有效利用、程式碼的並行執行以及系統環境中非同步事件的處理。
部署檢視:顯示系統的物理部署,並描述位於節點例項上的執行元件例項的部署情況。
靜態圖:(類圖和包圖)描述形同中類的靜態結構、表示類之間的關係、依賴、聚合。包由包或類組成的,表示包與包之間的關係。包圖用於描述系統的分層結構。UML的主要特點
1統一的標準(被OMG所認定的建模語言 標準) 2面向物件(支援面向物件軟體開發) 3視覺化建模
4獨立於開發過程(可以應用到任意一種開發過程中去) 5概念明確、建模表示法簡潔、圖形結構清晰、容易掌握和使用
UML統一了什麼?
UML統一了Booch、OMT、OOSE和其他面向物件方法所涉及的基本概念和建模符號。
UML描述了面向物件分析設計的方法了嗎?
沒有.UML是一種建模語言而不是一種分析設計方法。因為UML中沒有給出一個軟體開發過程。
用例模型用於需求分析階段,它的建立是系統開發者和使用者反覆討論的結果。具備以下幾個方面的特點:
1它描述了待開發系統的功能需求。
2它將系統看作黑盒,從外部參與者的角度來理解系統。
3它驅動了需求分析之後各階段的開發工作。不僅保證系統所有功能的實現,還可作為檢驗所開發的系統是否滿足需求的依據。
關聯
泛化
實現
依賴
參與者之間的關係:泛化 依賴
用例之間具有
包含<include>
擴充套件<extend>
泛化
用例說明主要組成:用例名稱 簡要說明 優先順序 參與者 前置條件 後置條件 主事件流
其他事件流 此用例所泛化的用例列表 此用例所包含的用例列表 此用例所擴充套件的用例列表
類屬性的語法為:
[可見性] 屬性名 [:型別] [=初始值] [{屬性的約束}]
靜態屬性名下加下劃線
公有(Public) “+”
私有(Private)“-”
受保護(Protected)“#”
包內公有(Package) “~”
類操作的語法為:
[可見性] 操作名 [(引數列表)] [:返回值型別]
關聯關係
(1)關聯的角色(2)關聯的多重性
(3)關聯類(4)關聯的約束(5)限定關聯
(6)聚合(7)組合
順序圖的組成
1物件 2 生命線 3 訊息 4 啟用
協作圖是物件圖的擴充套件,除了展示物件之間的關聯外,還顯示物件之間的訊息傳遞。
狀態圖只是對單個物件建立模型
§ 狀態圖主要由狀態、轉移、事件、動作組成
§ 狀態是指物件在其生命期中的某個條件或狀況。
§ 轉移是狀態之間的關係,表示物件從源狀態變化為目標狀態
§ 事件表示在某一特定的時間或空間出現的現象。
§ 動作是一段過程,由物件中的方法來實現
狀態圖 組成
1狀態2 轉移3 事件:呼叫事件、變化事件、時間事件、訊號事