




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、類圖對象圖和包圖第1頁,共84頁,2022年,5月20日,17點7分,星期二2第3章 類圖、對象圖和包圖類圖和對象圖合稱為結(jié)構(gòu)模型視圖或者靜態(tài)視圖,用于描述系統(tǒng)的結(jié)構(gòu)或靜態(tài)特征。類圖用來描述系統(tǒng)中的類以及類與類之間的靜態(tài)關系等;對象用來描述特定時刻實際存在的若干對象以及它們之間的關系。一個系統(tǒng)的模型中可以包含多個對象圖,每個對象圖描述了系統(tǒng)在某個特定時刻的狀態(tài)。第2頁,共84頁,2022年,5月20日,17點7分,星期二3本章學習要點:理解類圖的基本概念為系統(tǒng)建模類建模類之間的關聯(lián)關系理解并建模泛化關系了解依賴關系和實現(xiàn)關系了解對象圖和包圖的概念構(gòu)造類圖第3頁,共84頁,2022年,5月20日
2、,17點7分,星期二43.1 類圖構(gòu)建面向?qū)ο竽P偷幕A是類、對象以及它們之間的關系。在不同的系統(tǒng)中描述的類可以是各種各樣的。在面向?qū)ο蟮奶幚碇?,類圖處于核心地位,它提供了用于定義和使用對象的主要規(guī)則,同時,類圖是正向工程(將模型轉(zhuǎn)化為代碼)的主要資源,是逆向工程(將代碼轉(zhuǎn)化為模型)的生成物。類圖是任何面向?qū)ο笙到y(tǒng)的核心。第4頁,共84頁,2022年,5月20日,17點7分,星期二53.1.1 概述類圖是描述類、接口以及它們之間關系的圖,它顯示了系統(tǒng)中各個類的靜態(tài)結(jié)構(gòu)。可以用某種面向?qū)ο蟮恼Z言實現(xiàn)類圖中的類。 建模對象 對系統(tǒng)的詞匯建模 對協(xié)作建模 對數(shù)據(jù)庫模式建模 第5頁,共84頁,2022
3、年,5月20日,17點7分,星期二類圖的元素:類(Class)接口(Interface)協(xié)作(Collaboration)依賴關系(Dependency)泛化關系(Generalization)關聯(lián)關系(Association)實現(xiàn)關系(Realization) 3.1.1 概述第6頁,共84頁,2022年,5月20日,17點7分,星期二一個例子第7頁,共84頁,2022年,5月20日,17點7分,星期二3.1.2 類及類的表示類是對資源的定義,它所包含的信息主要用來描述某種類型實體的特征以及對該類型實體的使用方法。對象是具體的實體,它遵守類制定的規(guī)則。類定義了一組具有狀態(tài)和行為的對象,這些對
4、象具有相同的屬性、操作、關系和語義。類包括名稱部分(Name)、屬性部分(Attribute)和操作部分(Operation),名稱必須有,屬性和操作部分可以省略。 8名稱屬性操作名稱名稱屬性名稱操作第8頁,共84頁,2022年,5月20日,17點7分,星期二1 名稱2 屬性3 操作4 職責5 約束6 注釋3.1.2 類及類的表示第9頁,共84頁,2022年,5月20日,17點7分,星期二1 名稱 應該來自系統(tǒng)的問題域。 應該是一個名詞,且不應該有前綴或后綴。 分為簡單名稱和路徑名稱。 第10頁,共84頁,2022年,5月20日,17點7分,星期二2 屬性描述了類在軟件系統(tǒng)中代表的事物(即對象
5、)所具備的特性。 類可以有任意數(shù)目的屬性,也可以沒有屬性。 在UML中,類屬性的語法為:第11頁,共84頁,2022年,5月20日,17點7分,星期二2 屬性1. 可見性2. 屬性名3. 類型4. 初始值5. 屬性字符串第12頁,共84頁,2022年,5月20日,17點7分,星期二(1) 可見性類型:公有(Public) “”私有(Private)“”被保護(Protected)“” UML中沒有默認可見性類型第13頁,共84頁,2022年,5月20日,17點7分,星期二(2) 屬性名 每個屬性都必須有一個名字以區(qū)別于類中的其他屬性。 屬性名由描述所屬類的特性的名詞或名詞短語組成。 單字屬性名
6、小寫,如果屬性名包含了多個單詞,這些單詞要合并,且除了第一個單詞外其余單詞的首字母要大寫。 第14頁,共84頁,2022年,5月20日,17點7分,星期二(3) 類型 應為屬性指定所屬的數(shù)據(jù)類型整型布爾型實型枚舉類型系統(tǒng)中的其他類 用戶自定義的數(shù)據(jù)類型第15頁,共84頁,2022年,5月20日,17點7分,星期二(4) 初始值 目的:保護系統(tǒng)的完整性,防止漏掉取值或被非法的值破壞系統(tǒng)的完整性。為用戶提供易用性。 第16頁,共84頁,2022年,5月20日,17點7分,星期二(5) 屬性字符串 指定關于屬性的其他信息。任何希望添加在屬性定義字符串值但又沒有合適地方可以加入的規(guī)則,都可以放在屬性字
7、符串里。 第17頁,共84頁,2022年,5月20日,17點7分,星期二特殊類型的屬性類的作用域?qū)傩裕簩傩韵录酉聞澗€對象屬性:用數(shù)組表示第18頁,共84頁,2022年,5月20日,17點7分,星期二3 操作對類的對象所能做的事務的抽象。一個類可以有任意數(shù)量的操作或者根本沒有操作。 由返回值類型、名稱和參數(shù)表描述。 在UML中,類操作的語法為:第19頁,共84頁,2022年,5月20日,17點7分,星期二3 操作(1)可見性(2)操作名(3)參數(shù)表(4)返回類型第20頁,共84頁,2022年,5月20日,17點7分,星期二(1) 可見性類型:公有(Public) “”私有(Private) “”
8、受保護(Protected) “”包內(nèi)公有(Package) “”第21頁,共84頁,2022年,5月20日,17點7分,星期二(2) 操作名 用來描述所屬類的行為的動詞或動詞短語。單字操作名小寫,如果操作名包含了多個單詞,這些單詞要合并,并且除了第一個單詞外其余單詞的首字母要大寫。 第22頁,共84頁,2022年,5月20日,17點7分,星期二(3) 參數(shù)表 一些按順序排列的屬性定義了操作的輸入。 是可選的,即操作不一定必須有參數(shù)才行。 定義方式:“名稱:類型”。若存在多個參數(shù),將各個參數(shù)用逗號隔開。參數(shù)可以具有默認值。 第23頁,共84頁,2022年,5月20日,17點7分,星期二(4)
9、返回類型是可選的,即操作不一定必須有返回類型。 絕大部分編程語言只支持一個返回值。 具體的編程語言一般要加一個關鍵字void來表示無返回值。 第24頁,共84頁,2022年,5月20日,17點7分,星期二4 職責 類或其他元素的契約或義務。 自由形式的文本。 非形式化的方法。 第25頁,共84頁,2022年,5月20日,17點7分,星期二5 約束指定了類所要滿足的一個或多個規(guī)則。 形式化的方法。 第26頁,共84頁,2022年,5月20日,17點7分,星期二 6 注釋注釋可以包含圖形也可以包含文本。 第27頁,共84頁,2022年,5月20日,17點7分,星期二3.1.3 定義類實體抽象成類將
10、系統(tǒng)要處理的數(shù)據(jù)抽象為類的屬性處理數(shù)據(jù)的方法抽象成類的操作要對問題域有透徹的理解依據(jù):需求規(guī)格說明書第28頁,共84頁,2022年,5月20日,17點7分,星期二類之間的關系 關聯(lián)關系(Association) 泛化關系(Generalization) 依賴關系(Dependency) 實現(xiàn)關系(Realization)第29頁,共84頁,2022年,5月20日,17點7分,星期二對象之間的通信手段,包括:二元關聯(lián)關聯(lián)類或關聯(lián)與反身關聯(lián)聚合(Aggregation)組成(Composition)3.2 關聯(lián)關系 第30頁,共84頁,2022年,5月20日,17點7分,星期二3.2.1 二元關聯(lián)
11、只有兩個類參與的關聯(lián)在類圖中的關聯(lián)關系,兩個類的相應對象所具有的關系稱為鏈第31頁,共84頁,2022年,5月20日,17點7分,星期二名稱角色多重性約束限定符導航性3.2.1 二元關聯(lián)第32頁,共84頁,2022年,5月20日,17點7分,星期二(1) 名稱使用一個動詞或動詞短語來命名關聯(lián)。清晰而簡潔地說明類間關系。關聯(lián)的名稱并不是必需的。 可以前綴或后綴一個指引閱讀方向的方向指示符,以消除歧義。一般是從左到右,從上到下閱讀。如果方向不同,要指出來。第33頁,共84頁,2022年,5月20日,17點7分,星期二(2) 角色 關聯(lián)關系中一個類對另一個類所表現(xiàn)出來的職責。 角色的名稱應該是名詞或
12、名詞短語,以解釋對象是如何參與關系的。 可以用角色名代替關聯(lián)名。第34頁,共84頁,2022年,5月20日,17點7分,星期二(3) 多重性 指有多少對象可以參與該關聯(lián)??梢员磉_一個取值范圍、特定值、無限定的范圍或一組離散值。 格式:“minimum.maximum” (均為Int型)。賦給一個端點的多重性表示該端點可以有多少個對象與另一個端點的一個對象關聯(lián)。 確定方式:第35頁,共84頁,2022年,5月20日,17點7分,星期二(4)約束規(guī)定了實現(xiàn)關聯(lián)端點時必須遵守的規(guī)則第36頁,共84頁,2022年,5月20日,17點7分,星期二(5)限定符使用關鍵字ID識別對象集合中的對象,稱為受限關
13、聯(lián)第37頁,共84頁,2022年,5月20日,17點7分,星期二(6) 導航性 描述一個對象通過鏈進行導航訪問另一個對象。使用導航性可以降低類間的耦合度。 包括:單向關聯(lián)和雙向關聯(lián)。雙向?qū)Ш揭话闶÷约^。大多數(shù)情況都是雙向?qū)Ш降?8頁,共84頁,2022年,5月20日,17點7分,星期二3.2.2 關聯(lián)類與關聯(lián)關系相連的類。關聯(lián)類與關聯(lián)相對應,表示關聯(lián)的附加信息關聯(lián)類是一種將數(shù)據(jù)值和鏈接關聯(lián)在一起的手段第39頁,共84頁,2022年,5月20日,17點7分,星期二關聯(lián)類與一般類的不同:一般類描述的是實體,關聯(lián)類描述的是關系關聯(lián)類與一般類的相同:關聯(lián)類也是類,也可以與其他類關聯(lián)3.2.2 關聯(lián)類
14、第40頁,共84頁,2022年,5月20日,17點7分,星期二3.2.3 或關聯(lián)或關聯(lián)指多個關聯(lián)附加約束條件,使類中的對象一次只能參與一個關聯(lián)關系第41頁,共84頁,2022年,5月20日,17點7分,星期二3.2.3 反身關聯(lián)參與關聯(lián)的對象屬于同一個類,稱為反身連接。第42頁,共84頁,2022年,5月20日,17點7分,星期二3.2.4 聚合關系(Aggregation)在關聯(lián)之上的緊密耦合 表示整體與部分關系的關聯(lián)。 整體類和部分類都可以獨立存在。 第43頁,共84頁,2022年,5月20日,17點7分,星期二3.2.5 組成關系(Composition)更緊密耦合的關系 表示整體與部分
15、關系的關聯(lián)。 部分類不能脫離整體類存在。 1.*1.*第44頁,共84頁,2022年,5月20日,17點7分,星期二3.3 泛化關系(Generalization)存在于一般元素和特殊元素間的分類關系。 可以用于類、用例以及其他模型元素。 描述了一種“is a kind of” 的關系。第45頁,共84頁,2022年,5月20日,17點7分,星期二3.3.1 泛化的含義和用途一般元素稱為超類或父類,特殊元素稱為子類子類繼承了父類的所有屬性和操作,并具有自己獨有屬性和操作。第46頁,共84頁,2022年,5月20日,17點7分,星期二3.3.2 泛化的層次泛化可以有多層泛化是類關系中最強的耦合形
16、式,必要時才使用只有在一個類確實是另一個類的特殊類型時才使用泛化第47頁,共84頁,2022年,5月20日,17點7分,星期二3.3.2 泛化的層次不提倡使用多重泛化第48頁,共84頁,2022年,5月20日,17點7分,星期二3.3.3 泛化約束泛化約束的表示第49頁,共84頁,2022年,5月20日,17點7分,星期二3.3.3 泛化約束泛化約束的類型不完全約束incomplete完全約束complete解體約束disjoint重疊約束overlapping第50頁,共84頁,2022年,5月20日,17點7分,星期二3.4 依賴關系表示兩個或多個模型元素之間語義上的關系。 一種元素以某種
17、形式依賴于另一種元素。 關聯(lián)、實現(xiàn)和泛化都是依賴關系的特例。 第51頁,共84頁,2022年,5月20日,17點7分,星期二依賴關系1. 使用依賴(Usage):最常用2. 抽象依賴(Abstraction)3. 綁定依賴(Binding)4. 授權依賴(Permission)第52頁,共84頁,2022年,5月20日,17點7分,星期二實現(xiàn)關系用于規(guī)格說明與實現(xiàn)之間的關系,通常用在接口以及實現(xiàn)該接口的類之間。第53頁,共84頁,2022年,5月20日,17點7分,星期二類關系圖第54頁,共84頁,2022年,5月20日,17點7分,星期二3.5 構(gòu)造類圖模型 迭代進行以下步驟問題域類建模GU
18、I類建模數(shù)據(jù)訪問類建模第55頁,共84頁,2022年,5月20日,17點7分,星期二3.5 構(gòu)造類圖模型 首先對問題域類建模,步驟是:一、確定可以在用例圖中找到的類二、為類圖中的類添加必要的特性和操作三、分析類之間的關系第56頁,共84頁,2022年,5月20日,17點7分,星期二問題域類建模一、確定可以在用例圖中找到的類找出系統(tǒng)需求中的所有名詞,作為類的候選者,形容詞作為屬性的線索,動詞作為操作的候選者。篩選類:去除冗余、無關、籠統(tǒng)名詞、統(tǒng)一不一致的用法。對剩下的名詞適當分類(人、事、物)通過檢查名詞是否存在相關的屬性和行為,如果有,則應該建立相應的類。抽象出共享功能,構(gòu)成單獨的類。二、 分
19、析類的屬性和操作第57頁,共84頁,2022年,5月20日,17點7分,星期二例需求(P256)針對圖書管理系統(tǒng)的需求,抽象出Borrower、 Librarian、Administrator 、Title、Book和Loan類,抽象出管理員Manager類,Librarian和Administrator 作為Manager類的泛化分析類的屬性和操作第58頁,共84頁,2022年,5月20日,17點7分,星期二類的屬性和操作1第59頁,共84頁,2022年,5月20日,17點7分,星期二類的屬性和操作2第60頁,共84頁,2022年,5月20日,17點7分,星期二類的屬性和操作3第61頁,共8
20、4頁,2022年,5月20日,17點7分,星期二1個Title對應1到多個Book1個Book對應0到1個Loan1個Borrower對應0到多個LoanLibrarian和Administrator 是Manager類的泛化三、分析類之間的關系第62頁,共84頁,2022年,5月20日,17點7分,星期二問題域類圖1第63頁,共84頁,2022年,5月20日,17點7分,星期二問題域類圖2第64頁,共84頁,2022年,5月20日,17點7分,星期二用戶接口類(GUI)建模用戶接口類與用例圖密切相關圖書管理員的接口類系統(tǒng)管理員的接口類第65頁,共84頁,2022年,5月20日,17點7分,星
21、期二圖書管理員的接口類第66頁,共84頁,2022年,5月20日,17點7分,星期二系統(tǒng)管理員的接口類第67頁,共84頁,2022年,5月20日,17點7分,星期二數(shù)據(jù)訪問類建模Manager、Borrower、Title、Book和Loan都是持久性類,需要存儲到數(shù)據(jù)庫,因此抽象出共享的訪問數(shù)據(jù)庫的Persistent類,實現(xiàn)對數(shù)據(jù)庫的增刪改查操作。Manager、Borrower、Title、Book和Loan都是Persistent的泛化第68頁,共84頁,2022年,5月20日,17點7分,星期二數(shù)據(jù)訪問類建模第69頁,共84頁,2022年,5月20日,17點7分,星期二GUI類與問題
22、域類的關系大多比較簡單借書、還書GUI類涉及較多類。第70頁,共84頁,2022年,5月20日,17點7分,星期二3.6 抽象類抽象的操作,留給子類實現(xiàn)操作全部是抽象的類稱為抽象類抽象類不能實例化抽象操作和抽象類用斜體表示第71頁,共84頁,2022年,5月20日,17點7分,星期二3.7 接口一組沒有相應方法實現(xiàn)的操作,類似于抽象類,不能實例化接口只有操作,沒有屬性通過將接口與類相關聯(lián),實現(xiàn)該接口。構(gòu)造型表示法球型表示法第72頁,共84頁,2022年,5月20日,17點7分,星期二3.8 對象圖 描述參與一個交互的各個對象在交互過程中某一時刻的狀態(tài)。 可以被看作是類圖在某一時刻的實例。 對于
23、每個屬性,對象都有特定的值第73頁,共84頁,2022年,5月20日,17點7分,星期二第74頁,共84頁,2022年,5月20日,17點7分,星期二3.8 對象圖 對象之間的關系稱為鏈,從類圖中的關聯(lián)而來。同一個類圖所對應的對象圖可以有多個,多個對象圖合在一起共同展示了隨著時間的推移,在不同時間點系統(tǒng)的對象狀態(tài)。 第75頁,共84頁,2022年,5月20日,17點7分,星期二類圖和對象圖的區(qū)別 類圖 對象圖 類具有三個分欄:名稱、屬性和操作對象只有兩個分欄:名稱和屬性在類的名稱分欄中只有類名對象的名稱形式為“對象名:類名”,匿名對象的名稱形式為“:類名”類中列出了操作對象圖中不包含操作,因為對于屬于同一個類的所有對象而言,其操作
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 帕金森居家護理實務指南
- 輻照機構(gòu)質(zhì)量協(xié)議書
- 輔導機構(gòu)加盟協(xié)議書
- 車輛使用調(diào)度協(xié)議書
- 代理批發(fā)或銷售協(xié)議書
- Brand KPIs for shoes Johnston Murphy in the United States-外文版培訓課件(2025.2)
- 超市加盟合同協(xié)議書
- 青蟹買賣合同協(xié)議書
- kva箱變技術協(xié)議書
- 農(nóng)村房基地轉(zhuǎn)讓協(xié)議書
- 稿件修改說明(模板)
- 速凍食品生產(chǎn)許可證審查細則
- 2023年清華大學考博英語真題及答案詳解
- 心肺復蘇中國專家共識解讀
- 道路工程施工水泥混凝土路面施工課件
- 胸痛單元建設課件
- DB41-T 2322-2022水資源公報數(shù)據(jù)庫設計規(guī)范
- 外科經(jīng)典換藥術培訓課件
- 營養(yǎng)與健康教材課件匯總完整版ppt全套課件最全教學教程整本書電子教案全書教案課件合集
- 新膠工割膠技術培訓
- 掛籃安裝細則
評論
0/150
提交評論