系統(tǒng)分析設(shè)計.ppt_第1頁
系統(tǒng)分析設(shè)計.ppt_第2頁
系統(tǒng)分析設(shè)計.ppt_第3頁
系統(tǒng)分析設(shè)計.ppt_第4頁
系統(tǒng)分析設(shè)計.ppt_第5頁
已閱讀5頁,還剩65頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、第2章,系統(tǒng)靜態(tài)分析建模,本章目錄,2.1 系統(tǒng)分析概念及其常用方法 2.2 系統(tǒng)模型的創(chuàng)建 2.3 對象和類的分析 2.4 用例分析 2.5 包圖 2.6 構(gòu)件圖與部署圖 本章小結(jié)和習(xí)題,系統(tǒng)分析是一種問題解決技術(shù),它將一個系統(tǒng)分解成各個組成部分,目的是研究各個部分如何工作、如何交互,以實現(xiàn)其系統(tǒng)目標(biāo)。 目前比較流行的系統(tǒng)分析方法是結(jié)構(gòu)化分析、信息工程、獲取原型和面向?qū)ο蠓治?,這些方法以前被看作是相互競爭、可互相替代的技術(shù),但實際上,這些方法是可以互補(bǔ)的。,2.1 系統(tǒng)分析概念及其常用方法,(1)結(jié)構(gòu)化分析 結(jié)構(gòu)化分析是模型驅(qū)動的、以過程為中心的技術(shù),用于分析一個現(xiàn)有系統(tǒng),定義新系統(tǒng)的業(yè)務(wù)需

2、求。數(shù)據(jù)流圖是結(jié)構(gòu)化分析方法的核心技術(shù)。 (2)信息工程(IE)法 信息工程(IE)法關(guān)注系統(tǒng)中存儲的數(shù)據(jù)結(jié)構(gòu)。實體關(guān)系圖是建模數(shù)據(jù)需求的關(guān)鍵工具。 (3)面向?qū)ο蠓治?面向?qū)ο蠓椒ò严到y(tǒng)看作是一組對象的集合,通過這些對象之間的相互協(xié)作,共同完成系統(tǒng)的任務(wù)。面向?qū)ο蟛捎梅Q為統(tǒng)一建模語言(UML)的建模工具。,2.1.2 模型驅(qū)動分析方法,加速系統(tǒng)分析法強(qiáng)調(diào)構(gòu)造原型,以便更快速地確定系統(tǒng)業(yè)務(wù)需求。 原型通常是一個預(yù)期系統(tǒng)的小規(guī)模的、不完整的但可工作的示例。 (1)獲取原型 獲取原型使用快速開發(fā)技術(shù)輔助用戶獲取業(yè)務(wù)需求。 (2)快速架構(gòu)分析 快速架構(gòu)分析也是一種構(gòu)建系統(tǒng)模型的加速分析法。 通過逆向

