第2部分高級(jí)軟件工程主題面向?qū)ο筌浖<夹g(shù)_第1頁(yè)
第2部分高級(jí)軟件工程主題面向?qū)ο筌浖<夹g(shù)_第2頁(yè)
第2部分高級(jí)軟件工程主題面向?qū)ο筌浖<夹g(shù)_第3頁(yè)
第2部分高級(jí)軟件工程主題面向?qū)ο筌浖<夹g(shù)_第4頁(yè)
第2部分高級(jí)軟件工程主題面向?qū)ο筌浖<夹g(shù)_第5頁(yè)
已閱讀5頁(yè),還剩281頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、軟件建模精要軟件建模精要 可行性研究與計(jì)劃可行性研究與計(jì)劃需求分析需求分析設(shè)計(jì)設(shè)計(jì)編碼編碼運(yùn)行維護(hù)運(yùn)行維護(hù)測(cè)試測(cè)試定義定義階段階段開開發(fā)發(fā)階階段段維護(hù)階段維護(hù)階段瀑布模型瀑布模型 一、對(duì)象一、對(duì)象 1、對(duì)象的概念 對(duì)象是系統(tǒng)中用來(lái)描述客觀事物的一個(gè)實(shí)體,它是構(gòu)成系統(tǒng)的一個(gè)基本單位。 對(duì)象既可以描述客觀存在的事物客觀存在的事物,也可以表示由人主觀構(gòu)造的抽象觀念抽象觀念。 汽車汽車燈泡燈泡扳手扳手農(nóng)村農(nóng)村共產(chǎn)主義共產(chǎn)主義對(duì)象對(duì)象汽車汽車燈泡燈泡扳手扳手農(nóng)村農(nóng)村汽車汽車客觀世界:客觀世界:(客觀事物)(客觀事物)主觀世界:主觀世界:(概念)(概念) 軟件世界:軟件世界: (對(duì)象)(對(duì)象)燈泡燈泡扳手

2、扳手農(nóng)村農(nóng)村共產(chǎn)共產(chǎn)主義主義共產(chǎn)共產(chǎn)主義主義2、對(duì)象在三個(gè)世界中的含義 軟件中對(duì)象由一組屬性和操作組成。軟件中對(duì)象由一組屬性和操作組成。 3、軟件中的對(duì)象及性質(zhì) 例如例如: : 3、軟件中的對(duì)象及性質(zhì)雇員雇員姓名雇員出生日期雇傭日期雇員( )Public class Employee private String name; private EmployeeDate birthDate; private EmployeeDate hireDate; public Employee(Sting name,int bYYYY, int bMM, int bDD, int hYYYY, int hM

3、M,int hDD) = name; birthDate = new EmployeeDate(bYYYY,bMM,bDD); hireDate = new EmployeeDate(hYYYY,hMM,hDD); public String to String() return name+” birthday:”+ birthDate.toString()+ “hired:”+hireDate.toString(); 雇員對(duì)象Java編寫的“雇員對(duì)象”程序 二、類類 1 1、類的概念、類的概念 類類用來(lái)描述具有相同性質(zhì)的一組對(duì)象。用來(lái)描述具有相同性質(zhì)的一組對(duì)象。 汽車汽車

4、燈泡燈泡扳手扳手農(nóng)村農(nóng)村共產(chǎn)主義共產(chǎn)主義類類 2 2、類的表示、類的表示增加學(xué)生( )刪除學(xué)生( )學(xué)校校名:Name地址:String電話:Number類名屬性操作 三、封裝三、封裝 1 1、封裝的概念、封裝的概念 封裝封裝是把某些可以獨(dú)立存在的內(nèi)容封裹起是把某些可以獨(dú)立存在的內(nèi)容封裹起來(lái),構(gòu)成一個(gè)整體,并把內(nèi)部細(xì)節(jié)隱藏起來(lái),來(lái),構(gòu)成一個(gè)整體,并把內(nèi)部細(xì)節(jié)隱藏起來(lái),僅向外部提供可以提供的外在描述。僅向外部提供可以提供的外在描述。 2 2、對(duì)象的封裝、對(duì)象的封裝 對(duì)象封裝對(duì)象封裝是把對(duì)象的屬性和操作結(jié)合成一是把對(duì)象的屬性和操作結(jié)合成一個(gè)獨(dú)立的系統(tǒng)單位,并隱藏對(duì)象的內(nèi)部細(xì)節(jié),個(gè)獨(dú)立的系統(tǒng)單位,并

5、隱藏對(duì)象的內(nèi)部細(xì)節(jié),向外部提供對(duì)象的接口。向外部提供對(duì)象的接口。在類的外部不能訪問(wèn)在類的外部可以訪問(wèn)私有公有類封裝封裝 3 3、對(duì)象封裝的作用、對(duì)象封裝的作用 保護(hù)對(duì)象:保護(hù)對(duì)象: 防止用戶直接存取對(duì)象的內(nèi)部細(xì)節(jié)。防止用戶直接存取對(duì)象的內(nèi)部細(xì)節(jié)。 保護(hù)客戶:保護(hù)客戶: 對(duì)象內(nèi)部細(xì)節(jié)變化,接口不變,并不影響對(duì)象內(nèi)部細(xì)節(jié)變化,接口不變,并不影響用戶對(duì)對(duì)象的使用和訪問(wèn)。用戶對(duì)對(duì)象的使用和訪問(wèn)。 四、繼承四、繼承 1 1、繼承的概念、繼承的概念 繼承繼承描述一般事物與特殊事物之間的關(guān)系,描述一般事物與特殊事物之間的關(guān)系,特殊事物可以直接繼承一般事物的屬性。特殊事物可以直接繼承一般事物的屬性?;ɑ?四、

6、繼承四、繼承 2 2、面向?qū)ο笾械睦^承、面向?qū)ο笾械睦^承 繼承:繼承:子類子類( (特殊事物特殊事物) )無(wú)需定義,就可以無(wú)需定義,就可以直接繼承父類直接繼承父類( (一般事物一般事物) )的屬性和操作。的屬性和操作。 3 3、繼承的類型、繼承的類型 單繼承:?jiǎn)卫^承:子類只能繼承一個(gè)父類;子類只能繼承一個(gè)父類; 多繼承:多繼承:子類可以繼承多個(gè)父類。子類可以繼承多個(gè)父類。 五、多態(tài)五、多態(tài) 1 1、多態(tài)的概念、多態(tài)的概念 多態(tài)多態(tài)描述子類在繼承父類的屬性和操作時(shí),描述子類在繼承父類的屬性和操作時(shí),根據(jù)子類的特點(diǎn),賦予子類的特殊性。根據(jù)子類的特點(diǎn),賦予子類的特殊性。 六、消息六、消息 消息消息是

7、一個(gè)對(duì)象向另外一個(gè)對(duì)象發(fā)出的服是一個(gè)對(duì)象向另外一個(gè)對(duì)象發(fā)出的服務(wù)請(qǐng)求。消息一般包括提供服務(wù)的對(duì)象標(biāo)識(shí),務(wù)請(qǐng)求。消息一般包括提供服務(wù)的對(duì)象標(biāo)識(shí),操作名,輸入信息,輸出信息等。操作名,輸入信息,輸出信息等。1.1 軟件模型軟件模型 1.1.1 軟件模型的概念軟件模型的概念 1.1.2 軟件模型的內(nèi)容軟件模型的內(nèi)容 1.2 面向?qū)ο蟮幕靖拍蠲嫦驅(qū)ο蟮幕靖拍?.1.1 UML2.1.1 UML的含義的含義 UML: Unified Modeling Language UML: Unified Modeling Language 統(tǒng)一建模語(yǔ)言統(tǒng)一建模語(yǔ)言. . 作用作用: : 建立軟件模型建立軟件模

8、型 建模語(yǔ)言建模語(yǔ)言: : 提供交流的詞匯和規(guī)提供交流的詞匯和規(guī)則則 可視化可視化: : 通過(guò)標(biāo)準(zhǔn)圖符構(gòu)成圖形來(lái)描述模通過(guò)標(biāo)準(zhǔn)圖符構(gòu)成圖形來(lái)描述模型型 建模語(yǔ)言而非編程語(yǔ)言建模語(yǔ)言而非編程語(yǔ)言 通用標(biāo)準(zhǔn)通用標(biāo)準(zhǔn): : 成為軟件建模的標(biāo)準(zhǔn)語(yǔ)言成為軟件建模的標(biāo)準(zhǔn)語(yǔ)言, ,并且并且在其他領(lǐng)域也得到應(yīng)用。在其他領(lǐng)域也得到應(yīng)用。 Whats UML29Booch 91Booch 93Unified Method 0.8UML 1.0OMT - 2OMT - 1OOSEUML 0.9 & 0.919595年年96.1 96.1 到到 96.1096.1097.1297.12 OMG Standar

