UML軟件建模復(fù)習(xí)題_第1頁(yè)
UML軟件建模復(fù)習(xí)題_第2頁(yè)
UML軟件建模復(fù)習(xí)題_第3頁(yè)
UML軟件建模復(fù)習(xí)題_第4頁(yè)
UML軟件建模復(fù)習(xí)題_第5頁(yè)
已閱讀5頁(yè),還剩56頁(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、附件:UML2軟件建模課程代號(hào)(00000)同步練習(xí)題二O一五年一月目錄第1章 概述1第2章 用例與用例圖5第3章 類與接口14第4章 關(guān)系建模21第5章 其他結(jié)構(gòu)建模27第6章 交互與交互圖29第7章 狀態(tài)機(jī)與狀態(tài)圖36第8章 活動(dòng)與活動(dòng)圖43第9章 構(gòu)件與構(gòu)件圖48第10章 制品、結(jié)點(diǎn)與部署圖51第1章 概述第1章 概述一、單項(xiàng)選擇題1下面不是面向?qū)ο笤O(shè)計(jì)基本特性的是( a )。 A.一致性 B.封裝性 C.多態(tài)性 D.繼承性2. 關(guān)于繼承性,下列說(shuō)法錯(cuò)誤的是(c ) A. 子類不能直接訪問(wèn)其超類的私有特征,但子類繼承其超類的私有特征。 B. 子類的對(duì)象可代替其父類的對(duì)象。 C. 子類和超

2、類相互依賴。 D. 當(dāng)一個(gè)子類實(shí)例化創(chuàng)建一個(gè)對(duì)象時(shí),該子類的超類也將實(shí)例化。3. UML的概念模型不包括( a ) A.應(yīng)用領(lǐng)域 B.規(guī)則 C.基本構(gòu)造塊 D.公共機(jī)制4. UML圖不包括( d ) A.用例圖 B.類圖 C.狀態(tài)圖 D.流程圖5. 面向?qū)ο笤O(shè)計(jì)的基本特性除了封裝和多態(tài)之外,還包括( c ) A.一致性 B.完整性 C.繼承性 D.可移植性6. 關(guān)于繼承性,下列說(shuō)法錯(cuò)誤的是( d ) A.父類的protected成員可被其子類訪問(wèn)。 B.子類的對(duì)象可代替其父類的對(duì)象。 C.子類的每個(gè)對(duì)象都是其父類的一個(gè)對(duì)象。 D.一個(gè)父類可以有多個(gè)子類,每個(gè)子類只能有一個(gè)父類。7. 在面向?qū)ο?/p>

3、設(shè)計(jì)中,關(guān)于繼承性,下面說(shuō)法錯(cuò)誤的是(b ) A.子類不但繼承超類的屬性和操作,也繼承超類的關(guān)聯(lián)。 B.子類繼承超類的特性,但并不繼承其私有特性。 C.子類的每個(gè)對(duì)象都是其超類的一個(gè)對(duì)象,所以子類的對(duì)象可代替其超類的對(duì)象。 D.超類的protected成員可被其子類訪問(wèn)。8. 面向?qū)ο蟮姆庋b有三個(gè)層面的解釋,不屬于這三個(gè)層面的是( c ) A.對(duì)象的封裝 B.類的封裝 C.接口的封裝 D.包的封裝9. 好模型的應(yīng)該符合的條件是(a ) 規(guī)范性 正確性 一致性 完備性 獨(dú)立性 A. B. C. D.10. 關(guān)于對(duì)象和實(shí)例的概念,下面說(shuō)法錯(cuò)誤的是( c ) A.對(duì)象是由類經(jīng)實(shí)例化創(chuàng)建而來(lái)的。 B.

4、一個(gè)對(duì)象是一個(gè)實(shí)例。 C.一個(gè)實(shí)例也是一個(gè)對(duì)象。 D.一個(gè)對(duì)象是屬性和行為的一個(gè)封裝體。11. 下面哪個(gè)不是UML中的靜態(tài)視圖( a ) A.狀態(tài)圖 B.用例圖 C.對(duì)象圖 D.類圖12. 下面關(guān)于正向工程與逆向工程的描述,哪個(gè)不正確( c ) A.正向工程是通過(guò)到實(shí)現(xiàn)語(yǔ)言的映射而把模型轉(zhuǎn)換為代碼的過(guò)程。 B.逆向工程是通過(guò)從特定實(shí)現(xiàn)語(yǔ)言的映射而把代碼轉(zhuǎn)換為模型的過(guò)程。 C.正向工程是通過(guò)從特定實(shí)現(xiàn)語(yǔ)言的映射而把代碼轉(zhuǎn)換為模型的過(guò)程。 D.正向工程與逆向工程可以通過(guò)rose支持來(lái)實(shí)現(xiàn)。13. 在結(jié)構(gòu)化程序設(shè)計(jì)思想中,不屬于程序三種基本控制結(jié)構(gòu)的是( c ) A.順序 B.循環(huán) C.嵌套 D.選

5、擇14. 在面向?qū)ο蟮姆椒▽W(xué)中,封裝的目的是分離對(duì)象的( d )。 A.定義和實(shí)現(xiàn) B.設(shè)計(jì)和測(cè)試 C.設(shè)計(jì)和實(shí)現(xiàn) D.分析和定義二、填空題1. 對(duì)象的_行為_(kāi)用于管理維護(hù)對(duì)象的狀態(tài),可能是改變狀態(tài),也可能讀取狀態(tài)。2. 面向?qū)ο笾饕w現(xiàn)為人們觀察分析世界的一種_思維_方式,而不局限于軟件設(shè)計(jì)和編程。3. 靜態(tài)的操作往往用于管理靜態(tài)的性質(zhì),但靜態(tài)操作中沒(méi)有_當(dāng)前對(duì)象_的概念。4. _模型_是基于圖形的表示,以可視化方式,形象直觀地描述系統(tǒng)的特征。5. 結(jié)合軟件開(kāi)發(fā)過(guò)程,模型往往可劃分為業(yè)務(wù)模型、_分析模型_、設(shè)計(jì)模型、測(cè)試模型等。三、名詞解釋題1. 對(duì)象2. 多態(tài)性3. 行為圖4. 封裝性5.

6、 結(jié)構(gòu)圖四、簡(jiǎn)答題1. 對(duì)象的概念是什么?2. 如何理解對(duì)象的封裝?3. 好模型的標(biāo)準(zhǔn)是什么?4. 什么是面向?qū)ο蠼#?. 為什么要建模?6. 使用建模工具的好處是什么?7. 如何描述系統(tǒng)的語(yǔ)境?參考答案一、單項(xiàng)選擇題 1A 2C 3A 4C 5C 6D 7B 8C 9A 10C11A 12C 13C 14D二、填空題1. 行為 2. 思維 3. 當(dāng)前對(duì)象 4. 模型 5. 分析模型三、名詞解釋題1. 一個(gè)對(duì)象是:具有明確定義的邊界和唯一標(biāo)識(shí)(identity)的一個(gè)實(shí)體(entity)。 狀態(tài)和行為的一個(gè)封裝體。 類的一個(gè)實(shí)例(instance)。2. 多態(tài)性的一般性含義是,某一論域中的一

