




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
UML基礎與建模實踐
第二章UML語言體系
主講人:
內容摘要UML語言組成1基本元素和關系元素2圖和視圖3規則和公共機制4系統建模與視圖5小結與習題62.1UML語言組成1.UML語言 UML語言由三個部分組成,它們是構造塊、規則和公共機制,其結構如圖2-1所示。圖2-1UML語言組成2.1UML語言組成2.構造塊
UML構造塊又細分為三種:事物、關系和圖。事物代表了軟件系統或業務系統中的簡單事物;關系代表了事物間的關系;圖代表了由簡單事物按某種規則連接在一起組成的更大顆粒的事物;圖與圖通過關系符號連接在一起組成更大的圖,這種圖代表更復雜的事物。構造塊的三種類型,如圖2-2所示。圖2-2構造塊細分為三種2.1UML語言組成3.規則
每個構造塊代表的事物都具有名稱、作用范圍、可見性、完整性和可執行等屬性。規則是指構造塊應該遵守的規定,即,用UML構造塊描述軟件系統或業務系統中事物時應該遵守的約束或規定。描述事物時,構造塊應該遵守的規則如圖2-3所示。2.1UML語言組成(1)名稱:指每個構造塊代表的事物應該有一個名字。(2)范圍:每個構造塊代表的事物的使用范圍。(3)可見性:訪問構造塊代表的事物時,授予訪問者的權限或者級別。(4)完整性:構造塊代表的事物應該有完整的含義。(5)可執行:構造塊代表的事物的行為具有實際意義和合理性。圖2-3構造塊應遵守的規則2.1UML語言組成4.公共機制 公共機制進一步細分為:詳述、修飾、通用劃分以及擴展機制,它是指軟件系統或業務系統中每個事物必須遵守的通用規則。公共機制的組成如圖2-4所示。圖2-4公共機制的組成下面幾節分別對事物、關系、圖和視圖的概念、表示法作詳細介紹。2.2事物
事物進一步劃分為4類: 結構事物 行為事物 分組事物 注釋事物。2.2.1結構事物結構事物有7種,分別是類(對象)、接口、主動類、用例、協作、構件和結點。下面分別介紹7種結構事物的概念和表示法。1.類和對象類是對具有相同屬性、相同操作以及相同關系的一組對象的共同特征的抽象,即,類是對一組對象共同特征的描述。類是對象的模板,而對象是類的一個實例。2.2.1結構事物(1)類的表示 在UML中,類用一個長方形表示,如圖2-5所示。圖2-5Flight類的UML符號2.2.1結構事物(2)對象的表示 對象也是用一個長方形來表示。只是用“對象名:類名”的格式表示一個對象,并且,對象名和類名下面必須帶下劃線。表示對象時,第二和第三欄可以省去。例如,圖2-6所示是對象“李世民”的UML表示法。圖2-6對象“李世民”的UML符號李世民:People2.2.1結構事物2.主動類 主動類是指創建主動對象的類。主動類的表示與一般類相似,只是矩形框用粗線表示而已,如主動類Radio的表示方法如圖2-7所示。圖2-7表示主動類Radio的符號RdioShapeSizePriceTurnOn()TurnOff()ChangeChannel()ChangeVolume()2.2.1結構事物3.接口接口分為供給接口和需求接口兩種,供給接口只能向其他類(或構件)提供服務,需求接口表示類(或構件)需要用到其他類(或構件)提供的服務。上述兩種接口的表示方法如圖2-8所示。圖2-8表示接口的UML符號2.2.1結構事物4.用例我們把完成某個任務而執行的一系列動作的集合稱為場景。用例是對一組相似場景共同行為的描述,例如,我們可以用一個動作序列來描述所有取款客戶的共同行為。因此,用例的每一次的具體執行就是一個場景,即,場景是用例的一個實例,是用例的一次具體執行。用例與用例實例的關系正如類與對象的關系。在UML中,用例是用一個實線橢圓來表示的,在橢圓中寫入用例名稱,如用例“取款”的表示方法如圖2-9所示。圖2-9用例“取款”的表示方法2.2.1結構事物5.協作在系統中,把一組對象之間相互發送和接收消息的現象稱為交互。把一組對象為了完成某個任務執行的交互現象稱為協作。協作用一個帶兩個分欄的虛線橢圓表示的,例如,用例“銷售”用協作圖表示時,其對應的表示方法如圖2-10所示。圖2-10協作“銷售”2.2.1結構事物6.構件 構件也稱組件,它是指系統設計中的一個相對獨立的軟件部件,它把功能實現部分隱藏在內部,對外聲明了一組接口(包括供給接口和需求接口)。因此,兩個具有相同接口的構件可以相互替換。 構件通常采用帶有兩個小方框的矩型表示,構件的名字寫在方框中,如圖2-11所示。圖2-11表示構件的UML符號2.2.1結構事物7.結點在UML中,用一個立方體表示一個結點,例如,結點“顯示器”的表示方法如圖2-12所示。圖2-12結點“顯示器”的UML符號2.2.2行為事物行為事物描述了事物的動態特征。一般從兩個方面描述事物的行為特征:事物之間的交互和事物的狀態變化,描述這2個方面的符號也有2種: 一種符號表示事物間的交互 一種符號表示事物的狀態2.2.2行為事物1.交互 交互用來表示對象之間的相互作用,即,發送和接收消息的現象。 用一條有向直線來表示對象間的交互,并在有向直線上方標注消息名稱即可,如圖2-13所示。圖2-13表示交互的UML符號2.2.2行為事物2.狀態 對象從一種狀態遷移到另一狀態,這些狀態序列就構成了狀態機,即一個狀態機由多個狀態組成。 在UML中,狀態用一個圓角矩形表示,狀態名稱寫在矩形框中。例如,手機處在“正在通話”狀態的表示方法如圖2-14所示。圖2-14表示“正在通話”狀態的UML符號2.2.3分組事物
在開發大型軟件系統時,通常會包含大量的類、接口以及用例,為了能有效地對這些類、接口和用例進行分類和管理,就需要對其進行分組。在UML中可通過“包(Package)”來實現這一目標。 表示“包(Package)”的圖形符號與Windows中表示文件夾的圖符很相似,包的作用與文件夾的作用也很相似。如,java語言中的“java.awt”包,用UML符號表示,則如圖2-15所示。圖2-15表示“java.awt”包的UML符號2.2.4注釋事物注釋就是對其他事物進行解釋,一般用文字進行注釋。注釋符號用一個右上角折起來的矩形表示,解釋的文字就寫在矩形框中,如圖2-16所示。
圖2-16表示注釋的UML符號2.3關系在UML中,共定義了24種關系,相應的有24種關系符號,如表2-1所示。
關系關系細化UML中的關系UML符號關系關系細化UML中的關系UML符號抽象派生依賴關系《derive》導入私有依賴關系《access》顯現《manifest》公有《import》實現實現關系虛線加空心三角信息流《flow》精化依賴關系《refine》包含并《merge》跟蹤《trace》許可《permit》關聯關聯關系實線協議符合未指定綁定依賴關系《bind》(參數表)替換依賴關系《substitu-te》部署《deploy》使用調用《call》擴展Extend《extend》(擴展點)創建《create》擴展extension擴展關系實線加實心三角實例化《instanti-ate》泛化泛化關系實線加空間三角職責《responsi-bility》包含依賴關系《include》發送《send》表2-1UML中的關系及其符號2.3關系上述有24種關系,在UML中,可以歸納為: 關聯關系 實現關系 泛化關系 擴展關系 依賴關系
2.3關系1.關聯關系 在關聯關系中,有兩種比較特殊的關系,它們是聚合關系和組合關系。聚合和組合關系能通過java語言實現,關聯關系不能通過java語言實現,所以,在設計階段,我們必須把分析階段的關聯關系細化為更具體的關系,如,細化為聚合關系,或者組合關系,依賴關系等等。(1)關聯關系的表示 在UML中,使用一條實線來表示關聯關系,如圖2-17所示。
圖2-17表示關聯關系的UML符號2.3關系(2)聚合關系 聚合(Aggregation)是整體與部分的關系,是一種特殊形式的關聯。聚合關系是一種松散的對象間關系——計算機與它的外圍設備就是聚合關系。聚合的表示方法如圖2-18(a)所示。其中棱形端表示事物的整體,另一端表示事物的部分。如計算機就是整體,外設就是部分。(3)組合關系組合關系是一種非常強的對象間關系。在組合關系中,部分依賴于整體而存在。組合是一種強的聚合關系,它的表示方法如圖2-18(b)所示。
(a)(b)圖2-18表示聚合關系和組合關系的UML符號2.3關系2.泛化關系 表示泛化關系的符號是從子類指向父類的帶空心箭頭的實線,其表示方法如圖2-19所示。而從父類到子類的關系則是特化關系。
圖2-19表示泛化關系的UML符號車公交車泛化關系2.3關系3.實現關系實現關系是用來規定接口與實現接口的類之間的關系。表示實現關系的符號是從類指向接口的帶空心箭頭的虛線,其表示方法如圖2-20所示。
圖2-20表示實現關系的UML符號2.3關系4.依賴關系假設有兩個元素X、Y,如果元素X的值發生變化,就會引起元素Y的值的變化,則稱元素Y依賴于元素X。依賴關系的表示如圖2-21所示。
圖2-21表示依賴關系的UML符號2.3關系4.依賴關系假設有兩個元素X、Y,如果元素X的值發生變化,就會引起元素Y的值的變化,則稱元素Y依賴于元素X。依賴關系的表示如圖2-21所示。
圖2-21表示依賴關系的UML符號從本質上說,聚合、組合、泛化以及實現關系都屬于依賴關系,但是它們有更特別的語義。2.3關系5.擴展關系在UML中,用一個帶箭頭的實線表示擴展關系,如圖2-22所示。這里的擴展含義是指對一個元類的擴展,即,通過擴展元類的語義,獲得新的元類。
圖2-22表示擴展關系的UML符號2.4圖和視圖 構造塊代表了簡單事物,簡單事物通過一定關系組合成復雜事物,圖就是用來表示復雜事物的。每個圖是由代表簡單事物的構造塊和代表事物聯系的關系構成。
2.4.1UML圖UML中的圖可分為兩大類:結構圖和行為圖。下面是UML圖的組成,如圖2-23所示。圖2-23UML圖的組成2.4.1UML圖1.結構圖 結構圖又分為6種,如圖2-24所示。圖6-24結構圖組成結構圖類圖構件圖對象圖組合結構圖部署圖包圖2.4.1UML圖2.行為圖 行為圖又細分為7種,如圖6-25所示。圖6-25行為圖組成行為圖用例圖活動圖交互圖狀態機圖順序圖交互概觀圖定時圖協作圖2.4.1UML圖3.圖的功能 在UML2.0中共定義了13種圖。表2-2列出了這13種圖的作用。表2-2UML2.0中的圖圖分類作用描述類圖描述系統中的類組成和類之間的關系與UML1.0相同對象圖描述系統在某個時刻對象的組成和關系UML1.0非正式圖組合結構圖描述復合對象的內部結構UML2.0新增構件圖描述構件的結構與組成與UML1.0相同部署圖描述在系統中各個節點上的構件及其構件之間的關系與UML1.0相同包圖描述系統的宏觀結構,并用包來表示UML中非正式圖用例圖描述用戶與系統如何交互及系統提供的服務與UML1.0相同活動圖描述活動控制流程及活動節點的轉換過程與UML1.0相同狀態機圖描述對象生命周期內,在外部事件的作用下,對象從一種狀態如何轉換到另一種狀態與UML1.0相同順序圖描述對象之間的交互,重點在強調消息發送的順序與UML1.0相同協作圖描述對象之間的交互,重點在于強調對象的職責UML1.0中的協作圖定時圖描述對象之間的交互,重點在于描述時間信息UML2.0新增交互概觀圖是一種順序圖與活動圖的混合嫁接UML2.0新增2.4.2UML視圖圖描述系統某個方面的局部特征,多個相關的圖可以描述系統的某個方面的全部特征,我們把描述系統某個方面全部特征的多個圖的集合稱為視圖。2.4.2UML視圖在UML參考手冊第2版中,將UML圖劃分為4大應用類型和9種視圖,如表2-3所示。表2-3UML圖和視圖應用類型視圖組成結構領域靜態視圖類圖,對象圖設計視圖復合結構圖、協作圖、構件圖,對象圖用例視圖用例圖動態領域狀態視圖狀態機圖活動視圖活動圖交互視圖順序圖、通信圖,時間圖,交互概述圖物理領域部署視圖部署圖模型管理模型管理視圖包圖特性描述包圖2.4.2UML視圖其中,結構領域的視圖描述了系統中的成員及其相互關系;動態領域的視圖描述了系統隨時間變化的行為;物理領域的視圖描述了系統的硬件結構和部署在這些硬件上的系統軟件;模型管理領域的視圖說明了系統的分層組織結構。2.5規則和公共機制2.5.1規則 在UML中,代表事物的構造塊在使用時應遵守一系列規則,每個構造塊必須遵守的3種語義規則如下: 名稱 范圍 可見性2.5規則和公共機制2.5.1規則 在UML中,代表事物的構造塊在使用時應遵守一系列規則,每個構造塊必須遵守的3種語義規則如下:名稱范圍可見性2.5規則和公共機制在UML中,為元素定義了4種可見性,如表2-4所示。表2-4UML元素的可見性元素的可見性規則(假設被訪問的元素在包中)標準表示法public任一元素若能訪問包,則就可以訪問包中的元素它+protected只有包中的元素或子包才能訪問它#private只有包中的元素才能訪問它-package只有聲明在同一個包中的元素才能訪問該元素~2.5.2公共機制在UML語言中,定義了4種公共機制:
規格描述 修飾 通用劃分 擴展機制2.5.2公共機制1.規格描述 如圖2-26所示,在左邊的方框中有三個用圖形符號表示的用例,分別是:“存款“、“取款”、”轉賬”。在右邊的方框中,分別對每個圖形符號表示的用例進行了詳細的文字描述,即規格描述。圖2-26圖形符號與對應的規格描述2.5.2公共機制2.修飾3.通用劃分4.擴展機制 UML提供的擴展機制有三種: 構造型 標記值 約束2.5.2公共機制(1)構造型 例如,分析師可以定義一個元素符號《Interrupt》,用該元素符號代表“中斷”。 如圖2-27所示,就是用自定義的符號《Interrupt》表示中斷的三種不同格式。(分析師賦予符號《Interrupt》的語義是:設備“中斷”)。2.5.2公共機制第一種表示方法:創建一種新的UML元素符號《Interrupt》,表示“中斷”,在構造元素符號右邊放置一個圖標。構造符號“《Interrupt》”與圖標一起代表“中斷”。第二種表示法:創建一種新的UML元素符號《Interrupt》,表示“中斷”,這是一種標準表示方法。第三種表示方法:直接用一個圖標表示新的構造元素符號,該符號的語義是“中斷”。圖2-27構造型的3種表示方法2.5.2公共機制(2)標記值 標記值是為事物添加新特征,即,為事物增加一個屬性。其格式是:“{標記名=標記值}”,標記名代表事物的屬性,標記值表示了事物的屬性值。例如,{name=“李小平”}。其中,標記名是name;分隔符是=;標記值是”李小平”。(3)約束2.6系統建模與視圖當用RUP軟件開發模型開發軟件系統時,可以從五個角度(五種視圖)對軟件系統進行建模,這五個視圖分別是用例視圖、設計視圖、構件視圖、并發視圖和部署視圖,即從5個角度來描述系統的五個方面。在這五個視圖中,以用例視圖為目標,分別構造其它四個視圖。2.6系統建模與視圖1.用例視圖2.設計視圖3.構件視圖
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 寧夏建設職業技術學院《三維建模與動畫制作》2023-2024學年第二學期期末試卷
- 四川省成都市崇慶中學2024-2025學年初三5月階段性檢測試題語文試題含解析
- 內蒙古化工職業學院《生物工程專業綜合實驗》2023-2024學年第二學期期末試卷
- 浙江宇翔職業技術學院《機器人技術實踐創新》2023-2024學年第二學期期末試卷
- 湛江市年模擬數學試題(二)
- 輪胎倉庫消防安全培訓
- 2025電子商務運營技術外包服務合同(乙方提供)
- 2025大連市家具銷售合同范本
- 2025租賃合同-汽車租賃合同
- 2025標準租賃合同范本全新版
- CT設備維保項目實施方案
- 約克冷水機組年度維護保養方案
- 醫院年度文化建設工作方案范文
- 吊裝式風機安裝作業指導書
- 物資拆裝搬運服務方案
- 高一數學分層訓練AB卷(人教A版2019必修第二冊)第九章統計(知識通關詳解)【單元測試卷】(原卷版+解析)
- 培養自我認知能力-心理健康教案
- 第九屆全國大學生測井技能大賽備賽試題庫-上(單選題)
- 建筑制圖與識圖教學課件:第八章 結構施工圖
- 《全面風險管理報告》模本-模范本
- 2024年甘肅酒泉肅州區選拔項目人員納入編制管理107人高頻考題難、易錯點模擬試題(共500題)附帶答案詳解
評論
0/150
提交評論