9、d OMG StandardOther methodsOther methods向上向上96.1296.12UML PartnersUML PartnersUML 1.1UML 1.3UML 1.4UML 2.0 工工業(yè)業(yè)化化 標(biāo)標(biāo)準(zhǔn)準(zhǔn) 集成集成 多種方法多種方法2.1.2 UML的的發(fā)發(fā)展展歷歷史史UML的創(chuàng)建人的創(chuàng)建人: OMT方法方法 Booch方法方法 OOSE方法方法UML Rumbaugh Booch Jacobson (朗伯夫) (布奇) (雅各布森) UML之父 IBM Rational部門首席科學(xué)家 現(xiàn)代語(yǔ)言學(xué)家2.2.1 UML2.2.1 UML構(gòu)成概述構(gòu)成概述 作為建模語(yǔ)

10、言作為建模語(yǔ)言,UML,UML由以下幾部分構(gòu)成由以下幾部分構(gòu)成: : 基本語(yǔ)言組成基本語(yǔ)言組成 語(yǔ)言的構(gòu)成成分語(yǔ)言的構(gòu)成成分, ,包括包括: : 要素,關(guān)系,圖要素,關(guān)系,圖 語(yǔ)義規(guī)則語(yǔ)義規(guī)則: : 語(yǔ)言的語(yǔ)法和語(yǔ)義規(guī)則語(yǔ)言的語(yǔ)法和語(yǔ)義規(guī)則 公共機(jī)制公共機(jī)制: : 規(guī)范說(shuō)明規(guī)范說(shuō)明, ,語(yǔ)言擴(kuò)展等語(yǔ)言擴(kuò)展等UML的構(gòu)成的構(gòu)成圖圖基本語(yǔ)言構(gòu)成基本語(yǔ)言構(gòu)成語(yǔ)義語(yǔ)義規(guī)則規(guī)則要素要素結(jié)構(gòu): (共7種)行為: (消息, 狀態(tài))分組: (包)注釋: (注釋)關(guān)系關(guān)系依賴關(guān)聯(lián)泛化實(shí)現(xiàn)類圖, 對(duì)象圖, 用例圖, 順序圖, 協(xié)作圖, 狀態(tài)圖, 活動(dòng)圖, 構(gòu)件圖, 部署圖命名命名范圍范圍可見性可見性完整性完整性執(zhí)

11、行執(zhí)行規(guī)范說(shuō)明規(guī)范說(shuō)明修飾修飾通用劃分通用劃分?jǐn)U展機(jī)制擴(kuò)展機(jī)制(版型版型, 標(biāo)記值標(biāo)記值,約束約束)通用(或公共)機(jī)制通用(或公共)機(jī)制2.2.2 UML2.2.2 UML基本語(yǔ)言要基本語(yǔ)言要素素 UML UML語(yǔ)言中的要素語(yǔ)言中的要素 UMLUML語(yǔ)言的基本構(gòu)成要素語(yǔ)言的基本構(gòu)成要素, ,包括四類包括四類: : 結(jié)構(gòu)結(jié)構(gòu): : 語(yǔ)言的靜態(tài)構(gòu)成要素語(yǔ)言的靜態(tài)構(gòu)成要素, ,有有7 7種種 行為行為: : 語(yǔ)言的動(dòng)態(tài)構(gòu)成要素語(yǔ)言的動(dòng)態(tài)構(gòu)成要素, ,表示事物表示事物 的變化和狀態(tài)的變化和狀態(tài) 分組分組: : 對(duì)模型中事物分組組織的要素對(duì)模型中事物分組組織的要素 注釋注釋:

12、 : 對(duì)模型中事物標(biāo)注和解釋對(duì)模型中事物標(biāo)注和解釋1 1 結(jié)構(gòu)結(jié)構(gòu) 結(jié)構(gòu)結(jié)構(gòu): : UMLUML語(yǔ)言的靜構(gòu)成要素語(yǔ)言的靜構(gòu)成要素, ,包括包括7 7種種: :類名屬性操作類類: 描述一組具有相同性質(zhì)的對(duì)象。描述一組具有相同性質(zhì)的對(duì)象。接口接口: 描述一個(gè)類或一個(gè)構(gòu)件的服描述一個(gè)類或一個(gè)構(gòu)件的服務(wù)操作集。務(wù)操作集。類名屬性操作主動(dòng)類主動(dòng)類: 對(duì)象至少擁有一個(gè)進(jìn)程或線對(duì)象至少擁有一個(gè)進(jìn)程或線程,能啟動(dòng)控制活動(dòng)程,能啟動(dòng)控制活動(dòng)。用例用例: 描述一組動(dòng)作序列,參與者通描述一組動(dòng)作序列,參與者通過(guò)它能夠完成一定的功能。過(guò)它能夠完成一定的功能。構(gòu)件構(gòu)件: 描述軟件系統(tǒng)的構(gòu)成件。描述軟件系統(tǒng)的構(gòu)成件。結(jié)點(diǎn)

13、結(jié)點(diǎn): 一個(gè)基本計(jì)算單元,可以是一一個(gè)基本計(jì)算單元,可以是一個(gè)物理結(jié)點(diǎn),客戶機(jī)或服務(wù)器個(gè)物理結(jié)點(diǎn),客戶機(jī)或服務(wù)器。協(xié)作協(xié)作: 描述一組動(dòng)作序列的實(shí)現(xiàn)描述一組動(dòng)作序列的實(shí)現(xiàn)。1 結(jié)構(gòu)結(jié)構(gòu)2 2 行為行為 行為行為: : UMLUML的動(dòng)態(tài)構(gòu)成要素的動(dòng)態(tài)構(gòu)成要素, ,包括包括2 2種種: :消息消息: 一組對(duì)象之間為完成某一項(xiàng)任一組對(duì)象之間為完成某一項(xiàng)任務(wù)而進(jìn)行的一系列消息交換的行為務(wù)而進(jìn)行的一系列消息交換的行為說(shuō)明。說(shuō)明。狀態(tài)狀態(tài): 一個(gè)對(duì)象或一個(gè)交互在生命期一個(gè)對(duì)象或一個(gè)交互在生命期內(nèi)響應(yīng)事件所經(jīng)歷的狀態(tài)序列。內(nèi)響應(yīng)事件所經(jīng)歷的狀態(tài)序列。3 3 分組分組 分組分組: : UMLUML對(duì)模型的組

14、織要素。對(duì)模型的組織要素。包包: UMLUML用包來(lái)對(duì)模型進(jìn)行分組組織,用包來(lái)對(duì)模型進(jìn)行分組組織,一個(gè)包中包括若干個(gè)相關(guān)的模型元一個(gè)包中包括若干個(gè)相關(guān)的模型元素。素。4 4 注釋注釋 注釋注釋: : 解釋解釋模型元素的要素。模型元素的要素。注釋注釋:對(duì)模型中的元素進(jìn)行解釋。對(duì)模型中的元素進(jìn)行解釋。 UML UML中的關(guān)系中的關(guān)系 關(guān)系關(guān)系: : UMLUML定義的模型元素之間的關(guān)系定義的模型元素之間的關(guān)系, ,包包括四種括四種: :l關(guān)聯(lián)關(guān)聯(lián)l泛化泛化l依賴依賴l實(shí)現(xiàn)實(shí)現(xiàn)1 1 關(guān)聯(lián)關(guān)聯(lián)關(guān)聯(lián)關(guān)聯(lián): : 本指事物之間存在的固有的牽連關(guān)系,本指事物之間存在的固有的牽連關(guān)