7、個(gè)元素可以有多種具體解釋。編程語(yǔ)言中的重載(overload)和類屬(generic)都是多態(tài)性機(jī)制。3. 行為圖表示系統(tǒng)中對(duì)象的動(dòng)態(tài)行為,包括用例、交互、狀態(tài)機(jī)、活動(dòng)等。一個(gè)系統(tǒng)的動(dòng)態(tài)行為可描述為隨時(shí)間而進(jìn)行的一系列變化,但用例除外。24. 封裝是一種自然的構(gòu)造,目的是保護(hù)內(nèi)部;面向?qū)ο蠓庋b就是把表示狀態(tài)的各個(gè)性質(zhì)和對(duì)狀態(tài)的各個(gè)操作包裝成對(duì)象類型,使得對(duì)對(duì)象狀態(tài)的存取只能通過(guò)封裝提供的接口來(lái)進(jìn)行。5. 結(jié)構(gòu)圖用于表示系統(tǒng)中的靜態(tài)結(jié)構(gòu),描述運(yùn)行時(shí)刻不變的特征,與時(shí)間無(wú)關(guān)的元素,可描述抽象的概念,也可描述現(xiàn)實(shí)世界中的事實(shí)。四、簡(jiǎn)答題1. 一個(gè)對(duì)象是: 具有明確定義的邊界和唯一標(biāo)識(shí)(identit

8、y) 的一個(gè)實(shí)體(entity)。狀態(tài)和行為的一個(gè)封裝體。 類的一個(gè)實(shí)例(instance)。2. 一個(gè)對(duì)象封裝了自己的狀態(tài)和行為。在運(yùn)行時(shí)刻,對(duì)象的狀態(tài)表示為一組性質(zhì)的值,一個(gè)對(duì)象持有自己的性質(zhì)的值,而且通過(guò)自己的行為對(duì)自己的狀態(tài)施加管理。3. 好模型并沒(méi)有統(tǒng)一的、明確的標(biāo)準(zhǔn),但可以從達(dá)到建模目的的程度來(lái)判定其質(zhì)量?jī)?yōu)劣,即規(guī)范設(shè)計(jì)、可視化、構(gòu)建、存檔??梢园岩惶啄P妥鳛橐粋€(gè)邏輯系統(tǒng),“好”模型應(yīng)符合以下幾個(gè)條件:規(guī)范性、 正確性、一致性、完備性。4. 面向?qū)ο蠼⒈唤J挛锒伎醋鲗?duì)象,然后再描述其結(jié)構(gòu)和行為。整個(gè)運(yùn)行系統(tǒng)可看作一個(gè)對(duì)象,來(lái)考察其使用案例(use case) 所表現(xiàn)的功能。面

9、向?qū)ο蠼J且环N建模規(guī)范。面向?qū)ο蠼J且环N軟件建模方法,即采用對(duì)象、類、接口等基本概念,采用封裝性、繼承性、多態(tài)性等進(jìn)行建模,得到的模型被稱為對(duì)象模型。5. 建模是為了能更好地理解復(fù)雜系統(tǒng)。人的大腦一次只能處理有限的信息,人對(duì)復(fù)雜問(wèn)題的理解能力是有限的。建模的最根本目的就是在動(dòng)手構(gòu)建系統(tǒng)之前先來(lái)理解它。6. 規(guī)范,便于建檔和共享;能支持正向工程,從模型( 主要是類圖) 能生成源代碼框架;能支持逆向工程,從源代碼生成模型,起碼能生成類圖。一些工具還能支持Roundtrip工程,即正向和逆向互動(dòng),模型(如類圖)與源代碼都能更改,也能自動(dòng)保持一致。7. 描述語(yǔ)境UML的做法是建立一個(gè)矩形框,在左上

10、角命名來(lái)描述特定語(yǔ)境,將參與者放在矩形框之外并與系統(tǒng)進(jìn)行交互。為了對(duì)系統(tǒng)的行為建模,將一組相關(guān)用例納入矩形框中,表示系統(tǒng)對(duì)外提供的功能。第2章 用例與用例圖第2章 用例與用例圖一、單項(xiàng)選擇題1. 在一個(gè)“訂單處理系統(tǒng)”中,下新訂單和更新訂單都要核查用戶賬號(hào)是否正確,則用例“下新訂單”、“更新訂單”與用例“核查用戶賬號(hào)”之間的關(guān)系是( d ) A.泛化 B.實(shí)現(xiàn) C. 擴(kuò)展 D.包含2. 在UML提供的圖中,用于描述系統(tǒng)與外部系統(tǒng)及用戶之間的交互的圖是( a ) A.用例圖   B.類圖   C.對(duì)象圖  D.部署圖3. 關(guān)于用例之間的包含和擴(kuò)展關(guān)系,下面說(shuō)法錯(cuò)誤的

11、是( c ) A.包含是指一個(gè)用例含有另一個(gè)用例的行為。 B.包含關(guān)系是一種依賴關(guān)系,指向被包含的用例。 C.擴(kuò)展關(guān)系是從一個(gè)擴(kuò)展用例到一個(gè)被擴(kuò)展用例的一種泛化關(guān)系。 D.擴(kuò)展關(guān)系規(guī)范了擴(kuò)展用例的行為如何及何時(shí)插入到被擴(kuò)展用例的行為之中。4. UML中,用例圖展示了外部Actor與系統(tǒng)所提供的用例之間的連接,UML中的外部Actor是指( d ) A.人 B.硬件設(shè)備 C.人和硬件設(shè)備 D.人、硬件設(shè)備或外部系統(tǒng)5. 下列關(guān)于用例圖的描述,錯(cuò)誤的是( d ) A.用例圖中的參與者和用例之間是關(guān)聯(lián)關(guān)系。 B.包含是用例之間的一種依賴關(guān)系,指向被包含的用例。 C.參與者和參與者之間、用例和用例之間

12、都可能出現(xiàn)泛化關(guān)系。 D.擴(kuò)展關(guān)系規(guī)范了擴(kuò)展用例的行為如何及何時(shí)插入到被擴(kuò)展用例的行為之中,由被擴(kuò)展用例指向擴(kuò)展用例。6. 在用例圖中,關(guān)于參與者與角色,下面說(shuō)法錯(cuò)誤的是(c ) A.一個(gè)參與者actor表示與系統(tǒng)交互的一種角色。 B.一個(gè)參與者與特定的用例之間具有關(guān)聯(lián)關(guān)系。 C.參與者只能表示特定用戶所扮演的角色。 D.參與者之間可能有泛化關(guān)系。7. 下面關(guān)系中不適合描述用例之間關(guān)系的是(b ) A.包含 B.關(guān)聯(lián) C.擴(kuò)展 D.泛化8. 如果對(duì)銀行ATM的常用功能進(jìn)行建模,包括取款、存款、轉(zhuǎn)賬、查詢等,可以用來(lái)表示該系統(tǒng)的功能需求的是(b ) A.序列圖 B.用例圖 C.活動(dòng)圖 D.對(duì)象圖

