軟件體系結(jié)構(gòu)試題試題+答案_第1頁(yè)
軟件體系結(jié)構(gòu)試題試題+答案_第2頁(yè)
軟件體系結(jié)構(gòu)試題試題+答案_第3頁(yè)
軟件體系結(jié)構(gòu)試題試題+答案_第4頁(yè)
軟件體系結(jié)構(gòu)試題試題+答案_第5頁(yè)
已閱讀5頁(yè),還剩4頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、1、 設(shè)計(jì)模式一般用來解決什么樣的問題(a)A, 同一問題的不同表相B 不同問題的同一表相C.不同問題的不同表相D.以上都不是2、 下列屬于面向?qū)ο蠡驹瓌t的是(c )A. 繼承B.封裝C.里氏代換D都不是3、 Open-Close原則的含義是一個(gè)軟件實(shí)體(a )A.應(yīng)當(dāng)對(duì)擴(kuò)展開放,對(duì)修改關(guān)閉B.應(yīng)當(dāng)對(duì)修改開放,對(duì)擴(kuò)展關(guān)閉C.應(yīng)當(dāng)對(duì)繼承開放,對(duì)修改關(guān)閉D.以上都不對(duì)4、當(dāng)我們想創(chuàng)建一個(gè)具體的對(duì)象而又不希望指定具體的類時(shí),可以使用(a )模式。A. 創(chuàng)建型 B.結(jié)構(gòu)型C行為型D.以上都可以5、 要依賴于抽象,不要依賴于具體。即針對(duì)接口編程,不要針對(duì)實(shí)現(xiàn)編程,是(d )的表述A.開-閉原則B.接口

2、隔離原則C.里氏代換原則D.依賴倒轉(zhuǎn)原則6、依據(jù)設(shè)計(jì)模式思想,程序開發(fā)中應(yīng)優(yōu)先使用的是 (a )關(guān)系實(shí)現(xiàn)復(fù)用。A, 委派B.繼承C創(chuàng)建 D.以上都不對(duì)復(fù)用方式:繼承和組合聚合(組合委派)7、設(shè)計(jì)模式的兩大主題是(d )A. 系統(tǒng)的維護(hù)與開發(fā)B 對(duì)象組合與類的繼承C.系統(tǒng)架構(gòu)與系統(tǒng)開發(fā)D.系統(tǒng)復(fù)用與系統(tǒng)擴(kuò)展8、單子模式中,兩個(gè)基本要點(diǎn)(a b )和單子類自己提供單例A .構(gòu)造函數(shù)私有B.唯一實(shí)例C.靜態(tài)工廠方法D.以上都不對(duì)9、下列模式中,屬于行為模式的是(b )A. 工廠模式 B觀察者C適配器以上都是10、 “不要和陌生人說話”是(d )原則的通俗表述A.接口隔離 B.里氏代換 C.依賴倒轉(zhuǎn)

3、D.迪米特:一個(gè)對(duì)象應(yīng)對(duì)其他對(duì) 象盡可能少的了解11、構(gòu)造者的的退化模式是通過合并( c )角色完成退化的。A.抽象產(chǎn)品B 產(chǎn)品 C 創(chuàng)建者 D 使用者12、單子(單例,單態(tài))模式類圖結(jié)構(gòu)如下:下列論述中,關(guān)于”0.1 ”表述的不正確的是(d )A. 1表示,一個(gè)單例類中,最多可以有一個(gè)實(shí)例.B. ” 0.1 ”表示單例類中有不多于一個(gè)的實(shí)例C. 0 表示單例類中可以沒有任何實(shí)例D. 0 表示單例類可以提供其他非自身的實(shí)例13、對(duì)象適配器模式是(a )原則的典型應(yīng)用。A.合成聚合復(fù)用原則B.里式代換原則C.依賴倒轉(zhuǎn)原則 D.迪米特法則14. 靜態(tài)工廠的核心角色是(a)A.抽象產(chǎn)品 B.具體產(chǎn)品