15、系,在在UMLUML中,是對(duì)具有共同結(jié)構(gòu)特征、關(guān)系和語(yǔ)義的中,是對(duì)具有共同結(jié)構(gòu)特征、關(guān)系和語(yǔ)義的對(duì)象或?qū)嵗g的鏈接描述。對(duì)象或?qū)嵗g的鏈接描述。表示:表示:一條實(shí)線一條實(shí)線教師教師學(xué)生學(xué)生教學(xué)2 2 泛化泛化超類超類子類子類家具家具沙發(fā)沙發(fā)泛化泛化: 在在UML中,描述事物之間的一般中,描述事物之間的一般和特殊關(guān)系。特殊事物具有并繼承一般事物和特殊關(guān)系。特殊事物具有并繼承一般事物的特性。的特性。表示:表示:一條帶空心三角形箭頭的實(shí)箭線一條帶空心三角形箭頭的實(shí)箭線特殊特殊一般一般例子:例子:3 3 依賴依賴依賴依賴: : 兩個(gè)要素之間的因果關(guān)系,其中一個(gè)兩個(gè)要素之間的因果關(guān)系,其中一個(gè)要素(

16、獨(dú)立要素)發(fā)生變化會(huì)影響另外一個(gè)要素要素(獨(dú)立要素)發(fā)生變化會(huì)影響另外一個(gè)要素(依賴要素)的語(yǔ)義。(依賴要素)的語(yǔ)義。表示表示:一條虛箭線:一條虛箭線 教師教師課表課表授課獨(dú)立要素獨(dú)立要素(因因)依賴要素依賴要素(果)(果)依賴于4 4 實(shí)現(xiàn)實(shí)現(xiàn) 實(shí)現(xiàn)實(shí)現(xiàn): : 描述類元之間的語(yǔ)義關(guān)系,表示說(shuō)明和實(shí)描述類元之間的語(yǔ)義關(guān)系,表示說(shuō)明和實(shí)現(xiàn)間的關(guān)系。一種是接口與實(shí)現(xiàn)它的類和構(gòu)件;現(xiàn)間的關(guān)系。一種是接口與實(shí)現(xiàn)它的類和構(gòu)件;另一種是用例和實(shí)現(xiàn)它們的協(xié)作。另一種是用例和實(shí)現(xiàn)它們的協(xié)作。 表示表示:一條帶空心三角形箭頭的虛箭線。:一條帶空心三角形箭頭的虛箭線。類類接口接口用例用例協(xié)作協(xié)作實(shí)現(xiàn)實(shí)現(xiàn)說(shuō)明說(shuō)明2

17、.2.2.3 UML UML中的圖中的圖 UMLUML共定義了共定義了9 9種圖種圖: : 用例圖用例圖 狀態(tài)圖狀態(tài)圖 類圖類圖 活動(dòng)圖活動(dòng)圖 對(duì)象圖對(duì)象圖 構(gòu)件圖構(gòu)件圖 順序圖順序圖 部署圖部署圖 協(xié)作圖協(xié)作圖1 1 用例圖用例圖 用例用例: :是外部可見的一個(gè)系統(tǒng)功能單元。是外部可見的一個(gè)系統(tǒng)功能單元。 作用作用: :描述一組用例描述一組用例, ,參與者及其它們之間的關(guān)系,是外參與者及其它們之間的關(guān)系,是外部用戶所能觀察到的系統(tǒng)功能的模型圖。用于需求建模。部用戶所能觀察到的系統(tǒng)功能的模型圖。用于需求建模。2 2 類圖類圖 作用作用: :描述一組類之間的關(guān)系。用于對(duì)應(yīng)用領(lǐng)域中的

18、描述一組類之間的關(guān)系。用于對(duì)應(yīng)用領(lǐng)域中的概念以及與系統(tǒng)實(shí)現(xiàn)有關(guān)的內(nèi)部概念建模。概念以及與系統(tǒng)實(shí)現(xiàn)有關(guān)的內(nèi)部概念建模。3 3 對(duì)象圖對(duì)象圖 作用作用: :描述一組對(duì)象之間的關(guān)系。它是對(duì)象類圖的一個(gè)描述一組對(duì)象之間的關(guān)系。它是對(duì)象類圖的一個(gè)實(shí)例,表示在某一時(shí)刻系統(tǒng)對(duì)象的狀態(tài)、對(duì)象之間關(guān)實(shí)例,表示在某一時(shí)刻系統(tǒng)對(duì)象的狀態(tài)、對(duì)象之間關(guān)系的狀態(tài)以及對(duì)象行為靜態(tài)方面的狀態(tài)。系的狀態(tài)以及對(duì)象行為靜態(tài)方面的狀態(tài)。4 4 順序圖順序圖 作用作用: :描述一個(gè)交互,表示了對(duì)象之間傳送消息的時(shí)間描述一個(gè)交互,表示了對(duì)象之間傳送消息的時(shí)間順序。順序。5 5 協(xié)作圖協(xié)作圖 作用作用: :描述一個(gè)交互,強(qiáng)調(diào)對(duì)象與對(duì)象之間

19、的消息傳描述一個(gè)交互,強(qiáng)調(diào)對(duì)象與對(duì)象之間的消息傳遞。遞。6 6 狀態(tài)圖狀態(tài)圖 作用作用: :描述一個(gè)對(duì)象所處的狀態(tài)及其變化,是一個(gè)類對(duì)象描述一個(gè)對(duì)象所處的狀態(tài)及其變化,是一個(gè)類對(duì)象所可能經(jīng)歷的所有歷程的模型圖。所可能經(jīng)歷的所有歷程的模型圖。7 7 活動(dòng)圖活動(dòng)圖 作用作用: :描述執(zhí)行算法的工作流程中涉及的活動(dòng),描述執(zhí)行算法的工作流程中涉及的活動(dòng),是對(duì)人類組織的現(xiàn)實(shí)世界中的工作流程建模。是對(duì)人類組織的現(xiàn)實(shí)世界中的工作流程建模。8 8 構(gòu)件圖構(gòu)件圖 作用作用: :描述一組構(gòu)件及其關(guān)系,用于為系統(tǒng)的構(gòu)描述一組構(gòu)件及其關(guān)系,用于為系統(tǒng)的構(gòu)件建模。件建模。9 9 部署圖部署圖 作用作用: :描述一組節(jié)點(diǎn)

20、及其關(guān)系,允許評(píng)估分配結(jié)果和資源分配。節(jié)點(diǎn)是描述一組節(jié)點(diǎn)及其關(guān)系,允許評(píng)估分配結(jié)果和資源分配。節(jié)點(diǎn)是一組運(yùn)行期間的系統(tǒng)資源,如計(jì)算機(jī)、數(shù)據(jù)庫(kù)、設(shè)備或存儲(chǔ)器。一組運(yùn)行期間的系統(tǒng)資源,如計(jì)算機(jī)、數(shù)據(jù)庫(kù)、設(shè)備或存儲(chǔ)器。2.2.3 UML2.2.3 UML的基本語(yǔ)義規(guī)則的基本語(yǔ)義規(guī)則UML有一套規(guī)則,這些規(guī)則描述了一個(gè)結(jié)構(gòu)良好的模型看起來(lái)應(yīng)該象什么。一個(gè)結(jié)構(gòu)良好的模型應(yīng)該在語(yǔ)義上是前后一致的,并且與所有的相關(guān)模型協(xié)調(diào)一致。 UMLUML的基本語(yǔ)義規(guī)則有的基本語(yǔ)義規(guī)則有: : 命名命名 范圍范圍 可視性可視性 完整性完整性 執(zhí)行執(zhí)行UML的構(gòu)成的構(gòu)成圖圖基本語(yǔ)言要素基本語(yǔ)言要素語(yǔ)義語(yǔ)義規(guī)則規(guī)則事物事物結(jié)

21、構(gòu)事物: (共7種)行為事物: (交互, 狀態(tài)機(jī))分組事物: (包)注釋事物: (注釋)關(guān)系關(guān)系依賴關(guān)聯(lián)泛化實(shí)現(xiàn)類圖, 對(duì)象圖, 用例圖, 順序圖, 協(xié)作圖, 狀態(tài)圖, 活動(dòng)圖, 構(gòu)件圖, 部署圖命名命名范圍范圍可視性可視性完整性完整性執(zhí)行執(zhí)行規(guī)范說(shuō)明規(guī)范說(shuō)明修飾修飾通用劃分通用劃分?jǐn)U展機(jī)制擴(kuò)展機(jī)制(版型版型, 標(biāo)記值標(biāo)記值,約束約束)通用機(jī)制通用機(jī)制2.2.3 UML2.2.3 UML的基本語(yǔ)義規(guī)則的基本語(yǔ)義規(guī)則 1)1)命名命名 規(guī)定對(duì)要素、關(guān)系、圖命名。規(guī)定對(duì)要素、關(guān)系、圖命名。 例如:例如:student student 為一個(gè)類的名字為一個(gè)類的名字 2)2)范圍范圍 給一個(gè)名字特定含