13、9. 在銀行ATM建模中,每次取款或轉(zhuǎn)賬都要求登錄系統(tǒng),那么登錄系統(tǒng)與它們之間的關(guān)系就是(b ) A.包含用例 B.被包含用例 C.擴(kuò)展用例 D.被擴(kuò)展用例10. 關(guān)于用例,下面說(shuō)法是錯(cuò)誤的是( b ) A.一個(gè)用例表示了系統(tǒng)中的一部分功能和行為。 B.一個(gè)用例也描述了一個(gè)功能如何實(shí)現(xiàn)。 C.一個(gè)用例抽象了一組動(dòng)作的規(guī)范。 D.一個(gè)用例的動(dòng)作的執(zhí)行會(huì)產(chǎn)生可觀察的結(jié)果。11. 在圖書管理系統(tǒng)的用例圖中,還書用例和罰款用例之間是( b )關(guān)系 A.包含 B.擴(kuò)展 C.分類 D.聚集12. 在用例之間,會(huì)有三種不同的關(guān)系,下列哪個(gè)不是他們之間的關(guān)系(a )。 A.聚集 B.泛化 C.擴(kuò)展 D.包含1

14、3. 在確定用例名時(shí),一般使用( c)來(lái)表示。 A.名詞 B.形容詞 C.動(dòng)詞 D.代詞14. 一個(gè)用例中加入一些新的動(dòng)作后則構(gòu)成了另一個(gè)用例,這兩個(gè)用例之間的關(guān)系是( c) A.聚集 B.泛化 C.擴(kuò)展 D. 包含15. 參與者與用例之間的關(guān)系是( d ) A.包含 B.擴(kuò)展 C.泛化 D.關(guān)聯(lián)二、填空題下圖是圖書管理系統(tǒng)中的用例圖,完成14題:1. 圖中Get book和GetWithFine的關(guān)系是_延伸(或擴(kuò)展)_。2. 這種關(guān)系只是在特定的稱為_(kāi)延伸(或擴(kuò)展)_點(diǎn)發(fā)生。3. Get book稱為_(kāi)基(或被延伸 或被擴(kuò)展)_用例。4. Lend book和Check user acco

15、unt的關(guān)系是_包含_。上圖是飲料銷售系統(tǒng)的用例圖,完成58題:5. 圖中購(gòu)買飲料和購(gòu)買一瓶飲料的關(guān)系是_泛化_。6. 供貨和根據(jù)銷售情況供貨的關(guān)系是_延伸(或擴(kuò)展)_。7. 取錢和打開(kāi)銷售機(jī)的關(guān)系是_包含 _。8. 顧客和購(gòu)買飲料的關(guān)系是_關(guān)聯(lián)_。根據(jù)下圖完成1921題:9. 貸款客戶與借款用例之間的關(guān)系是_關(guān)聯(lián)關(guān)系_。10. 還款用例與計(jì)息用例之間的關(guān)系是_包含關(guān)系_。11. 相對(duì)于還款用例和還息用例,計(jì)息用例稱為_(kāi) _包含_用例。三、名詞解釋題1. 用例2. 參與者3. 擴(kuò)展關(guān)系4. 包含關(guān)系四、簡(jiǎn)答題1. 用例之間的關(guān)系有哪些?2. 用例的作用是什么?3. 用例建模的重要性是什么?4.

16、 包含關(guān)系和擴(kuò)展關(guān)系的區(qū)別是什么?5. 用例圖的作用是什么?五案例分析題1. 為某企業(yè)建立一個(gè)人事管理系統(tǒng)。有以下需求:n 總經(jīng)理可創(chuàng)建部門、撤銷部門、更改部門的名稱、安排部門經(jīng)理,也能對(duì)人員指派部門;n 人事部門的工作人員可建立員工的人事檔案,應(yīng)包括身份證號(hào)、姓名、性別、出生日期等;n 部門經(jīng)理可為本部門添加新員工、確定員工的工資、也可解除本部門的特定員工;n 員工可修改自己的個(gè)人信息,如聯(lián)系電話、Email等,也可查看本部門的其他員工的信息。 根據(jù)以上描述,結(jié)合常識(shí)和邏輯推理,建立用例圖來(lái)表示系統(tǒng)的功能。2. 某大學(xué)教務(wù)部計(jì)劃采用計(jì)算機(jī)管理學(xué)生選課的過(guò)程,以幫助管理人員更快、更好的做好選課

17、管理工作。其功能如下: n 教務(wù)處課程管理人員顯示本學(xué)期可以選擇的課程; n 學(xué)生選課完畢后,學(xué)校的財(cái)務(wù)系統(tǒng)記錄學(xué)生的繳費(fèi)金額n 在選定后的一段時(shí)間內(nèi),學(xué)生可以添加、刪除選定的課程。 n 教師可以通過(guò)選課系統(tǒng)得到選修自己課程的學(xué)生名單。 n 學(xué)生和教師登錄時(shí)需要驗(yàn)證。 在需求分析階段,采用UML的用例圖描述該系統(tǒng)的功能需求。3. 現(xiàn)有一個(gè)新生注冊(cè)管理系統(tǒng)。超級(jí)管理員可以為不同部門、不同工作人員進(jìn)行 “權(quán)限設(shè)置”,并可以對(duì)數(shù)據(jù)信息進(jìn)行管理。各部門領(lǐng)導(dǎo),可以根據(jù)實(shí)際情況隨時(shí)查看學(xué)生信息、班級(jí)信息,宿舍信息并可以查詢已交費(fèi)注冊(cè)的學(xué)生打印發(fā)票。各部門領(lǐng)導(dǎo)和超級(jí)管理員,都可以設(shè)置工作人員在招生工作中的角

18、色。工作人員可以對(duì)學(xué)生的收費(fèi)進(jìn)行錄入、修改、學(xué)號(hào)或姓名查詢,也可以對(duì)學(xué)生學(xué)號(hào)、學(xué)期、成績(jī)進(jìn)行管理,也可以調(diào)整班級(jí)。工作人員對(duì)繳費(fèi)注冊(cè)學(xué)生分配或調(diào)整宿舍,使注冊(cè)的學(xué)生能入住。工作人員可以根據(jù)實(shí)際工作需要查詢統(tǒng)計(jì)出新生注冊(cè)報(bào)到人數(shù)、宿舍入住情況、男女生人數(shù)、各地區(qū)人數(shù)等匯總信息。工作人員對(duì)學(xué)生交來(lái)的檔案進(jìn)行管理。新生通過(guò)該系統(tǒng)進(jìn)行報(bào)道注冊(cè)。請(qǐng)根據(jù)上述描述,繪制新生報(bào)到注冊(cè)系統(tǒng)的用例圖。4. 試畫出網(wǎng)上選課系統(tǒng)的用例圖。 用例有:登錄;找回密碼;查看課程信息;按課程編號(hào)查詢;按課程名查詢;選擇課程;刪除已選課程;維護(hù)課程信息;參與者有系統(tǒng)管理員與學(xué)生。5. 描述學(xué)校圖書管理系統(tǒng)中的功能需求。系統(tǒng)中主