4、 C.靜態(tài)工廠 D.消費(fèi)者15. 下列關(guān)于靜態(tài)工廠與工廠方法表述錯(cuò)誤的是:(a )A. 兩者都滿足開閉原則:靜態(tài)工廠以if else 方式創(chuàng)建對(duì)象,增加需求的時(shí)候會(huì)修改源代碼B. 靜態(tài)工廠對(duì)具體產(chǎn)品的創(chuàng)建類別和創(chuàng)建時(shí)機(jī)的判斷是混和在一起的,這點(diǎn) 在工廠方法中C. 不能形成靜態(tài)工廠的繼承結(jié)構(gòu)D. 在工廠方法模式中,對(duì)于存在繼承等級(jí)結(jié)構(gòu)的產(chǎn)品樹,產(chǎn)品的創(chuàng)建是通過 相應(yīng)等級(jí)結(jié)構(gòu)的工廠創(chuàng)建的。16. 在觀察者模式中,表述錯(cuò)誤的是( c )A. 觀察者角色的更新是被動(dòng)的。B. 被觀察者可以通知觀察者進(jìn)行更新C. 觀察者可以改變被觀察者的狀態(tài),再由被觀察者通知所有觀察者依據(jù)被觀 察者的狀態(tài)進(jìn)行。D. 以上

5、表述全部錯(cuò)誤。17. 對(duì)于違反里式代換原則的兩個(gè)類,可以采用的候選解決方案錯(cuò)誤的是:(d )A. 創(chuàng)建一個(gè)新的抽象類 C,作為兩個(gè)具體類的超類,將 A和B共同的行為移 動(dòng)到C中,從而解決 A和B行為不完全一致的問題。B. 將B到A的繼承關(guān)系改組成委派關(guān)系。C. 區(qū)分是“ IS-a ”還是” Has-a”。如果是“ Is-a ”,可以使用繼承關(guān)系,如果是” Has a”應(yīng)該改成委派關(guān)系D. 以上方案錯(cuò)誤18. 對(duì)象組合的有點(diǎn)表述不當(dāng)?shù)氖牵╠ )A.容器類僅能通過被包含對(duì)象的接口來對(duì)其進(jìn)行訪問。B.“黑盒”復(fù)用,封裝性好,因?yàn)楸话瑢?duì)象的內(nèi)部細(xì)節(jié)對(duì)外是不可見。C. 通過獲取指向其它的具有相同類型的

6、對(duì)象引用,可以在運(yùn)行期間動(dòng)態(tài)地定義(對(duì)象的)組合D. 造成極其嚴(yán)重的依賴關(guān)系。19. 關(guān)于繼承表述錯(cuò)誤的是:(d )A. 繼承是一種通過擴(kuò)展一個(gè)已有對(duì)象的實(shí)現(xiàn),從而獲得新功能的復(fù)用方法。B. 泛化類(超類)可以顯式地捕獲那些公共的屬性和方法。特殊類(子類) 則通過附加屬性和方法來進(jìn)行實(shí)現(xiàn)的擴(kuò)展。C. 破壞了封裝性,因?yàn)檫@會(huì)將父類的實(shí)現(xiàn)細(xì)節(jié)暴露給子類。D. 繼承本質(zhì)上是“白盒復(fù)用”,對(duì)父類的修改,不會(huì)影響到子類。20. 對(duì)于依賴倒轉(zhuǎn)的表述錯(cuò)誤的是(e )A. 依賴于抽象而不依賴于具體,也就是針對(duì)接口編程。B. 依賴倒轉(zhuǎn)的接口并非語(yǔ)法意義上的接口,而是,一個(gè)類對(duì)其他對(duì)象進(jìn)行調(diào) 用時(shí),所知道的方法集