22、義的語(yǔ)境。給一個(gè)名字特定含義的語(yǔ)境。 例如:屬性例如:屬性name:string name:string 3)3)可視性可視性 規(guī)定外界對(duì)該名字識(shí)別和使用的范圍。規(guī)定外界對(duì)該名字識(shí)別和使用的范圍。 三種:三種:public:public:公共公共 + + protected:protected:保護(hù)保護(hù) # # private:private:私用私用 - -2.2.3 UML2.2.3 UML的基本語(yǔ)義規(guī)則的基本語(yǔ)義規(guī)則 4)4)完整性完整性 保證事物正確、一致地相互聯(lián)系。保證事物正確、一致地相互聯(lián)系。 例如:一個(gè)對(duì)象出現(xiàn)在不同的圖中時(shí),如何例如:一個(gè)對(duì)象出現(xiàn)在不同的圖中時(shí),如何保證其一致性

23、。保證其一致性。5)5)執(zhí)行執(zhí)行 運(yùn)行或模擬動(dòng)態(tài)模型的含義是什么。運(yùn)行或模擬動(dòng)態(tài)模型的含義是什么。 2.2.4 UML2.2.4 UML的通用機(jī)制的通用機(jī)制通用機(jī)制:通過(guò)與具有公共特征的模式通用機(jī)制:通過(guò)與具有公共特征的模式取得一致性,使模型更為簡(jiǎn)單和協(xié)調(diào)。取得一致性,使模型更為簡(jiǎn)單和協(xié)調(diào)。 UMLUML的通用機(jī)制有的通用機(jī)制有: : 規(guī)格說(shuō)明規(guī)格說(shuō)明 修飾修飾 對(duì)應(yīng)劃分對(duì)應(yīng)劃分 擴(kuò)展機(jī)制擴(kuò)展機(jī)制UML的構(gòu)成的構(gòu)成圖圖基本語(yǔ)言要素基本語(yǔ)言要素語(yǔ)義語(yǔ)義規(guī)則規(guī)則事物事物結(jié)構(gòu)事物: (共7種)行為事物: (交互, 狀態(tài)機(jī))分組事物: (包)注釋事物: (注釋)關(guān)系關(guān)系依賴關(guān)聯(lián)泛化實(shí)現(xiàn)類圖, 對(duì)象圖,

24、 用例圖, 順序圖, 協(xié)作圖, 狀態(tài)圖, 活動(dòng)圖, 構(gòu)件圖, 部署圖命名命名范圍范圍可視性可視性完整性完整性執(zhí)行執(zhí)行規(guī)格說(shuō)明規(guī)格說(shuō)明修飾修飾對(duì)應(yīng)劃分對(duì)應(yīng)劃分?jǐn)U展機(jī)制擴(kuò)展機(jī)制(版型版型, 標(biāo)記值標(biāo)記值,約束約束)通用機(jī)制通用機(jī)制2.2.4 UML2.2.4 UML的通用機(jī)制的通用機(jī)制 1)1)規(guī)格說(shuō)明規(guī)格說(shuō)明 UMLUML對(duì)每一個(gè)元素都有確定的圖形表示符對(duì)每一個(gè)元素都有確定的圖形表示符號(hào),但對(duì)該圖形符號(hào)還有語(yǔ)法、語(yǔ)義的文字說(shuō)號(hào),但對(duì)該圖形符號(hào)還有語(yǔ)法、語(yǔ)義的文字說(shuō)明。明。 例如:例如:ActorActor:參與者,:參與者,UMLUML表示為:表示為: 2.2.4 UML2.2.4 UML的通用

25、機(jī)制的通用機(jī)制 2)2)修飾修飾 圖形符號(hào)表示一個(gè)元素的主要特征,此外,圖形符號(hào)表示一個(gè)元素的主要特征,此外,可以加上修飾,表示該元素的特征。可以加上修飾,表示該元素的特征。 例如:矩形框表示一個(gè)類,有類名,屬性,例如:矩形框表示一個(gè)類,有類名,屬性,操作等。但也可增加操作等。但也可增加“可視性可視性” 等修飾。等修飾??梢曅?.2.4 UML2.2.4 UML的通用機(jī)制的通用機(jī)制3)3)對(duì)應(yīng)劃分(通用劃分)對(duì)應(yīng)劃分(通用劃分) 指元素指元素/ /元素實(shí)例、接口元素實(shí)例、接口/ /實(shí)現(xiàn)這樣的劃分方法。實(shí)現(xiàn)這樣的劃分方法。 抽象抽象- -實(shí)例實(shí)例 例如,類例如,類- -對(duì)象,用例對(duì)象,用例- -

26、具體用例具體用例 接口接口- -實(shí)現(xiàn)實(shí)現(xiàn) 接口表示約定,實(shí)現(xiàn)表示對(duì)約定的實(shí)施接口表示約定,實(shí)現(xiàn)表示對(duì)約定的實(shí)施 2.2.4 UML2.2.4 UML的通用機(jī)制的通用機(jī)制4)4)擴(kuò)展機(jī)制擴(kuò)展機(jī)制 UMLUML提供了一種繪制軟件藍(lán)圖的標(biāo)準(zhǔn)語(yǔ)言,為了表示提供了一種繪制軟件藍(lán)圖的標(biāo)準(zhǔn)語(yǔ)言,為了表示出各種領(lǐng)域的各種模型在不同時(shí)刻所有可能的細(xì)微差別,出各種領(lǐng)域的各種模型在不同時(shí)刻所有可能的細(xì)微差別,以受控方法擴(kuò)展該語(yǔ)言。以受控方法擴(kuò)展該語(yǔ)言。 版型版型( (構(gòu)造型構(gòu)造型) ) 用來(lái)擴(kuò)展用來(lái)擴(kuò)展UMLUML的詞匯,增加語(yǔ)言元素;的詞匯,增加語(yǔ)言元素; 或者劃分或者劃分某一種元素的不同類型。某一種元素的不同類

27、型。 形式:形式:擴(kuò)展描述擴(kuò)展描述 例例1 1,把,把“包包” 構(gòu)造為構(gòu)造為“subsystem(subsystem(子系統(tǒng)子系統(tǒng)) )”類型。類型。 2.2.4 UML2.2.4 UML的通用機(jī)制的通用機(jī)制4)4)擴(kuò)展機(jī)制擴(kuò)展機(jī)制 例例2 2,參與者是一個(gè)版型化的類,其版型為,參與者是一個(gè)版型化的類,其版型為ActorActor。 2.2.4 UML2.2.4 UML的通用機(jī)制的通用機(jī)制4)4)擴(kuò)展機(jī)制擴(kuò)展機(jī)制 標(biāo)記標(biāo)記- -值值 標(biāo)記標(biāo)記- -值用來(lái)規(guī)定模型元素的特性。通常把標(biāo)記值用來(lái)規(guī)定模型元素的特性。通常把標(biāo)記與值用等號(hào)相連,放在花括號(hào)中,放在模型元素后與值用等號(hào)相連,放在花括號(hào)中,放

28、在模型元素后面。面。 形式:形式: 標(biāo)記標(biāo)記= =值值 例如,例如, 院校院校= =云南大學(xué)云南大學(xué) 指出類指出類studentstudent是云南是云南大學(xué)的學(xué)生。大學(xué)的學(xué)生。 student院校=云南大學(xué)2.2.4 UML2.2.4 UML的通用機(jī)制的通用機(jī)制4)4)擴(kuò)展機(jī)制擴(kuò)展機(jī)制 約束約束 約束規(guī)定所約束的模型元素的某個(gè)條件或命題約束規(guī)定所約束的模型元素的某個(gè)條件或命題必須為真,否則模型無(wú)效。約束也用必須為真,否則模型無(wú)效。約束也用 描述。描述。 形式:形式: 約束條件約束條件 例如,例如, 子集子集 指出領(lǐng)導(dǎo)屬于成員的子集。指出領(lǐng)導(dǎo)屬于成員的子集。 人學(xué)會(huì)*成員成員*領(lǐng)導(dǎo)領(lǐng)導(dǎo)*子集子

29、集【UMLUML支持工具支持工具】 StarUML(免費(fèi)英文UML建模工具) Rational Rose(商業(yè)版IBM開發(fā)UML建模工具) Visio(商業(yè)版微軟開發(fā)通用建模工具) Visual Paradigm for UML(免費(fèi)中文社群版) Archware (免費(fèi)自主研發(fā)UML建模工具)2.1 UML概述概述 2.1.1 UML的含義的含義 2.1.2 UML的發(fā)展歷史的發(fā)展歷史 2.1.3 UML的特點(diǎn)的特點(diǎn)2.2 UML構(gòu)成構(gòu)成 2.2.1 概述概述 2.2.2 UML的基本語(yǔ)言要素的基本語(yǔ)言要素 2.2.3 UML的語(yǔ)義規(guī)則的語(yǔ)義規(guī)則 2.2.4 UML的通用機(jī)制的通用機(jī)制 2.