19、要滿足借書者、圖書管理員需求。對(duì)借書者來(lái)說(shuō)主要是查詢個(gè)人信息、查詢圖書信息、預(yù)定當(dāng)前正在被別人借閱的圖書、借閱圖書和 返還圖書等;圖書管理員是系統(tǒng)的主要使用者,負(fù)責(zé)借書處理和還書處理,當(dāng)讀者預(yù)定的圖書借出給定預(yù)定者后取消圖書預(yù)定。請(qǐng)用用例圖描述用戶的需求。6. 某“遠(yuǎn)程網(wǎng)絡(luò)教學(xué)系統(tǒng)”的功能需求如下:A. 學(xué)生登錄網(wǎng)站后,可以瀏覽課件、查找課件、下載課件、觀看教學(xué)視頻。B. 學(xué)生需要登錄“遠(yuǎn)程網(wǎng)絡(luò)教學(xué)系統(tǒng)”后才能正常使用該系統(tǒng)的所有功能。如果忘記密碼,可與通過(guò)“找回密碼”功能恢復(fù)密碼。 請(qǐng)畫出學(xué)生參與者的用例圖。參考答案一、單項(xiàng)選擇題 1D 2A 3C 4D 5D 6C 7B 8B 9B 10.

20、B11B 12A 13C 14C 15D二、填空題1延伸(或擴(kuò)展) 2.延伸(或擴(kuò)展) 3.基(或被延伸 或被擴(kuò)展) 4.包含5.泛化 6.延伸(或擴(kuò)展) 7.包含 8.關(guān)聯(lián)9.關(guān)聯(lián)關(guān)系 10.包含關(guān)系 11.包含三、名詞解釋題1. 用例表示一個(gè)系統(tǒng)中的一部分功能和行為。在 UML 中,一個(gè)系統(tǒng)的所有功能和行為都可以建模為用例。2. 參與者是系統(tǒng)的外部、直接與系統(tǒng)交互的實(shí)體。盡管在用例圖中描述參與者,但它并不是系統(tǒng)之內(nèi)的一部分,而是存在于系統(tǒng)之外的環(huán)境中。3. 一種依賴關(guān)系,表示從一個(gè)“擴(kuò)展用例”指向一個(gè)“被擴(kuò)展用例”的關(guān)系,描述了“擴(kuò)展用例”的行為如何和何時(shí)被插入到“被擴(kuò)展用例”的行為之中。

21、4. 一種依賴關(guān)系,表示從一個(gè)“包含用例”指向一個(gè)“被包含用例”,表示“包含用例”含有定義在“被包含用例”中的行為,即“包含用例”的一次執(zhí)行包含了“被包含用例”的執(zhí)行。四、簡(jiǎn)答題1. 用例之間的關(guān)系主要有泛化、包含和擴(kuò)展。 泛化表示了一個(gè)具體的用例和一個(gè)一般化的用例之間的關(guān)系。 包含表示了一個(gè)用例的執(zhí)行將含有另一個(gè)用例的執(zhí)行。 擴(kuò)展表示了一個(gè)用例的行為如何和何時(shí)被插入到一個(gè)被擴(kuò)展用例之中。2. 用例描述系統(tǒng)級(jí)的功能,可描述完整的功能需求。在正向工程中,用例描述將要實(shí)現(xiàn)的行為,而不描述其如何實(shí)現(xiàn)。用例還將驅(qū)動(dòng)軟件的后續(xù)開(kāi)發(fā),作為客戶驗(yàn)收測(cè)試的依據(jù)。3. 用例表達(dá)簡(jiǎn)單,通過(guò)用例對(duì)系統(tǒng)的行為建模,為

22、領(lǐng)域?qū)<?、最終用戶和開(kāi)發(fā)人員提供了一個(gè)共同的交流平臺(tái)。用例為開(kāi)發(fā)人員提供了一種直接認(rèn)識(shí)和理解元素的手段,以便于設(shè)計(jì)和實(shí)現(xiàn)。用例是測(cè)試模型的基礎(chǔ),交付系統(tǒng)時(shí)用戶的驗(yàn)收測(cè)試規(guī)范來(lái)源于用例。4. 兩者都表示用一個(gè)用例的行為來(lái)延伸另一個(gè)用例。區(qū)別在于包含是無(wú)條件的延伸,有較強(qiáng)的依賴關(guān)系;而擴(kuò)展是有條件的、定位的延伸,被擴(kuò)展用例相對(duì)獨(dú)立于擴(kuò)展用例。5. 用例圖是從軟件需求分析到最終實(shí)現(xiàn)的第一步,它顯示了系統(tǒng)的用戶和用戶希望提供的功能,有利于用戶和軟件開(kāi)發(fā)人員之間的溝通。用例圖可視化的表達(dá)了系統(tǒng)的需求,具有直觀、規(guī)范等優(yōu)點(diǎn),克服了純文字性說(shuō)明的不足。用例方法是完全從外部來(lái)定義系統(tǒng)的,它把需求和設(shè)計(jì)完全分離

23、開(kāi)來(lái),使用戶不用關(guān)心系統(tǒng)內(nèi)部是如何完成各種功能的。五案例分析題1要點(diǎn):(1)抽取出總經(jīng)理、部門經(jīng)理、人事部工作人員和員工四個(gè)參與者,并且存在泛化關(guān)系。 (2)抽取11個(gè)用例。 (3)將參與者和相應(yīng)交互的用例相關(guān)聯(lián)。注:此題為應(yīng)用題,考核考生能否根據(jù)需求描述繪制用例圖,考核用例圖的概念、理解和應(yīng)用。2要點(diǎn):(1)抽取出管理員、教師、學(xué)生和獨(dú)立計(jì)費(fèi)系統(tǒng)四個(gè)參與者。 (2)抽取4個(gè)用例。 (3)將參與者和相應(yīng)交互的用例相關(guān)聯(lián)。注:此題考核考生能否根據(jù)需求描述繪制用例圖,考核用例圖的概念、理解和應(yīng)用。3. 要點(diǎn):(1)抽取出超級(jí)管理員、部門領(lǐng)導(dǎo)、工作人員、新生4個(gè)參與者。 (2)抽取權(quán)限設(shè)置、數(shù)據(jù)管理