7、合。C. 從選項(xiàng)B的角度論述,一個(gè)對(duì)象可以有多個(gè)接口。D. 實(shí)現(xiàn)了同一接口的對(duì)象,可以在運(yùn)行期間,順利地進(jìn)行替換。而且不必知 道所示用的對(duì)象是那個(gè)實(shí)現(xiàn)類的實(shí)例。E. 此題沒有正確答案。21. 面向?qū)ο蟮牧鶙l基本原則包括:開閉原則,里式代換原則,合成聚合原則以及(依賴倒轉(zhuǎn)),(迪米特法則),(單一原則),(接口隔離?)。22. 在存在繼承關(guān)系的情況下,方法向(超類)方向集中,而數(shù)據(jù)向(子類)方 向集中。23. 適配器模式,分為類的適配器和對(duì)象的適配器兩種實(shí)現(xiàn)。其中類的適配器采用的是(繼承)關(guān)系,而對(duì)象適配器采用的是(組合聚合)關(guān)系。24. 設(shè)計(jì)模式的基本要素有(名字),(意圖),(問題),(解決

8、方案),(參與者與協(xié)作者 ),(實(shí)現(xiàn)),(一般性結(jié)構(gòu))。25. 創(chuàng)立型模式的根本意圖是要把(對(duì)象的創(chuàng)建)和(使用分離)的責(zé)任進(jìn)行分離,從而降低系統(tǒng)的(耦合度)。26. 工廠模式分為(簡(jiǎn)單工廠),(工廠方法),(抽象工廠)三種類型27. 門面模式是(迪米特)法則的典型運(yùn)用28. MVC模型的基本工作原理是基于 (觀察者)模式,實(shí)現(xiàn)是基于(命令)模式29. 設(shè)計(jì)模式的思想根源是(開閉)基本原則的宏觀運(yùn)用,本質(zhì)上是沒有任何模式 的,發(fā)現(xiàn)模式的人永遠(yuǎn)是大師,而死守模式的人,最對(duì)只能是一個(gè)工匠.UMk設(shè)計(jì)模式(測(cè)試題)不定項(xiàng)選擇題:1 .一個(gè)軟件產(chǎn)品是否成功,因素有()。1 需求收集是否正確2 體系結(jié)構(gòu)

9、的構(gòu)建是否合理3 測(cè)試是否完全4 軟件的管理2 .開發(fā)過程中最困難的一個(gè)環(huán)節(jié)是(人與人之間的交流)。3 .用例是從(用戶 )的觀點(diǎn)對(duì)系統(tǒng)行為的一個(gè)描述。4 .順序圖所表達(dá)的是基于(時(shí)間順序 )的動(dòng)態(tài)交互。5 .當(dāng)需要在項(xiàng)目中定制自己的元素時(shí),可使用(構(gòu)造型來定制)。6 .表示一個(gè)操作中的參數(shù)和返回值的數(shù)據(jù)類型的稱呼是(形構(gòu) )。7 .多重性5, 10表示(5 或者10)。8 .在找出了類的繼承關(guān)系后,通??梢杂茫?接口 )來表示最上層的基類。9. UML中的實(shí)現(xiàn)是一種特殊類型的繼承,因?yàn)樗侵笍囊粋€(gè)(接口 )繼承。10. 使用用例的難點(diǎn)在于(用例中各個(gè)場(chǎng)景的具體步驟)。11. 收集用例的方法是

10、(交談 )。12 .產(chǎn)生類圖和得到用例這兩個(gè)步驟,位于前面的是(沒有固定順序)。13. 面向?qū)ο罄碚撝?,?duì)象之間發(fā)送信號(hào),在UML狀態(tài)圖里就是( 事件 )。14. 順序圖中,動(dòng)態(tài)創(chuàng)建對(duì)象表示法的特點(diǎn)是(是在時(shí)間線上的某一點(diǎn)創(chuàng)建,結(jié)束時(shí)尾部打 X)。15. 當(dāng)代軟件工程的特點(diǎn)是()。1 允許各個(gè)階段進(jìn)行迭代2 各個(gè)階段沒有明顯的分界線3 允許后期得到的信息返回,使得早期的能夠被修改。16. GRAPPLE最重要的段是()。1 需求收集2 需求分析3 用例開發(fā)4 編碼5 測(cè)試17. 設(shè)計(jì)模式的基本要素有(名稱,目的(意圖),解決方案,實(shí)施后達(dá)到的效果)。18. 當(dāng)我們想創(chuàng)建一個(gè)具體的對(duì)象而又不希望

