版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、第10章 理解UML語言基礎,,本章主要內(nèi)容:UML的組成結(jié)構(gòu)元模型層UML的擴展構(gòu)造型、約束、和標簽值,要利用UML來開發(fā)設計軟件系統(tǒng)結(jié)構(gòu)藍圖,第一步需要先了解uml的基本組成要素,在UML中共有三大基本組成要素——事物、關系、圖形,一、事物UML的模型中最基本的成員,分為: 結(jié)構(gòu)事物 行為事物 分組事物 備注事物 這四類事物也可以說是UML中最基
2、本的面向?qū)ο蠼5闹匾M成部分,利用這四類事物可規(guī)劃設計出合適的模型系統(tǒng)。,1、結(jié)構(gòu)事物—結(jié)構(gòu)事物主要表示概念或者和實體的組件,而在UML建模中,結(jié)構(gòu)事物大多屬于靜態(tài)部分元素。①類②界面③合作④使用案例⑤活動類⑥組件類⑦節(jié)點類 這7個結(jié)構(gòu)事物是UML建模中的最基本的結(jié)構(gòu)事物,2、行為事物 簡單的說“行為事物”就是UML模型里面屬于“動作”的部分,這種事物會隨著時間和空間的轉(zhuǎn)變不斷的執(zhí)行的動作
3、。在UML中行為事物分為兩類 ——交互、狀態(tài)機 第一種“交互”是指對象之間的相互溝通的動作消息,這種溝通消息基本上包含著預實現(xiàn)特定的目的所需的環(huán)境和動作序列。 而對象之間的群體行為或者是單一執(zhí)行的行為間都會產(chǎn)生特定的“交互”行為。其中一點必須注意的是“交互”行為一定與其他的元素有關,因為至少要有兩個以上的對象才能產(chǎn)生交互 消息顯示,,第二種“行為事物”是“狀態(tài)機”,狀態(tài)機本身是一種行為
4、,這種行為是用來“表示對象的一連串狀態(tài)”,但狀態(tài)機不是單一的元素,而是包含了相當多的元素,這些元素包含有“狀態(tài)、轉(zhuǎn)換(指兩狀態(tài)之間的流程)、事件(指經(jīng)觸發(fā)而產(chǎn)生的交互動作的行為)和活動(指執(zhí)行轉(zhuǎn)換所產(chǎn)生的反應)”,,狀態(tài)的表示方式,3、分組事物 分組事物是指UML中屬于“組織”的結(jié)構(gòu)。利用一個個的分組事物可將“模型”按特定的結(jié)構(gòu)切分為不等的元素,目前在UML中屬于“分組事物”的只有一個,那就是類庫也可以稱為包。
5、 包可以說是一種一般用途的分組/分類機制,包可以將元素分門別類一封裝,不論結(jié)構(gòu)事物、行為事物或者是其他元素都可以放置到包中。 通過包可以將UML模型加以分組,而包也會有一些變化,A、軟件框架,B、模型,C、子系統(tǒng),包的圖形表示方式,4、備注事物 備注事物是UML中用來作為“說明/表示”的元素,可說是UML模型中最基本的一種說明事物,主要用途是說明、描述、和標注在模型元素的狀況,備注
6、事物與分組事物相同,只有一中主要的備注事物,“批注”。 批注簡單的說就是用來說明和描述元素的符號,這種符號可以用在一個元素或者一組元素上作為說明之用。,UML中批注的圖形表示方法,二、關系 UML模型中第二個組成要素是“關系”在UML中一共有四中基本的“關系元素”分別是: A、依賴關系 B、關聯(lián)關系 C、一般化關系(泛化關系)
7、 D、實現(xiàn)關系 實現(xiàn)關系是一般化關系和依賴關系的綜合體,1、依賴關系 依賴關系是指兩個事物/元素之間擁有相互影響的關聯(lián)、也就是說當一個事物或者元素在發(fā)生改變時,會影響到另一個事物,這是因為變化而產(chǎn)生的關聯(lián)影響,即為依賴關系 依賴關系包括 包含和擴展2、關聯(lián)關系 關聯(lián)關系實際上是一種結(jié)構(gòu)關系,主要是指兩個事物之間的相互聯(lián)接結(jié)構(gòu)。 包括“聚合關系”“組
8、成關系” 特殊的關系,這種關系是指某個整體和其一部分之間的關系。 關聯(lián)包括聚合和組成,3、一般化關系(泛化關系) 在兩個以上對象或者元素之間互為主從(一般和特殊化)的關系類型,特殊化元素(為子元素)可以共享一般化元素(父元素)的結(jié)構(gòu)和行為。因此形成特殊化元素(子元素)的對象能被一般化元素的對象所取代。從模型上分,一般化關系的表方法為一條具有空心箭頭由特殊元素指向一般化元素的實線。4、實現(xiàn)關系
9、 實現(xiàn)關系是指分類器與分類起之間的語意關系。其中一個分類器必須依據(jù)兩者間的關系確定合約,另外一個分類器則必須保證能實現(xiàn)合約。,三、圖形 UML圖形是由元素、事務、關系和行為所繪制的圖形表示方法。 在 UML中的圖形都是利用“可視化”的方式來繪制的,因此所繪制的圖形即可視為系統(tǒng)的結(jié)構(gòu)圖標,按照結(jié)構(gòu)系統(tǒng)用途上區(qū)分,在 UML中總共有9個 標準的、最常使用的圖形,這9類圖形可分用靜態(tài)
10、和動態(tài)兩種不同視圖的圖形來 分析,,使用案例圖,類圖,對象圖,構(gòu)件圖,部署圖,模型,,,,,,,,順序圖,協(xié)作圖,狀態(tài)圖,活動圖,,,,,動態(tài)視圖,靜態(tài)視圖,1、類圖 用途:主要強調(diào)系統(tǒng)的靜態(tài)的設計視圖,用來表現(xiàn)一個系統(tǒng)的類和邏輯視圖上的關系。但不在于描述其行為。 使用類圖的主要目的為表現(xiàn)出系統(tǒng)中概括模型與名稱描述類(class)間的合作關系以及可以用來描述數(shù)據(jù)庫中的大綱。
11、 特點:類圖是軟件系統(tǒng)的抽象化結(jié)構(gòu),基本上可分為“邏輯運算”和“數(shù)據(jù)流邏輯”兩大結(jié)構(gòu)部分,在系統(tǒng)分析中進行數(shù)據(jù)邏輯分析時,很重要的一件事就是“設計數(shù)據(jù)庫大綱”,類圖則非常適合用來“設計數(shù)據(jù)庫大綱”,2、對象圖 用途:主要強調(diào)系統(tǒng)的靜態(tài)的設計視圖和靜態(tài)進程視圖。對象圖主要描述在在特定時刻系統(tǒng)的靜態(tài)結(jié)構(gòu)。 對象圖可將類圖中的全部事物的靜態(tài)邏輯反映出來。主要用途為產(chǎn)生系統(tǒng)中數(shù)據(jù)和對象的結(jié)構(gòu)。
12、 特點:對象圖主要描述某一特定時刻系統(tǒng)的靜態(tài)結(jié)構(gòu),類圖描述的是所有可能的情況,對象圖則是描述某一特定的情況。,3、順序圖 用途:是一種交互圖形,主要強調(diào)的是消息的 時間順序,以及系統(tǒng)的動態(tài)視圖,因此此圖形是以時間為主,來描述對象間的交互關系。 其主要目的為規(guī)劃模型流程的控制以及描述活動的 發(fā)展過程。 順序圖和協(xié)作圖都是同結(jié)構(gòu)圖形,因此這兩種圖形之間可以相互轉(zhuǎn)
13、換。 特點:順序圖主要是描述多個對象之間的交互關系。這些關系是已北模塊化為消息的交換。順序圖所關注的焦點是類和它們所交換的消息上,借此來實現(xiàn)某些特定的預期的行為。,4、協(xié)作圖 用途:協(xié)作圖也是一種交互圖形,主要強調(diào)的是收發(fā)消息和對象之間的結(jié)構(gòu)組織。 協(xié)作圖強調(diào)對象之間的數(shù)據(jù)流、控制流與消息之間的傳遞活動。 所以利用協(xié)作圖即可分析出各個對象之間的關系,如此就
14、能了解整個系統(tǒng)的控制流程。,5、用例圖 用途:主要強調(diào)的是系統(tǒng)的靜態(tài)地使用案例視圖,利用此視圖可將特定的使用案例與角色間的關系表現(xiàn)出來。 使用這種圖可了解系統(tǒng)的需求和表達出使用案例與角色之間的關系。 使用案例圖最主要的用途為分析系統(tǒng)的功能內(nèi)容和取得結(jié)構(gòu)系統(tǒng)的功能以及控制系統(tǒng)構(gòu)建時與測試時的案例執(zhí)行。,6、狀態(tài)圖 用途:最主要強調(diào)的是系統(tǒng)的動態(tài)視圖,由于狀態(tài)圖
15、中可顯示出狀態(tài),因此對于模型界面和類或者所協(xié)作間的行為模型來說都是非常重要。 狀態(tài)圖主要用途用來說明行為的狀態(tài)和響應,因此其可以用來作為模型中個對象生命周期的指示和響應。,7、活動圖 用途:活動圖可將系統(tǒng)中活動與活動間的執(zhí)行的流程表現(xiàn)出來,其主要強調(diào)的是系統(tǒng)的動態(tài)視圖。 而活動圖也可以視為是一種特殊的狀態(tài)圖。 活動圖主要用途為指出一個執(zhí)行動作的類中的活動和行
16、為。并描述此類為響應內(nèi)部動作所作的所有反映。 活動圖的主要功能為控制模型的工作流程和 工作活動。,8、構(gòu)件圖(組件) 用途:主要強調(diào)的是系統(tǒng)中靜態(tài)的實現(xiàn)視圖,利用構(gòu)件圖可以看出構(gòu)件與構(gòu)件之間的組織和依賴的關系。 構(gòu)件圖的主要的用途是在規(guī)劃系統(tǒng) 整合開發(fā)結(jié)構(gòu)時,定義出系統(tǒng)的實現(xiàn)視圖以及描述系統(tǒng)在實際開發(fā)構(gòu)建的組織結(jié)構(gòu)和依賴關系。 由于構(gòu)件對應到一個類或者多個類
17、、界面或是合作上,因此構(gòu)件圖與類圖具有相當密切的關系。,10、部署圖 用途:其主要強調(diào)的是系統(tǒng)的動態(tài)視圖。 而活動圖也可以視為是一種特殊的狀態(tài)圖。 利用部署圖可將系統(tǒng)在運行時的節(jié)點設置和 存在與該節(jié)點上的所有相關構(gòu)件表現(xiàn)出來。 部署圖的若從系統(tǒng)整合開發(fā)結(jié)構(gòu)分析上看 ,主要扮演的角色是系統(tǒng)的環(huán)境視圖,主要功能是為用來描述系統(tǒng)處理資源元素間的組態(tài),以及系統(tǒng)實際
18、運行構(gòu)件間的對應方式。 部署圖最主要的用途是說明系統(tǒng)中各個分布式的組件和找出組件間無法顯示出的問題所在。,四、利用UML規(guī)劃軟件的系統(tǒng)結(jié)構(gòu) 一套良好的“系統(tǒng)結(jié)構(gòu)”至少必須做到下述5個重要開發(fā)策略: 1、軟件系統(tǒng)的組織:包含系統(tǒng)整體組織和個組件組織。 2、系統(tǒng)中結(jié)構(gòu)元素和界面的選擇分析 3、依照結(jié)構(gòu)元素制定行為模型。 4、依照基
19、礎結(jié)構(gòu)元素和行為元素的漸進組成而設計出大型子系統(tǒng)。 5、從結(jié)構(gòu)樣式導出軟件應用結(jié)構(gòu)組織:包含靜態(tài)和動態(tài)元素和界面、靜態(tài)和動態(tài)元素的合作和組成。,五、標準的軟件結(jié)構(gòu)概念“4+1”視圖 所謂“4+1”視圖指的是邏輯視圖、實現(xiàn)視圖、進程視圖、部署視圖、使用案例視圖。 邏輯視圖:以面向?qū)ο蟮母拍?,來表達出軟件設計的結(jié)果。邏輯視圖主要描述實現(xiàn)系統(tǒng)內(nèi)部功能型工作的細部設計,這些設計包括靜
20、態(tài)的結(jié)構(gòu)和動態(tài)的行為。 實現(xiàn)視圖:以模塊或者組件來表現(xiàn)出按照邏輯設計的對象是在那一個模塊或組件中實現(xiàn)。 進程視圖:通常以個典型的分布式系統(tǒng),一般都包含許多進程和線程。進程視圖是描述一個系統(tǒng)中各組成部分整體運行的程序。 部署視圖:是指網(wǎng)絡環(huán)境中,充分表示進程或者線性對應到主機或設備的實際狀態(tài)。也就是描述系統(tǒng)硬件或設備之間的聯(lián)接關系和 軟件程序的配置狀況,使用案例視圖:
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 第3章 jsp語言基礎
- 【人工智能_人工智能導論課件】第10章自然語言理解
- 第02章 c++語言基礎
- c語言 大學 第10章習題答案
- 第07章uml建模-2
- 第10章 電子商務技術基礎
- 第3章java語言程序設計基礎
- 第1章 匯編語言基礎知識
- 機械設計基礎第10章習題
- 會計基礎第10章 會計報表
- 第10章微觀經(jīng)濟基礎
- 第02章c語言程序設計基礎
- 第3章 c51語言編程基礎
- 第10章面向?qū)ο蟪绦蛟O計語言
- 第2章vb程序設計語言基礎
- 第10章.doc
- 第10章-領導
- photoshop基礎教程中文版第10章
- 十天學會易語言_易語言教程_第①章_“易語言”基礎知識
- 機械設計基礎課后習題答案第10章
評論
0/150
提交評論