在學習完了軟件工程視頻並且寫了看似完善卻一點內涵也沒有的文檔。UML的出現可以說如雪中送炭一般幫助我們學習建模的思想,通過畫圖來完善文檔中的空缺。那什麼是UML呢?UML是一種面向對象的建模語言,它的主要作用是幫助用戶對軟件系統進行面向對象的描述和建模。它可以描述這個軟件從需求分析直到實現和測試的開發全過程,爲軟件工程做輔助工具。
UML中的核心就是那九種圖:用例圖、類圖、包圖、活動圖、狀態圖、順序圖、協作圖、部署圖和構件圖。UML有兩種圖:靜態圖和動態圖
靜態模型包括:用例圖、類圖、包圖、構件圖和部署圖
動態模型包括:狀態圖、順序圖、協作圖和活動圖
如圖所示:
一、 基本概念:
1、用例圖(UseCase Diagrams):用來描述用戶的需求,從用戶角度描述系統的功能,並各功能的執行者,強調誰在使用系統,系統爲執行者完成那些功能。
2、類圖(Class Diagrams):用於定義系統中的類,包括描述類的內部結構和類之間的關係。類圖主要用於描述系統的靜態結構。類是面向對象中最重要的構造塊,類圖顯示了一組類、接口、協作以及他們之間的關係。
3、對象圖(Object Diagrams):對象圖是類圖的一個實例,描述了系統在某一時刻上所包含的對象以及各個對象之間的關係。相當於類圖在某一時刻的快照。和類圖相比,它能夠從實際或原型化的情景來表達。
4、狀態圖(Statechart Diagrams):用來描述類的對象所有可能的狀態以及事件發生時狀態的轉移條件。它顯示了實體如何根據當前所處的狀態對不同的事件做出反應的。
5、活動圖(Activity Diagrams):用來描述滿足用例要求所要進行的活動以及活動間的約束關係,使用活動圖有利於識別系統的並行活動。流程圖和活動圖類似,但是流程圖可以順序執行,而不能像活動圖一樣表示並行活動。
6、序列圖(Sequence Diagrams):描述對象之間的交互順序,着重體現對象間消息傳遞的時間順序,強調對象之間消息的發送順序。
7、協作圖(Collaboration Diagrams):描述對象之間的協作關係,更側重於說明哪些對象之間有消息的傳遞。協作圖的時間順序只能通過消息的編號來體現。
8、構件圖(Component Diagrams):構建圖用來描述代碼構件的物理結構以及各構件之間的依賴關係。構件可以是資源文件、二進制文件或可執行文件。
9、部署圖(Deployment Diagrams):部署圖定義了系統中硬件的物理結構,用來描述實際的物理設備以及他們之間的連接關係。