24、、設(shè)置操作人員、查詢信息、打印發(fā)票、報(bào)到管理、班級(jí)、宿舍管理信息統(tǒng)計(jì)、報(bào)到注冊(cè)等用例。注:此題為應(yīng)用題,考核考生能否根據(jù)需求描述繪制用例圖,考核用例圖的概念、理解和應(yīng)用。4. 要點(diǎn):(1)抽取出相關(guān)用例與參與者。 (2)將參與者和相應(yīng)交互的用例相關(guān)聯(lián)。注:此題考核考生能否根據(jù)需求描述繪制用例圖,考核用例圖的概念、理解和應(yīng)用。5. 要點(diǎn):(1)抽取出參與者。 (2)抽取用例。 (3)將參與者和相應(yīng)交互的用例相關(guān)聯(lián)。注:此題考核考生能否根據(jù)需求描述繪制用例圖,考核用例圖的概念、理解和應(yīng)用。6. 要點(diǎn):(1)抽取用例與參與者。 (2)將參與者和相應(yīng)交互的用例相關(guān)聯(lián)。注:此題為應(yīng)用題,考核考生能否根據(jù)

25、需求描述繪制用例圖,考核用例圖的概念、理解和應(yīng)用。第3章 類與接口第3章 類與接口一、單項(xiàng)選擇題1. 關(guān)于約束,下列描述錯(cuò)誤的是( c ) A. 約束是對(duì)特定模型元素附加的語(yǔ)義信息。 B. 可以在注解中表示約束。 C. 約束必須表示為規(guī)范的約束語(yǔ)言。 D. 約束允許增加新的規(guī)則或者修改已有的規(guī)則。2. 在類圖中,""表示的可見(jiàn)性是 ( d ) A.Public       B.Protected    C.Private   D.Package 3. 通常

26、把一組具有相同數(shù)據(jù)結(jié)構(gòu)和相同操作的對(duì)象的集合定義為( a ) A.類 B.屬性 C.對(duì)象 D.消息4. 關(guān)于抽象類和具體類,下列說(shuō)法不正確的是( a ) A.如果一個(gè)類有父類,該類就是具體類。 B.如果一個(gè)類繼承了父類的抽象操作/方法,而該類未提供實(shí)現(xiàn),那么該類是抽象類。 C.抽象類沒(méi)有任何直接的實(shí)例,而具體類則有直接實(shí)例。 D.在UML中,通過(guò)把一個(gè)類的名稱寫為斜體來(lái)指明該類是抽象類。5. 關(guān)于接口,下面說(shuō)法錯(cuò)誤的是(c ) A.接口通常僅說(shuō)明一組相關(guān)的操作,不說(shuō)明這些操作的實(shí)現(xiàn)方法。 B.一個(gè)接口僅說(shuō)明一組抽象的行為規(guī)范。 C.接口是一種抽象類型,可以直接實(shí)例化。 D.一個(gè)接口可由多個(gè)類實(shí)

27、現(xiàn)。6. 關(guān)于對(duì)象和對(duì)象圖,下面說(shuō)法錯(cuò)誤的是( c ) A.一個(gè)對(duì)象是一個(gè)實(shí)例,是屬性和行為的一個(gè)封裝體。 B.對(duì)象圖表示運(yùn)行時(shí)刻的對(duì)象狀態(tài)及對(duì)象之間的關(guān)聯(lián)“鏈”。 C.在建模過(guò)程中,應(yīng)先制作類圖,再制作對(duì)象圖。 D.一個(gè)值規(guī)范是一組實(shí)例的規(guī)范,可以是對(duì)象,可通過(guò)表達(dá)式來(lái)表示或計(jì)算多個(gè)實(shí)例。7. 在面向?qū)ο蟮恼Z(yǔ)言中,下面描述正確的是( a ) A.類的實(shí)例化是指對(duì)類的實(shí)例分配存儲(chǔ)空間 B.每個(gè)類都必須創(chuàng)建一個(gè)實(shí)例 C.每個(gè)類只能創(chuàng)建一個(gè)實(shí)例 D.類的實(shí)例化是指對(duì)類進(jìn)行初始化8. 關(guān)于對(duì)象和實(shí)例,下列說(shuō)法不正確的是( b ) A.在UML模型圖中,可能存在匿名實(shí)例。 B.一個(gè)對(duì)象的狀態(tài)是靜態(tài)的,

28、只能由屬性值表示。 C.對(duì)象是由類經(jīng)過(guò)實(shí)例化創(chuàng)建出來(lái)的。 D.對(duì)象都是實(shí)例,但有些實(shí)例不是對(duì)象。9. 類圖用于對(duì)系統(tǒng)的靜態(tài)設(shè)計(jì)視圖建模,類圖的常用建模技術(shù)不包括( c ) A.對(duì)邏輯數(shù)據(jù)庫(kù)模式建模 B.對(duì)系統(tǒng)的詞匯建模 C.對(duì)對(duì)象結(jié)構(gòu)建模 D.對(duì)簡(jiǎn)單協(xié)作建模10. 在下面關(guān)于類的描述中,錯(cuò)誤的是(d ) A.一個(gè)類是具有相同特征、約束和語(yǔ)義規(guī)范的一組對(duì)象的抽象描述。 B.類是抽象的 C.類是靜態(tài)的 D.類是現(xiàn)實(shí)世界中客觀存在的事物11. 下面哪個(gè)展現(xiàn)了一組對(duì)象以及它們之間的關(guān)系( b )3 A.活動(dòng)圖 B.對(duì)象圖 C.類圖 D.用例圖二、填空題根據(jù)下圖,完成16題:1. 類名“Window”書

29、寫為斜體,說(shuō)明該類為_(kāi)抽象類/abstract類_。2. 在每個(gè)性質(zhì)或操作說(shuō)明的前面,“+”表示_ public/公共_;3. “#”表示_ protected/保護(hù) _;4. “-”表示_ private/私有_。5. 帶下劃線的性質(zhì)或操作表示_.靜態(tài)/static _。6. display()方法是斜體表示的意思是_抽象方法_。根據(jù)下圖完成711題:7. 對(duì)于A類的一個(gè)對(duì)象,其關(guān)聯(lián)的B類對(duì)象的數(shù)量允許為0。對(duì)不對(duì)?_對(duì)_。8. 對(duì)于B類的一個(gè)對(duì)象,其關(guān)聯(lián)的A. 類對(duì)象的數(shù)量最多是_1個(gè)_。9. 對(duì)于D類的一個(gè)對(duì)象,其關(guān)聯(lián)的C類對(duì)象的數(shù)量允許為0。對(duì)不對(duì)?_不對(duì)_。10. 對(duì)于A. 類的一個(gè)

30、對(duì)象,其關(guān)聯(lián)的D類對(duì)象的數(shù)量允許為多個(gè)。對(duì)不對(duì)?_對(duì)_。11. 圖中subset b表示_ d是b的一個(gè)子集合_。三、名詞解釋題1. 泛化集2接口3. 對(duì)象圖4. 類元5. 操作6. 約束四、簡(jiǎn)答題1. 對(duì)象圖的用途是什么?2. 角色的意思是什么?3. 簡(jiǎn)述如何在實(shí)際工作中發(fā)現(xiàn)類。4. 簡(jiǎn)述怎樣發(fā)現(xiàn)類之間的繼承關(guān)系。五案例分析題1. 下圖描述了一種整數(shù)鏈表的基本結(jié)構(gòu)。用一個(gè)對(duì)象圖表示有兩個(gè)節(jié)點(diǎn)(data值分別為43和22)的情形。2. 現(xiàn)有一個(gè)訂購(gòu)貨物系統(tǒng),客戶可以建立訂單,訂單包含建立的日期和訂單狀態(tài),可以計(jì)算每個(gè)訂單的稅額和總價(jià),每個(gè)訂單由訂單明細(xì)構(gòu)成,與產(chǎn)品相關(guān)。每個(gè)訂單可以通過(guò)信用卡、