3、工程工具,從現(xiàn)有系統(tǒng)或從已獲取的原型中導(dǎo)出系統(tǒng)模型。,2.1.3 加速系統(tǒng)分析法,需求獲取就是進(jìn)行需求收集的一個活動。 (1)調(diào)查研究技術(shù) 包括:對現(xiàn)有文檔、報告、表單、文件、數(shù)據(jù)庫和備忘錄的抽樣;研究相關(guān)文獻(xiàn)、權(quán)衡其他方案和實地考察;觀察當(dāng)前系統(tǒng)的運(yùn)轉(zhuǎn)和工作環(huán)境;調(diào)查和咨詢管理人員和用戶團(tuán)體;同合適的管理人員、用戶及技術(shù)人員面談。 (2)集體獲取方法 將很多涉眾集中在一起,通過討論發(fā)現(xiàn)需求,并在討論中達(dá)成需求認(rèn)識的一致。頭腦風(fēng)暴(Brainstorming)、專題討論會(Workshop)、聯(lián)合需求計劃(JRP)。,2.1.4 需求獲取法,2.1.5 業(yè)務(wù)過程重構(gòu)法,業(yè)務(wù)過程重構(gòu)方法(BRP

4、) BRP是因全面質(zhì)量管理和持續(xù)過程改進(jìn)而引發(fā)的項目。 有些BRP的重點(diǎn)是所有的業(yè)務(wù)過程,而不考慮自動化程度 大多數(shù)BRP項目是:檢查如何最佳的應(yīng)用信息技術(shù)改進(jìn)業(yè)務(wù)過程,為實現(xiàn)或支持新業(yè)務(wù)過程而構(gòu)建新系統(tǒng)。 BRP也應(yīng)用于信息系統(tǒng)開發(fā)項目中,經(jīng)常用來研究現(xiàn)有業(yè)務(wù)過程,以確定問題低效率出現(xiàn)的地方。 BRP 在基于購買和集成商用現(xiàn)成產(chǎn)品的項目中也常見。,2.2.1 對象模型 對象模型是以對象和類為基礎(chǔ),描述系統(tǒng)中的對象以及這些對象之間的關(guān)系,通常體現(xiàn)五個層次,即主題層、類和對象層、結(jié)構(gòu)層、屬性和服務(wù)層。 2.2.2 功能模型 功能模型是描述業(yè)務(wù)系統(tǒng)的目標(biāo)或功能的模型。 2.2.3 動態(tài)模型 描述的

5、是對象的動態(tài)行為,它描述了系統(tǒng)如何響應(yīng)外部事件,系統(tǒng)內(nèi)對象之間如何協(xié)作,涉到及到對象的執(zhí)行順序以及對象在其生命周期中的狀態(tài)變化等等。,2.2 系統(tǒng)模型的創(chuàng)建,1、類圖 (1)類圖的組成元素 類(Class) 接口(Interface) 協(xié)作(Collaboration) 關(guān)系: 依賴(Dependence) 泛化(Generalization) 實現(xiàn)(Realize) 關(guān)聯(lián)(Association) 類圖還可以有含有注釋、約束。,2.3.1 類圖、對象圖概述,1、類圖 (2)類圖的抽象層次和細(xì)化關(guān)系 類圖應(yīng)用于軟件系統(tǒng)建模時,通常用來構(gòu)建領(lǐng)域模型、分析模型和設(shè)計模型。 類圖分為三個層次:概念層

6、、說明層、實現(xiàn)層。分別對應(yīng)于領(lǐng)域模型、分析模型和設(shè)計模型。 領(lǐng)域模型中的類圖,描述現(xiàn)實世界中問題領(lǐng)域的概念理解,屬于概念層類圖。 分析階段的類圖,描述軟件的接口部分,而不是軟件的實現(xiàn)部分。 設(shè)計模型的類圖,揭示軟件的實現(xiàn)部分。,2.3.1 類圖、對象圖概述,2、對象圖 對象圖(Object Diagram) 是顯示了一組對象和他們之間的關(guān)系。對象圖可以看作是類圖的一個實例。 (1)對象圖的定義 對象圖中通常含有:對象和鏈接。對象圖也可以像其他的圖一樣,包含注解、約束、包或子系統(tǒng)。 對象圖提供了系統(tǒng)的一個“快照”,顯示在給定時間實際存在的對象以及它們之間的鏈接。 通??梢詾橐粋€系統(tǒng)繪制多個不同的

7、對象圖,每個都代表系統(tǒng)在一個給定時刻的狀態(tài)。,2.3.1 類圖、對象圖概述,2、對象圖,2.3.1 類圖、對象圖概述,2.3.2 類圖元素,1、對象、類 對象(Object) 對象描述客觀世界中某個具體的實體。對象可以是事、物、或抽象概念,是將一組數(shù)據(jù)和使用該數(shù)據(jù)的一組基本操作(或過程)封裝在一起的實體。 類(Class) 是對一類具有相同特征的對象的抽象描述。類確定了對象的結(jié)構(gòu)和能力。 類是對象的模板,而對象是類的實例。可以理解為類就象模子,對象是通過模子塑造的實體。,2、類的描述 類由類名、屬性、操作三部分組成。 類名 屬性:用來描述類的特征,表示需要處理的數(shù)據(jù)。 操作:也稱功能或方法,操