30、3 UML的視圖和應(yīng)用領(lǐng)域的視圖和應(yīng)用領(lǐng)域 2.3.1 UML視圖視圖 2.3.2 UML的應(yīng)用領(lǐng)域的應(yīng)用領(lǐng)域3.1 用例用例3.2 參與者參與者3.3 用例之間的關(guān)系用例之間的關(guān)系3.4 用例圖用例圖3.5 發(fā)現(xiàn)用例發(fā)現(xiàn)用例3.1 3.1 用例用例 1. 1. 用例的概念用例的概念 用例用例(use case):(use case): 表示參與者與系統(tǒng)的一次交互過(guò)程。表示參與者與系統(tǒng)的一次交互過(guò)程。 2.2.用例的表示用例的表示 用例用橢圓表示用例用橢圓表示 3. 3. 用例的特點(diǎn)用例的特點(diǎn) 用例用于描述系統(tǒng)的功能,這個(gè)功能是用例用于描述系統(tǒng)的功能,這個(gè)功能是外部使用者看到的系統(tǒng)功能,不反映

31、功能的實(shí)外部使用者看到的系統(tǒng)功能,不反映功能的實(shí)現(xiàn)方式?,F(xiàn)方式。 儲(chǔ)蓄系統(tǒng)儲(chǔ)蓄系統(tǒng)開戶開戶存款存款取款取款轉(zhuǎn)帳轉(zhuǎn)帳 3. 3. 用例的特點(diǎn)用例的特點(diǎn) 用例描述用戶提出的一些可見需求,對(duì)應(yīng)用例描述用戶提出的一些可見需求,對(duì)應(yīng)一個(gè)具體的用戶目標(biāo)。一個(gè)具體的用戶目標(biāo)。 儲(chǔ)蓄系統(tǒng)儲(chǔ)蓄系統(tǒng)開戶開戶存款存款取款取款轉(zhuǎn)帳轉(zhuǎn)帳數(shù)據(jù)上傳數(shù)據(jù)上傳 3. 3. 用例的特點(diǎn)用例的特點(diǎn) 用例反映系統(tǒng)與用戶的一次交互過(guò)程,應(yīng)用例反映系統(tǒng)與用戶的一次交互過(guò)程,應(yīng)該具有交互的信息的傳遞。該具有交互的信息的傳遞。 帳戶,密碼,金額數(shù)帳戶,密碼,金額數(shù)確認(rèn)信息,帳戶余額確認(rèn)信息,帳戶余額取款取款 3. 3. 用例的特點(diǎn)用例的特點(diǎn)

32、 用例是對(duì)系統(tǒng)功能的描述,屬于需求建模。用例是對(duì)系統(tǒng)功能的描述,屬于需求建模。 a a 通過(guò)讀卡機(jī),儲(chǔ)戶插入通過(guò)讀卡機(jī),儲(chǔ)戶插入ATM卡卡 b b ATM系統(tǒng)從卡上讀取銀行系統(tǒng)從卡上讀取銀行ID、帳號(hào)、并驗(yàn)證帳號(hào)。、帳號(hào)、并驗(yàn)證帳號(hào)。 c 儲(chǔ)戶鍵入密碼,系統(tǒng)檢驗(yàn)密碼。儲(chǔ)戶鍵入密碼,系統(tǒng)檢驗(yàn)密碼。 d 儲(chǔ)戶按確認(rèn)鍵,輸入取款金額。儲(chǔ)戶按確認(rèn)鍵,輸入取款金額。 e ATM把帳號(hào)和取款金額傳遞給銀行系統(tǒng),取回帳戶余額。把帳號(hào)和取款金額傳遞給銀行系統(tǒng),取回帳戶余額。 f ATM輸出現(xiàn)金,并顯示帳戶余額。輸出現(xiàn)金,并顯示帳戶余額。 d ATM記錄事務(wù)到日志文件。記錄事務(wù)到日志文件。取款取款用例的動(dòng)態(tài)事件

33、流用例的動(dòng)態(tài)事件流 用例的特點(diǎn)用例的特點(diǎn) 用例用于描述系統(tǒng)的功能,這個(gè)功能是外用例用于描述系統(tǒng)的功能,這個(gè)功能是外部使用者看到的系統(tǒng)功能,不反映功能的實(shí)現(xiàn)部使用者看到的系統(tǒng)功能,不反映功能的實(shí)現(xiàn)方式。方式。 用例描述用戶提出的一些可見需求,對(duì)應(yīng)用例描述用戶提出的一些可見需求,對(duì)應(yīng)一個(gè)具體的用戶目標(biāo)。一個(gè)具體的用戶目標(biāo)。 用例反映系統(tǒng)與用戶的一次交互過(guò)程,應(yīng)用例反映系統(tǒng)與用戶的一次交互過(guò)程,應(yīng)該具有交互的信息的傳遞。該具有交互的信息的傳遞。 用例是對(duì)系統(tǒng)功能的描述,屬于需求建模。用例是對(duì)系統(tǒng)功能的描述,屬于需求建模。 3.2 3.2 參與者參與者 1. 1. 參與者的概念參與者的概念 參與者參與

34、者(actoractor)是外部需要與系統(tǒng)交互的事)是外部需要與系統(tǒng)交互的事物。也被稱為活動(dòng)者。物。也被稱為活動(dòng)者。 2.2.參與者的三種類型參與者的三種類型 . . 人:客戶,讀者,庫(kù)管員人:客戶,讀者,庫(kù)管員 . . 設(shè)備:計(jì)算機(jī),磁盤,讀卡機(jī)等設(shè)備:計(jì)算機(jī),磁盤,讀卡機(jī)等 . . 外部系統(tǒng):上層系統(tǒng)等外部系統(tǒng):上層系統(tǒng)等 3. 3. 參與者的表示參與者的表示 參與者可以表示為下面三種形式。參與者可以表示為下面三種形式。3.3 3.3 用例之間的關(guān)系用例之間的關(guān)系 用例之間可以具有以下幾種關(guān)系:用例之間可以具有以下幾種關(guān)系: . . 關(guān)聯(lián)關(guān)系關(guān)聯(lián)關(guān)系 . . 泛化關(guān)系泛化關(guān)系 . . 包含

35、關(guān)系包含關(guān)系 . . 擴(kuò)展關(guān)系擴(kuò)展關(guān)系 1 1. . 關(guān)聯(lián)關(guān)系關(guān)聯(lián)關(guān)系 參與者與用例之間是關(guān)聯(lián)關(guān)系,表示參與者參與者與用例之間是關(guān)聯(lián)關(guān)系,表示參與者與用例之間具有使用,交互信息的關(guān)聯(lián)。與用例之間具有使用,交互信息的關(guān)聯(lián)。 2 2. . 泛化關(guān)系泛化關(guān)系 參與者與參與者之間,用例與用例之間存在參與者與參與者之間,用例與用例之間存在一般與特殊的關(guān)系。一般與特殊的關(guān)系。 3 3. . 包含關(guān)系包含關(guān)系 兩個(gè)用例之間,一個(gè)用例兩個(gè)用例之間,一個(gè)用例( (基本用例基本用例) )的行為的行為包含了另外一個(gè)用例包含了另外一個(gè)用例( (包含用例包含用例) )的行為。的行為。 包含關(guān)系用依賴關(guān)系的包含關(guān)系用依賴

36、關(guān)系的構(gòu)造型來(lái)構(gòu)造型來(lái)表示,箭頭指向被包含的用例。表示,箭頭指向被包含的用例。 4 4. . 擴(kuò)展關(guān)系擴(kuò)展關(guān)系 擴(kuò)展關(guān)系表示基本用例在擴(kuò)展點(diǎn)要增加新的擴(kuò)展關(guān)系表示基本用例在擴(kuò)展點(diǎn)要增加新的行為或功能,以擴(kuò)展到新用例。行為或功能,以擴(kuò)展到新用例。 擴(kuò)展關(guān)系用依賴關(guān)系的擴(kuò)展關(guān)系用依賴關(guān)系的構(gòu)造型來(lái)構(gòu)造型來(lái)表示,箭頭指向被擴(kuò)展的用例。表示,箭頭指向被擴(kuò)展的用例。關(guān)系關(guān)系解釋解釋圖圖參與者與用例之間的關(guān)系關(guān)聯(lián)關(guān)聯(lián)表示參與者與用例之間的交互,通信途徑。(關(guān)聯(lián)有時(shí)候也用帶箭頭的實(shí)線來(lái)表示,這樣的表示能夠顯示地表明發(fā)起用例的是參與者。)用例之間的關(guān)系包含包含箭頭指向的用例為被包含的用例,稱為包含用例;箭頭出