31、支票或者現(xiàn)金進(jìn)行支付。請(qǐng)根據(jù)上述描述,繪制該系統(tǒng)的類圖,要求描述類之間的關(guān)系,并注意多重性和角色。3. 分析學(xué)生成績(jī)管理系統(tǒng),建立類圖描述學(xué)生,老師,班級(jí),部門,課程之間的關(guān)系。參考答案一、單項(xiàng)選擇題 1C 2D 3A 4A 5C 6C 7A 8B 9C 10D11B二、填空題1.抽象類/abstract類 2.public/公共 3.protected/保護(hù) 4.private/私有 5.靜態(tài)/static 6.抽象方法7.對(duì) 8.1個(gè) 9.不對(duì)/錯(cuò) 10.對(duì) 11.d是b的一個(gè)子集合三、名詞解釋題1. 泛化集(generalization set)是一種元素,定義了泛化關(guān)系的各種子集合。從

32、語(yǔ)義上說(shuō),一個(gè)泛化集包含一組泛化關(guān)系,針對(duì)同一個(gè)一般性類元,提供了一種分類方式,得到了一組子類型劃分。2. 接口(interface)和類一樣是一種類型,接口有三個(gè)主要問(wèn)題:接口如何定義和表示、接口如何實(shí)現(xiàn)、接口如何使用。3. 對(duì)象圖(object diagram) 是一種結(jié)構(gòu)圖,表示一組實(shí)例以及實(shí)例之間的鏈link。4. 類元(classifier)是類、接口等元類的超類,所以類元是類、接口等元素的泛稱。5. 操作(operation) 是一種行為特征。行為特征描述了對(duì)特定請(qǐng)求作出應(yīng)答的規(guī)范。一個(gè)行為特征包含一組形式參量( 簡(jiǎn)稱形參) ,完成特定的計(jì)算,也可能引發(fā)指定類型的異常。一個(gè)操作表示

33、了該類對(duì)象可被請(qǐng)求而提供的一項(xiàng)服務(wù)。6. 要對(duì)模型元素添加某些條件或限制。約束(Constraint) 能表示這些條件或限制,采用自然語(yǔ)言或計(jì)算機(jī)語(yǔ)言表示,對(duì)建模元素的某些語(yǔ)義進(jìn)行限定。四、簡(jiǎn)答題1. 描述對(duì)象圖是在實(shí)例的級(jí)別上描述特定時(shí)刻的情形。在軟件工程中對(duì)象圖至少有以下兩個(gè)用途: 業(yè)務(wù)對(duì)象描述。在分析業(yè)務(wù)階段,識(shí)別對(duì)象的邊界和標(biāo)識(shí),識(shí)別對(duì)象的類型,描述對(duì)象的值,把一組相關(guān)對(duì)象聚集在一張對(duì)象圖上,用一組對(duì)象圖來(lái)表示實(shí)例情況。 實(shí)例場(chǎng)景描述。類圖應(yīng)該能正確反映計(jì)算機(jī)對(duì)象所反映的客觀業(yè)務(wù)對(duì)象的規(guī)律。2. 一個(gè)角色是參與特定語(yǔ)境中的某種實(shí)體的被命名的特定行為。一種角色是一種特定行為的命名。角色在

34、特定語(yǔ)境中才能完全確定。角色描述實(shí)體的抽象行為,但不描述實(shí)體本身。3. 在與客戶的交談中,要注意客戶用來(lái)描述業(yè)務(wù)實(shí)體的名詞術(shù)語(yǔ)。這些名詞可作為領(lǐng)域模型中的類。還要注意你聽(tīng)到的動(dòng)詞,因?yàn)檫@些動(dòng)詞可能會(huì)構(gòu)成這些類中的操作。(3分)當(dāng)?shù)玫揭唤M類的核心列表后,應(yīng)當(dāng)向客戶詢問(wèn)在業(yè)務(wù)過(guò)程中每個(gè)類的作用。他們的回答將告訴你這些類的職責(zé)。4. 為候選的類有可能和它的父類、子類在談話中同時(shí)被發(fā)現(xiàn)。系統(tǒng)分析員意識(shí)到某個(gè)類的屬性和操作也許能被運(yùn)用到其他多個(gè)類當(dāng)中去。另一種可能的情況是系統(tǒng)分析員注意到兩個(gè)或者多個(gè)類可能具有相同的屬性和操作數(shù)。五案例分析題1. 對(duì)象圖 基本評(píng)分標(biāo)準(zhǔn): (1) 列出三個(gè)對(duì)象。 (2) 說(shuō)

35、明各對(duì)象的屬性值及鏈。2. 要點(diǎn):(1)抽取出8個(gè)類。 (2)描述類之間的關(guān)系、多重性等。注:此題為基本題,考核考生能否根據(jù)需求描述繪制類圖,考核的知識(shí)是類圖的概念、理解和應(yīng)用。3. 基本評(píng)分標(biāo)準(zhǔn):(1) 列出類。(2) 說(shuō)明各類的屬性值及關(guān)系。第4章 關(guān)系建模第4章 關(guān)系建模一、單項(xiàng)選擇題1. 關(guān)于UML的一般命名規(guī)則,下面說(shuō)法錯(cuò)誤的是(b ) A.類名的首字母應(yīng)該大寫。 B.屬性名的首字母應(yīng)該大寫。 C.操作名的首字母應(yīng)該小寫。 D.接口名的首字母應(yīng)該大寫。2. 關(guān)于關(guān)聯(lián)和依賴,下面說(shuō)法是錯(cuò)誤的是( c ) A. 如果兩個(gè)類之間有關(guān)聯(lián),隱含著兩者之間存在某種依賴。 B. 如果兩個(gè)類之間表示

36、了關(guān)聯(lián)關(guān)系,就不需要再表示依賴關(guān)系了。 C. 如果兩個(gè)類之間有依賴,隱含著兩者之間有關(guān)聯(lián)關(guān)系。 D. 如果兩個(gè)類之間有依賴,兩者之間不一定有關(guān)聯(lián)。3. 如果一個(gè)關(guān)聯(lián)的兩端都在同一個(gè)類A上,那么該關(guān)聯(lián)表示( c ) A. 類A的每個(gè)對(duì)象對(duì)自己都存在一個(gè)鏈接link。 B. 類A的每個(gè)對(duì)象都有兩個(gè)實(shí)例。 C. 類A的每個(gè)對(duì)象與本類的其它對(duì)象有鏈接link。 D. 類A有部分對(duì)象對(duì)自己存在一個(gè)鏈接link。4. 在一個(gè)“訂單輸入子系統(tǒng)”中,創(chuàng)建新訂單和更新訂單都需要檢查用戶帳號(hào)是否正確。那么,用例“創(chuàng)建新訂單”、“更新訂單”與用例“檢查用戶帳號(hào)”之間是( c ) A.包含關(guān)系 B.擴(kuò)展關(guān)系 C.分類