8、作說明了該類能做些什么工作。,2.3.2 類圖元素,3、類之間的關(guān)系 (1)泛化(繼承)關(guān)系 泛化關(guān)系指類之間的“一般與特殊的關(guān)系”。 通常稱一般元素為父類,稱特殊元素為子類。子類繼承父類的特性(屬性、操作、關(guān)聯(lián)等),同時可以有自己的特性。 單繼承 多繼承 繼承有傳遞性,2.3.2 類圖元素,3、類之間的關(guān)系 (2)依賴關(guān)系 依賴是一種“使用”關(guān)系,說明一個模型元素的變化必影響到另一個模型元素,但反之未必。,如果一個模型元素的變化會影響另一個模型元素(這種影響不必是可逆的),那么就說在這兩個模型元素之間存在依賴關(guān)系。 依賴關(guān)系的UML符號表示是帶箭頭的虛線,指向被依賴的模型元素。,2.3.2

9、類圖元素,17,依賴關(guān)系,在類圖中,依賴可以由許多原因引起。 例如:一個類向另一個類發(fā)送消息(即一個類的操作需調(diào)用另一個類的操作),或一個類是另一個類的數(shù)據(jù)成員,或一個類是另一個類的某個操作參數(shù),這些都可以說這兩個類之間存在著依賴關(guān)系。 依賴關(guān)系是使用關(guān)系。,2.依賴關(guān)系 依賴關(guān)系的幾種衍型:,2.3.2 類圖元素,19,擴(kuò)展機(jī)制(Extensibility Mechanism),UML是開放的,具有良好的適應(yīng)性,其擴(kuò)展機(jī)制允許開發(fā)人員根據(jù)需要自定義一些構(gòu)造性的語言成分。UML提供了衍型、標(biāo)記值和約束三種擴(kuò)展機(jī)制。 1. 衍型(Stereotype) 衍型又稱版型(構(gòu)造型),它擴(kuò)展了UML的詞

10、匯表,可用來創(chuàng)造新的構(gòu)造塊。這個構(gòu)造塊必須從UML中已有的基本構(gòu)造塊上派生出來,用于解決特定的問題。衍型只是在已有元素上增加新的語義,而非增加新的文法結(jié)構(gòu)。 衍型是為特定的問題域定制的,使得UML具有強(qiáng)大而靈活的擴(kuò)充能力,衍型名放在“”中。 衍型可應(yīng)用于所有類型的模型元素,如類、構(gòu)件、結(jié)點(diǎn)、關(guān)系、包、操作等等。 UML中已預(yù)定義了一些版型。,3、類之間的關(guān)系 (2)依賴關(guān)系 UML定義了許多可以應(yīng)用于類之間依賴關(guān)系的衍型,規(guī)定依賴的含義和作用 常用的有(使用)、(實例化)、(調(diào)用)、(友元)等。,2.3.2 類圖元素,21,依賴關(guān)系,22,依賴關(guān)系,模板類Stack定義了棧相關(guān)的操作; Int

11、Stack將參數(shù)T與實際類型int綁定,使得所有操作都針對int類型的數(shù)據(jù)。,3、類之間的關(guān)系 (3)關(guān)聯(lián)關(guān)系: 關(guān)聯(lián)是一種結(jié)構(gòu)關(guān)系,代表類的對象(實例)之間的一組連接(鏈)。它指明一個事物的對象與另一個事物對象的聯(lián)系。 給出一個連接兩個類的關(guān)聯(lián),可以從一個類的對象導(dǎo)航到另一個類的對象。 (1)關(guān)聯(lián)的屬性 名稱 角色:,2.3.2 類圖元素,(1)關(guān)聯(lián)的屬性 多重性:通常需要說明一個關(guān)聯(lián)實例中有多少個相互連接的對象,這就是關(guān)聯(lián)的多重性。,2.3.2 類圖元素,(1)關(guān)聯(lián)的屬性 導(dǎo)航:從源類的任何對象直接到達(dá)目標(biāo)類的對象。 雙向關(guān)聯(lián) 單向關(guān)聯(lián),2.3.2 類圖元素,(1)關(guān)聯(lián)的屬性 限定:限定符