11、指定具體的類時(shí),可以使用(創(chuàng)建性 )模式。橋接 )模式。命令 )模策略)19. 當(dāng)我們想將抽象部分和實(shí)現(xiàn)部分分離時(shí),可以使用(20. 當(dāng)我們想用不同的請(qǐng)求對(duì)客戶進(jìn)行參數(shù)化時(shí),可以使用( 式。21. 當(dāng)我們想封裝不同算法并使它們可相互替換時(shí),可以使用( 模式。22. 面向?qū)ο笙到y(tǒng)中功能復(fù)用的兩種最常用技術(shù)是()。l 對(duì)象組合(優(yōu)先使用)l 類繼承(限制使用類繼承)-> 產(chǎn)生類爆炸23. 面向?qū)ο笙到y(tǒng)中的“黑盒復(fù)用”是指(對(duì)象組合)。24. 對(duì)象組合是通過獲得(抽象類的指針)而在運(yùn)行時(shí)刻動(dòng)態(tài)定義的。25. 設(shè)計(jì)模式中應(yīng)優(yōu)先使用的復(fù)用技術(shù)是(對(duì)象組合)。26. 在Lexi系統(tǒng)中,我們把所有文檔

12、元素都看作是圖元,這樣,它們就有了相同的( 接口(也叫類型)。27. Lexi系統(tǒng)中,我們之所以能對(duì)文檔采用Composite模式,是因?yàn)槲臋n的元素之間有( 遞歸(樹型結(jié)構(gòu))關(guān)系。填空題:1. 軟件體系結(jié)構(gòu)是指一個(gè)系統(tǒng)的有目的的設(shè)計(jì)和規(guī)劃,這個(gè)設(shè)計(jì)規(guī)劃既不描述 活動(dòng) ,也不描述 系統(tǒng)怎樣開發(fā),它只描述系統(tǒng)的組成元素及其相互的交互協(xié)作。2 .一個(gè)UML模型只描述了一個(gè)系統(tǒng)要做什么,它并沒告訴我們系統(tǒng)是 怎么做。3.接口是可以在整個(gè)模型中反復(fù)使用的一組行為,是一個(gè)沒有屬性 而只有方法 的類。4 .多重性指的是,某個(gè)類有多個(gè)個(gè)對(duì)象可以和另一個(gè)類的1個(gè) 對(duì)象關(guān)聯(lián)。5 .當(dāng)一個(gè)類的對(duì)象可以充當(dāng)多種角色時(shí)

13、,自身關(guān)聯(lián)就可能發(fā)生。6 .在泛化關(guān)系中,子類可以替代 父類 。也就是說,后者出現(xiàn)的地方,前者都可以出現(xiàn)。但是反過來卻不成立。7 .最通常的依賴關(guān)系是一個(gè)類操作的形構(gòu)中用到了另一個(gè)類的定義。8 .組成是強(qiáng)類型的聚集,因?yàn)榫奂械拿總€(gè)部分體只能屬于個(gè) 整體。9 .實(shí)現(xiàn)的符號(hào)和繼承的符號(hào)有相似之處,兩者的唯一差別是實(shí)現(xiàn)關(guān)系用虛線表示,繼承關(guān)系用 實(shí)線 表示。10. UMLW后的兩個(gè)重量級(jí)概念是用例 和 面向?qū)ο?。11 .狀態(tài)圖和類圖、順序圖不同之處在于,后兩種圖能夠?qū)Χ鄠€(gè)對(duì)象建立模型,而狀態(tài)圖只是對(duì)1 個(gè)對(duì)象 建立模型。12. 狀態(tài)圖中 3個(gè)常用的動(dòng)作是入口動(dòng)作 、 出口動(dòng)作 和 do 動(dòng)作,也

14、就是對(duì)象處于這個(gè)狀態(tài)時(shí)應(yīng)該做什么。13. 順序圖中,消息用水平箭頭線 表示;時(shí)間用垂直虛線表示。14. 當(dāng)邏輯發(fā)生分支時(shí),在順序圖中用生命線發(fā)生的分支表示,在協(xié)作圖中用嵌套的序號(hào)表示。15 .順序圖強(qiáng)調(diào)的是交互的時(shí)間順序,協(xié)作圖強(qiáng)調(diào)的是交互的空間關(guān)系 和參與交互的對(duì)象的上下文環(huán)境。16. GRAPPLE開發(fā)過程分為 5個(gè) 段 ,之中又由許多動(dòng)作 組成。17. GRAPPLE程中,得到初步類圖是在需求收集段,細(xì)化類圖是在需求分析段。18 .每一個(gè)設(shè)計(jì)模式都集中于一個(gè)特定的設(shè)計(jì)問題,描述了 相互通信的對(duì)象或者類_以及解決方案和解決效果。19. 面向?qū)ο笙到y(tǒng)中功能復(fù)用的兩種最常用技術(shù)是對(duì)象組合 和