37、關(guān)系 D.聚集關(guān)系5. 關(guān)于UML的一般命名規(guī)則,名稱首字母應(yīng)該大寫的元素是( d ) A.類的屬性 B.類的操作 C.類的實(shí)例 D.類6. UML中關(guān)聯(lián)的多重性是指( b) A.一個(gè)類由多少個(gè)方法被另一個(gè)類調(diào)用 B.一個(gè)類的實(shí)例能夠與另一個(gè)類的多少個(gè)實(shí)例相關(guān)聯(lián) C.一個(gè)類的某個(gè)方法被另一個(gè)類調(diào)用的次數(shù) D.兩個(gè)類所具有的相同的方法和屬性7. 在結(jié)構(gòu)建模中,關(guān)系建模具有重要地位,下面關(guān)系中不屬于基本關(guān)系的是( c ) A.泛化 B.依賴 C.交互 D.關(guān)聯(lián)8. 關(guān)于關(guān)聯(lián)和依賴,下面說(shuō)法錯(cuò)誤的是( c ) A.如果兩個(gè)類之間有關(guān)聯(lián),隱含著兩者之間存在某種依賴。 B.如果兩個(gè)類之間表示了關(guān)聯(lián)關(guān)系,

38、就不需要再表示依賴關(guān)系了。 C.如果兩個(gè)類之間有依賴,隱含著兩者之間有關(guān)聯(lián)關(guān)系。 D.如果兩個(gè)類之間有依賴,兩者之間不一定有關(guān)聯(lián)。9. 在采用UML分析類與類的關(guān)系中,如果類A需要使用標(biāo)準(zhǔn)數(shù)學(xué)函數(shù)類庫(kù)中提供的功能,那么類A與標(biāo)準(zhǔn)類庫(kù)提供的類之間存在的關(guān)系是( a ) A.依賴 B.關(guān)聯(lián) C.泛化 D.聚集10. 下面關(guān)于關(guān)聯(lián)的說(shuō)法中,錯(cuò)誤的是( c ) A.一個(gè)關(guān)聯(lián)是一組鏈(link)的抽象。 B.關(guān)聯(lián)類是表示關(guān)聯(lián)的類,主要用于表示關(guān)聯(lián)特有的性質(zhì)和操作。 C.關(guān)聯(lián)表示了較抽象的類元和較具體的類元之間的一種定向關(guān)系 D.聚集是表示整體和部分概念的一種特殊的關(guān)聯(lián)。12. 對(duì)于關(guān)系建模的說(shuō)法中,錯(cuò)誤

39、的是( d ) A.僅當(dāng)被建模的關(guān)系不是關(guān)聯(lián)或泛化關(guān)系時(shí),才考慮依賴關(guān)系。 B.僅當(dāng)表示“is-a-kind-of”或者“is a”關(guān)系時(shí),才使用泛化關(guān)系。 C.如果兩個(gè)類之間已存在泛化或關(guān)聯(lián)關(guān)系,隱含著存在依賴關(guān)系,而且不需要表示。 D.描述對(duì)象間的結(jié)構(gòu)關(guān)系應(yīng)以泛化為主。13. 在下列關(guān)系中,屬于非定向關(guān)系的是( d )關(guān)系。 A.泛化 B.擴(kuò)展 C.依賴 D.關(guān)聯(lián)14. 類A中的某操作有一個(gè)形參類型為類B,那么A和B之間可以建模為( c )關(guān)系。 A.泛化 B.聚集 C.依賴 D.關(guān)聯(lián)二、填空題根據(jù)下圖完成14題:1. Person類與Company類之間存在一個(gè)名為_(kāi)job_的關(guān)聯(lián)類。2

40、. 一個(gè)人至少要有一個(gè)工作的公司對(duì)嗎?_不對(duì)_。3. 圖中employer表示_角色_。4. 1.* 表示_關(guān)聯(lián)多重性_。下圖是關(guān)于一個(gè)學(xué)校的信息系統(tǒng)的類圖,完成57題:5. 圖中School和Department之間的關(guān)系是_組合_。6. School和Student之間的關(guān)系是_共享聚合_。7. 前兩者關(guān)系的共同點(diǎn)是_整體和部分的關(guān)聯(lián)關(guān)系_。根據(jù)下圖完成812題:8. Polygon類與Point類之間是_共享_聚集關(guān)系.9. ordered的意思是_有序地_。10. 由圖中可知,當(dāng)一個(gè)Polygon對(duì)象被撤銷,它所含有的Point對(duì)象也將自動(dòng)撤銷。這句話對(duì)嗎?_不對(duì)_。11. Polyg

41、on類與GraphicsBundle類之間是_復(fù)合_聚集關(guān)系。12.由圖中可知,當(dāng)一個(gè)Polygon對(duì)象被撤銷,它所含有的GraphicsBundle對(duì)象也將自動(dòng)撤銷。這句話對(duì)嗎?_對(duì)_。 根據(jù)下圖完成1315題: 動(dòng)物+新陳代謝(in 食物)食物翅膀猴子企鵝猴群13. 圖中的動(dòng)物和食物之間的關(guān)系是_依賴關(guān)系_。14. 企鵝和翅膀之間的關(guān)系是_復(fù)合聚集關(guān)系_。15. 圖中的關(guān)系有一處標(biāo)示錯(cuò)誤,請(qǐng)說(shuō)明為什么_猴子應(yīng)當(dāng)是猴群的一部分,而不是相反_。三、名詞解釋題1. 依賴關(guān)系2. 關(guān)聯(lián)關(guān)系3. 限定關(guān)聯(lián)4. 復(fù)合聚集5. 聚集關(guān)系6. 多元關(guān)聯(lián)四、簡(jiǎn)答題1. 不良設(shè)計(jì)的7種現(xiàn)象是什么?2. 如何識(shí)

42、別類之間的關(guān)聯(lián)?3. 將類的多繼承轉(zhuǎn)換為單繼承的常用方法是什么?4. 面向?qū)ο笤O(shè)計(jì)的五個(gè)原則SOLID是什么?參考答案一、單項(xiàng)選擇題 1B 2C 3C 4C 5D 6B 7C 8C 9A 10C11D 12D 13D 14C 二、填空題1.Job 2.錯(cuò)(不對(duì)) 3.端點(diǎn)名(角色) 4.關(guān)聯(lián)多重性5.組合 6.共享聚合 7.整體和部分的關(guān)聯(lián)關(guān)系8.共享 9.有序的 10.錯(cuò)誤/不對(duì) 11.復(fù)合 12.正確/對(duì)13.依賴關(guān)系 14.復(fù)合聚集關(guān)系/整體和部分的關(guān)系15.猴子應(yīng)當(dāng)是猴群的一部分,而不是相反三、名詞解釋題1. 依賴(Dependency)是兩個(gè)元素之間的一種定向關(guān)系,從一個(gè)client