12、是屬性或?qū)傩粤斜恚@些屬性值用來劃分對象集(該對象集通過關(guān)聯(lián)關(guān)系與某個目標(biāo)對象連接)。 限定符是這個關(guān)聯(lián)的屬性。限定關(guān)聯(lián)主要用于多重性為一對多或多對多的關(guān)聯(lián)中。 限定符的作用是從規(guī)模較大的對象集合中,依據(jù)限定符的值選擇一個或多個對象。,2.3.2 類圖元素,(1)關(guān)聯(lián)的屬性 約束 關(guān)聯(lián)類 在UML中,可以把類之間的關(guān)聯(lián)定義成類,稱為關(guān)聯(lián)類。 關(guān)聯(lián)的每個鏈就是關(guān)聯(lián)類的實例,關(guān)聯(lián)類也有屬性、操作,以及其他信息,并與其它類關(guān)聯(lián)。 關(guān)聯(lián)類被看作:一個具有類特性的關(guān)聯(lián),或具有關(guān)聯(lián)特性的類。,2.3.2 類圖元素,(2)關(guān)聯(lián)的種類 自返關(guān)聯(lián) 二元關(guān)聯(lián) N元關(guān)聯(lián),2.3.2 類圖元素,(3) 特殊關(guān)聯(lián):聚合

13、和組合 聚合:表示部分與整體的關(guān)系。 組合:組合也表示整體與部分的關(guān)系。強(qiáng)調(diào)部分與整體具有相同的生命周期。,2.3.2 類圖元素,(4)接口和實現(xiàn)關(guān)系 接口:也是一個類,接口用于描述類或組件必須實現(xiàn)的契約。 實現(xiàn)關(guān)系:一個類元描述了另一個類元保證實現(xiàn)的契約。 實現(xiàn)關(guān)系是類之間的語義關(guān)系,一個類規(guī)定協(xié)議,另一個類保證實現(xiàn)這個協(xié)議。 大多數(shù)情況下,實現(xiàn)關(guān)系被用來規(guī)定接口和實現(xiàn)接口的類之間的關(guān)系。,2.3.2 類圖元素,31,實現(xiàn)關(guān)系,在兩種情況下可以使用實現(xiàn)關(guān)系: 接口與實現(xiàn)該接口的類(或組件)之間存在實現(xiàn)關(guān)系 用例以及實現(xiàn)該用例的協(xié)作之間存在實現(xiàn)關(guān)系。,2.3.3 分析階段類圖的構(gòu)建,分析階段構(gòu)

14、建類圖的一般步驟: 確定類 識別類的屬性和操作。 識別類之間的關(guān)聯(lián)。 定義類的結(jié)構(gòu)和層次。,一、確定類 在分析階段,類的識別通常由分析員在分析問題域的基礎(chǔ)上來完成。 常用的方法有:行為分析、名詞識別法、CRC分析法、根據(jù)邊界類、控制類、實體類的劃分來幫助分析系統(tǒng)中的類、參考設(shè)計模式確定類以及對領(lǐng)域進(jìn)行分析、或利用已有領(lǐng)域分析結(jié)果得到類等多種方法。 使用名詞識別法識別類: 1. 找出候選類 2. 審查與篩選類,2.3.3 分析階段類圖的構(gòu)建,一、確定類 使用名詞識別法識別類 1. 找出候選類 2. 審查與篩選類 刪除冗余類 去掉無關(guān)類 刪除模糊的類 去掉應(yīng)該是類“屬性”的候選類 所描述的操作不適

