2023-2024學(xué)年《軟件設(shè)計(jì)與體系結(jié)構(gòu)》模擬試卷及答案解析_第1頁(yè)
2023-2024學(xué)年《軟件設(shè)計(jì)與體系結(jié)構(gòu)》模擬試卷及答案解析_第2頁(yè)
2023-2024學(xué)年《軟件設(shè)計(jì)與體系結(jié)構(gòu)》模擬試卷及答案解析_第3頁(yè)
2023-2024學(xué)年《軟件設(shè)計(jì)與體系結(jié)構(gòu)》模擬試卷及答案解析_第4頁(yè)
2023-2024學(xué)年《軟件設(shè)計(jì)與體系結(jié)構(gòu)》模擬試卷及答案解析_第5頁(yè)
已閱讀5頁(yè),還剩48頁(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)介

國(guó)家開(kāi)放大學(xué)

2023-2024學(xué)年《軟件設(shè)計(jì)與體系結(jié)構(gòu)》模擬試卷及答案解

一、課程介紹

《軟件設(shè)計(jì)與體系結(jié)構(gòu)》是“軟件工程”專(zhuān)業(yè)(本科)的一門(mén)統(tǒng)設(shè)必修課,

并作為其他專(zhuān)業(yè)的選修課。本課程的主要任務(wù)是講授軟件設(shè)計(jì)和軟件結(jié)構(gòu)方面的

基本思想、知識(shí)、原理和方法,包括軟件設(shè)計(jì)與軟件體系結(jié)構(gòu)在軟件工程中的地

位與作用、軟件設(shè)計(jì)基本方法與原則、統(tǒng)一建模涪言UML2.0、面向?qū)ο蟮能浖?/p>

設(shè)計(jì)方法、軟件體系結(jié)構(gòu)風(fēng)格與設(shè)計(jì)模式、基于構(gòu)件的軟件體系結(jié)構(gòu)、軟件體系

結(jié)構(gòu)評(píng)估、軟件設(shè)計(jì)的進(jìn)化等內(nèi)容。

本課程的教學(xué)目的是使學(xué)生在軟件工程思想的基礎(chǔ)上,掌握軟件體系結(jié)構(gòu)相

關(guān)知識(shí)、原理和各種類(lèi)型設(shè)計(jì)模式的基本結(jié)構(gòu),對(duì)現(xiàn)有軟件體系結(jié)構(gòu)有比較深入

的理解,能夠從系統(tǒng)結(jié)構(gòu)角度分析現(xiàn)有軟件系統(tǒng),能夠運(yùn)用具體的軟件設(shè)計(jì)方法

解決實(shí)際的軟件工程問(wèn)題,并能利用所學(xué)到的軟作系統(tǒng)結(jié)構(gòu)知識(shí)高效地設(shè)計(jì)軟件

系統(tǒng),為從事大型復(fù)雜軟件開(kāi)發(fā)打下良好的基礎(chǔ)。

二、考核說(shuō)明

1.考核對(duì)象

國(guó)家開(kāi)放大學(xué)軟件工程專(zhuān)業(yè)(本科)學(xué)生。

2.啟用時(shí)間

2020年秋季學(xué)期。

第1頁(yè)共54頁(yè)

3.考核目標(biāo)

通過(guò)考核使學(xué)生在軟件工程思想的基礎(chǔ)上,掌握軟件體系結(jié)構(gòu)相關(guān)知識(shí)、原

理和各種類(lèi)型設(shè)計(jì)模式的基本結(jié)構(gòu),對(duì)現(xiàn)有軟件體系結(jié)構(gòu)有比較深入的理解,能

夠從系統(tǒng)結(jié)構(gòu)角度分析現(xiàn)有軟件系統(tǒng),能夠運(yùn)用具體的軟件設(shè)計(jì)方法解決實(shí)際的

軟件工程問(wèn)題,并能利用所學(xué)到的軟件系統(tǒng)結(jié)構(gòu)知識(shí)高效地設(shè)計(jì)軟件系統(tǒng),為從

事大型復(fù)雜軟件開(kāi)發(fā)打下良好的基礎(chǔ)。

4.考核依據(jù)

本課程考核說(shuō)明是依據(jù)國(guó)家開(kāi)放大學(xué)“軟件設(shè)計(jì)與體系結(jié)構(gòu)”課程教學(xué)大綱、

文字教材《軟件設(shè)計(jì)與體系結(jié)構(gòu)》(高等教育出版社2017年12月第2版)制定

的。本課程考核說(shuō)明是課程考核命題的基本依據(jù)。

5.考核方式及計(jì)分方法

本課程考核采用形成性考核與終結(jié)性考核相結(jié)合的方式。形成性考核占課程

綜合成績(jī)的30%,終結(jié)性考核占課程綜合成績(jī)的7()%。課程考核成績(jī)統(tǒng)一采用百

分制,即形成性考核、終結(jié)性考核、課程綜合成饋均采用百分制。

課程綜合成績(jī)達(dá)到60分及以上(及格),可獲得本課程相應(yīng)學(xué)分。

考核方式相關(guān)信息以國(guó)家開(kāi)放大學(xué)當(dāng)學(xué)期發(fā)布的考試安排文件為準(zhǔn)。

6.終結(jié)性考核

(1)考核目的

終結(jié)性考核是在形成性考核的基礎(chǔ)上,對(duì)學(xué)生學(xué)習(xí)情況和學(xué)習(xí)效果進(jìn)行的一

次全面檢測(cè)。

(2)命題原則

第一,本課程的考試命題嚴(yán)格控制在教學(xué)大綱規(guī)定的教學(xué)內(nèi)容和考核要求的

第2頁(yè)共54頁(yè)

范圍之內(nèi)。

第二,按掌握、理解、了解三個(gè)層次命題。

第三,每份試卷所考的內(nèi)容,覆蓋本課程教材所學(xué)內(nèi)容的70%以上章節(jié)。

第四,試題難度適中。一般來(lái)講,可分為容易、適中、較難三個(gè)程度,所占

比例大致為:容易占<)%,適中占40%,較難占20%o

(3)考核手段

網(wǎng)考

(4)考核方式

閉卷

(5)考核時(shí)限

90分鐘

(6)每套試卷的試題類(lèi)型、數(shù)量及分值

a)單項(xiàng)選擇題:12道題。

b)多項(xiàng)選擇題:10道題。

c)簡(jiǎn)答題:3道題。

d)應(yīng)用題:0(考題不包含應(yīng)用題)

試卷試題數(shù)合計(jì)25道題;試卷總分?jǐn)?shù)100分。

三、模擬題

(一)單選題

1.關(guān)于瀑布模型的描述,下面不正確的是()o

[Al瀑布模型的核心思想是按工序?qū)?wèn)題化簡(jiǎn),將功能的實(shí)現(xiàn)與設(shè)計(jì)分開(kāi),便

第3頁(yè)共54頁(yè)

[B.]對(duì)可選方案和約束條件的強(qiáng)調(diào)既有利于已有軟件的重用,也有助于把軟件

質(zhì)量作為軟件開(kāi)發(fā)的目標(biāo)