43、 元素指向一個(gè) supplier 元素,說(shuō)明了client 元素需要supplier 元素的規(guī)范或?qū)崿F(xiàn)。2. 關(guān)聯(lián)是一種關(guān)系,同時(shí)也是一種類元。關(guān)聯(lián)確定了類型的實(shí)例之間的語(yǔ)義關(guān)系。一個(gè)關(guān)聯(lián)至少有兩個(gè)端,每個(gè)端連接到一個(gè)類型。3. 帶有限定符的關(guān)聯(lián)稱為限定關(guān)聯(lián)(qualified association)。限定符表示為一個(gè)小矩形,連接到一個(gè)關(guān)聯(lián)的一端,位于類元符號(hào)和關(guān)聯(lián)線之間。限定符矩形是關(guān)聯(lián)路徑的一部分,而不是類元的一部分。4. 也稱為合成式,表示各部分對(duì)象的生命期受限于整體。整體一端表示為實(shí)心菱形。在復(fù)合式聚集中,整體對(duì)象應(yīng)負(fù)責(zé)其各部分對(duì)象的生存和存儲(chǔ)。一個(gè)部分對(duì)象在特定時(shí)刻只能被包含在一個(gè)

44、復(fù)合對(duì)象中,即該復(fù)合對(duì)象“獨(dú)占”其部分對(duì)象,也稱為“強(qiáng)”聚集。5. 聚集(aggregation) ,也稱為聚合,表示整體與部分之間的關(guān)系。整體一端用一個(gè)菱形表示。聚集分為共享聚集和復(fù)合聚集。6. 如果一個(gè)關(guān)聯(lián)具有兩個(gè)以上的關(guān)聯(lián)端,則稱為多元關(guān)聯(lián)。最常見(jiàn)的是三元關(guān)聯(lián),用一個(gè)菱形符號(hào)表示一個(gè)多元關(guān)聯(lián),伸出三個(gè)關(guān)聯(lián)端分別連接到三個(gè)類元。四、簡(jiǎn)答題1. 僵硬(rigidity) 、脆弱(fragility) 、低復(fù)用(immobility)、高粘度(viscosity)、無(wú)端復(fù)雜性(needless complexity) 、無(wú)端復(fù)制(needless repetition)、晦澀(opacity)

45、。2. 可以從對(duì)象的性質(zhì)的識(shí)別和分析入手。如果一個(gè)性質(zhì)的值的類型不是一個(gè)基本類型,而是某個(gè)構(gòu)造類型,那么該對(duì)象就有一個(gè)鏈,鏈接到該構(gòu)造類型的對(duì)象之上,這樣就識(shí)別出一個(gè)關(guān)聯(lián)。3. 用接口替代類,以保持子類的類型結(jié)構(gòu)。選擇保留一個(gè)超類,而將其它超類都轉(zhuǎn)換為接口。把一個(gè)類轉(zhuǎn)換為一個(gè)接口,主要是運(yùn)用泛化與聚集關(guān)系,為這些接口分別提供一個(gè)實(shí)現(xiàn)類,然后子類中將每個(gè)實(shí)現(xiàn)類的一個(gè)對(duì)象作.為自己的一個(gè)性質(zhì)加以引用,用一個(gè)聚集關(guān)系。4. SRP:The Single Responsibility Principle,單一職責(zé)原則。一個(gè)類應(yīng)僅有一個(gè)改變的理由。OCP:The Open/Closed Principl

46、e ,開(kāi)閉原則。不應(yīng)修改已有的類,而應(yīng)擴(kuò)展一個(gè)類。LSP:The Liskov Substitution Principle,里氏替換原則。子類對(duì)象能隨時(shí)隨地替換其超類。ISP: The Interface Segregation Principle,接口分離原則。一個(gè)客戶程序只需關(guān)注自己所需要的接口。DIP: The Dependency Inversion Principle,依賴倒置原則。依賴抽象而不依賴細(xì)節(jié)。第5章 其他結(jié)構(gòu)建模第5章 其他結(jié)構(gòu)建模一、單項(xiàng)選擇題1. 用于把元素組織成組的通用機(jī)制是(a ) A.包 B.類 C.接口 D.組件2. UML結(jié)構(gòu)包括基本構(gòu)造塊、(d )和把這

47、些構(gòu)造塊放在一起的規(guī)則。 A.圖形表示 B.公共機(jī)制 C.類與對(duì)象的實(shí)現(xiàn) D.系統(tǒng)細(xì)節(jié)的規(guī)格說(shuō)明3. 關(guān)于構(gòu)造型(stereotype),下列說(shuō)法不正確的是( b) A. 建立構(gòu)造型的目的是適應(yīng)特定平臺(tái)或領(lǐng)域的建模需要。 B. UML未提供預(yù)定義的構(gòu)造型,故此需要用戶自行定義。 C. 可以為構(gòu)造型定義圖標(biāo),并把該圖標(biāo)放在名字的右邊。 D. 一個(gè)構(gòu)造型定義了一個(gè)已有元類如何被擴(kuò)展的規(guī)范。4. 構(gòu)造型«import»表示( c)導(dǎo)入。 A.private B.protected C.public D.package5. 構(gòu)造型«access»表示( a )導(dǎo)

48、入。 A.private B.protected C.public D.package6. 下面哪一個(gè)不是包的內(nèi)聚性有三原則。(d ) A.重用發(fā)布等價(jià)原則 B.共同重用原則 C.共同封閉原則 D.共同繼承原則7. 下面不屬于包關(guān)系的是( c )。 A.導(dǎo)入關(guān)系 B.合并關(guān)系 C.關(guān)聯(lián)關(guān)系 D.依賴關(guān)系8. 下面說(shuō)法錯(cuò)誤的是(b ) A.共同重用是為了提高包的獨(dú)立性 B.子類的穩(wěn)定性比父類的穩(wěn)定性好 C.共同封閉是為了提高包的聚合性 D.包不應(yīng)該存在循環(huán)依賴二、填空題1. 一個(gè)構(gòu)造型用_矩形_表示,必須確定一個(gè)名字,并用«stereotype»說(shuō)明在名字上方,用一個(gè)實(shí)心三角箭頭指向被擴(kuò)展的元類。2. 一個(gè)包有一個(gè)名字,包中各元素的限定名就是包名加上元素的名稱,如果P是包的名字,A是類的名字,則包和類表示為_(kāi)P:A_。3. 一個(gè)包擁有其成員,這隱含著如果一個(gè)包被刪除,包中_所有元素_及其子包都將被刪除。 4. 復(fù)合結(jié)構(gòu)主要對(duì)一組互聯(lián)元素的_組成結(jié)構(gòu)_進(jìn)行建模,表示運(yùn)行時(shí)

溫馨提示

  • 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)論