37、發(fā)的用例為基用例。包含用例是必選的,如果缺少包含用例,基用例就不完整;包含用例必須被執(zhí)行,不需要滿足某種條件;其執(zhí)行并不會(huì)改變基用例的行為。 include擴(kuò)展擴(kuò)展箭頭指向的用例為被擴(kuò)展的用例,稱為擴(kuò)展用例;箭頭出發(fā)的用例為基用例。擴(kuò)展用例是可選的,如果缺少擴(kuò)展用例,不會(huì)影響到基用例的完整性;擴(kuò)展用例在一定條件下才會(huì)執(zhí)行,并且其執(zhí)行會(huì)改變基用例的行為。參與者之間或用例之間的關(guān)系泛化泛化發(fā)出箭頭的事物“is a”箭頭指向的事物。泛化關(guān)系是一般和特殊關(guān)系,發(fā)出箭頭的一方代表特殊的一方,箭頭指向的一方代表一般一方。特殊一方繼承了一般方的特性并增加了新的特性。extend5.5.用例圖中的關(guān)系及解釋用

38、例圖中的關(guān)系及解釋3.4 3.4 用例圖用例圖 1. 1. 用例圖的作用用例圖的作用 用例圖用例圖用來(lái)描述軟件需求模型中的系統(tǒng)功用來(lái)描述軟件需求模型中的系統(tǒng)功能,通過(guò)一組用例可以描述軟件系統(tǒng)能夠給用能,通過(guò)一組用例可以描述軟件系統(tǒng)能夠給用戶提供的功能。戶提供的功能。 用例圖用例圖可以作為整個(gè)系統(tǒng)開發(fā)過(guò)程中的開可以作為整個(gè)系統(tǒng)開發(fā)過(guò)程中的開發(fā)依據(jù),指導(dǎo)和驅(qū)動(dòng)其他模型。發(fā)依據(jù),指導(dǎo)和驅(qū)動(dòng)其他模型。 2. 2. 用例圖的形式用例圖的形式 自然語(yǔ)言 內(nèi)容:用例的目標(biāo)用例是怎么啟動(dòng)的參與者和用例之間的消息是如何傳送的用例中除了主路徑外,其它路徑是什么用例結(jié)束后的系統(tǒng)狀態(tài)其它需要描述的內(nèi)容3.5 3.5

39、用例的描述用例的描述模板描述項(xiàng)描述項(xiàng)說(shuō)明說(shuō)明用例名稱用例名稱用例的用途標(biāo)識(shí)符標(biāo)識(shí)符*唯一,在文檔別處可引用用例描述用例描述簡(jiǎn)單描述參與者表參與者表與此用例相關(guān)的參與者列表優(yōu)先級(jí)優(yōu)先級(jí)數(shù)字越小,優(yōu)先級(jí)越高。以此決定用例開發(fā)的順序狀態(tài)狀態(tài)*進(jìn)行中、等待審查、通過(guò)審查或未通過(guò)審查前置條件前置條件條件列表,訪問(wèn)用例之前應(yīng)得到滿足后置條件后置條件條件列表,訪問(wèn)用例之后得到滿足 基本操作流基本操作流描述用例中各項(xiàng)工作正常進(jìn)行是用例工作方式可選操作流可選操作流描述變更工作方式、出現(xiàn)異常所遵循的工作路徑被泛化用例表被泛化用例表該用例的特化用例列表被包含用例表被包含用例表該用例所包含用例列表被擴(kuò)展用例表被擴(kuò)展用

40、例表該用例的擴(kuò)展用例列表修改歷史記錄修改歷史記錄*關(guān)于用例的修改時(shí)間、原因和修改人信息等問(wèn)題問(wèn)題*與此用例開發(fā)相關(guān)的問(wèn)題列表決策決策*關(guān)鍵決策列表頻率頻率*參與者訪問(wèn)該用例的頻率用例:取款用例:取款參與者:儲(chǔ)戶參與者:儲(chǔ)戶操作流:操作流: 通過(guò)讀卡機(jī),儲(chǔ)戶插入通過(guò)讀卡機(jī),儲(chǔ)戶插入ATM卡卡 ATM系統(tǒng)從卡上讀取銀行系統(tǒng)從卡上讀取銀行ID、帳號(hào)、并驗(yàn)證帳號(hào)。、帳號(hào)、并驗(yàn)證帳號(hào)。 儲(chǔ)戶鍵入密碼,系統(tǒng)檢驗(yàn)密碼。儲(chǔ)戶鍵入密碼,系統(tǒng)檢驗(yàn)密碼。 儲(chǔ)戶按確認(rèn)鍵,輸入取款金額。儲(chǔ)戶按確認(rèn)鍵,輸入取款金額。 ATM把帳號(hào)和取款金額傳遞給銀行系統(tǒng),取回確認(rèn)信把帳號(hào)和取款金額傳遞給銀行系統(tǒng),取回確認(rèn)信息和帳戶余額。

41、息和帳戶余額。 ATM輸出現(xiàn)金,并顯示帳戶余額。輸出現(xiàn)金,并顯示帳戶余額。 ATM記錄事務(wù)到日志文件。記錄事務(wù)到日志文件。取款用例描述實(shí)例取款用例描述實(shí)例3.6 3.6 發(fā)現(xiàn)用例發(fā)現(xiàn)用例 發(fā)現(xiàn)用例的一般方法:發(fā)現(xiàn)用例的一般方法: 找出系統(tǒng)外部參與者,確定系統(tǒng)邊界和范圍。找出系統(tǒng)外部參與者,確定系統(tǒng)邊界和范圍。 確定各參與者所期望的系統(tǒng)行為。確定各參與者所期望的系統(tǒng)行為。 把這些系統(tǒng)行為命名為用例。把這些系統(tǒng)行為命名為用例。 確定各用例之間的關(guān)系確定各用例之間的關(guān)系(泛化,包含,擴(kuò)展泛化,包含,擴(kuò)展)。 繪制用例圖。繪制用例圖。 編制用例說(shuō)明。編制用例說(shuō)明。 對(duì)異常流程確定單獨(dú)用例。對(duì)異常流程確

42、定單獨(dú)用例。 優(yōu)化用例圖,解決用例之間的沖突和重復(fù)。優(yōu)化用例圖,解決用例之間的沖突和重復(fù)。某學(xué)校網(wǎng)上選課系統(tǒng)的用例分析某學(xué)校網(wǎng)上選課系統(tǒng)的用例分析 管理員通過(guò)系統(tǒng)管理界面進(jìn)入系統(tǒng),建立本學(xué)管理員通過(guò)系統(tǒng)管理界面進(jìn)入系統(tǒng),建立本學(xué)期要開設(shè)的各種課程,將課程信息保存到系統(tǒng)中,期要開設(shè)的各種課程,將課程信息保存到系統(tǒng)中,并可以對(duì)課程進(jìn)行改動(dòng)和刪除。并可以對(duì)課程進(jìn)行改動(dòng)和刪除。 學(xué)生通過(guò)客戶機(jī)瀏覽器進(jìn)入系統(tǒng),選擇課程:學(xué)生通過(guò)客戶機(jī)瀏覽器進(jìn)入系統(tǒng),選擇課程:可以查詢課程,選擇課程,支付課程費(fèi)用??梢圆樵冋n程,選擇課程,支付課程費(fèi)用。 找出系統(tǒng)外部參與者,確定系統(tǒng)邊界和范圍。找出系統(tǒng)外部參與者,確定系統(tǒng)