15、宜作為類 實現(xiàn)結(jié)構(gòu)不宜作為類,2.3.3 分析階段類圖的構(gòu)建,二、識別類的屬性和操作 1. 識別類的屬性 識別屬性需要結(jié)合需求陳述、領(lǐng)域知識、常識、經(jīng)驗等,也可以借鑒以往分析的成果。 (1)從以下角度識別: 常識性 專業(yè)性 功能性 存儲性 操作性 標(biāo)志性 關(guān)聯(lián)性,2.3.3 分析階段類圖的構(gòu)建,1.識別類的屬性 (2)篩選類的屬性: 忽略派生屬性。 忽略不影響多數(shù)操作的次要屬性。 忽略具有強(qiáng)烈內(nèi)部特征的內(nèi)部屬性。 刪除對象內(nèi)與其他屬性不相關(guān)、不一致的屬性。 刪除和系統(tǒng)無關(guān)的屬性。 刪除可表示為關(guān)聯(lián)特性的屬性。 2.識別類的操作,2.3.3 分析階段類圖的構(gòu)建,三、組織類并確定其關(guān)系 第一步,確

16、定關(guān)聯(lián)關(guān)系及多重性。 第二步,利用繼承組織類。識別繼承(自頂向下或自底向上) 第三步,考慮是否存在聚合或組合關(guān)系。 第四步,對于復(fù)雜的系統(tǒng),用包圖為其建模。,2.3.3 分析階段類圖的構(gòu)建,例:“在線銷售系統(tǒng)”,2.3.4 在線銷售系統(tǒng)類圖分析示例,為所有注冊會員提供郵購服務(wù)。個人和公司都可以注冊成為會員。 一般訪客可以登陸本系統(tǒng)瀏覽商品信息及促銷活動,通過填寫個人資料:姓名,地址,聯(lián)系方式(電話、電子郵件),注冊成為會員。 會員具有購買權(quán)限。購買商品時需填寫訂單,會員在WEB頁面瀏覽產(chǎn)品目錄,選擇購買項目、數(shù)量,付款方式(信用卡,現(xiàn)金,支票,借記卡),并提交訂單。 系統(tǒng)驗證會員信息及訂單商品

17、的可用性后,返回訂單總金額等信息。如果支付不成功,則產(chǎn)生退單或該訂單被掛起。 銷售部門處理訂單,將發(fā)貨單發(fā)送庫存控制部門。庫存管理人員根據(jù)發(fā)貨單發(fā)貨并更改訂單的狀態(tài),庫存管理人員控制并維持適量庫存,若庫存不足則向供應(yīng)商發(fā)送采購單,接受貨物,并隨時更新商品的庫存信息。 會員可管理個人信息,包括查看、修改、添加、刪除,并支持修改密碼、找回密碼、重置密碼。,例:“在線銷售系統(tǒng)”,一、確定類 第1 步:發(fā)現(xiàn)候選類,系統(tǒng),注冊會員,郵購服務(wù),個人,公司,會員,一般訪客,商品信息,促銷活動,個人資料,姓名,地址,聯(lián)系方式, 電話、電子郵件,會員身份,權(quán)限,訂單, WEB頁面, 產(chǎn)品目錄,購買項,數(shù)量,付款

18、方式,貨到付款,立即支付,信用卡,現(xiàn)金,支票,借記卡,訂單,銷售部門,會員信息,訂單商品,可用性,發(fā)貨單,庫存控制部門,訂購項,驗證,退單,庫存管理人員,采購單,訂單的狀態(tài),庫存,庫存信息,信息,密碼,第2 步:篩選類,2.3.4 在線銷售系統(tǒng)類圖分析示例,例:“在線銷售系統(tǒng)”,2.3.4 在線銷售系統(tǒng)類圖分析示例,例:,2.3.4 在線銷售系統(tǒng)類圖分析示例,2.4 用例分析,軟件開發(fā)過程中,首先需要明確客戶對系統(tǒng)的需求是什么,即系統(tǒng)應(yīng)該做什么? 用例建模是從用戶的角度、以用戶可理解的方式描述系統(tǒng)需求,是從外部視角來描述系統(tǒng)行為的過程。 用例建模是用于描述系統(tǒng)應(yīng)該做什么的建模技術(shù),它是從用戶的