[C1過(guò)多的迭代次數(shù)會(huì)增加開(kāi)發(fā)成本,延遲提交時(shí)間

[D]增加了過(guò)多測(cè)試或測(cè)試不足所帶來(lái)的風(fēng)險(xiǎn)

【答案】B

4.關(guān)于增量模型,下面不正確的是()o

[Al增量模型的各個(gè)構(gòu)件是一次性并入已有的軟件體系結(jié)構(gòu),因此不需要軟件

具備開(kāi)放式的體系結(jié)構(gòu)

[B.]作為瀑布模型和快速原型模型的綜合,能在較短的時(shí)間內(nèi)向用戶提交可完

成部分工作的產(chǎn)品

[C1將待開(kāi)發(fā)的軟件系統(tǒng)模塊化,可以分批次地提交軟件產(chǎn)品,使用戶可以及

時(shí)了解軟件項(xiàng)目的進(jìn)展

[D]以組件為單位進(jìn)行開(kāi)發(fā)降低了軟件開(kāi)發(fā)的風(fēng)險(xiǎn)。一個(gè)開(kāi)發(fā)周期內(nèi)的錯(cuò)誤不

會(huì)影響到整個(gè)軟件系統(tǒng)的開(kāi)發(fā)

【答案】A

5.以下哪項(xiàng)不屬于軟件工程的三要素()。

[AJ方法

[B.]工具

[C1過(guò)程

[D.]質(zhì)量

第5頁(yè)共54頁(yè)

【答案】D

6.關(guān)于軟件工程中結(jié)構(gòu)化方法的設(shè)計(jì)原則,以下描述錯(cuò)誤的是()o

[AJ每個(gè)模塊執(zhí)行一個(gè)功能,每個(gè)模塊只有一個(gè)入口和一個(gè)出口

[B.]每個(gè)模塊由過(guò)程語(yǔ)句或函數(shù)方式等歸其上級(jí)模塊調(diào)用

[C1應(yīng)當(dāng)構(gòu)造內(nèi)部聯(lián)系緊密的模塊,降低模塊間的聯(lián)系

[D]結(jié)構(gòu)化設(shè)計(jì)采住自下而上的模塊化設(shè)計(jì)方法

【答案】D

7.以下哪項(xiàng)不是面向?qū)ο蠓椒ǖ闹饕卣鳎ǎ?/p>

[A]封裝性

[B.]繼承性

[CJ多態(tài)性

[D]適應(yīng)性

【答案】D

8.耦合是模塊之間依賴程度的度量。以下關(guān)于羯合的說(shuō)法,錯(cuò)誤的是()。

[A]如果兩模塊中任一個(gè)都不依賴于對(duì)方能獨(dú)立工作,則稱(chēng)這兩模塊為非直接

耦合

[B.]如果兩模塊都與同一個(gè)數(shù)據(jù)結(jié)構(gòu)有關(guān),則稱(chēng)這兩個(gè)模塊為特征耦合

[C]當(dāng)若干模塊均與同一個(gè)外部環(huán)境關(guān)聯(lián),它們之間存在內(nèi)容耦合

[D]當(dāng)若干模塊通過(guò)全局的數(shù)據(jù)環(huán)境相互作用時(shí),它們之間存在公共耦合

第6頁(yè)共54頁(yè)

【答案】C

9.關(guān)于軟件體系結(jié)構(gòu)核心模型的組成元素,以下說(shuō)法錯(cuò)誤的是()o

[AJ連接件用來(lái)表示構(gòu)件之間的交互

[B.]配置用來(lái)表示構(gòu)件和連接件的拓?fù)溥壿嫼图s束

[C1構(gòu)件作為封裝實(shí)體,不需要借助其接口即可與外部環(huán)境交互

[D]構(gòu)件用來(lái)表示系統(tǒng)中主要的計(jì)算元素和數(shù)據(jù)存儲(chǔ)

【答案】C

10.關(guān)于軟件體系結(jié)閡描述語(yǔ)言,以下說(shuō)法錯(cuò)誤的是()。

[A]作為一種形式化語(yǔ)言,它為軟件系統(tǒng)的概念體系結(jié)構(gòu)建模提供了具體語(yǔ)法

和概念框架

[B.]基于底層語(yǔ)義的工具為體系結(jié)構(gòu)的表示、分析、進(jìn)化、細(xì)化、設(shè)計(jì)過(guò)程等

提供支持

[C1軟件體系結(jié)構(gòu)描述語(yǔ)言的三個(gè)基本元素包括構(gòu)件、連接件、體系結(jié)構(gòu)配置

[D]編程語(yǔ)言、面向?qū)ο蟮慕7?hào)、形式化說(shuō)明語(yǔ)言均屬于軟件體系結(jié)構(gòu)描

述語(yǔ)言

【答案】D

11.關(guān)于調(diào)用/返回風(fēng)格的體系結(jié)構(gòu)中的主-子程序體系結(jié)構(gòu)風(fēng)格,以下說(shuō)法錯(cuò)

誤的是()。

[A1由于單線程控制,計(jì)算的順序得以保障

[B.]有用的計(jì)算結(jié)果在同一時(shí)刻會(huì)產(chǎn)生多個(gè)

第7頁(yè)共54頁(yè)

【C.】單線程的控制可以直接由程序設(shè)計(jì)語(yǔ)言來(lái)支持

[D]子程序的正確性與它調(diào)用的子程序的正確畦有關(guān)

【答案】B

12.關(guān)于調(diào)用/返回風(fēng)格的體系結(jié)構(gòu)中的分層體系結(jié)構(gòu)風(fēng)格,以下說(shuō)法錯(cuò)誤的是

()。

[A1支持基于抽象程度遞增的系統(tǒng)設(shè)計(jì),使得設(shè)計(jì)者可以把復(fù)雜系統(tǒng)按遞增的

步驟進(jìn)行分解

[B.]支持功能增強(qiáng),每一層至多和相鄰的上下層交互,因此功能的改變最多影

響相鄰的上下層

[C1每個(gè)系統(tǒng)都可以很容易地劃分為分層體系結(jié)構(gòu)

[1)1支持復(fù)用,只要提供的服務(wù)接口定義不變,同一層的不同實(shí)現(xiàn)可以交換使

【答案】C

13.在進(jìn)行軟件設(shè)計(jì)過(guò)程中,以下關(guān)于“逐步求精”與“抽象”的說(shuō)法,錯(cuò)誤的

是()。

[A1過(guò)程抽象是把完成一個(gè)特定功能的動(dòng)作序列抽象為一個(gè)過(guò)程名和參數(shù)表,

以后通過(guò)指定過(guò)程名和實(shí)際參數(shù)調(diào)用此過(guò)程

[B.]數(shù)據(jù)抽象是把一個(gè)數(shù)據(jù)對(duì)象的定義抽象為一個(gè)數(shù)據(jù)類(lèi)型名,用此類(lèi)型名可

定義多個(gè)具有相同性質(zhì)的數(shù)據(jù)對(duì)象

[C]逐步求精的主要思想是,針對(duì)某個(gè)功能的宏觀描述用逐步求精的方法不斷

第8頁(yè)共54頁(yè)

地分解,逐步確立過(guò)程細(xì)節(jié),直至該功能用程序話言描述的算法實(shí)現(xiàn)為止

[D]逐步求精的每一步是用更為簡(jiǎn)單的描述代替上一層次的描述

【答案】D

14.信息隱藏是使模決化開(kāi)發(fā)活動(dòng)更加簡(jiǎn)單的重要因素。以下關(guān)于信息隱藏的

說(shuō)法錯(cuò)誤的是()o

[Al為達(dá)到信息隱藏的目的,模塊所含信息對(duì)于那些不需要這些信息的模塊不

可訪問(wèn)

[B.]為達(dá)到信息隱藏的目的,每個(gè)模塊只完成一個(gè)相對(duì)獨(dú)立的特定功能

[C1為達(dá)到信息隱藏的目的,每個(gè)模塊可與其他模塊共同完成特定功能

[1>]為達(dá)到信息隱藏的目的,模塊之間僅僅交換那些為完成系統(tǒng)功能必須交換

的信息

【答案】C

15.內(nèi)聚是一個(gè)模塊內(nèi)部各成分之間關(guān)聯(lián)程度的度量。以下哪項(xiàng)不屬于低等級(jí)

內(nèi)聚()o

[Al偶然性內(nèi)聚

[B.]邏輯性內(nèi)聚

[C]時(shí)序內(nèi)聚

[D1過(guò)程性內(nèi)聚

【答案】D

16.耦合是模塊之間依賴程度的度量。以下關(guān)于耦合的說(shuō)法,錯(cuò)誤的是()o

第9頁(yè)共54頁(yè)

[A]如果兩模塊中任一個(gè)需依賴對(duì)方才能工作,則稱(chēng)這兩模塊為非直接耦合

[B.]如果兩模塊間通過(guò)參數(shù)交換信息,而信息僅限于數(shù)據(jù),則稱(chēng)這兩模塊為數(shù)

據(jù)耦合

[C1若兩個(gè)模塊傳遞的信息中含有控制信息,則稱(chēng)這兩模塊耦合度為控制耦合

[0]當(dāng)一個(gè)模塊使用另一模塊內(nèi)部的數(shù)據(jù)或控制信息,或一個(gè)模塊直接轉(zhuǎn)移到

另一模塊內(nèi)部,則稱(chēng)這兩模塊為內(nèi)容耦合

【答案】A

17.以下關(guān)于軟件結(jié)溝評(píng)價(jià)的說(shuō)法,錯(cuò)誤的是()o

[Al一個(gè)軟件的深度說(shuō)明其控制的層數(shù)

[B.]一個(gè)軟件的寬度說(shuō)明其控制的層數(shù)

[C1一個(gè)模塊的扇出率指該模塊直接控制的其他模塊數(shù)

[DJ一個(gè)模塊的扇入率指能直接控制該模塊的噗塊數(shù)

【答案】B

18.以下關(guān)于軟件結(jié)為評(píng)價(jià)的說(shuō)法,錯(cuò)誤的是()o

[Al一個(gè)軟件的深度說(shuō)明其控制的層數(shù)

[R]一個(gè)軟件的寬度說(shuō)明其控制的跨度

[CJ一個(gè)模塊的扇出率指該模塊直接控制的其他模塊數(shù)

[OJ一個(gè)模塊的扇入率指該模塊直接控制的其他模塊數(shù)

【答案】D

第10頁(yè)共54頁(yè)

19.關(guān)于用戶界面分圻和設(shè)計(jì)模型,以下說(shuō)法錯(cuò)誤的是()o

[Al用戶模型給出了系統(tǒng)用戶的介紹

[B.]設(shè)計(jì)模型用以理解潛在的系統(tǒng)用戶

[C1心智模型是用戶對(duì)所使用系統(tǒng)的想象

實(shí)現(xiàn)模型結(jié)合了基于計(jì)算機(jī)的系統(tǒng)外部顯示以及所有描述系統(tǒng)語(yǔ)法和語(yǔ)義

的信息

【答案】B

20.以下哪項(xiàng)不屬于常用的用戶界面原型構(gòu)建方式()。

【A.】腳本驅(qū)動(dòng)方式

[B.]可視化的程序語(yǔ)言

[C1手工勾畫(huà)

[D]基于因特網(wǎng)的原型

【答案】D

21.在UML2.0建模機(jī)制中,()屬于結(jié)構(gòu)建模。

[A]活動(dòng)圖

[R]類(lèi)圖

[C1順序圖

[D]通信圖

【答案】B

第頁(yè)共54頁(yè)

22.在UML2.0建模機(jī)制中,()既屬于行為建模又可以歸屬為交互圖。

[AJ活動(dòng)圖

[B.]用例圖

[C]順序圖

[D.]狀態(tài)圖

【答案】C

23.在UML2.0類(lèi)圖中,關(guān)于“關(guān)聯(lián)關(guān)系”描述錯(cuò)誤的是()o

[Al關(guān)聯(lián)關(guān)系可以具有方向性

[B.]關(guān)聯(lián)未必是雙向的,必須用“有向連線”表示

[C]在關(guān)聯(lián)關(guān)系上可以寫(xiě)明關(guān)聯(lián)名稱(chēng),每個(gè)類(lèi)在關(guān)聯(lián)中的角色以及兩個(gè)類(lèi)的實(shí)

例在實(shí)際關(guān)聯(lián)中的數(shù)量對(duì)應(yīng)關(guān)系

[DJ在關(guān)聯(lián)關(guān)系表示中,用星號(hào)表示多個(gè),用n表示n個(gè)實(shí)例,n..m表

示數(shù)量的范圍

【答案】B

24.在UML2.0類(lèi)圖中,下面哪個(gè)符號(hào)表示泛化(繼承)關(guān)系()。

(A1

[C]

[D]----------O

第12頁(yè)共54頁(yè)

【答案】B

25.面向?qū)ο蟮脑O(shè)計(jì)任務(wù)不包括以下哪個(gè)內(nèi)容()o

[A]系統(tǒng)整體設(shè)計(jì)

[B.]對(duì)象設(shè)計(jì)

[C1功能設(shè)計(jì)

[D]在消息設(shè)計(jì)

【答案】C

26.面向?qū)ο蟮脑O(shè)計(jì)任務(wù)不包括以下哪個(gè)內(nèi)容()o

[A]系統(tǒng)整體設(shè)計(jì)

[B.]對(duì)象設(shè)計(jì)

[C1功能設(shè)計(jì)

[DJ在消息設(shè)計(jì)

【答案】C

27.關(guān)于面向?qū)ο蟪绦蛟O(shè)計(jì)的特征,以下說(shuō)法錯(cuò)誤的是()。

[A1每個(gè)對(duì)象有自己的惟一標(biāo)識(shí),以便區(qū)別屬于同一個(gè)類(lèi)的不同對(duì)象

[R]所有待處理的內(nèi)容都表示成對(duì)象

[C1對(duì)象之間依靠相互發(fā)送信息或響應(yīng)信息實(shí)現(xiàn)通信

【D.】每個(gè)對(duì)象的標(biāo)識(shí)不是唯一的

【答案】D

第13頁(yè)共54頁(yè)

28.關(guān)于面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念,以下說(shuō)法錯(cuò)誤的是()o

[Al抽象是解決任何問(wèn)題所采用的基本策略,是人類(lèi)認(rèn)識(shí)世界的本能形式

【B.】封裝是指將現(xiàn)實(shí)世界中某個(gè)客體的屬性與行為聚集在一個(gè)邏輯單元內(nèi)部的

機(jī)制

[C]對(duì)象是用來(lái)描述現(xiàn)實(shí)世界中客體的部件,是面向?qū)ο筌浖到y(tǒng)在運(yùn)行時(shí)的

基本單位

[D]對(duì)象是面向?qū)ο蟪绦虻奈┮粯?gòu)造單位,也是抽象數(shù)據(jù)類(lèi)型的具體實(shí)現(xiàn)

【答案】D

29.關(guān)于面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念,以下說(shuō)法錯(cuò)誤的是()o

[AJ抽象是指從許多事物中,舍棄本質(zhì)屬性,抽取個(gè)別的、非本質(zhì)的屬性的過(guò)

[B.]消息是一個(gè)對(duì)象要求另一個(gè)對(duì)象實(shí)施某項(xiàng)操作的請(qǐng)求

[C1繼承是類(lèi)之間的一種常見(jiàn)關(guān)系,它為共享數(shù)據(jù)和操作提供了良好的機(jī)制

[D1不同的類(lèi)對(duì)象收到同一個(gè)消息可以產(chǎn)生完全不同的響應(yīng)效果,這種現(xiàn)象叫

做多態(tài)

【答案】A

30.在設(shè)計(jì)模式中,()的核心思想是:定義一個(gè)用于創(chuàng)建產(chǎn)品對(duì)象的工廠

接口,由子類(lèi)決定生產(chǎn)什么產(chǎn)品。

[A1工廠方法

[B.]單例

第14頁(yè)共54頁(yè)

[C]組合

[D]代理

【答案】A

31.在設(shè)計(jì)模式中,()的核心思想是,一個(gè)類(lèi)必須自行創(chuàng)建一個(gè)實(shí)例且

僅能有一個(gè)實(shí)例,并向系統(tǒng)提供該實(shí)例。完成上述行為的操作是將類(lèi)的構(gòu)造方法

聲明為私有類(lèi)型,就可以防止用戶利用類(lèi)的構(gòu)造方法創(chuàng)建出多個(gè)實(shí)例。

[A1工廠方法

[B.]單例

[C1組合

[D.1代理

【答案】B

32.在設(shè)計(jì)模式中,()以樹(shù)形結(jié)構(gòu)將多個(gè)對(duì)象組合起來(lái),用來(lái)表示“整

體-部分”的層次結(jié)構(gòu),其核心思想是通過(guò)定義抽象構(gòu)件類(lèi),既可用來(lái)表示葉子,

又可用來(lái)表示容器,用戶針對(duì)抽象構(gòu)件類(lèi)進(jìn)行編程,能夠?qū)θ~子和容器進(jìn)行容易

處理。

[A1工廠方法

[B.]單例

[C]組合

[DJ代理

【答案】C

第15頁(yè)共54頁(yè)

33.在設(shè)計(jì)模式中,()的核心思想是,引入一個(gè)新的代理對(duì)象,該對(duì)象

在客戶端對(duì)象和目標(biāo)對(duì)象之間起到橋梁的作用,它隱藏客戶不能看到的內(nèi)容和服

務(wù)或者為客戶添加需要的額外服務(wù)。

[A1工廠方法

[BJ單例

[C]組合

[D1代理

【答案】D

34.在設(shè)計(jì)模式中,()將一個(gè)類(lèi)的接口轉(zhuǎn)換為用戶希望的另一個(gè)接口,

解決了一些類(lèi)之間由于接口不兼容而無(wú)法一起工作的問(wèn)題。

[A]適配器

[B.]橋接

[C1享元

[D]外觀

【答案】A

35.在設(shè)計(jì)模式中,()的核心思想是,通過(guò)將列表對(duì)象中對(duì)列表的訪問(wèn)和

遍歷從中抽離出來(lái)并放入到一個(gè)迭代器對(duì)象中,提供一種訪問(wèn)聚合對(duì)象中所有元

素的方法,而不暴露該對(duì)象的內(nèi)部表示。

[A1工廠方法

第16頁(yè)共54頁(yè)

[B.]迭代器

[Cl命令

[D]代理

【答案】B

36.在設(shè)計(jì)模式中,()的核心思想是,對(duì)象是對(duì)數(shù)據(jù)和函數(shù)的封裝,當(dāng)一

個(gè)類(lèi)包含了太多的函教(或稱(chēng)操作)時(shí),傾向于將其拆分為多個(gè)相互協(xié)作的類(lèi),

每個(gè)協(xié)作類(lèi)描述一部分行為,包含原來(lái)的一部分?jǐn)?shù)據(jù)和函數(shù),但這種拆分有一個(gè)

副作用,因?yàn)楦鲄f(xié)作對(duì)象很可能會(huì)共享部分?jǐn)?shù)據(jù),所以需要維護(hù)相關(guān)對(duì)象在數(shù)據(jù)

上的一致性。通過(guò)使用Observer模式,能夠?yàn)橄嚓P(guān)對(duì)象制定一個(gè)交互協(xié)議,專(zhuān)門(mén)

用作數(shù)據(jù)的一致性維護(hù)。

[AJ工廠方法

[B.]迭代器

[C]觀察者

[D]代理

【答案】C

37.在設(shè)計(jì)模式中,()的核心思想是,通過(guò)定義一些用來(lái)封裝不同算法的

相互獨(dú)立的類(lèi),且每一個(gè)類(lèi)都封裝了一個(gè)具體的算法并將其逐一封裝起來(lái),使得

它們之間能夠互相替換。

[A1策略

[B.]迭代器

第17頁(yè)共54頁(yè)

[C]組合

[D]代理

【答案】A

38.在設(shè)計(jì)模式中,()的核心思想是,在不破壞封裝性的前提下,捕獲

一個(gè)對(duì)象的內(nèi)部狀態(tài),并在該對(duì)象之外保存這個(gè)狀態(tài),便于日后將對(duì)象復(fù)原到先

前保存的狀態(tài)。

[A1策略

【B.】備忘錄

[C1組合

[D.1代理

【答案】B

39.在設(shè)計(jì)模式中,()表示一個(gè)作用于某個(gè)對(duì)象結(jié)構(gòu)中各元素的操作,

它使我們能夠無(wú)須改變各元素的類(lèi)而定義作用在這些元素的新操作,由兩部分組

成:被訪問(wèn)元素和訪問(wèn)者。

[A.]適配器

[R]迭代器

[C]觀察者

[DJ訪問(wèn)者

【答案】D

第18頁(yè)共54頁(yè)

40.數(shù)據(jù)流圖就是用來(lái)刻畫(huà)數(shù)據(jù)流和轉(zhuǎn)換的信息系統(tǒng)建模技術(shù),它用簡(jiǎn)單的圖

形記號(hào)分別表示數(shù)據(jù)流、轉(zhuǎn)換、數(shù)據(jù)源以及外部實(shí)體,下面()是外部實(shí)體的

圖形記號(hào)。

[AlI——H

[D]

【答案】A

41.數(shù)據(jù)流圖就是用來(lái)刻畫(huà)數(shù)據(jù)流和轉(zhuǎn)換的信息系統(tǒng)建模技術(shù),它用簡(jiǎn)單的圖

形記號(hào)分別表示數(shù)據(jù)流、轉(zhuǎn)換、數(shù)據(jù)源以及外部實(shí)體,下面()是轉(zhuǎn)換的圖

形記號(hào)。

[AlI——H

[C1

[D1----------

【答案】B

第19頁(yè)共54頁(yè)

42.數(shù)據(jù)流圖就是用來(lái)刻畫(huà)數(shù)據(jù)流和轉(zhuǎn)換的信息系統(tǒng)建模技術(shù),它用簡(jiǎn)單的圖

形記號(hào)分別表示數(shù)據(jù)流、轉(zhuǎn)換、數(shù)據(jù)源以及外部實(shí)體,下面()是數(shù)據(jù)流的

圖形記號(hào)。

[AlI——H

[C1

[D1

【答案】C

43.數(shù)據(jù)流圖就是用來(lái)刻畫(huà)數(shù)據(jù)流和轉(zhuǎn)換的信息系統(tǒng)建模技術(shù),它用簡(jiǎn)單的圖

形記號(hào)分別表示數(shù)據(jù)流、轉(zhuǎn)換、數(shù)據(jù)源以及外部實(shí)體,下面()是數(shù)據(jù)源的圖

形記號(hào)。

[AlI——H

[B.]

[C]

[D1

第20頁(yè)共54頁(yè)

【答案】D

44.在軟件進(jìn)化策略選擇方面,關(guān)于遺留系統(tǒng)的評(píng)價(jià)結(jié)果以下說(shuō)法錯(cuò)誤的是

()

【A.】對(duì)于低業(yè)務(wù)價(jià)值、低系統(tǒng)質(zhì)量的系統(tǒng),因使用這些系統(tǒng)開(kāi)銷(xiāo)較小,只需對(duì)

其進(jìn)行常規(guī)維護(hù)

[B.]對(duì)于高業(yè)務(wù)價(jià)值、低系統(tǒng)質(zhì)量的系統(tǒng),它們對(duì)于業(yè)務(wù)來(lái)說(shuō)非常重要,不能

放棄;但因低質(zhì)量系統(tǒng)維護(hù)起來(lái)代價(jià)會(huì)比較大,應(yīng)該進(jìn)行進(jìn)化這類(lèi)系統(tǒng)來(lái)提高質(zhì)

[C1對(duì)于低業(yè)務(wù)價(jià)值、高系統(tǒng)質(zhì)量的系統(tǒng),它們對(duì)業(yè)務(wù)沒(méi)有太大貢獻(xiàn),但其維

護(hù)起來(lái)代價(jià)較小。若變更代價(jià)不大,可對(duì)這類(lèi)系統(tǒng)進(jìn)行常規(guī)的維護(hù);若需要變更

且代價(jià)高昂,則應(yīng)放棄這些系統(tǒng)

【D.】對(duì)于高業(yè)務(wù)價(jià)值、高系統(tǒng)質(zhì)量的系統(tǒng),由于業(yè)務(wù)的需要它們必須要繼續(xù)使

用;同時(shí)它們有較高的質(zhì)量,所以不需要投入大量的資金來(lái)更新系統(tǒng),只需要進(jìn)

行常規(guī)維護(hù)

【答案】A

45.在軟件體系結(jié)構(gòu)的迭代過(guò)程中,()活動(dòng)是從文檔、代碼、專(zhuān)家等方面

獲取所有可能得到的軟件信息或設(shè)計(jì)要素

[A.1提取

[BJ分類(lèi)

[C1合并

第21頁(yè)共54頁(yè)

[D]融合

【答案】A

46.在軟件體系結(jié)構(gòu)的迭代過(guò)程中,()活動(dòng)是把提取出的信息按照不同視

點(diǎn)進(jìn)行分類(lèi);除了靜態(tài)和動(dòng)態(tài)視點(diǎn)的劃分方式外,還存在其他更具體的劃分。

[AJ提取

[B.]分類(lèi)

[C1合并

[D]融合

【答案】B

47.在軟件體系結(jié)構(gòu)的迭代過(guò)程中,()活動(dòng)是對(duì)分類(lèi)后每個(gè)視點(diǎn)中的信息

進(jìn)行分析和合并,形成一種系統(tǒng)、一致的方式來(lái)描述軟件關(guān)于該視點(diǎn)的特征。

[A]提取

[B.]分類(lèi)

[C1合并

[D]融合

【答案】C

48.在軟件體系結(jié)構(gòu)的迭代過(guò)程中,()活動(dòng)是把分別合并后的各個(gè)視點(diǎn)進(jìn)

行融合,檢查各個(gè)視點(diǎn)之間的一致性,并把這些視點(diǎn)統(tǒng)一稱(chēng)為一個(gè)整體的軟件體

系結(jié)構(gòu)描述。

第22頁(yè)共54頁(yè)

[A]提取

[B.]分類(lèi)

[Cl合并

[D]融合

【答案】D

49.重構(gòu)就是在不改變軟件系統(tǒng)外部行為的前提下,改善它的內(nèi)部結(jié)構(gòu),提高

其可理解性,降低其修改成本。其中,()的目標(biāo)是生成具有相同功能、但

質(zhì)量比原來(lái)程序更高的代碼。

[A]文本重構(gòu)

[B.]邏輯重構(gòu)

[C1代碼重構(gòu)

【D.】數(shù)據(jù)重構(gòu)

【答案】C

50.重構(gòu)就是在不改變軟件系統(tǒng)外部行為的前提下,改善它的內(nèi)部結(jié)構(gòu),提高

其可理解性,降低其修改成本。其中,()從一種格式到另一種格式的轉(zhuǎn)換,

以實(shí)現(xiàn)空間數(shù)據(jù)在結(jié)構(gòu)、格式、類(lèi)型上的統(tǒng)一,以及多源和異構(gòu)數(shù)據(jù)的聯(lián)接與融

合。

[A.1文本重構(gòu)

[BJ邏輯重構(gòu)

[C1代碼重構(gòu)

第23頁(yè)共54頁(yè)

[Dl數(shù)據(jù)重構(gòu)

【答案】D

51.在軟件再工程過(guò)程模型中,()是對(duì)程序進(jìn)行分析,以便在比源代碼更

高的抽象層次上創(chuàng)建程序的某種表示的過(guò)程。其需要從現(xiàn)存的程序中抽取數(shù)據(jù)設(shè)

計(jì)、軟件體系結(jié)構(gòu)設(shè)計(jì)和過(guò)程設(shè)計(jì)等信息。

[A1庫(kù)存目錄分析

[B.]文檔重構(gòu)

[C]逆向工程

[D]代碼重構(gòu)

【答案】C

52.在軟件再工程過(guò)程模型中,()通過(guò)用重構(gòu)工具分析源代碼,標(biāo)注出和

結(jié)構(gòu)化程序設(shè)計(jì)概念相違背的部分,然后重構(gòu)有問(wèn)題的代碼,復(fù)審和測(cè)試生成的

重構(gòu)代碼以保證沒(méi)有弓入異常并更新代碼文檔。

[A.]逆向工程

[B.]正向工程

[C1數(shù)據(jù)重構(gòu)

[1>1代碼重構(gòu)

【答案】D

第24頁(yè)共54頁(yè)

第25頁(yè)共54頁(yè)

(二)多選題

1.為了開(kāi)發(fā)出低成本、高質(zhì)量的軟件產(chǎn)品,在軟件開(kāi)發(fā)過(guò)程中必須遵循哪些軟

件工程的原則()o

[Al采取固定的開(kāi)發(fā)模型,不考慮易變需求

[B.]采用適合的設(shè)計(jì)方法

[CJ提供高質(zhì)量的工程支持

[D.1重視開(kāi)發(fā)過(guò)程的管理

【答案】ABD

2.軟件生命周期包括()等階段。

[AJ計(jì)劃

[B1開(kāi)發(fā)

[C1測(cè)試

[DJ維護(hù)

【答案】ABD

3.瀑布模型的優(yōu)點(diǎn)主要包括()。

[AJ方便為項(xiàng)目提供了按階段劃分的檢查點(diǎn)

[B.]當(dāng)前一階段完成后,只需要去關(guān)注后續(xù)階段

第26頁(yè)共54頁(yè)

[C]瀑布模型提供了一個(gè)模板,該模板使得分析、設(shè)計(jì)、編碼、測(cè)試和支持的

方法可以在該模板下有一個(gè)共同的指導(dǎo)

[D]瀑布模型的各個(gè)階段劃分完全固定,階段之間產(chǎn)生大量的文檔,極大地增

加了工作量

【答案】ABC

4.瀑布模型的缺點(diǎn)主要包括()o

[AJ由于開(kāi)發(fā)模型是線性的,凡后一階段出現(xiàn)的問(wèn)題需要通過(guò)前一階段的重新

確認(rèn)來(lái)解決

【B.】模型缺乏靈活性,無(wú)法解決需求模糊或需求經(jīng)常變動(dòng)的問(wèn)題

[C]最終產(chǎn)品往往反映用戶的初始需求而不是最終需求

[1)1瀑布模型的各個(gè)階段劃分完全固定,階段之間產(chǎn)生大量的文檔,極大地增

加了工作量

【答案】ABCD

5.快速原型模型的優(yōu)點(diǎn)主要包括()o

【A.】克服瀑布模型的缺點(diǎn),減少因軟件需求不明確帶來(lái)的開(kāi)發(fā)風(fēng)險(xiǎn)

[R]適合預(yù)先不能確切定義需求的軟件系統(tǒng)的開(kāi)發(fā)

【CJ快速原型模型使總的開(kāi)發(fā)費(fèi)用降低,時(shí)間縮短

[0.1快速原型模型所選用的開(kāi)發(fā)技術(shù)和工具不一定符合主流的發(fā)展

【答案】ABC

第27頁(yè)共54頁(yè)

6.快速原型模型的缺點(diǎn)主要包括()o

[Al快速原型模型所選用的開(kāi)發(fā)技術(shù)和工具不一定符合主流的發(fā)展

【B.】快速原型模型建立起來(lái)的系統(tǒng)結(jié)構(gòu)加上連續(xù)的修改可能會(huì)導(dǎo)致產(chǎn)品質(zhì)量低

【C.】快速原型模型使用前提是要有展示性的產(chǎn)品原型,一定程度上可能會(huì)限制

開(kāi)發(fā)人員的創(chuàng)新

【D.】用戶不知道快速原型模型是臨時(shí)搭起來(lái)的,也不知道為了使其盡快運(yùn)行還

沒(méi)考慮軟件的總體質(zhì)量或今后的可維護(hù)性問(wèn)題

【答案】ABCD

7.從審視角度看,關(guān)于軟件體系結(jié)構(gòu)的定義,說(shuō)法正確的是()。

[A1從概念角度,軟件體系結(jié)構(gòu)描述系統(tǒng)的主要構(gòu)件以及它們之間的關(guān)系

[B.]從模塊角度,軟件體系結(jié)構(gòu)包含功能分解與層次結(jié)構(gòu)

[C1從運(yùn)行角度,軟件體系結(jié)構(gòu)描述了一個(gè)系統(tǒng)的動(dòng)態(tài)結(jié)構(gòu)

[D]從代碼角度,軟件體系結(jié)構(gòu)描述了各種代碼和庫(kù)函數(shù)在開(kāi)發(fā)環(huán)境中的組織

【答案】ABCD

8.關(guān)于刻畫(huà)軟件體系結(jié)構(gòu)的場(chǎng)景視圖模型,其缺陷主要包括()。

[AJ不能充分表達(dá)系統(tǒng)的體系結(jié)構(gòu)風(fēng)格

[B.]不能充分體現(xiàn)數(shù)據(jù)

[C]不能充分體現(xiàn)系統(tǒng)要素之間關(guān)系

[D]實(shí)現(xiàn)體系結(jié)構(gòu)模型時(shí),缺乏構(gòu)造視圖和建立視圖之間關(guān)系的指導(dǎo)信息

第28頁(yè)共54頁(yè)

【答案】ABCD

9.軟件體系結(jié)構(gòu)的描述方法主要包括()。

(A1圖形表達(dá)工具

[B.]模塊內(nèi)連接語(yǔ)言

[C]基于軟構(gòu)件的系統(tǒng)描述語(yǔ)言

[D.]體系結(jié)構(gòu)描述語(yǔ)言

【答案】ABCD

10.軟件體系結(jié)構(gòu)描述語(yǔ)言的三個(gè)基本元素是()。

[A1構(gòu)件

[B.]連接件

【C.】體系結(jié)構(gòu)配置

[D.1角色

【答案】ABC

11.軟件體系結(jié)構(gòu)的設(shè)計(jì)原則主要包括()。

[A1合適性

[B.]結(jié)構(gòu)穩(wěn)定性

[CJ可擴(kuò)展性

[DJ可復(fù)用性

【答案】ABCD

第29頁(yè)共54頁(yè)

12.軟件體系結(jié)構(gòu)風(fēng)格是描述某一特定應(yīng)用領(lǐng)域中系統(tǒng)組織方式的慣用模式,

其關(guān)鍵要素包括()。

[A]提供一個(gè)詞匯表

[B.]定義一套配置規(guī)則

[C]定義一套語(yǔ)義解釋原則

[D]定義對(duì)基于這種風(fēng)格的系統(tǒng)所進(jìn)行的分析

【答案】ABCD

13.以下關(guān)于軟件設(shè)計(jì)可能對(duì)最終軟件產(chǎn)品質(zhì)量產(chǎn)生的影響,正確的是()。

[A]正確性:軟件設(shè)計(jì)中如果存在錯(cuò)誤,會(huì)導(dǎo)致軟件實(shí)現(xiàn)的錯(cuò)誤,影響最終軟

件的正確性

[B.]可靠性:如果軟件設(shè)計(jì)中錯(cuò)誤、缺陷較多,那么會(huì)導(dǎo)致最終軟件的可靠性

降低

[C1運(yùn)行效率:軟件運(yùn)行的效率可能會(huì)受到設(shè)計(jì)中選擇的算法、數(shù)據(jù)結(jié)構(gòu)的影

[D1可移植性:良好的設(shè)計(jì)使得與運(yùn)行平臺(tái)和環(huán)境相關(guān)的代碼最小化,并進(jìn)行

良好的封裝和接口定義,這使得軟件移植更加容易

【答案】ABCD

14.以下關(guān)于軟件設(shè)計(jì)可能對(duì)最終軟件產(chǎn)品質(zhì)量產(chǎn)生的影響,正確的是()o

[Al可靠性:如果軟件設(shè)計(jì)中錯(cuò)誤、缺陷較多,那么會(huì)導(dǎo)致最終軟件的可靠性

第30頁(yè)共54頁(yè)

降低

[B.]可維護(hù)性:軟件可能會(huì)因?yàn)榘l(fā)生錯(cuò)誤或環(huán)境變化而進(jìn)行維護(hù),具有良好結(jié)

構(gòu)的軟件設(shè)計(jì)會(huì)使得維護(hù)人員更容易理解軟件結(jié)構(gòu)

[C1可移植性:良好的設(shè)計(jì)使得與運(yùn)行平臺(tái)和環(huán)境相關(guān)的代碼最小化,并進(jìn)行

良好的封裝和接口定義,這使得軟件移植更加容易

[D]可復(fù)用性:由于軟件設(shè)計(jì)描述了軟件如何分解,子系統(tǒng)和模塊之間的接口

如何定義,因此對(duì)于軟件模塊的復(fù)用具有重要影響

【答案】ABCD

15.用戶界面設(shè)計(jì)基本原則包括()。

[A]用戶熟悉程度

[B.]一致性

[CJ使驚訝最小化

[D]用戶幫助

[E]可恢復(fù)性

[F1用戶多樣性

【答案】ABCDEF

16.用戶交互實(shí)質(zhì)上就是用戶向計(jì)算機(jī)系統(tǒng)發(fā)出命令和相應(yīng)的數(shù)據(jù)來(lái)完成相應(yīng)

的任務(wù)。用戶交互方式主要包括()。

[AJ直接操作

[B.]菜單選擇

第31頁(yè)共54頁(yè)

[C]表格填寫(xiě)

[D]命令語(yǔ)言

【答案】ABCD

17.常用的用戶界面原型的構(gòu)建方式包括()o

[AJ腳本驅(qū)動(dòng)方式

[B.]可視化的程序語(yǔ)言

[C.J手工勾畫(huà)

[D]基于因特網(wǎng)的原型

【答案】ABD

18.統(tǒng)一建模語(yǔ)言UML的目標(biāo)是定義一種通用建模語(yǔ)言并對(duì)這些建模語(yǔ)言做

出簡(jiǎn)單的說(shuō)明,供系統(tǒng)建模者理解與使用。其主要特點(diǎn)包括()。

[A]UML統(tǒng)一了各種方法對(duì)不同類(lèi)型的系統(tǒng)、不同開(kāi)發(fā)階段以及不同內(nèi)部概

念的各種觀點(diǎn),有效她消除了各種建模語(yǔ)言之間不必要的差異

【B.】UML建模能力比其它面向?qū)ο蠼7椒ǜ訌?qiáng)大,不僅適合于一般系統(tǒng)的

開(kāi)發(fā),還特別適用于對(duì)并行和分布式系統(tǒng)進(jìn)行建模

[ClUML是一個(gè)開(kāi)發(fā)過(guò)程

[1>1UML是一種建模語(yǔ)言

【答案】ABD

19.統(tǒng)一建模語(yǔ)言UML在表達(dá)能力、對(duì)新技術(shù)的包容能力和擴(kuò)展性等方面具備

第32頁(yè)共54頁(yè)

的優(yōu)勢(shì)包括()o

[Al提供了一種通用、表達(dá)能力強(qiáng)的可視化建模語(yǔ)言,用于描述應(yīng)用問(wèn)題的需

求模型、設(shè)計(jì)模型和實(shí)現(xiàn)模型

[B.]提供了對(duì)核心概念的擴(kuò)展機(jī)制,用戶可自行加入核心概念中沒(méi)有提供的概

念和符號(hào),可為特定應(yīng)用領(lǐng)域提出具體的概念、符號(hào)表示以及約束

[C1增強(qiáng)面向?qū)ο蠊ぞ咧g的相互可操作性,便于對(duì)不同系統(tǒng)進(jìn)行集成

[D]支持較高抽象層次開(kāi)發(fā)所需的各種概念,更于系統(tǒng)的重用

【答案】ABCD

20.在面向?qū)ο筌浖O(shè)計(jì)過(guò)程中,持久數(shù)據(jù)模型設(shè)計(jì)主要包括以下幾個(gè)步驟

()o

[Al確定設(shè)計(jì)模型中需要持久保存的類(lèi)的對(duì)象及其屬性,其中實(shí)體類(lèi)是主要關(guān)

注對(duì)象

[B.]確定持久存儲(chǔ)的數(shù)據(jù)之間的組織方式

[C1確定數(shù)據(jù)模型中的操作行為

[D1進(jìn)一步優(yōu)化持久數(shù)據(jù)操作的性能

【答案】ABCD

21.在面向?qū)ο筌浖O(shè)計(jì)過(guò)程中,部署模型設(shè)計(jì)需要考慮以下幾個(gè)要素()o

[A]最終開(kāi)發(fā)完成的軟件包括哪些制品形式

[BJ軟件運(yùn)行環(huán)境存在哪些類(lèi)型的物理節(jié)點(diǎn)

[C1不同節(jié)點(diǎn)之間的連接和通信形式是什么

第33頁(yè)共54頁(yè)

[D]軟件制品應(yīng)該如何在物理節(jié)點(diǎn)上進(jìn)行部署,即它們的部署映射關(guān)系

【答案】ABCD

22.在面向數(shù)據(jù)流的軟件設(shè)計(jì)過(guò)程中,數(shù)據(jù)對(duì)象的屬性包括()。

[A]物理屬性

[BJ命名性屬性

[C1描述性屬性

[D1引用性屬性

【答案】BCD

23.在實(shí)體關(guān)系圖進(jìn)行復(fù)雜數(shù)據(jù)建模過(guò)程中,為確保模型的一致性并消除數(shù)據(jù)

冗余,分析人員要掌握()。

【A.】數(shù)據(jù)對(duì)象的任何實(shí)例對(duì)每個(gè)屬性必須有且僅有一個(gè)屬性值

[B.]屬性是原子數(shù)據(jù)項(xiàng),不能包含內(nèi)部數(shù)據(jù)結(jié)構(gòu)

[C1如果數(shù)據(jù)對(duì)象的關(guān)鍵屬性多于一個(gè),那么其他的非關(guān)鍵屬性必須表示整個(gè)

數(shù)據(jù)對(duì)象而不是部分關(guān)鍵屬性的特征

[D1所有的非關(guān)鍵屬性既可以表示整個(gè)對(duì)象,也可以表示部分屬性的特征

【答案】ABC

24.數(shù)據(jù)流圖必須與璜述并組織數(shù)據(jù)條目的數(shù)據(jù)字典配套使用。通常,數(shù)據(jù)字

典中的每一條數(shù)據(jù)條目包含()o

[Al在數(shù)據(jù)流圖中標(biāo)識(shí)數(shù)據(jù)流、數(shù)據(jù)源或外部實(shí)體的名稱(chēng)與別名

第34頁(yè)共54頁(yè)

[B.]數(shù)據(jù)類(lèi)型

[Cl所有以它作為輸入流或輸出流的轉(zhuǎn)換列表

[D]如何使用該數(shù)據(jù)條目的簡(jiǎn)要說(shuō)明

【答案】ABCD

25.在面向?qū)ο蟮臄?shù)據(jù)模型設(shè)計(jì)中,持久數(shù)據(jù)模型設(shè)計(jì)主要包括以下幾個(gè)步驟

()o

[Al確定設(shè)計(jì)模型中需要持久保存的類(lèi)的對(duì)象及其屬性,其中實(shí)體類(lèi)是主要關(guān)

注對(duì)象

[B.]確定持久存儲(chǔ)的數(shù)據(jù)之間的組織方式

[C]確定數(shù)據(jù)模型中的操作行為,例如數(shù)據(jù)完整性驗(yàn)證、數(shù)據(jù)讀取、存儲(chǔ)與更

新、數(shù)據(jù)求和、求數(shù)據(jù)平均值

[DJ進(jìn)一步優(yōu)化持久數(shù)據(jù)操作的性能,例如使用數(shù)據(jù)索引、存儲(chǔ)過(guò)程、觸發(fā)器

等方式

【答案】ABCD

26.在進(jìn)行部署模型設(shè)計(jì)時(shí),一般需要考慮()。

[A]最終開(kāi)發(fā)完成的軟件包括哪些制品形式

[B.]軟件運(yùn)行環(huán)境存在哪些類(lèi)型的物理節(jié)點(diǎn)

[C1不同的節(jié)點(diǎn)之間的連接和通信形式是什么

[D]軟件制品應(yīng)該如何在物理節(jié)點(diǎn)上進(jìn)行部署

【答案】ABCD

第35頁(yè)共54頁(yè)

27.在進(jìn)行部署模型設(shè)計(jì)時(shí),一般需要考慮()o

[A]最終開(kāi)發(fā)完成的軟件包括哪些制品形式

[B.]軟件運(yùn)行環(huán)境存在哪些類(lèi)型的物理節(jié)點(diǎn)

[C]物理節(jié)點(diǎn)應(yīng)采用本地部署,還是考慮采用云計(jì)算環(huán)境上進(jìn)行部署

[D]軟件制品應(yīng)該如何在物理節(jié)點(diǎn)上進(jìn)行部署

【答案】ABD

28.以下哪項(xiàng)不屬于屬性和操作的作用范圍有哪幾種()o

[A.]public

[B.]protected

[C.]static

[D.]private

【答案】ABD

29.四位著名的軟件工程學(xué)者(ErichGamma,RichardHelm,RalphJohnson和John

Vlissides)在《設(shè)計(jì)模式:可復(fù)用面向?qū)ο筌浖A(chǔ)》一書(shū)中總結(jié)出軟件工程設(shè)計(jì)

模式的基本要素包括()。

[A]模式名稱(chēng)

[B.]問(wèn)題

[C]解決方案

[DJ效果

【答案】ABCD

第36頁(yè)共54頁(yè)

30.軟件設(shè)計(jì)模式的應(yīng)用對(duì)軟件開(kāi)發(fā)所起的重大作用包括()o

[Al代碼重用性

[B.]節(jié)約設(shè)計(jì)實(shí)踐,提高設(shè)計(jì)效率

[C]可讀性

[DJ可擴(kuò)展性

【答案】ABCD

31.依照軟件設(shè)計(jì)的習(xí)的和范圍準(zhǔn)則,軟件設(shè)計(jì)模式包括()o

[Al創(chuàng)建型設(shè)計(jì)模式

[B.]結(jié)構(gòu)型設(shè)計(jì)模式

[C1行為型設(shè)計(jì)模式

[DJ創(chuàng)新型設(shè)計(jì)模式

【答案】ABC

32.對(duì)于遺留軟件,可以選擇的進(jìn)化策略包括()。

[A1完全放棄該軟件

[R]繼續(xù)維護(hù)系統(tǒng)

[C]通過(guò)軟件工程技術(shù)轉(zhuǎn)換系統(tǒng)以提高系統(tǒng)的可維護(hù)性

[0.1開(kāi)發(fā)一個(gè)新系統(tǒng)來(lái)代替遺留系統(tǒng)

【答案】ABCD

第37頁(yè)共54頁(yè)

33.在軟件進(jìn)化策略選擇方面,遺留系統(tǒng)的評(píng)價(jià)結(jié)果根據(jù)業(yè)務(wù)價(jià)值和系統(tǒng)質(zhì)量

可分為()o

[Al低業(yè)務(wù)價(jià)值,低系統(tǒng)質(zhì)量

[B.]高業(yè)務(wù)價(jià)值,低系統(tǒng)質(zhì)量

[C]低業(yè)務(wù)價(jià)值,高系統(tǒng)質(zhì)量

[D]高業(yè)務(wù)價(jià)值,高系統(tǒng)質(zhì)量

【答案】ABCD

34.為了評(píng)價(jià)軟件系疏的業(yè)務(wù)價(jià)值,需要從以下哪幾個(gè)主要方面對(duì)系統(tǒng)進(jìn)行考

察()。

[A1系統(tǒng)的使用

[B.]系統(tǒng)支持的業(yè)務(wù)過(guò)程

[C]系統(tǒng)的可靠性

[D.]系統(tǒng)的輸出

【答案】ABCD

35.軟件再工程是指通過(guò)對(duì)目標(biāo)系統(tǒng)的檢查和改造,將逆向工程、重構(gòu)和正向

工程組合起來(lái),將現(xiàn)存系統(tǒng)重新構(gòu)造為新的形式,以開(kāi)發(fā)出質(zhì)量更高、維護(hù)性更

好的軟件。其具體目標(biāo)包括()。

[A1為追加、增強(qiáng)功能做準(zhǔn)備

[B.]提高可維護(hù)性

[CJ軟件的移植

[D]提高可靠性

第38頁(yè)共54頁(yè)

【答案】ABCD

36.完整軟件體系結(jié)閡的迭代過(guò)程包括以下幾種活動(dòng)()o

[A]提?。杭磸奈臋n、代碼、專(zhuān)家等方面獲取所有可能得到的軟件信息或設(shè)計(jì)

要素

[BJ分類(lèi):把提取出的信息按照不同視點(diǎn)進(jìn)行分類(lèi)

[C]合并:對(duì)分類(lèi)后每個(gè)視點(diǎn)中的信息進(jìn)行分析和合并,形成一種系統(tǒng)、一致

的方式來(lái)描述軟件關(guān)于該視點(diǎn)的特征

[D]融合:把分別合并后的各個(gè)視點(diǎn)進(jìn)行融合,檢查各個(gè)視點(diǎn)之間的一致性,

并把這些視點(diǎn)統(tǒng)一稱(chēng)為一個(gè)整體的軟件體系結(jié)構(gòu)描述

【答案】ABCD

37.對(duì)軟件實(shí)施代碼和數(shù)據(jù)重構(gòu)的優(yōu)點(diǎn)主要包括()o

[A]改進(jìn)軟件的設(shè)計(jì)

[B.]提高代碼質(zhì)量,更容易被理解

[C]幫助盡早發(fā)現(xiàn)錯(cuò)誤

[D]可以提高開(kāi)發(fā)速度

【答案】ABCD

38.軟件設(shè)計(jì)的發(fā)展趨勢(shì)主要包括()o

[Al服務(wù)性:以人為本的服務(wù)是計(jì)算機(jī)軟件開(kāi)發(fā)最基本的目的,是未來(lái)發(fā)展的

趨勢(shì)

第39頁(yè)共54頁(yè)

【BJ開(kāi)放化:只有保持信息以及軟件的開(kāi)放化,企業(yè)才能擁有更加全面的視野,

取各行業(yè)之間的優(yōu)勢(shì),彌補(bǔ)自身的不足

[C1智能化和網(wǎng)絡(luò)化:大多數(shù)的計(jì)算機(jī)軟件已經(jīng)朝智能化發(fā)展,這代表著計(jì)算

機(jī)軟件開(kāi)發(fā)技術(shù)在未來(lái)向智能化方向轉(zhuǎn)化;在軟件開(kāi)發(fā)技術(shù)研究中,物聯(lián)網(wǎng)就是

主要的研究?jī)?nèi)容

[DJ復(fù)雜化:計(jì)算機(jī)軟件設(shè)計(jì)因功能的完備性趨于復(fù)雜

【答案】ABC

39.軟件再工程通過(guò)改造遺留系統(tǒng),使系統(tǒng)變得容易理解,進(jìn)而提高系統(tǒng)的可

維護(hù)性。具體包括()o

[A]系統(tǒng)文檔的再建、修改

[B.]更新系統(tǒng)的結(jié)構(gòu)

[C]用先進(jìn)的程序設(shè)計(jì)語(yǔ)言轉(zhuǎn)換源代碼

[D-]數(shù)據(jù)再工程

【答案】ABCD

(三)簡(jiǎn)答題

1.軟件設(shè)計(jì)包括軟件的結(jié)構(gòu)設(shè)計(jì)、數(shù)據(jù)設(shè)計(jì)、接口設(shè)計(jì)和過(guò)程設(shè)計(jì)。作為一個(gè)

完整的軟件設(shè)計(jì)方案,請(qǐng)簡(jiǎn)要闡述軟件設(shè)計(jì)包含的組成要素。

【答案】(1)目標(biāo)描述。設(shè)計(jì)方案需要清楚地描述它要解決的問(wèn)題和將要達(dá)到的

第40頁(yè)共54頁(yè)

目標(biāo)。

(2)設(shè)計(jì)約束。設(shè)計(jì)目標(biāo)的獲得通常要在某些約束的限制范圍內(nèi),這些約束定

義了要解決問(wèn)題的解空間。

(3)設(shè)計(jì)原理。工程化的設(shè)計(jì)活動(dòng)必須以一定的科學(xué)原理和技術(shù)手段為基礎(chǔ),

它們將表明問(wèn)題可以通過(guò)該設(shè)計(jì)得到合理的解決。

(4)開(kāi)發(fā)規(guī)劃。工程化的設(shè)計(jì)活動(dòng)不僅需要讓人知道該設(shè)計(jì)能解決問(wèn)題,還需

要讓人們了解該設(shè)計(jì)在實(shí)際開(kāi)發(fā)中是可行的,以及如何實(shí)現(xiàn)該設(shè)計(jì)。

(5)使用描述。產(chǎn)品經(jīng)常在某些特定條件下才能被可靠、高效地使用,并達(dá)到

最初的設(shè)計(jì)目標(biāo)。因此,描述產(chǎn)品如何使用非常重要。

2.簡(jiǎn)要闡述軟件體系結(jié)構(gòu)描述語(yǔ)言(ADL)的三個(gè)基本元素及其作用。

【答案】(1)構(gòu)件:計(jì)算或數(shù)據(jù)存儲(chǔ)單元。

(2)連接件:用于構(gòu)件之間交互建模的體系結(jié)構(gòu)構(gòu)造塊及其支配這些交互為規(guī)

則。

(3)體系結(jié)構(gòu)配置:描述體系結(jié)構(gòu)的構(gòu)件與連接件的連接圖。

3.軟件體系結(jié)構(gòu)設(shè)計(jì)方法是指通過(guò)一系列的設(shè)計(jì)活動(dòng),獲得滿足系統(tǒng)功能性需

求,并且符合一定非功能性需求約束的軟件體系結(jié)構(gòu)模型。簡(jiǎn)述不同類(lèi)型的

軟件體系結(jié)構(gòu)設(shè)計(jì)方法及其特點(diǎn)。

【答案】(1)工業(yè)驅(qū)動(dòng)的方法。工業(yè)驅(qū)動(dòng)的體系結(jié)構(gòu)設(shè)計(jì)方法從方法的工件描述

中提取體系結(jié)構(gòu)描述。工件驅(qū)動(dòng)的體系結(jié)構(gòu)設(shè)計(jì)方法的例子包括廣為流行的面向

對(duì)象分析和設(shè)計(jì)方法OMT。

第41頁(yè)共54頁(yè)

(2)用例驅(qū)動(dòng)的方法。用例驅(qū)動(dòng)的體系結(jié)構(gòu)設(shè)計(jì)方法主要從用例導(dǎo)出體系結(jié)構(gòu)

抽象。一個(gè)用例,是指系統(tǒng)進(jìn)行的一個(gè)活動(dòng)系列,它為參與者提供一些結(jié)果值,

參與者通過(guò)用例使用系統(tǒng)。參與者和用例共同構(gòu)成了用例模型。

(3)模式驅(qū)動(dòng)的方法。模式驅(qū)動(dòng)的體系結(jié)構(gòu)設(shè)計(jì)方法從模式導(dǎo)出體系結(jié)構(gòu)抽象。

該方法在處理范圍廣泛的體系結(jié)構(gòu)問(wèn)題時(shí),模式庠可能不夠充足,且對(duì)模式的選

擇僅僅依靠通用知識(shí)和軟件工程師的經(jīng)驗(yàn)。

(4)領(lǐng)域驅(qū)動(dòng)的方法。在領(lǐng)域驅(qū)動(dòng)的體系結(jié)構(gòu)設(shè)計(jì)方法中,體系結(jié)構(gòu)抽象是從

領(lǐng)域模型導(dǎo)出來(lái)的。領(lǐng)域模型可以有很多種不同的表示方法,比如,類(lèi)、實(shí)體關(guān)

系圖、框架、語(yǔ)義網(wǎng)絡(luò)和規(guī)格等。

4.請(qǐng)闡述軟件開(kāi)發(fā)過(guò)程中的抽象原則和信息隱藏原則。

【答案】(1)抽象是指抽取事物最基本的特征和行為,忽略非基本的細(xì)節(jié),采用

分層次抽象的辦法,可以控制軟件開(kāi)發(fā)過(guò)程的復(fù)雜性,有利于軟件的可理解性和

開(kāi)發(fā)過(guò)程的管理。

(2)信息隱藏是將模塊中的軟件設(shè)計(jì)決策封裝起來(lái)的技術(shù),是使模塊化開(kāi)發(fā)活

動(dòng)更加簡(jiǎn)單的重要因素。在設(shè)計(jì)和確定模塊時(shí)信息隱藏使一個(gè)模塊的開(kāi)發(fā)者不必

看到其他模塊的內(nèi)部,只需知道其接口即可。這使得每個(gè)模塊的開(kāi)發(fā)人員所要處

理的復(fù)雜性顯著降低。

5.請(qǐng)闡述軟件開(kāi)發(fā)過(guò)程中模塊化設(shè)計(jì)原則的要點(diǎn)。

【答案】(1)模塊是程序中邏輯上相對(duì)獨(dú)立的成分,它是一個(gè)獨(dú)立的編程單位,

應(yīng)有良好的接口定義,模塊化有助于信息隱藏和抽象,有助于表示復(fù)雜軟件系統(tǒng)。

第42頁(yè)共54頁(yè)

(2)模塊的大小要適中,模塊過(guò)大會(huì)導(dǎo)致模塊內(nèi)部復(fù)雜的增加,不利于模塊的

調(diào)試和重用,也不利于對(duì)模塊的理解和修改。

(3)模塊太小會(huì)導(dǎo)致整個(gè)系統(tǒng)的表示過(guò)于復(fù)雜,不利于控制復(fù)雜性。

6.請(qǐng)闡述軟件界面設(shè)計(jì)的基本原則。

【答案】(1)用戶熟悉程度:界面應(yīng)該采用經(jīng)常使用系統(tǒng)用戶熟悉的術(shù)語(yǔ)和概念。

(2)一致性:界面必須一致,在任何可能的情況下,相同的操作應(yīng)該以同樣的

方式被激活。

(3)使驚訝最小化:盡量避免使用戶對(duì)系統(tǒng)的行為感到驚訝。

(4)可恢復(fù)性:界面應(yīng)該為用戶提供錯(cuò)誤恢復(fù)機(jī)制。

(5)用戶幫助:界面應(yīng)該在錯(cuò)誤發(fā)生時(shí)提供有意義的反饋,并提供上下文敏感

用戶幫助系統(tǒng)。

(6)用戶多樣性:界面應(yīng)該為不同類(lèi)型的用戶提供恰當(dāng)?shù)慕换シ绞健?/p>

7.簡(jiǎn)要描述基于UML的分析與設(shè)計(jì)過(guò)程。

【答案】(1)用例分析與設(shè)計(jì)

(2)概念模型與頂層架構(gòu)設(shè)計(jì)

(3)用戶界面設(shè)計(jì)

(4)數(shù)據(jù)模型設(shè)計(jì)

(5)設(shè)計(jì)精化

(6)類(lèi)設(shè)計(jì)

(7)部署模型設(shè)計(jì)

第43頁(yè)共54頁(yè)

8.在創(chuàng)建用戶需求的數(shù)據(jù)流模型的過(guò)程中,簡(jiǎn)要描述分析人員應(yīng)遵循的原則。

【答案】(1)首先建立頂級(jí)數(shù)據(jù)流圖,其中只含有一個(gè)代表目標(biāo)軟件系統(tǒng)整體處

理功能的轉(zhuǎn)換。

(2)對(duì)用戶需求的文字描述進(jìn)行語(yǔ)法分析,其中的名詞和名詞短語(yǔ)構(gòu)成潛在的

外部實(shí)體、數(shù)據(jù)源或教據(jù)流、動(dòng)詞構(gòu)成潛在的處理功能。

(3)采用通常的功能分解方法,按照“強(qiáng)內(nèi)聚,松耦合”原則,逐個(gè)對(duì)處理功

能進(jìn)行精化,與此同時(shí)逐步完成對(duì)數(shù)據(jù)流的精化,并針對(duì)被精化的處理功能生成

下一級(jí)數(shù)據(jù)流圖。

(4)在精化過(guò)程中,必須維持各級(jí)數(shù)據(jù)流圖的平衡。

(5)精化過(guò)程應(yīng)適可而止,避免涉及軟件設(shè)計(jì)細(xì)節(jié)。

9.在面向?qū)ο蟮能浖O(shè)計(jì)中,類(lèi)設(shè)計(jì)的目的是時(shí)各種設(shè)計(jì)模型中出現(xiàn)的類(lèi)進(jìn)行

細(xì)化設(shè)計(jì),以使它們精細(xì)至能夠直接提交給軟件構(gòu)造階段進(jìn)行編碼實(shí)現(xiàn)。請(qǐng)

簡(jiǎn)述類(lèi)設(shè)計(jì)的主要任務(wù)。

【答案】(1)對(duì)類(lèi)的屬性與操作進(jìn)行精化。

(2)對(duì)類(lèi)的對(duì)象實(shí)例在其生存周期中對(duì)外部消息的響應(yīng)和狀態(tài)變化過(guò)程進(jìn)行建

模。

(3)對(duì)類(lèi)中重要操作的實(shí)現(xiàn)過(guò)程成算法進(jìn)行描述。

10.簡(jiǎn)述啟發(fā)式設(shè)計(jì)策略的主要經(jīng)驗(yàn)。

【答案】(1)改造程序結(jié)構(gòu),減小耦合度,提高內(nèi)聚度。

第44頁(yè)共54頁(yè)

(2)改造程序結(jié)構(gòu),減少高扇出,在增加程序深度的前提下追求高扇入。

(3)改造程序結(jié)構(gòu),使任一模塊的作用域在其控制域之內(nèi)。

(4)改造程序結(jié)構(gòu),臧少接口的復(fù)雜性和和冗余程度,提高協(xié)調(diào)性。

(5)模塊功能應(yīng)該可預(yù)言,避免對(duì)模塊施加過(guò)多限制。

(6)改造程序結(jié)構(gòu),追求單入口單出口的模塊。

(7)為滿足設(shè)計(jì)或可移植性的要求,把某些軟件用包的形式封裝起來(lái)。

11.簡(jiǎn)述軟件設(shè)計(jì)模式的應(yīng)用對(duì)軟件開(kāi)發(fā)的重要作用。

【答案】(1)代碼重用性。大部分模式都兼顧了系統(tǒng)的可重用性,這使得開(kāi)發(fā)人

員可以更好地重用一些已有的設(shè)計(jì)方案、功能模塊甚至一個(gè)完整的軟件系統(tǒng),提

高最佳設(shè)計(jì)實(shí)踐的復(fù)用性。

(2)節(jié)約設(shè)計(jì)實(shí)踐,提高設(shè)計(jì)效率。模式是眾多專(zhuān)家從諸多優(yōu)秀的軟件系統(tǒng)中

總結(jié)出的設(shè)計(jì)方案,使用這些設(shè)計(jì)方案能為開(kāi)發(fā)人員提供設(shè)計(jì)思路,有助于開(kāi)發(fā)

人員提高開(kāi)發(fā)和設(shè)計(jì)效率,幫助設(shè)計(jì)新手快速系統(tǒng)地學(xué)習(xí)專(zhuān)家的成功設(shè)計(jì)經(jīng)驗(yàn)。

(3)可讀性。模式為沒(méi)計(jì)人員提供了一套統(tǒng)一的設(shè)計(jì)詞匯,包括設(shè)計(jì)、管理和

組織方面,同時(shí)也為設(shè)計(jì)人員提供了一個(gè)規(guī)范和描述抽象事物的標(biāo)準(zhǔn),以便開(kāi)發(fā)

人員之間的溝通和交流。

(4)可擴(kuò)展性。隨著軟件規(guī)模的日益增大,軟件壽命逐漸延長(zhǎng),軟件系統(tǒng)的可

擴(kuò)展性也越來(lái)越重要,許多模式將有助于提高系統(tǒng)的靈活性和可擴(kuò)展性,讓開(kāi)發(fā)

人員在不修改或者在現(xiàn)有系統(tǒng)的基礎(chǔ)上根據(jù)實(shí)際情況增加、刪除或者替換相應(yīng)的

功能模塊。

第45頁(yè)共54頁(yè)

12.軟件設(shè)計(jì)模式能夠幫助軟件設(shè)計(jì)者更快地完成面向?qū)ο蟮能浖O(shè)計(jì)。請(qǐng)簡(jiǎn)述

軟件設(shè)計(jì)模式選擇的具體步驟。

【答案】人們?cè)谶x擇模式時(shí)可遵循以下步驟和原則。

(1)理解問(wèn)題需求。問(wèn)題的需求是進(jìn)行模式選擇的基礎(chǔ),通過(guò)對(duì)需求的分析可

以找到多個(gè)模式,并將其形成相應(yīng)的模式組。

(2)研究組內(nèi)模式。需求分析得出的組內(nèi)模式存在一些共同特性,但是不同的

模式都有其獨(dú)特的使用動(dòng)機(jī)、意圖和使用條件等等,因此對(duì)組內(nèi)模式進(jìn)行研究,

研究模式之間的相互關(guān)聯(lián)具有一定的實(shí)際意義。

(3)考慮設(shè)計(jì)模式是如何解決設(shè)計(jì)問(wèn)題的。在系統(tǒng)的設(shè)計(jì)過(guò)程中會(huì)產(chǎn)生許多變

化因素。為了支持這種變化,應(yīng)明確設(shè)計(jì)模式在設(shè)計(jì)中支持哪些可變化因素,而

這些可變因素是否會(huì)導(dǎo)致系統(tǒng)必須進(jìn)行重新設(shè)計(jì),基于此可找到所需的設(shè)計(jì)模式

以盡量避免引起重新設(shè)計(jì)。

13.軟件設(shè)計(jì)模式能夠幫助軟件設(shè)計(jì)者更快地完成面向?qū)ο蟮能浖O(shè)計(jì)。請(qǐng)簡(jiǎn)

述軟件設(shè)計(jì)模式使用的方法與原則。

【答案】(1)首先理解所選擇的模式。特別注意模式的適用條件和使用效果部分,

確定該模式是否適合對(duì)此類(lèi)問(wèn)題的求解。

(2)研究模式的結(jié)構(gòu)部分、參與者部分和協(xié)作部分。確保對(duì)這個(gè)模式的類(lèi)、對(duì)

象以及它們之間的關(guān)聯(lián)關(guān)系有一定的了解。

(3)看代碼示例部分。研究該模式代碼形式的具體例子將有助于設(shè)計(jì)人員更好

的理解和實(shí)現(xiàn)模式。

(4)選擇模式參與者的名字,使它們?cè)趹?yīng)用上下文中有意義。

第46頁(yè)共54頁(yè)

(5)定義類(lèi)。聲明它,‘門(mén)之間的接口,建立它們的繼承關(guān)系,定義代表數(shù)據(jù)和對(duì)

象引用的實(shí)例變量。

(6)定義模式中專(zhuān)用于應(yīng)用的操作名稱(chēng)。應(yīng)用中的類(lèi)、變量和對(duì)象的名稱(chēng)定義

都會(huì)依賴于應(yīng)用所涉及到的實(shí)體,對(duì)模式名稱(chēng)的定義也應(yīng)該和實(shí)際中的具體操作

相關(guān)聯(lián),要盡量和實(shí)際中的名字一致。

(7)實(shí)現(xiàn)執(zhí)行模式中責(zé)任和協(xié)作的操作。實(shí)現(xiàn)部分提供線索指導(dǎo)人們進(jìn)行實(shí)現(xiàn)。

14.簡(jiǎn)述軟件再工程的定義及突出特征。

【答案】(1)軟件再工程是指通過(guò)對(duì)目標(biāo)系統(tǒng)的檢查和改造,其中包括設(shè)計(jì)恢復(fù)

(庫(kù)存目錄分析)、再文檔、逆向工程、程序和數(shù)據(jù)重構(gòu)以及正向工程等一系列活

動(dòng),旨在將逆向工程、重構(gòu)和正向工程組合起來(lái),將現(xiàn)存系統(tǒng)重新構(gòu)造為新的形

式,以開(kāi)發(fā)出質(zhì)量更高、維護(hù)性更好的軟件。

(2)軟件再工程有兩個(gè)突出特征:一是比一次軟件工程更迫切地需要計(jì)算機(jī)輔助

支持,二是測(cè)試工作比例遠(yuǎn)大于一次軟件工程。前者在再工程方法學(xué)研究和軟件

模式運(yùn)動(dòng)推動(dòng)下可以找到自動(dòng)化解決方案,后者則須強(qiáng)化對(duì)測(cè)試方法學(xué)體系的研

究。

15.簡(jiǎn)述軟件再工程的具體目標(biāo)。

【答案】(1)為追加、增強(qiáng)功能做準(zhǔn)備。軟件再工程通過(guò)對(duì)原系統(tǒng)用新的設(shè)計(jì)思

想加以重新實(shí)現(xiàn)。使今后能方便地對(duì)系統(tǒng)進(jìn)行功能的追加和增強(qiáng)。

(2)提高可維護(hù)性。經(jīng)過(guò)不斷維護(hù)日趨復(fù)雜的系統(tǒng).經(jīng)過(guò)軟件的再工程和再設(shè)

計(jì),其模塊劃分會(huì)更合理,接口定義更清晰,文檔更齊全,從而更易維護(hù)。

第47頁(yè)共54頁(yè)

(3)軟件的移植。軟件再工程將一些優(yōu)秀軟件移植到新硬件平臺(tái)、操作系統(tǒng)或

語(yǔ)言環(huán)境中,從而使它們能夠利用新環(huán)境的新特唾,更好地發(fā)揮作用。

(4)提高可靠性。軟件的維護(hù)修改容易引起“波動(dòng)效應(yīng)”,即修改一處,波及多

方。軟件的再工程可較好地解決這一問(wèn)題。

16.簡(jiǎn)述軟件設(shè)計(jì)的發(fā)展與趨勢(shì)。

【答案】(1)服務(wù)性:計(jì)算機(jī)軟件技術(shù)的開(kāi)發(fā)和發(fā)展主要是通過(guò)相關(guān)人員的操作

完成的,要達(dá)到的目的是為了給人類(lèi)提供最好的服務(wù)。以人為本的服務(wù)是計(jì)算機(jī)

軟件開(kāi)發(fā)最基本的目的,是未來(lái)發(fā)展的趨勢(shì)。

(2)開(kāi)放化:從知識(shí)的角度來(lái)看,計(jì)算機(jī)技術(shù)屬于高水平知識(shí)。長(zhǎng)遠(yuǎn)發(fā)展眼光

來(lái)看,只有保持信息以及軟件的開(kāi)放化,企業(yè)才能擁有更加全面的視野,取各行

業(yè)之間的優(yōu)勢(shì),彌補(bǔ)自身的不足,從而促進(jìn)社會(huì)經(jīng)濟(jì)取得更深層次的發(fā)展。

(3)智能化和網(wǎng)絡(luò)化:現(xiàn)階段,大多數(shù)的計(jì)算機(jī)軟件已經(jīng)朝智能化發(fā)展,這代表

著計(jì)算機(jī)軟件開(kāi)發(fā)技術(shù)在未來(lái)向智能化方向轉(zhuǎn)化。在軟件開(kāi)發(fā)技術(shù)研究中,物聯(lián)

網(wǎng)就是主要的研究?jī)?nèi)容。

17.開(kāi)發(fā)者需要對(duì)遺留軟件系統(tǒng)的實(shí)際情況進(jìn)行評(píng)價(jià),然后選擇最合適的進(jìn)化策

略。簡(jiǎn)述對(duì)于不同的遺留軟件,可選擇的進(jìn)化策略有哪些。

【答案】(1)完全放棄該軟件。當(dāng)系統(tǒng)所支持的業(yè)務(wù)對(duì)機(jī)構(gòu)來(lái)說(shuō)已經(jīng)過(guò)時(shí),或者

說(shuō)機(jī)構(gòu)的業(yè)務(wù)根本

溫馨提示

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