43、邊界和范圍。 確定各參與者所期望的系統(tǒng)行為。確定各參與者所期望的系統(tǒng)行為。 管理員:管理員: 增加課程增加課程 修改課程修改課程 刪除課程刪除課程學(xué)生:學(xué)生: 查詢課程查詢課程 選擇課程選擇課程 網(wǎng)上付費(fèi)網(wǎng)上付費(fèi) 找出系統(tǒng)外部參與者,確定系統(tǒng)邊界和范圍。找出系統(tǒng)外部參與者,確定系統(tǒng)邊界和范圍。 確定各參與者所期望的系統(tǒng)行為。確定各參與者所期望的系統(tǒng)行為。 把這些系統(tǒng)行為命名為用例。把這些系統(tǒng)行為命名為用例。 確定各用例之間的關(guān)系確定各用例之間的關(guān)系(泛化,包含,擴(kuò)展泛化,包含,擴(kuò)展)。 繪制用例圖。繪制用例圖。 用例:增加課程用例:增加課程參與者:管理員參與者:管理員操作流:操作流: 管理員選

44、擇進(jìn)入管理界面,用例開始。管理員選擇進(jìn)入管理界面,用例開始。 系統(tǒng)提示輸入管理員密碼。系統(tǒng)提示輸入管理員密碼。 管理員輸入密碼。管理員輸入密碼。 系統(tǒng)檢驗(yàn)密碼。系統(tǒng)檢驗(yàn)密碼。 A1:密碼出錯(cuò)。:密碼出錯(cuò)。 進(jìn)入管理界面,系統(tǒng)顯示當(dāng)前所建立的全部課程信息。進(jìn)入管理界面,系統(tǒng)顯示當(dāng)前所建立的全部課程信息。 管理員選擇增加課程,管理員輸入新課程信息。管理員選擇增加課程,管理員輸入新課程信息。 系統(tǒng)驗(yàn)證是否與已有課程沖突。系統(tǒng)驗(yàn)證是否與已有課程沖突。:有沖突。:有沖突。 系統(tǒng)添加新課程,并提示添加成功。系統(tǒng)添加新課程,并提示添加成功。 系統(tǒng)回到管理主界面,顯示所有課程,用例結(jié)束。系統(tǒng)回到管理主界面,顯

45、示所有課程,用例結(jié)束。 編制用例說(shuō)明。編制用例說(shuō)明。 對(duì)異常流程確定單獨(dú)用例。對(duì)異常流程確定單獨(dú)用例。 優(yōu)化用例圖,解決用例之間的沖突和重復(fù)。優(yōu)化用例圖,解決用例之間的沖突和重復(fù)。3.1 用例用例 3.1.1 用例的概念用例的概念 3.1.2 用例的表示用例的表示 3.1.3 用例的特點(diǎn)用例的特點(diǎn)3.2 參與者參與者 3.2.1 參與者的概念參與者的概念 3.2.2 參與者的類型參與者的類型 3.2.3 參與者的表示參與者的表示 3.2.4 參與者之間的關(guān)系參與者之間的關(guān)系 3.3 用例之間的關(guān)系用例之間的關(guān)系 3.3.1 關(guān)聯(lián)關(guān)系關(guān)聯(lián)關(guān)系 3.3.2 泛化關(guān)系泛化關(guān)系 3.3.3 包含關(guān)系包

46、含關(guān)系 3.3.4 擴(kuò)展關(guān)系擴(kuò)展關(guān)系 3.4 用例圖用例圖 3.4.1 用例圖的作用用例圖的作用 3.4.2 用例圖的形式用例圖的形式 3.5 用例的描述用例的描述 3.6 發(fā)現(xiàn)用例發(fā)現(xiàn)用例1、下面說(shuō)法錯(cuò)誤的是、下面說(shuō)法錯(cuò)誤的是: A 泛化表示一般和特殊的關(guān)系泛化表示一般和特殊的關(guān)系 B 用例之間存在泛化關(guān)系用例之間存在泛化關(guān)系 C 參與者之間存在泛化關(guān)系參與者之間存在泛化關(guān)系 D 參與者和用例之間存在泛化關(guān)系參與者和用例之間存在泛化關(guān)系?2、下面說(shuō)法錯(cuò)誤的是、下面說(shuō)法錯(cuò)誤的是: A 參與者是與所建立系統(tǒng)交互的人或物參與者是與所建立系統(tǒng)交互的人或物 B 參與者可以是人參與者可以是人,也可以是其

47、他系統(tǒng)也可以是其他系統(tǒng) C 參與者是系統(tǒng)的一部分參與者是系統(tǒng)的一部分,是用例圖的重是用例圖的重要組成部分要組成部分 D 參與者之間存在泛化關(guān)系參與者之間存在泛化關(guān)系?4.1 類的定義類的定義4.2 類的關(guān)系類的關(guān)系4.3 類圖類圖4.4 對(duì)象圖對(duì)象圖4.5 幾個(gè)特殊問(wèn)題幾個(gè)特殊問(wèn)題4.1.1 類的概念類的概念4.1.2 類的屬性類的屬性4.1.3 類的操作類的操作4.1.4 類的類型類的類型4.1.1 4.1.1 類的概念類的概念 1. 1. 類的定義類的定義 類類(class):(class): 具有相似結(jié)構(gòu)、行為和關(guān)系的一組對(duì)象。具有相似結(jié)構(gòu)、行為和關(guān)系的一組對(duì)象。 2.2.類的表示類的表

48、示 類名類名屬性屬性操作操作 3 3. .類的其他幾種表示形式類的其他幾種表示形式 簡(jiǎn)化表示簡(jiǎn)化表示 縮略表示縮略表示實(shí)體類實(shí)體類界面類界面類控制類控制類學(xué)生學(xué)生 4 4. .類名類名 名詞或名詞短語(yǔ)名詞或名詞短語(yǔ)(動(dòng)詞或動(dòng)詞短語(yǔ)表示控制類動(dòng)詞或動(dòng)詞短語(yǔ)表示控制類) 盡可能用明確、簡(jiǎn)短,業(yè)務(wù)領(lǐng)域中事物的名稱盡可能用明確、簡(jiǎn)短,業(yè)務(wù)領(lǐng)域中事物的名稱,避免使用抽象、無(wú)意義的名詞避免使用抽象、無(wú)意義的名詞例如:人,桌子,圖形,匯總例如:人,桌子,圖形,匯總 用英文,第用英文,第1 1個(gè)字母大寫個(gè)字母大寫例如:例如:Shape, Person, CheckingAccdount 可分為簡(jiǎn)單類名,帶路徑

49、類名可分為簡(jiǎn)單類名,帶路徑類名例如:例如: CheckingAccdount Banking:CheckingAccdount例如:帳戶,訂單,事物例如:帳戶,訂單,事物1、指出下面命名有問(wèn)題的的類。、指出下面命名有問(wèn)題的的類。?4.1.2 4.1.2 類的屬性類的屬性 1. 1. 屬性的含義屬性的含義 屬性屬性(attribute): (attribute): 描述類所表示事物的靜態(tài)性質(zhì)。描述類所表示事物的靜態(tài)性質(zhì)。 2.2.屬性的格式屬性的格式 可見性可見性 屬性名屬性名:類型類型 多重性多重性 次序次序 =初始值初始值特性特性4.1.2 4.1.2 類的屬性類的屬性 1. 1. 屬性的含

50、義屬性的含義 屬性屬性(attribute): (attribute): 描述類所表示事物的靜態(tài)性質(zhì)。描述類所表示事物的靜態(tài)性質(zhì)。 2.2.屬性的格式屬性的格式 第第1個(gè)英文單詞首字母小寫個(gè)英文單詞首字母小寫,其它單其它單詞首字母大寫詞首字母大寫 contactName credintLimit isPrepaid 可見性可見性 屬性名屬性名:類型類型 多重性多重性 次序次序 =初始值初始值特性特性4.1.2 4.1.2 類的屬性類的屬性 1. 1. 屬性的含義屬性的含義 屬性屬性(attribute): (attribute): 描述類所表示事物的靜態(tài)性質(zhì)。描述類所表示事物的靜態(tài)性質(zhì)。 2.

51、2.屬性的格式屬性的格式 該屬性對(duì)外部實(shí)體的顯現(xiàn)程度該屬性對(duì)外部實(shí)體的顯現(xiàn)程度. 可見可見public : + 受限受限protected: # 私有私有private : - 可見性可見性 屬性名屬性名:類型類型 多重性多重性 次序次序 =初始值初始值特性特性4.1.2 4.1.2 類的屬性類的屬性 1. 1. 屬性的含義屬性的含義 屬性屬性(attribute): (attribute): 描述類所表示事物的靜態(tài)性質(zhì)。描述類所表示事物的靜態(tài)性質(zhì)。 2.2.屬性的格式屬性的格式 屬性的數(shù)據(jù)類型屬性的數(shù)據(jù)類型: 字符串字符串:String 日期日期:Date 布爾布爾:Boolean 整型整型