19、角度、以用戶可理解的方式描述系統(tǒng)需求,是從外部視角來描述系統(tǒng)行為的過程。,2.4.1 用例元素的確定,用例圖主要由3種元素組成: 參與者(actor) 用例(use case) 關(guān)系 還可以有:注釋和約束,包,系統(tǒng)邊界框。,2.4.1 用例元素的確定,一、參與者 參與者是與系統(tǒng)交互的實體,包括需要和系統(tǒng)交換信息的一切實體。 1.參與者的表示 2.參與者與角色 (1)參與者代表角色 (2)角色不是對職位建模 3.參與者的類型 (1)主要參與者:使用系統(tǒng)的主要功能,并驅(qū)動系統(tǒng)需求。 (2)次要參與者:處理系統(tǒng)的輔助功能。,2.4.1 用例元素的確定,2.4.1 用例元素的確定,二、用例 用例是對系

20、統(tǒng)行為動態(tài)的描述,本質(zhì)上是對用戶需求的描述,描述一個具體的用戶目標(biāo)。 1.用例的表示 用例用一個水平橢圓表示, 用例命名應(yīng)采用簡短的動詞短語。 2.用例的特征 用例是從用戶的角度考慮系統(tǒng)做什么。 用例是對系統(tǒng)行為的描述。 用例的執(zhí)行結(jié)果對參與者來說應(yīng)該是有意義的。 一個用例包含了系統(tǒng)所執(zhí)行的一組動作的序列。 每個用例都應(yīng)有其對應(yīng)的參與者。,2.4.1 用例元素的確定,3.用例與場景(腳本) 場景:是用戶使用系統(tǒng)的一個實際場面,指參與者和系統(tǒng) 之間的一系列特定的交互活動。 用例是對一組場景共同特征的抽象,場景是某用例的一次 完整的、具體的執(zhí)行過程。 用例是場景的抽象,場景是用例的一個實例。,2.

21、4.1 用例元素的確定,4.用例的描述 (1)事件流 事件流是用例所包含的一組動作序列。事件流是從用戶角度寫成的,是從參與者發(fā)起用例直到業(yè)務(wù)事件結(jié)束的步驟描述。 (2)通常使用類似下面的模板來進(jìn)行用例描述 X.1用例ID號及用例名 X.2用例概述 X.3參與者 X.4前置條件(Pre-Conditions) X.5后置條件(Post-Conditions) X.6事件流 X.6.1基本事件流(Basic Flow) X.6.2擴(kuò)展事件流(Alternative Flows),49,例:“注冊課程”用例描述,1 用例Register for courses(注冊課程)的描述 1.4 前置條件 在

22、用例Register for courses(注冊課程)開始之前,用例“Maintain Course Info”(維護(hù)課程信息)的分支流“創(chuàng)建選修課程”必須完成。 1.5 后置條件 如果這個用例成功,學(xué)生的選修計劃表則被創(chuàng)建、刪除或打印。否則,系統(tǒng)的狀態(tài)沒有變化。 1.6 事件流 1.6.1 基本事件流 1.6.2 擴(kuò)展事件流 無。,2.4.1 用例元素的確定,三、關(guān)系 1.參與者與用例之間:關(guān)聯(lián)關(guān)系 2.參與者與參與者之間:繼承關(guān)系 3.用例之間存在的關(guān)系分為三種: (1)繼承關(guān)系 (2)包含關(guān)系(Include) (3)擴(kuò)展關(guān)系(Extend),2.4.2 分析階段用例圖的建造,構(gòu)建用例