15、類繼承 。20. 設(shè)計(jì)模式中應(yīng)優(yōu)先使用對(duì)象組合而不是 類繼承。簡(jiǎn)答題1 .類圖在UML中有何重要作用?答:1.為開發(fā)人員提供這種模仿現(xiàn)實(shí)世界的表達(dá)方式。2. 讓分析員使用客戶所采用的術(shù)語(yǔ)和客戶交流,促使客戶說出所要解決的問題的 重要細(xì)節(jié)。2. 闡述用例對(duì)于系統(tǒng)開發(fā)人員來說的價(jià)值。答:是用來從用戶的觀察角度收集系統(tǒng)需求的一項(xiàng)技術(shù),便于分析員與客戶和用戶交流,使系統(tǒng)更符合用戶的需求3. 簡(jiǎn)述如何在實(shí)際工作中發(fā)現(xiàn)類。答:在與客戶的交談中,要注意客戶用來描述業(yè)務(wù)實(shí)體的名詞術(shù)語(yǔ)。這些名詞可 作為領(lǐng)域模型中的類。還要注意你聽到的動(dòng)詞,因?yàn)檫@些動(dòng)詞可能會(huì)構(gòu)成這些類中的操作。當(dāng)?shù)玫揭唤M類的核心列表后,應(yīng)當(dāng)向客

16、戶詢問在業(yè)務(wù)過程中每個(gè)類的作用。他們 的回答將告訴你這些類的職責(zé)。4. 簡(jiǎn)述怎樣發(fā)現(xiàn)類之間的繼承關(guān)系。答:作為候選的類有可能和它的父類、子類在談話中同時(shí)被發(fā)現(xiàn)。系統(tǒng)分析員意識(shí)到 某個(gè)類的屬性和操作也許能被運(yùn)用到其他多個(gè)類當(dāng)中去。另一種可能的情況是系統(tǒng)分析員注意到兩個(gè)或者多個(gè)類可能具有相同的屬性和 操作數(shù)5. 試使用UML勺關(guān)系表示法,表示出大學(xué)計(jì)算機(jī)專業(yè)中如下這些課程的模型:C 語(yǔ)言程序設(shè)計(jì)、C+語(yǔ)言程序設(shè)計(jì)、Windows程序設(shè)計(jì)、網(wǎng)絡(luò)程序設(shè)計(jì)。注意抽 象類和依賴的使用。6 .畫出圖形用戶界面 GUI的狀態(tài)圖,要包括屏幕保護(hù)狀態(tài)。其中要表明相應(yīng)的事件、動(dòng)作。答:圖形用戶界面(GUI)是一個(gè)可

17、以說明狀態(tài)轉(zhuǎn)移細(xì)節(jié)的例子。在這里,假設(shè) GUI可以處于以下3種狀態(tài)之一:Initializing( 初始化)。Working(工作)。Shut Down(關(guān)閉)。當(dāng)打開PC電源的時(shí)候,自啟動(dòng)發(fā)生。因此 Turning the PCon(打開PC)是一個(gè)觸發(fā) 器事件,它導(dǎo)致了 GUI的狀態(tài)轉(zhuǎn)移到Initializing 狀態(tài),而Bootup(自啟動(dòng))是一個(gè)在轉(zhuǎn)移 過程中執(zhí)行的動(dòng)作。由于Initializing狀態(tài)中活動(dòng)的完成,GUI將轉(zhuǎn)移進(jìn)入 Working狀態(tài)。當(dāng)你對(duì)PC選擇ShutDown(關(guān)閉機(jī)器)時(shí),就引發(fā)了 Shut Down觸發(fā)器事件,最后 PC自己切斷電源,整個(gè)過程結(jié)束。下面的狀態(tài)

18、圖捕獲了GUI的這些狀態(tài)和轉(zhuǎn)移。下圖是 GUI加入 了 Screensaving 狀態(tài)和保護(hù)條件的狀態(tài)圖,注意圖中的保護(hù)條件isTimeout,被寫成一個(gè)布爾表達(dá)式。7. 順序圖和協(xié)作圖中,消息有哪三種?各自的意義和表示法什么?答:消息可以是簡(jiǎn)單的(simple)、同步的(synchronous)或異步的(asynchronous)。簡(jiǎn)單消息是從一個(gè)對(duì)象到另一個(gè)對(duì)象的控制流的轉(zhuǎn)移。如果一個(gè)對(duì)象發(fā)送了一個(gè)同步消息,那么它要等待對(duì)方對(duì)消息的應(yīng)答,收到應(yīng)答后才能 繼續(xù)自己的操作。而發(fā)送異步消息的對(duì)象不需要等待對(duì)方的應(yīng)答便可以繼續(xù)自己 的操作。在順序圖中,簡(jiǎn)單消息是一個(gè)簡(jiǎn)單箭頭,同步消息是實(shí)心箭頭。異

