整合模組化語言UML(Unified Modeling Language)是由Grady Booch、Jim
Rumbaugh和Ivar Jacobson三人共同努力,於1996年6月和10月發布。1997年11月17日,OMG採納UML
1.1作為基於物件導向技術的標準建模語言,成為可視化建模語言事實上的工業標準。
1、James Rumbaugh
參與創立了稱為對象建模技術(Object Modeling Technique,簡寫OMT)的早期建模語言。
OMT包括物件模型、動態模型、功能模型用於分析、系統設計、對象設計和實現等步驟。
2、Grady Booch
開發了Booch方法,是一個物件導向的軟體解決方案開發方法,用來分析、模型化和記錄系統要求。
使用對象圖、狀態轉換圖、互動圖來進行邏輯建模和物理建模。
3、Ivar Jacobson
創立了物件導向的軟體工程(Object-Oriented Software Engineering,簡稱OOSE)方法。OOSE是一種真正的物件導向的軟體方法,突出的特點是Ivar Jacobson加入的用例驅動和方法。
(可惜,這三個人的名字不會讀,有人標出音標來嗎?英語水平太差。)
UML是一種定義良好、易於表達、功能強大且普遍適用的建模語言。它溶入了軟體工程領域的新思想、新方法和新技術。它的範圍不限於支援物件導向的分析與設計,還支援從需求分析開始的軟體開發的全過程。
UML可用於下列領域:
1、機構的工作流程
2、業務分析
3、使用者描述
4、資料庫設計
5、對象設計
6、組件
7、部署(域和伺服器)
8、GUI設計
UML是模型,不是實現,所以可用於任何類型的環境。在設計的方法,UML都獨立於程式設計語言。當然,在某些位置,需要在UML模型做出一些決策,來反映物
理和技術選擇,這是UML的另一個強大特性。也就是說,不僅所有開發人員可使用UML,而且商務分析師和技術架構師能在瞭解所有要求、目前狀態、未來狀
態、互動和約束前,不需要選擇技術平台,即開始分析和設計解決方案。
UML由圖形符號組成,開發人員、分析師、客戶、使用者和其他股東都能理解。
UML模型分為三類:功能、行為和實現。功能類別模型用來收集要求和描述功能。行為類別模型用於描述解決方案的對象和使用者的行為。實作類別別模型用於解決方案功能和行為的物理實現。
1、功能模型:使用案例圖、類圖
2、行為模型:互動圖(順序圖和共同作業圖表)、狀態圖、活動圖表
3、實現模型:組年圖、部署圖
功能類模型:包括使用案例圖和類圖,它們將準確瞭解解決方案的作用及開發方式。
使用案例圖:用來收集使用者要求。由行動者(actor)、用例(use case)及它們之間的關係組成。
1、行動者(actor)指與系統互動的某人或某事。行動者要麼從解決方案接收資訊,要麼將資訊傳給系統。通常包括人(如使用者)或另一個系統。行動者一般指一個角色,而非操作者。例如:如果兩個操作者以完全相同的方式使用解決方案,則行動者是一個,而不是兩個。
2、用例(Use Case)指一個過程。
類圖:用於收集要求階段。它提出總是,並驗證系統確能完成要求。
行為類模型:描述解決方案的行為或互動。
1、互動圖:包括順序圖和共同作業圖表。這兩種圖之間的區別在於:順序圖基於時間,按時間順序顯示出現的任務;而共同作業圖表顯示任務和資訊(對象)的互動方式。
2、狀態圖:顯示對象的生命期。
3、活動圖表:描述工作流程以及誰完成工作。
實作類別模型:描述如何打包和實現解決方案。
1、元件圖表:指在解決方案中構建實際物理組件模型的方式。元件圖表可顯示原始碼組件、COM+組件及其它二進位和可執行檔。元件圖表還顯示組件介面。
2、部署圖:顯示解決方案的部署方式,由處理器、裝置和連接器構成。用來描述組件運行在哪些實體電腦上,以及解決方案如何與硬體互動。