52、:int 可見性可見性 屬性名屬性名:類型類型 多重性多重性 次序次序 =初始值初始值特性特性4.1.2 4.1.2 類的屬性類的屬性 1. 1. 屬性的含義屬性的含義 屬性屬性(attribute): (attribute): 描述類所表示事物的靜態(tài)性質(zhì)。描述類所表示事物的靜態(tài)性質(zhì)。 2.2.屬性的格式屬性的格式 表示屬性值的取值的多寡表示屬性值的取值的多寡,以及有序性以及有序性: 例如例如: name:String0.1 表示屬性表示屬性”name”可能無(wú)值可能無(wú)值,也可能僅有一個(gè)值也可能僅有一個(gè)值. points:Point2.* ordered 表示有兩個(gè)或多個(gè)值表示有兩個(gè)或多個(gè)值,有

53、序有序 可見性可見性 屬性名屬性名:類型類型 多重性多重性 次序次序 =初始值初始值特性特性4.1.2 4.1.2 類的屬性類的屬性 1. 1. 屬性的含義屬性的含義 屬性屬性(attribute): (attribute): 描述類所表示事物的靜態(tài)性質(zhì)。描述類所表示事物的靜態(tài)性質(zhì)。 2.2.屬性的格式屬性的格式 表示屬性初始所取的值表示屬性初始所取的值: 例如例如: #visibility:Boolean=false 表示屬性表示屬性”visibility”初始取初始取”false” 可見性可見性 屬性名屬性名:類型類型 多重性多重性 次序次序 =初始值初始值特性特性4.1.2 4.1.2

54、類的屬性類的屬性 1. 1. 屬性的含義屬性的含義 屬性屬性(attribute): (attribute): 描述類所表示事物的靜態(tài)性質(zhì)。描述類所表示事物的靜態(tài)性質(zhì)。 2.2.屬性的格式屬性的格式 表示屬性約束說(shuō)明表示屬性約束說(shuō)明: 例如例如: #visibility:Boolean=false讀寫讀寫 表示屬性表示屬性”visibility”可讀可讀,寫寫 可見性可見性 屬性名屬性名:類型類型 多重性多重性 次序次序 =初始值初始值特性特性1、指出下面屬性名的含義。、指出下面屬性名的含義。?+姓名姓名:String=“黎明黎明”#出生日期出生日期:Date=1999-10-21-年薪年薪:

55、float=12.01R/W4.1.3 4.1.3 類的操作類的操作 1. 1. 操作的含義操作的含義 操作操作(operation): (operation): 描述類所表示事物的動(dòng)態(tài)性質(zhì)。描述類所表示事物的動(dòng)態(tài)性質(zhì)。 2.2.操作的格式操作的格式 可見性可見性 操作名操作名(參數(shù)列表參數(shù)列表):):返回類型返回類型特性特性4.1.3 4.1.3 類的操作類的操作 1. 1. 操作的含義操作的含義 操作操作(operation): (operation): 描述類所表示事物的動(dòng)態(tài)性質(zhì)。描述類所表示事物的動(dòng)態(tài)性質(zhì)。 2.2.操作的格式操作的格式 可見性可見性 操作名操作名(參數(shù)列表參數(shù)列表):

56、):返回類型返回類型特性特性第第1個(gè)英文單詞首字母小寫個(gè)英文單詞首字母小寫,其它單其它單詞首字母大寫詞首字母大寫 close() creditRecording()4.1.3 4.1.3 類的操作類的操作 1. 1. 操作的含義操作的含義 操作操作(operation): (operation): 描述類所表示事物的動(dòng)態(tài)性質(zhì)。描述類所表示事物的動(dòng)態(tài)性質(zhì)。 2.2.操作的格式操作的格式 該操作對(duì)外部實(shí)體的顯現(xiàn)程度該操作對(duì)外部實(shí)體的顯現(xiàn)程度. 可見可見public : + 受限受限protected: # 私有私有private : - 可見性可見性 操作名操作名(參數(shù)列表參數(shù)列表):):返回類型

57、返回類型特性特性4.1.3 4.1.3 類的操作類的操作 1. 1. 操作的含義操作的含義 操作操作(operation): (operation): 描述類所表示事物的動(dòng)態(tài)性質(zhì)。描述類所表示事物的動(dòng)態(tài)性質(zhì)。 2.2.操作的格式操作的格式 該操作的輸入?yún)?shù)該操作的輸入?yún)?shù),可以為空可以為空. 例如例如: #create() +hide() -ttachXWindow(xwin:Xwindow) 可見性可見性 操作名操作名(參數(shù)列表參數(shù)列表):):返回類型返回類型特性特性4.1.3 4.1.3 類的操作類的操作 1. 1. 操作的含義操作的含義 操作操作(operation): (operati

58、on): 描述類所表示事物的動(dòng)態(tài)性質(zhì)。描述類所表示事物的動(dòng)態(tài)性質(zhì)。 2.2.操作的格式操作的格式 該操作的返回值的類型該操作的返回值的類型. 例如例如: +display():Location 可見性可見性 操作名操作名(參數(shù)列表參數(shù)列表):):返回類型返回類型特性特性1、指出下面操作名的含義。、指出下面操作名的含義。?+設(shè)置姓名設(shè)置姓名(String:name)+獲取名字獲取名字():String+創(chuàng)建一本書創(chuàng)建一本書()4.1.4 4.1.4 類的類型類的類型 邊界類位于系統(tǒng)與外界的交界處邊界類位于系統(tǒng)與外界的交界處, ,承擔(dān)系統(tǒng)與承擔(dān)系統(tǒng)與外界的信息功能外界的信息功能. .1.1.邊界類

59、邊界類( (界面類界面類) ) 邊界類處在用例圖中邊界類處在用例圖中,參與者與用例的關(guān)聯(lián)處參與者與用例的關(guān)聯(lián)處,可以根據(jù)用例圖發(fā)現(xiàn)邊界類??梢愿鶕?jù)用例圖發(fā)現(xiàn)邊界類。 實(shí)體類對(duì)應(yīng)著現(xiàn)實(shí)中的客觀實(shí)物,用來(lái)保存實(shí)體類對(duì)應(yīng)著現(xiàn)實(shí)中的客觀實(shí)物,用來(lái)保存信息,一般對(duì)應(yīng)著數(shù)據(jù)表、文件等。信息,一般對(duì)應(yīng)著數(shù)據(jù)表、文件等。2.2.實(shí)體類實(shí)體類 實(shí)體類可以從現(xiàn)實(shí)中存在的客觀事物,以及實(shí)體類可以從現(xiàn)實(shí)中存在的客觀事物,以及需要持久存放的信息兩方面來(lái)發(fā)現(xiàn)。需要持久存放的信息兩方面來(lái)發(fā)現(xiàn)。 控制類承擔(dān)著事務(wù)處理,控制調(diào)控的控制作控制類承擔(dān)著事務(wù)處理,控制調(diào)控的控制作用。用。3.3.控制類控制類 一個(gè)用例中最少會(huì)有一個(gè)控

60、制類,用來(lái)控制一個(gè)用例中最少會(huì)有一個(gè)控制類,用來(lái)控制用例中的事件順序,也可以在多個(gè)用例之間協(xié)用例中的事件順序,也可以在多個(gè)用例之間協(xié)調(diào)用例之間的聯(lián)系。調(diào)用例之間的聯(lián)系。例子:訂貨系統(tǒng)例子:訂貨系統(tǒng)4.2.1 關(guān)聯(lián)關(guān)聯(lián)4.2.2 聚集和組合聚集和組合4.2.3 泛化泛化4.2.4 依賴依賴4.2.1 4.2.1 關(guān)聯(lián)關(guān)聯(lián) 1. 1. 關(guān)聯(lián)的定義關(guān)聯(lián)的定義 關(guān)聯(lián)的通俗含義關(guān)聯(lián)的通俗含義 表示事物之間的一種牽連式的固有聯(lián)系。表示事物之間的一種牽連式的固有聯(lián)系。 例如:例如: 關(guān)聯(lián)關(guān)聯(lián)4.2.1 4.2.1 關(guān)聯(lián)關(guān)聯(lián) 1. 1. 關(guān)聯(lián)的定義關(guān)聯(lián)的定義 關(guān)聯(lián)的本質(zhì)含義關(guān)聯(lián)的本質(zhì)含義 關(guān)聯(lián)關(guān)聯(lián)(associati

溫馨提示

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

評(píng)論

0/150

提交評(píng)論