19、步消 息是一個(gè)半邊箭頭,8. 畫出自動(dòng)飲料銷售機(jī)中,理想場(chǎng)景和“錢數(shù)不正確”的場(chǎng)景合并在一起的順序圖假設(shè)在飲料銷售機(jī)中有3個(gè)對(duì)象來做上述工作:前端 (Front)(它是飲料銷售機(jī)與顧客之間的接口),錢幣記錄儀(Register)(它負(fù)責(zé)收集顧客投的錢幣),以及分 配器(Dispenser)。我們還假設(shè)錢幣記錄儀控制分配器對(duì)象。那么對(duì)象之間的交 互序列可能如下所示:1 .顧客向機(jī)器前端的槽縫中投入錢幣。2 .顧客選擇所要購(gòu)買的飲料品種。3 .錢幣被轉(zhuǎn)送給記錄儀。4 .由于這是一個(gè)理想情況下的場(chǎng)景,假設(shè)有飲料存貨,則記錄儀控制 分配器將一罐飲料投遞到銷售機(jī)的前端。由于上述對(duì)應(yīng)的序列圖只覆蓋了用例“

20、Buy soda ”的一個(gè)場(chǎng)景(也就是一個(gè)實(shí)例),因此它被稱之為實(shí)例順序圖(instance sequence diagram) 。下圖顯示了對(duì)應(yīng)的實(shí)例順序圖。注意圖中只有簡(jiǎn)單消息,每個(gè)消息都引起控制流程從一個(gè)對(duì)象 轉(zhuǎn)移到另一個(gè)對(duì)象。對(duì)于“錢數(shù)不正確”場(chǎng)景:1 .記錄儀檢查顧客輸入的錢幣數(shù)星是否與所要購(gòu)買的飲料價(jià)格匹配。2 .如果輸入數(shù)量大于價(jià)格,則記錄儀計(jì)算兩者之間的差額并檢查機(jī)器 中存有的金額。3 .如果機(jī)器中剛好有能找給顧客的零錢,則記錄儀將零錢找給顧客,一切按正常情況繼續(xù)進(jìn)行。.如果沒有零錢找給顧客,則記錄儀退回顧客投入的錢幣,并顯示 個(gè)消息,提示顧客重新輸入數(shù)量正確的金額。5.如果顧

21、客所輸入的金額少于所要購(gòu)買的飲料價(jià)格,則記錄儀什么也不做,機(jī) 器等待顧客繼續(xù)投入錢幣。答:為了表示順序圖中的每個(gè)“ if ”分支,可以將“ if ”選擇條件寫在方括號(hào)中,放到對(duì)應(yīng)的消息箭頭上,即增加 input=price , change in reserve 和change not in reserve3個(gè)選擇條件。每個(gè)條件都引起消息中的控制流的一個(gè)“分支”,將消息分為多條路徑。不同的消息路徑最終可以到達(dá)同一個(gè)對(duì)象。為了表達(dá)這種關(guān)系,接收對(duì)象的 生命線 可分為多余路徑。在消息序列的某一點(diǎn)上,信息的分支可以合并,生命線的路徑 也是如此。下圖是加入了場(chǎng)景“錢數(shù)不正確”后的圖。9. 畫出自動(dòng)飲料

22、銷售機(jī)中,理想場(chǎng)景和“錢數(shù)不正確"的場(chǎng)景合并在一起的協(xié) 作圖。下面先來看看用例" Buy Soda(買飲料)”的最理想場(chǎng)景下的交互序列:1 .顧客向機(jī)器前端的槽縫中投入錢幣。2 .顧客做出一個(gè)選擇,選擇所要購(gòu)買的飲料品種。3 .錢幣被轉(zhuǎn)送給記錄儀。4 .由于這是一個(gè)理想情況下的場(chǎng)景,所以記錄儀控制分配器將一罐飲料投 遞到銷售機(jī)的前端。這個(gè)場(chǎng)景的協(xié)作圖如下圖所示。下面再看“錢數(shù)不正確”場(chǎng)景的協(xié)作圖。這個(gè)協(xié)作圖中要出現(xiàn)以下幾個(gè)條件:1 .用戶輸入的錢數(shù)超過了所要購(gòu)買的飲料價(jià)格。2 .飲料銷售機(jī)中備有可找給顧客的零錢。3 .飲料銷售機(jī)中沒有可找給顧客的零錢。在協(xié)作圖中條件的表示方

