UML 建模
1. UML 簡單介紹
? ? ? ?UML (Unified Modeling Language)為面向對象軟件設計提供統一的、標準的、可視化的建模語言。適用于描述以用例為驅動,以體系結構為中心的軟件設計的全過程。
? ? ? ?UML是對軟件密集型系統中的制品進行可視化、詳述、構造和文檔化的語言。制品{Artifact}是指軟件開發過程中產生的各種各樣的產物,如模型、源代碼、測試用例等。
? ? ? ?UML的定義包括UML語義和UML表示法兩個部分。
- UML語義:描述基于UML的精確元模型定義。元模型為UML的所有元素在語法和語義上提供了簡單、一致、通用的定義性說明,使開發者能在語義上取得一致,消除了因人而異的最佳表達方法所造成的影響。此外,UML還支持對元模型的擴展定義。
- UML表示法:定義UML符號的表示法,為開發者或開發工具使用這些圖形符號和文本語法為系統建模提供了標準。這些圖形符號和文字所表達的是應用級的模型,在語義上它是UML元模型的實例。
2. UML 好處
? ? ? ?UML的目標之一就是為開發團隊提供標準通用的設計語言來開發和構建計算機應用。UML提出了一套IT專業人員期待多年的統一的標準建模符號。通過使用UML,這些人員能夠閱讀和交流系統架構和設計規劃–就像建筑工人多年來所使用的建筑設計圖一樣。
- 使用模型可以更好地理解問題。
- 使用模型可以加強人員之間的溝通。
- 使用模型可以更早地發現錯誤或疏漏的地方。
- 使用模型可以獲得設計結果。
- 模型為最后的代碼提供依據。
3. UML 特點
- 統一的標準
- 面向對象。UML是支持面向對象軟件開發的建模語言。
- 可視化、表現能力強
- 獨立于過程,UML不依賴于特定的軟件開發過程。
- 概念明確,建模表示法簡潔,圖形結構清晰,容易掌握和使用。
4. UML 模型圖的構成
- 事物(Things):UML模型中最基本的構成元素,是具有代表性的成分的抽象。
- 關系(Relationships):關系把事物緊密聯系在一起。
- 圖(Diagrams ):圖是事物和關系的可視化表示。
UML包含4種事物:構件事物,行為事物, 分組事物和注釋事物。
構件事物包括:UML模型的靜態部分,描述概念或物理元素,它包括以下幾種:
類:具有相同屬性相同操作 相同關系相同語義的對象的描述。
接口:描述元素的外部可見行為,即服務集合的定義說明。
協作:描述了一組事物間的相互作用的集合。
用例:代表一個系統或系統的一部分行為,是一組動作序列的集合。
構件:系統中物理存在,可替換的部件。
節點:運行時存在的物理元素。
另外,參與者、信號應用、文檔庫、頁表等都是上述基本事物的變體。
行為事物:UML模型圖的動態部分,描述跨越空間和時間的行為,它包括以下幾種::
交互:實現某功能的一組構件事物之間的消息的集合,涉及消息、動作序列、鏈接等。
狀態機:描述事物或交互在生命周期內響應事件所經歷的狀態序列。
分組事物:UML模型圖的組織部分,描述事物的組織結構
包:把元素組織成組的機制。
注釋事物:UML模型的解釋部分,用來對模型中的元素進行說明,解釋
注解:對元素進行約束或解釋的簡單符號。
依賴
? ? ? ?依賴(dependency)是兩個事物之間的語義關系,其中一個事物(獨立事物)發生變化,會影響到另一個事物(依賴事物)的語義。
關聯
? ? ? ?關聯(association)是一種結構關系,它指明一個事物的對象與另一個事物的對象間的聯系。
泛化
? ? ? ?泛化(generalization)是一種特殊/一般的關系。也可以看作是常說的繼承關系。
實現
? ? ? ?實現(realization)是類元之間的語義關系,其中的一個類元指定了由另一個類元保 證執行的契約。
用例圖 use case diagram:
? ? ? ?用例圖是從用戶角度描述系統功能, 是用戶所能觀察到的系統功能的模型圖,用例是系統中的一個功能單元。
類圖 class diagram:
? ? ? ?類圖描述系統中類的靜態結構。不僅定義系統中的類,表示類之間的聯系如關聯、依賴、聚合等,也包括類的內部結構(類的屬性和操作)。
? ? ? ?類圖是以類為中心來組織的,類圖中的其他元素或屬于某個類或與類相關聯 。
對象圖 object diagram:
? ? ? ?對象圖是類圖的實例,幾乎使用與類圖完全相同的標識。他們的不同點在于對象圖顯示類的多個對象實例,而不是實際的類。
順序圖(時序圖) sequence diagram:
? ? ? ?順序圖顯示對象之間的動態合作關系,它強調對象之間消息發送的順序,同時顯示對象之間的交互。
? ? ? ?順序圖的一個用途是用來表示用例中的行為順序。當執行一個用例行為時,順序圖中的每條消息對應了一個類操作或引起狀態轉換的觸發事件 。
協作圖(通信圖)collaboration diagram:
? ? ? ?協作圖描述對象間的協作關系,協作圖跟順序圖 相似,顯示對象間的動態合作關系。除顯示信息交換外,協作圖還顯示對象以及它們之間的關系。
? ? ? ?協作圖的一個用途是表示一個類操作的實現 。
活動圖 activity diagram:
? ? ? ?活動圖是狀態圖的一個變體,用來描述執行算法的工作流程中涉及的活動。
? ? ? ?活動圖描述了一組順序的或并發的活動 。
狀態圖 statechart diagram:
? ? ? ?狀態圖是一個類對象所可能經歷的所有歷程的模型圖。狀態圖由對象的各個狀態和連接這些狀態的轉換組成。
構件圖 component diagram:
? ? ? ?構件圖為系統的構件建模型—構件即構造應用的軟件單元—還包括各構件之間的依賴關系,以便通過這些依賴關系來估計對系統構件的修改給系統可能帶來的影響 。
部署圖 deployment diagram:
? ? ? ?部署視圖描述位于節點實例上的運行構件實例的安排。節點是一組運行資源,如計算機、設備或存儲器。這個視圖允許評估分配結果和資源分配。
5. 設計的各個階段對應的圖的關系####(不是絕對的哦)
| 用例圖 use case diagram | 最適用 | 最適用 | 不適用 |
| 類圖 class diagram | 不適用 | 適用 | 最適用 |
| 順序圖(時序圖) sequence diagram | 不適用 | 適用 | 最適用 |
| 活動圖 activity diagram | 適用 | 適用 | 適用 |
| 對象圖 object diagram | 不適用 | 可能適用 | 可能適用 |
| 協作圖 collaboration diagram | 不適用 | 可能適用 | 可能適用 |
| 狀態圖 statechart diagram | 不適用 | 可能適用 | 適用 |
| 構件圖 component diagram | 不適用 | 不適用 | 適用 |
| 部署圖 deployment diagram | 適用 | 適用 | 可能適用 |
6. 圖之間的關系####(不是絕對的哦)
7. 靜態建模和動態建模####(不是絕對的哦)
? ? ? ?靜態建模用以描述系統的組織和結構。動態建模用以描述系統的行為和動作。兩者共同構建和描述系統的整體模型。
? ? ? ?靜態建模中描述的組織和結構是動態建模所描述的行為和動作的基礎。
? ? ? ?動態建模中所描述的行為和動作則是靜態建模所描述的組織和結構的深化和拓展。
? ? ? ?靜態建模包括:用例圖,類圖,對象圖,構件圖,部署圖。
? ? ? ?動態建模包括:狀態圖,活動圖,順序圖,協作圖。
8. 建模工具####()
rational rose rational rose 2007 下載地址
注:解壓之后要借助daemon tools Lite工具打開,如果daemon tools Lite選不到解壓之后的文件的話就吧解壓之后得到的.bin文件改成.iso就可以打開了,安裝一直選默認的就好了。
參考鏈接
1. http://wenku.baidu.com/view/d32ed05777232f60ddcca14b.html
2. http://wenku.baidu.com/view/214869ff0242a8956bece469.html?re=view
總結
- 上一篇: spwm控制算法c语言实现,SPWM波形
- 下一篇: 《壹百度》- 百度员工内部培训资料