23、模型,具體步驟如下: 確定系統(tǒng)的邊界和范圍 識別系統(tǒng)參與者 發(fā)現(xiàn)用例 描述用例及確定用例關(guān)系 建立用例圖 定義用例圖的層次結(jié)構(gòu),例:“在線銷售系統(tǒng)”,2.4.3 在線銷售系統(tǒng)類圖分析示例,為所有注冊會員提供郵購服務(wù)。個人和公司都可以注冊成為會員。 一般訪客可以登陸本系統(tǒng)瀏覽商品信息及促銷活動,通過填寫個人資料:姓名,地址,聯(lián)系方式(電話、電子郵件),注冊成為會員。 會員具有購買權(quán)限。購買商品時需填寫訂單,會員在WEB頁面瀏覽產(chǎn)品目錄,選擇購買項目、數(shù)量,付款方式(信用卡,現(xiàn)金,支票,借記卡),并提交訂單。 系統(tǒng)驗證會員信息及訂單商品的可用性后,返回訂單總金額等信息。如果支付不成功,則產(chǎn)生退單或

24、該訂單被掛起。 銷售部門處理訂單,將發(fā)貨單發(fā)送庫存控制部門。庫存管理人員根據(jù)發(fā)貨單發(fā)貨并更改訂單的狀態(tài),庫存管理人員控制并維持適量庫存,若庫存不足則向供應(yīng)商發(fā)送采購單,接受貨物,并隨時更新商品的庫存信息。 會員可管理個人信息,包括查看、修改、添加、刪除,并支持修改密碼、找回密碼、重置密碼。,2.4.3 在線銷售系統(tǒng)用例分析示例,在線銷售系統(tǒng)用例圖,2.5 包圖,包是用來對模型元素分組的。 在對一個大型、復(fù)雜的軟件系統(tǒng)建立模型時,通常會有大量的模型元素且關(guān)系復(fù)雜,使用包將模型元素分組,是控制軟件復(fù)雜度的重要手段。 包圖的應(yīng)用: 對組成元素建模 對體系結(jié)構(gòu)建模。,2.5.1 包圖及其模型元素,一、

25、包 包的內(nèi)容:包括類、接口、構(gòu)件、結(jié)點(diǎn)、協(xié)作、用例,甚至是其它子包或圖。 包的可見性:“公有”、“保護(hù)”和“私有” 包的構(gòu)造型:對于一個包可以加上構(gòu)造型或標(biāo)記值說明其特定的性質(zhì): system subsystem facade stub framework,2.5.1 包圖及其模型元素,二、包之間的關(guān)系 1、依賴關(guān)系 兩個包之間的依賴通常是指這兩個包所含的模型元素之間存在著一個或多個依賴。 2、泛化關(guān)系 如果兩個包之間存在泛化關(guān)系,就是指特殊包必須遵循一般性包的接口。,2.5.2 包圖建模及包圖分析示例,一、構(gòu)建包圖 構(gòu)建包模型時,在包中只標(biāo)明對每個包起核心作用的元素;另外也可以標(biāo)識每個包的文

26、檔標(biāo)記值,以使包更加清晰。 包圖建模主要步驟: (1)分析系統(tǒng)模型元素,把概念上或語義上相近的模型元素納入一個包。 (2)確定包之間的關(guān)系。 (3)標(biāo)出包內(nèi)元素的可見性。 優(yōu)化:,在識別一組候選包后,通過在包間移動類或添減包,以減少包間依賴、最小化每個包的public、protected元素的個數(shù)、最大化每個包中private元素的個數(shù)。,2.5.2 包圖建模及包圖分析示例,二、“在線銷售系統(tǒng)”包圖分析示例,2.6 構(gòu)件圖與部署圖,UML使用兩種視圖來表示實現(xiàn)單元:構(gòu)件圖(或稱組件圖)和部署圖(或稱配置圖)。 構(gòu)件圖和部署圖也是對系統(tǒng)物理方面建模的重要手段。,2.6.1 構(gòu)件圖及其模型元素,構(gòu)件圖是一種結(jié)構(gòu)圖,展示了構(gòu)件之間相互依賴的網(wǎng)絡(luò)結(jié)構(gòu)。 構(gòu)件圖有兩種表現(xiàn)形式: 一種是含有依賴關(guān)系的可用構(gòu)件(構(gòu)件庫)的集合,它是構(gòu)造系統(tǒng)的物理組織單元; 另一種是表示一個配置好的系統(tǒng),每個構(gòu)件與

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論