23、法與在順序圖中一樣,都是用方括號(hào)將條件表 達(dá)式括起來,放在消息名的前面。但是要注意的是消息的條件和序號(hào)之間的匹配 關(guān)系。條件和序號(hào)可能會(huì)使圖變得復(fù)雜,因此讓我們一步一步地來建立這個(gè)場(chǎng) 景的協(xié)作圖,這個(gè)圖的前提條件是用戶輸入的錢比所要購(gòu)買的飲料價(jià)格高,并且 機(jī)器中備有找給顧客的零錢。首先增加機(jī)器給顧客找零的消息,并為該消息附加 上條件。給顧客找零消息是檢查是否有找給顧客的零錢這一消息的直接后續(xù)消 息。為了表明兩條消息之間的這種關(guān)系,這兩個(gè)消息采用同一序號(hào),用序號(hào)后面 的點(diǎn)再接序號(hào)來區(qū)分它們。這叫做消息嵌套(nesting)。下圖說明了這個(gè)順序圖的細(xì)節(jié)。如果機(jī)器中沒有零錢可找會(huì)怎么樣呢?銷售機(jī)必須

24、顯示一條“無零錢”信息提示給顧客,并將顧客投入的錢幣退出,提示顧客投入零錢。實(shí)際上,這時(shí)交易就結(jié) 束了。要增加這個(gè)條件,就要增加控制流的分支。可以用嵌套序號(hào)表示這個(gè)控制流的序號(hào)。因?yàn)樗堑?2個(gè)被嵌套的消息,因此圓點(diǎn)后面的序號(hào)是2。最后,由于交易已經(jīng)結(jié)束,該消息上要附加構(gòu)造型transaction over來表明交易結(jié)束。此外還有另一個(gè)發(fā)送飲料的消息。下圖是這個(gè)場(chǎng)景的順序圖。10. 簡(jiǎn)述接口對(duì)于構(gòu)件的重要意義。答:只能通過構(gòu)件的接口來使用構(gòu)件中定義的操作。構(gòu)件可以讓它的接口被其他構(gòu)件使用,以使其他構(gòu)件可以使用這個(gè)構(gòu)件中定義的 操作。提供服務(wù)的構(gòu)件提供了導(dǎo)出接口,訪問服務(wù)的構(gòu)件使用了導(dǎo)入接口。1

25、1. 簡(jiǎn)述當(dāng)代面向?qū)ο筌浖こ痰奶攸c(diǎn)和優(yōu)點(diǎn)。允許各個(gè)階段進(jìn)行迭代各個(gè)階段沒有明顯的分界線允許后期得到的信息返回,使得早期的能 夠被修改,重用性高、維護(hù)性好、擴(kuò)展性高12. GRAPPLE過程中,需求收集段的各個(gè)動(dòng)作是什么?分別有什么工作產(chǎn)品?答:1發(fā)現(xiàn)業(yè)務(wù)過程工作產(chǎn)品是一個(gè)或者一組能夠捕獲業(yè)務(wù)過程中的步驟和判定點(diǎn)的活動(dòng)圖。2領(lǐng)域分析工作產(chǎn)品是一個(gè)高層的類圖和會(huì)談?dòng)涗洝?識(shí)別協(xié)作系統(tǒng)工作產(chǎn)品是新建的系統(tǒng)的部署圖4發(fā)現(xiàn)系統(tǒng)需求會(huì)議得到的工作產(chǎn)品是一個(gè)包圖。5將結(jié)果提交給客戶這個(gè)動(dòng)作的工作產(chǎn)品視不同的組織而不同。13. 簡(jiǎn)述類繼承和接口繼承的區(qū)別?我們應(yīng)該盡量使用哪一種?答:類繼承根據(jù)一個(gè)對(duì)象的實(shí)現(xiàn)定義了另一個(gè)對(duì)象的實(shí)現(xiàn)。簡(jiǎn)而言之,它是代碼和表示的共 享機(jī)制。然而,接口繼承描述了一個(gè)對(duì)象什么時(shí)候能被用來替代另一個(gè)對(duì)象。類繼承是派生中

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論