煙臺(tái)大學(xué)《軟件工程復(fù)習(xí)題帶答案》期末考試復(fù)習(xí)題及參考答案_第1頁
煙臺(tái)大學(xué)《軟件工程復(fù)習(xí)題帶答案》期末考試復(fù)習(xí)題及參考答案_第2頁
煙臺(tái)大學(xué)《軟件工程復(fù)習(xí)題帶答案》期末考試復(fù)習(xí)題及參考答案_第3頁
煙臺(tái)大學(xué)《軟件工程復(fù)習(xí)題帶答案》期末考試復(fù)習(xí)題及參考答案_第4頁
煙臺(tái)大學(xué)《軟件工程復(fù)習(xí)題帶答案》期末考試復(fù)習(xí)題及參考答案_第5頁
已閱讀5頁,還剩10頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

一、多選題

1.從下列敘述中選出5條關(guān)于好的程序設(shè)計(jì)風(fēng)格的正確敘述。

A.使用括號(hào)以改善表達(dá)式的涓晰性。

B.對(duì)遞歸定義的數(shù)據(jù)結(jié)構(gòu)不要使用遞歸過程。

C.盡可能對(duì)程序代碼進(jìn)行優(yōu)化。

D.不要修補(bǔ)不好的程序,要重新寫。

E.不要進(jìn)行浮點(diǎn)數(shù)的相等比較。

F.應(yīng)盡可能多地輸出中間結(jié)果。

G.利用數(shù)據(jù)類型對(duì)數(shù)據(jù)值進(jìn)行防范。

H.用計(jì)數(shù)方法而不是用文件結(jié)束符或輸入序列結(jié)束符來判別輸入的結(jié)束。

I.程序中的注釋是可有可無的。

J.使用有意義的標(biāo)識(shí)符。

2.從下列敘述中選出5條關(guān)于軟件測(cè)試的正確敘述。

A.為了使得軟件容易測(cè)試,應(yīng)該使用高級(jí)的程序設(shè)計(jì)語言編制程序。

B.程序測(cè)試是一個(gè)程序的執(zhí)行過程,目的是為了發(fā)現(xiàn)軟件中隱戴的錯(cuò)誤。

C.如果程序中連鎖式連接了8個(gè)判定(IF)結(jié)構(gòu),則程序中總的路徑數(shù)達(dá)28。

D.白盒測(cè)試僅與程序的內(nèi)部結(jié)構(gòu)有關(guān),完全可以不考慮程序的功能要求。

E.為了快速完成集成測(cè)試,采用一次性集成方式是適宜的。

F.對(duì)?批模塊進(jìn)行測(cè)試,發(fā)現(xiàn)錯(cuò)誤多的模塊中殘留的錯(cuò)誤將比其它的模塊少。

G.好的測(cè)試用例應(yīng)能證明軟件是正確的。

H.邊界值分析方法是取輸入/輸出等價(jià)類的邊界值做為測(cè)試用例。

L等價(jià)類劃分方法考慮了各等價(jià)類之間取值的組合情況下可能的結(jié)果。

J.判定覆蓋法可能查不出在判定中邏輯運(yùn)算符使用有誤時(shí)產(chǎn)生的錯(cuò)誤。

3.從下列敘述中選出5條有利于軟件可維護(hù)性的正確敘述。

A.在進(jìn)行需求分析時(shí)需同時(shí)考慮如何實(shí)現(xiàn)可維護(hù)性問題。

B.完成測(cè)試作業(yè)后,為了縮短源程序的長(zhǎng)度應(yīng)刪去程序中的注解

C.盡可能在軟件生產(chǎn)過程中保證各階段文檔的正確性。

D.編程時(shí)應(yīng)盡可能使用全局變量。

E.選擇時(shí)間效率和空間效率盡可能高的算法。

F.盡可能利用硬件的特點(diǎn)。

G.重視程序結(jié)構(gòu)的設(shè)計(jì),使程序具有較好的層次結(jié)構(gòu)。

H.使用維護(hù)工具或支撐環(huán)境。

L在進(jìn)行概要設(shè)計(jì)時(shí)應(yīng)加強(qiáng)模塊間的聯(lián)系。

J.提高程序的可讀性,盡可能使用高級(jí)語言編寫程序。

K.為了加快軟件維護(hù)作'業(yè)的進(jìn)度,應(yīng)盡可能增加維護(hù)人員的數(shù)目。

4.在下面關(guān)于標(biāo)準(zhǔn)和文檔的敘述中,選出5條正確的敘述。

A.國家標(biāo)準(zhǔn)是由政府或國家級(jí)機(jī)構(gòu)制定或批準(zhǔn),適用于全國的標(biāo)準(zhǔn)。這些標(biāo)準(zhǔn)都是強(qiáng)制性的,相關(guān)產(chǎn)

品必須嚴(yán)格執(zhí)行標(biāo)準(zhǔn)。

B.IS09001是設(shè)計(jì)/開發(fā)、生產(chǎn)、安裝和服務(wù)中的質(zhì)量保證模式,IS09000-3是使IS09001適合于軟件

的質(zhì)量保證指南。

C.軟件工程標(biāo)準(zhǔn)化可提高軟件的生產(chǎn)率。

D.軟件質(zhì)量保證體系是貫穿于整個(gè)軟件生存期集成化過程體系,而不僅僅體現(xiàn)在最后產(chǎn)品的檢驗(yàn)r.o

E.IS09000-3與具體的開發(fā)模式有關(guān)。它將軟件全過程工序從管理角度、合同角度和工程角度劃分為三

大類。

F.軟件測(cè)試計(jì)劃始于需求分析階段,完成于軟件設(shè)計(jì)階段。

G任何一個(gè)文檔都應(yīng)是完整的、獨(dú)立的,它應(yīng)自成體系。

H.在新文檔取代舊文檔后,管理人員不應(yīng)注銷舊文檔。

I.軟件開發(fā)機(jī)構(gòu)應(yīng)保存一份完整的主文檔,并允許開發(fā)人員可以保存主文檔中的部分主文檔,有自己的

活動(dòng)空間。

J.軟件需求分析報(bào)告是給開發(fā)人員使用的,不是給其它人員,如維護(hù)人員,用戶等使用的。

第1題正確答案為ADEGJ

第2題正確答案為ABCDH

第3題正確答案為CEGHJ

第4題正確答案為BCDFG

二、單選題

1.()軟件維護(hù)的四類維護(hù)活動(dòng)是:

A.改正性維護(hù),適應(yīng)性維護(hù),完善性維護(hù)和預(yù)防性維護(hù)。

B.適應(yīng)性維護(hù),完善性維護(hù),搶救性維護(hù)和輔助性維護(hù)。

C.改正性維護(hù),適應(yīng)性維護(hù),完善性維護(hù)和輔助性維護(hù)。

D.適應(yīng)性維護(hù),完善性維護(hù),搶救性維護(hù)和預(yù)防性維護(hù)。

2.具有風(fēng)險(xiǎn)分析的軟件生存周期模型是()。

A.瀑布模型B.噴泉模型

C.螺旋模型D.增量模型

3.需求分析中開發(fā)人員要從用戶那里了解(

A.軟件做什么B.用戶使用界面

C.輸入的信息D.軟件的規(guī)模

4.結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)的是()。

A.程序的規(guī)模B,程序的效率

C.程序設(shè)計(jì)語言的先進(jìn)性D.程序易讀性

5.()按照軟件工程的原則,模塊的作用域和模塊的控制域之間的關(guān)系是:

A.模塊的作用域應(yīng)在模塊的控制域之內(nèi)。

B.模塊的控制域應(yīng)在模塊的作用域之內(nèi)。

C.模塊的控制域與模塊的作用域互相獨(dú)立。

D.以上說法都不對(duì)。

6.概要設(shè)計(jì)的目標(biāo):()

A.確定系統(tǒng)的功能與模塊結(jié)構(gòu)B.確定系統(tǒng)的費(fèi)用

C.確定系統(tǒng)的算法D.確定開發(fā)系統(tǒng)所使用的語言

7.對(duì)象實(shí)現(xiàn)了數(shù)據(jù)和操作的結(jié)合,使數(shù)據(jù)和操作()于對(duì)象的統(tǒng)一體中

A.結(jié)合B.隱藏

C.封裝D.抽象

8.可行性分析研究的目的是()

A.爭(zhēng)取項(xiàng)目B.項(xiàng)目值得開發(fā)否

C.開發(fā)項(xiàng)目D.規(guī)劃項(xiàng)目

9.為了提高軟件的可維護(hù)性,在編碼階段應(yīng)注意()

A.保存測(cè)試用例和數(shù)據(jù)B.提高模塊的獨(dú)立性

C.又檔的副作用D.養(yǎng)成好的程序設(shè)計(jì)風(fēng)格

10.數(shù)據(jù)耦合、公共耦合、標(biāo)記耦合、控制耦合的耦合性從低到高的順序是()

A.數(shù)據(jù)、公共、標(biāo)記、控制B.數(shù)據(jù)、標(biāo)記、控制、公共

C.控制、數(shù)據(jù)、標(biāo)記、公共D.控制、數(shù)據(jù)、公共、標(biāo)記

1-10答案:ACADAACBDB

11.下列哪個(gè)階段不屈F軟件生存周期的三大階段()。

A、計(jì)劃階段B、開發(fā)階段

C、編碼階段D、維護(hù)階段

12.需求分析是()。

A、軟件開發(fā)工作的基礎(chǔ)B、軟件生存周期的開始

C、由系統(tǒng)分析員單獨(dú)完成的D、由用戶自己?jiǎn)为?dú)完成的

13.原型化方法是軟件開發(fā)中一類常用的方法,它與結(jié)構(gòu)化方法相比較,更需要(

A、明確的需求定義B、完整的生命周期

C、較長(zhǎng)的開發(fā)時(shí)間D、熟練的開發(fā)人員

14.軟件維護(hù)時(shí),對(duì)測(cè)試階段未發(fā)現(xiàn)的錯(cuò)誤進(jìn)行測(cè)試、診斷、定位、糾錯(cuò),直至修改的回歸測(cè)試過程稱為

()。

A、改正性維護(hù)B、適應(yīng)性維護(hù)

C、完善性維護(hù)D、預(yù)防性維護(hù)

15.下列哪個(gè)圖不是N-S圖的構(gòu)件()o

11-15答案:CABAC

16.在軟件生存周期的瀑布模型中一般包括計(jì)劃、()、設(shè)計(jì)、編碼、測(cè)試、維護(hù)等階段。

A可行性分析B需求采集C需求分析D問題定義

17.IS09000是由ISO/TC176制定的關(guān)于()和質(zhì)量保證的國際標(biāo)準(zhǔn)。

A質(zhì)量控制B質(zhì)量管理C質(zhì)量策劃D質(zhì)量改進(jìn)

18.軟件工程的基本要素包括方法、工具和()。

A過程B軟件系統(tǒng)C硬件環(huán)境D人員

19.軟件的曳雜性是(),它引起人員通信困難、開發(fā)費(fèi)用超支、開發(fā)時(shí)間超時(shí)等問題.

A固有的B人為的C可消除的D不可降低的

20.軟件需求分析階段的測(cè)試手段一般采用()。

A總結(jié)B階段性報(bào)告C需求分析評(píng)審D不測(cè)試

21.()是把對(duì)象的屬性和操作結(jié)合在一起,構(gòu)成一個(gè)獨(dú)立的對(duì)象,其內(nèi)部信息對(duì)外界是隱蔽的,外界只

能通過有限的接口與對(duì)象發(fā)生聯(lián)系。

A多態(tài)性B繼承C封裝D消息

22協(xié)作圖反映收發(fā)消息的對(duì)象的結(jié)構(gòu)組織,它與()是同構(gòu)的.

A用例圖B類圖C活動(dòng)圖D時(shí)序圖

23.軟件測(cè)試是為了()而執(zhí)行程序的過程。

A糾正錯(cuò)誤B發(fā)現(xiàn)錯(cuò)誤C避免錯(cuò)誤D證明正確

24.面向?qū)ο蠓治鍪菍?duì)系統(tǒng)進(jìn)行()的一種方法。

A需求建模B程序設(shè)計(jì)C設(shè)計(jì)評(píng)審D測(cè)試驗(yàn)收

25.在結(jié)構(gòu)化分析方法中,()表達(dá)系統(tǒng)內(nèi)部數(shù)據(jù)運(yùn)動(dòng)的圖形化技術(shù)。

A數(shù)據(jù)字典B實(shí)體關(guān)系圖C數(shù)據(jù)流圖D狀態(tài)轉(zhuǎn)換圖

16-25答案:cbaaccdbac

26.()是將系統(tǒng)化的、規(guī)范的、可定量的方法應(yīng)用于軟件的開發(fā)、運(yùn)行和維護(hù)的過程,它包括方法、工

具和過程三個(gè)要素。

A軟件過程B軟件測(cè)試C軟件生存周期D軟件工程

27.IS09000是由ISO/TC176制定的關(guān)于()和質(zhì)量保證的國際標(biāo)準(zhǔn)。

A質(zhì)量控制B質(zhì)量管理C質(zhì)量策劃D質(zhì)量改進(jìn)

28.CMM提供了一個(gè)框架,將軟件過程改進(jìn)的進(jìn)化步驟組織成5個(gè)成熟度等級(jí)。除第1級(jí)外,每個(gè)等級(jí)都

包含了實(shí)現(xiàn)該成熟度等級(jí)目標(biāo)的若干()。

A關(guān)鍵實(shí)踐B關(guān)鍵過程域C軟件過程能力D軟件過程

29.在軟件開發(fā)的各種資源中,()是最重要的資源。

A開發(fā)工具B方法C硬件環(huán)境D人員

30.軟件的復(fù)雜性是(),它引起人員通信困難、開發(fā)費(fèi)用超支、開發(fā)時(shí)間超時(shí)等問題。

A固有的B人為的C可消除的D不可降低的

31.在各種不同的軟件需求中,()描述了用戶使用產(chǎn)品必須要完成的任務(wù),可以在用例模型或方案腳本

中予以說明。

A業(yè)務(wù)需求B功能需求C非功能需求D用戶需求

32.原型化方法是用戶和軟件開發(fā)人員之間進(jìn)行的一種交互過程,適用于()系統(tǒng)。

A需求不確定的B需求確定的C管理信息D決策支持

33.()意味著一個(gè)操作在不同的類中可以有不同的實(shí)現(xiàn)方式。

A多態(tài)性B多繼承C類的可復(fù)用D信息隱蔽

34.時(shí)序圖反映對(duì)象之間發(fā)送消息的時(shí)間順序,它與()是同構(gòu)的。

A用例圖B類圖C活動(dòng)圖D協(xié)作圖

35.單元測(cè)試的測(cè)試用例主要根據(jù)()的結(jié)果來設(shè)計(jì)。

A需求分析B源程序C概要設(shè)計(jì)D詳細(xì)設(shè)計(jì)

26-35答案:DBBDABAADB

36.軟件需求分析的主要任務(wù)是準(zhǔn)確地定義出要開發(fā)的軟件系統(tǒng)是()。

A.如何做B.怎么做

C.做什么D.對(duì)誰做

37.軟件詳細(xì)設(shè)計(jì)的主要任務(wù)是確定每個(gè)模塊的()。

A.算法和使用的數(shù)據(jù)結(jié)構(gòu)B.外部接口

C.功能D.編程

38.提高測(cè)試的有效性非常重要,成功的測(cè)試是指().

A.證明了被測(cè)試程序正確無誤B.說明了被測(cè)試程序符合相應(yīng)的要求

C.未發(fā)現(xiàn)被測(cè)程序的錯(cuò)誤D.發(fā)現(xiàn)了至今為止尚未發(fā)現(xiàn)的錯(cuò)誤

39.若有一個(gè)計(jì)算類型的程序,它的輸入量只有一個(gè)X,其范圍是[T.0,1.0],現(xiàn)從輸入的角度考慮一組測(cè)

試用例:T.001,-1.0,1.0,1.301.設(shè)計(jì)這組測(cè)試用例的方法是()。

A.條件覆蓋法B.等價(jià)分類法

C.邊界值分析法D.錯(cuò)誤推測(cè)法

40.下圖是()

A.類圖B.用例圖

C.活動(dòng)圖D.狀態(tài)圖

模糊查找

41.按軟件生命周期方法設(shè)計(jì)軟件的過程中,畫數(shù)據(jù)流圖屬于哪個(gè)階段的工作()?

A.需求分析B.概要設(shè)計(jì)

C.詳細(xì)設(shè)計(jì)D.軟件維護(hù)

42.()引入了“風(fēng)險(xiǎn)驅(qū)動(dòng)”的思想,適用于大規(guī)模的內(nèi)部開發(fā)項(xiàng)目。

A.增量模型B.噴泉模型

C.原型模型D.嘿旋模型

43.為了進(jìn)一步改善軟件系統(tǒng)的可維護(hù)性和可靠性,井為以后的改進(jìn)奠定基礎(chǔ)的軟件維護(hù)稱為()。

A.糾錯(cuò)性維護(hù)B.適應(yīng)性維護(hù)

C.改善性維護(hù)D.預(yù)防性維護(hù)

44.為了提高測(cè)試的效率,應(yīng)該()。

A.隨機(jī)地選取測(cè)試數(shù)據(jù)B.取一切可能的輸入數(shù)據(jù)作為測(cè)試數(shù)據(jù)

C.在完成編碼以后制定軟件的測(cè)試計(jì)劃

D.選擇發(fā)現(xiàn)錯(cuò)誤可能性大的數(shù)據(jù)作為測(cè)試數(shù)據(jù)

45.可行性研究要進(jìn)行一次()需求分析。

A.深入的B.詳盡的

C.徹底的D.簡(jiǎn)化的、壓縮了的

36-45答案:CADCBADDDD

三、填空題

1.軟件生存周期一般可分為問題定義、可行性研究、需求分析、設(shè)計(jì)編碼、測(cè)試、運(yùn)行

與維護(hù)階段。

2.按軟件的功能進(jìn)行劃分,軟件可以劃分為系統(tǒng)軟件、支撐軟件和應(yīng)用軟件。

3.可行性研究主要集中在以下四個(gè)方面經(jīng)濟(jì)可行性、技術(shù)可行性、法律可行性和抉擇。

4.用戶界面的可使用性是用戶界面設(shè)計(jì)最重要的也是最基本的目標(biāo)。

5.常見的軟件概要設(shè)計(jì)方法有3大類:以數(shù)據(jù)流圖為基礎(chǔ)構(gòu)造模塊結(jié)構(gòu)的結(jié)構(gòu)化設(shè)計(jì)方法,以

數(shù)據(jù)結(jié)構(gòu)為基礎(chǔ)構(gòu)造模塊的jackson方法,以對(duì)象、類、繼承和通信為基礎(chǔ)的面向?qū)ο笤O(shè)計(jì)方法。

6.數(shù)據(jù)流圖和數(shù)據(jù)字典共同構(gòu)成系統(tǒng)的邏輯模型。

7.軟件測(cè)試的方法有分析方法和非分析方法(即黑盒法)。

8.單元測(cè)試一般以白盒測(cè)試為主,黑盒測(cè)試為輔。

9.成本估計(jì)方法主要有自底向上估計(jì)、自頂向下估計(jì)_____和算法模型估計(jì)三種類型。

10.軟件設(shè)計(jì)中劃分程序模塊通常遵循的原則是使各模塊間的耦合盡可能()。三種可能的模

塊耦合是:(),例如,一個(gè)模塊直接引用另一個(gè)模塊中的數(shù)據(jù)。(),例如,

一個(gè)模塊把開關(guān)量作為參數(shù)傳送給另一個(gè)模塊。(),例如,一個(gè)模塊通過公共數(shù)據(jù)結(jié)構(gòu)把數(shù)據(jù)

傳送給另一個(gè)模塊。其中,()的耦合性最強(qiáng)。

第1個(gè)正確答案為弱,第2個(gè)正確答案為內(nèi)容耦合,第3個(gè)正確答案為控制耦合,第4個(gè)正確答案為公

共耦合,第5個(gè)正確答案為內(nèi)容耦合,

11、UML關(guān)系包括關(guān)聯(lián)、聚合、泛化、實(shí)現(xiàn)、依賴等5種類型,請(qǐng)將合適的關(guān)系填寫在下列描述的()

中。(共10分)

1.在學(xué)校中,一個(gè)導(dǎo)師可以指導(dǎo)多個(gè)研究生,一個(gè)研究生可以由多個(gè)導(dǎo)師指導(dǎo),那么導(dǎo)師和研究生之間

足()關(guān)系。

2.交通工具與卡車之間是()關(guān)系。

3.公司與部門之間是()關(guān)系。

4.圖形與矩形之間是()關(guān)系。

5.參數(shù)類及其實(shí)例類之間是()關(guān)系。

1.關(guān)聯(lián)2.泛化3.聚合4.泛化5.實(shí)現(xiàn)

12、UML關(guān)系包括關(guān)聯(lián)、聚合、泛化、實(shí)現(xiàn)、依賴等5種類型,請(qǐng)將合適的關(guān)系填寫在下列描述的()

中。

①用例及其協(xié)作之間是()關(guān)系。

②在學(xué)校中,一個(gè)學(xué)生可以選修多門課程,一門課程可以由多個(gè)學(xué)生選修,那么學(xué)生和課程之間是()

關(guān)系。

③類A的一個(gè)操作調(diào)用類B的一個(gè)操作,且這兩個(gè)類之間不存在其他關(guān)系,那么類A和類B之間是

()關(guān)系。

④在MFC類庫中,Window類和DialogBox類之間是()關(guān)系。

⑤森林和樹木之間是()美系。

①實(shí)現(xiàn)②關(guān)聯(lián)③依賴④泛化⑤聚合

四、判斷題

1.文檔是軟件產(chǎn)品的一部分,沒有文檔的軟件就不稱其為軟件。

2.在需求分析過程中,分析員要從用戶那里解決的最重要的問題是給該軟件提供哪弊信息。

3.需求規(guī)格說明書在軟件開發(fā)中具有重要的作用,它也可以作為軟件可行性分析的依據(jù)。

4.建立用例模型的步躲包括確定角色、確定用例和繪制用例圖。

5.數(shù)據(jù)流圖建立系統(tǒng)的功能模型,它由數(shù)據(jù)流、加工和數(shù)據(jù)存貯組成。

6.軟件配置管理是一組標(biāo)識(shí)、組織和控制修改源程序的活動(dòng)。

7.UML是一種直觀化、明確化、構(gòu)建和文檔化軟件產(chǎn)物的通用語言。

8.好的測(cè)試是用少量的測(cè)試用例運(yùn)行程序,發(fā)現(xiàn)被測(cè)程序盡可能多的錯(cuò)誤。

9.邊界值分析方法是取輸入/輸出等價(jià)類的邊界值作為測(cè)試用例。

10.面向?qū)ο蟮姆治鍪敲嫦蛴?jì)算機(jī)系統(tǒng)建立軟件系統(tǒng)的對(duì)象模型。

1、A2、B3、B4、B5、B6、B7、B8、A9、A10、B(A對(duì)B錯(cuò))

11.()在項(xiàng)目計(jì)劃發(fā)生延遲的情況下,增加更多的程序員一定會(huì)加快進(jìn)度。

12.()軟件錯(cuò)誤可能出現(xiàn)在開發(fā)過程的早期,越早修改越好。

13.()不完善的系統(tǒng)定義往往是導(dǎo)致軟件項(xiàng)目失敗的主要原因。

14.()一個(gè)成功的項(xiàng)目唯一提交的就是運(yùn)行程序。

15.()只有質(zhì)量差的軟件產(chǎn)品才需要維護(hù)。

16.()UML是一種直觀化、明確化、構(gòu)建和文檔化軟件產(chǎn)物的通用語言。

17.()一個(gè)好的測(cè)試用例在于能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯(cuò)誤。

18.()面向?qū)ο蟮姆治鍪敲嫦蛴?jì)算機(jī)系統(tǒng)建立軟件系統(tǒng)的對(duì)象模型。

19.()軟件工作的考慮范圍主要是程序設(shè)計(jì)和實(shí)現(xiàn)。

20.()等價(jià)類劃分方法將所有可能的輸入數(shù)據(jù)劃分成若干部分,然后從每一部分中選取少數(shù)有代表性的

數(shù)據(jù)作為測(cè)試用例。

11、b12、a13、a14、b15、b16、b17、a18、b19、b20、a(A對(duì)B錯(cuò))

21.開發(fā)軟件就是編寫程序。

22.系統(tǒng)測(cè)試的主要方法是白盒法,主要進(jìn)行功能測(cè)試、性能測(cè)試、安全性測(cè)試及可靠性等測(cè)試。

23.編程序時(shí)應(yīng)盡可能利用硬件特點(diǎn)以提高程序效率.

24.軟件需求分析的任務(wù)是建立軟件模塊結(jié)構(gòu)圖。

25.盡可能使用高級(jí)語言編寫程序

26.以結(jié)構(gòu)化分析方法建立的系統(tǒng)模型就是數(shù)據(jù)流圖。

27.進(jìn)行總體設(shè)計(jì)時(shí)加強(qiáng)模塊間的聯(lián)系。

28.編碼時(shí)盡量多用全局變量.

29.用CASE環(huán)境或程序自動(dòng)生成工具來自動(dòng)生成一部分程序.

30.軟件測(cè)試是要發(fā)現(xiàn)軟件中的所有錯(cuò)誤。

(X)21、(X)22、(X)23、(X)24、(J)25、(X)26、(X)27、(X)

28、(J)29、(X)30、(J)

31.在軟件開發(fā)中,采用原形系統(tǒng)策略的主要困難是時(shí)間問題。(X)

32.數(shù)據(jù)流圖從數(shù)據(jù)傳遞和加工的角度,以圖形的方式描述數(shù)據(jù)流從輸入到輸出的傳輸變換過程。(J)

33.內(nèi)聚是指一個(gè)軟件結(jié)構(gòu)內(nèi)各個(gè)模塊之間互連的度量。(X)

34.對(duì)與DFD圖的劃分,主要依賴設(shè)計(jì)人員的經(jīng)驗(yàn),一切都應(yīng)該根據(jù)設(shè)計(jì)人員的經(jīng)驗(yàn)確定。(X)

35.詳細(xì)設(shè)計(jì)是在概要設(shè)計(jì)之后進(jìn)行的,它利用概要設(shè)計(jì)的結(jié)果,對(duì)系統(tǒng)中的每個(gè)模塊給出足夠的過程性

描述。(V)

36.在變更控制中,基線控制可以用來確保由不同用戶所執(zhí)行的并發(fā)變更。(X)

五、簡(jiǎn)答題

1、可復(fù)用的軟件元素包括(選5種):

項(xiàng)目計(jì)劃、成本估計(jì)、體系結(jié)構(gòu)、需求模型和規(guī)格說明、設(shè)計(jì)、用戶文檔和技術(shù)文檔、用戶界面、數(shù)

據(jù)結(jié)構(gòu)、測(cè)試用例。

2、傳統(tǒng)“瀑布模型”的主要缺陷及其原因:

在項(xiàng)目的早期,用戶常常很難清楚地給出所有需求,瀑布模型卻要求如此。由丁?瀑布模型的特點(diǎn),早

期的錯(cuò)誤直到開發(fā)晚期才能被發(fā)現(xiàn),開發(fā)的風(fēng)險(xiǎn)較大。

3原型化方法主要用于解決什么問題?試說明這種方法的主要優(yōu)缺點(diǎn)。

建立原型的主要原因是為了解決在產(chǎn)品開發(fā)的早期階段需求大確定的問題,用戶、經(jīng)理和其他非技術(shù)項(xiàng)

H風(fēng)險(xiǎn)承擔(dān)者發(fā)現(xiàn)在確定和開發(fā)產(chǎn)品時(shí),原型可以使他們的想象更具體化。原型在軟件開發(fā)過程中可以起

到以下主要作用:

(1)明確并完善需求原型作為一種需求工具,它初步實(shí)現(xiàn)所理解的系統(tǒng)的一部分。用戶對(duì)原型的

評(píng)價(jià)可以指出需求中的許多問題,在你開發(fā)真正產(chǎn)品之前,可以最低的費(fèi)用來解決這些問題。

(2)探索設(shè)計(jì)選擇方案原型作為一種設(shè)計(jì)工具,用它可以探索不同的用戶界面技術(shù),使系統(tǒng)達(dá)到

最佳的可用性,并且可以評(píng)價(jià)可能的技術(shù)方案。

(3)發(fā)展為最終的產(chǎn)品原型作為一種構(gòu)造工具,是產(chǎn)品最初子集的完整功能實(shí)現(xiàn),通過一系列小

規(guī)模的開發(fā)循環(huán),你可以完成整個(gè)產(chǎn)品的開發(fā)。

4、比較增量模型和螺旋模型的特點(diǎn),有什么不同和相似的地方?

答:增量模型是瀑布模型的順序特征與快速原型法的迭代特征相結(jié)合的產(chǎn)物。螺旋模型是一種迭代模型,

每迭代一次,螺旋線就前進(jìn)一周。增量模型每個(gè)增量具有高內(nèi)聚低耦合,高度的獨(dú)立性。而螺旋模型它在

結(jié)合瀑布模型與快速原型的基礎(chǔ)上還增加了風(fēng)險(xiǎn)分析。

5、什么是模塊獨(dú)立性?用什么度量?

答:模塊獨(dú)立性指每個(gè)模塊只完成系統(tǒng)要求的獨(dú)立的子功能,并且與其他模塊的聯(lián)系最少且接口簡(jiǎn)單。模塊

獨(dú)立的概念是模塊化、抽象、信息隱蔽和局部化概念的直接結(jié)果。

獨(dú)7性可以從兩個(gè)方面來度最:模塊本身的內(nèi)聚性(Cohesion)和模塊之間的耦合(Coupling)。

6、比較概要設(shè)計(jì)復(fù)審和過程設(shè)計(jì)復(fù)審的評(píng)審內(nèi)容,并說明他們采取的復(fù)審方式有何異同。

答:概要設(shè)計(jì)復(fù)審的重點(diǎn)放在系統(tǒng)的總體結(jié)構(gòu)、模塊劃分、內(nèi)外結(jié)構(gòu)等方面。例如軟件結(jié)構(gòu)是否滿足需求?

結(jié)構(gòu)形態(tài)是否合理?層次是否清晰?模塊的劃分是不是符合優(yōu)化原則?系統(tǒng)的人機(jī)界面、內(nèi)外部接口、以

及出錯(cuò)處理是不是合理等。

過程設(shè)計(jì)復(fù)審的重點(diǎn)放在模塊的具體設(shè)計(jì)上。例如模塊設(shè)計(jì)能否滿足其功能與性能要求?選擇算法與數(shù)據(jù)

結(jié)構(gòu)是否合理,是否符合編程語言的特點(diǎn)?設(shè)計(jì)描述簡(jiǎn)單、清晰等。

概要設(shè)計(jì)復(fù)審常用的更審方式是正式及審。

7、軟件測(cè)試的基本任務(wù)是什么?測(cè)試與糾錯(cuò)有什么不同?

測(cè)試的目的是發(fā)現(xiàn)程序錯(cuò)誤:測(cè)試的任務(wù)是通過在計(jì)算機(jī)上執(zhí)行程序,暴露程序中潛在的錯(cuò)誤。

糾錯(cuò)的目的是定位和糾正錯(cuò)誤;糾錯(cuò)的任務(wù)是軟件故障,保證程序的可靠運(yùn)行。

通常把一次程序執(zhí)行需要的測(cè)試數(shù)據(jù)成為一個(gè)測(cè)試用例,每個(gè)測(cè)試用例產(chǎn)生一個(gè)相應(yīng)的測(cè)試結(jié)果,如果它

與期望結(jié)果不符,便說明程序中存在錯(cuò)誤,需要用糾錯(cuò)來改正。

8.怎樣理解下面的話所蘊(yùn)含的意義:“程序測(cè)試只能證明錯(cuò)誤的存在,但不能證明錯(cuò)誤不存在”、“測(cè)試是為

了證明程序有錯(cuò),而不是證明程序無錯(cuò)”

揭示了測(cè)試固有的一個(gè)重要性質(zhì)一一不徹底性。徹底測(cè)試就是讓被測(cè)程序在一切可能的輸入情況下全部執(zhí)

行一遍,又稱窮舉測(cè)試。在實(shí)際情況中是根本無法實(shí)現(xiàn)的。這就注定了一切實(shí)際測(cè)試都是不徹底的,當(dāng)然

也就不能保證測(cè)試后的程序不存在遺留的錯(cuò)誤。

9、糾錯(cuò)和糾錯(cuò)性維護(hù)有哪些異同?

答:糾錯(cuò)的目的是定位和糾正錯(cuò)誤;糾錯(cuò)的任務(wù)是軟件故障,保證程序的可靠運(yùn)行。

糾借性維護(hù)是由于軟件測(cè)試的不徹底性,任何大型軟件交付使月后,都會(huì)繼續(xù)發(fā)現(xiàn)潛在的錯(cuò)誤,對(duì)它們進(jìn)

行診斷和改正。目的在于糾正在開發(fā)期間未能發(fā)現(xiàn)的遺留錯(cuò)誤。

10、什么是軟件危機(jī)?為什么會(huì)產(chǎn)生軟件危機(jī)?

答:軟件危機(jī)是指在計(jì)算機(jī)軟件的開發(fā)和維護(hù)過程中遇到的一系列嚴(yán)重問題。

(1).軟件維護(hù)費(fèi)用急劇上升,直接或脅計(jì)算機(jī)應(yīng)用的夸大。

⑵.軟件生產(chǎn)技術(shù)進(jìn)步緩慢

11、什么是快速原型法?其快速表現(xiàn)在哪里?

答:首先建立一個(gè)能夠反映用戶主要需求的原型,讓川戶實(shí)際看一看未來系統(tǒng)的概貌,以便判斷哪些功能是

符合需要的,哪些方面還需要改進(jìn)。然后將原型改進(jìn),最終建立完全符合用戶要求的新系統(tǒng)。它的快速表

現(xiàn)在能夠縮短開發(fā)周期的語言和工具,能在短時(shí)間內(nèi)提供出成品,但不包括成品中的細(xì)節(jié),然后讓客戶進(jìn)

行對(duì)比。

12、自頂而下漸增測(cè)試與日底而上漸增測(cè)試各有何優(yōu),缺點(diǎn)

答:

①自頂而下漸增測(cè)試

優(yōu)點(diǎn):不需要測(cè)試驅(qū)動(dòng)程序,能夠在測(cè)試階段的早期實(shí)現(xiàn)并驗(yàn)證系統(tǒng)的主要功能,而且能夠盡早發(fā)現(xiàn)上層模塊

的接口錯(cuò)誤.

缺點(diǎn):需要存根程序,底層錯(cuò)誤發(fā)現(xiàn)較晚.

②自底而上漸增測(cè)試

優(yōu)點(diǎn)與缺點(diǎn)和白頂而下漸增測(cè)試相反.

13、提高可維護(hù)性的方法有哪些

答:提高軟件的可維護(hù)性,最根本的是使每一開發(fā)人員懂得維護(hù)的重要性,在各個(gè)開發(fā)階段都把減少今后的

維護(hù)工作量作為努力的目標(biāo)。

開發(fā)時(shí)期注意提供完整和一致的文檔和采用現(xiàn)代化的開發(fā)方法。

在維護(hù)時(shí)期更要保持程序的可維護(hù)性,使之不受損害或破壞。

14、簡(jiǎn)述軟件測(cè)試要經(jīng)過哪幾個(gè)步驟,每個(gè)步驟與什么文檔有關(guān)?

測(cè)試過程按4個(gè)步驟進(jìn)行;即單元測(cè)試(模塊測(cè)試)、集成測(cè)試(子系統(tǒng)測(cè)試和系統(tǒng)測(cè)試)、確認(rèn)測(cè)試(驗(yàn)收測(cè)

試)和平行運(yùn)行。

單元測(cè)試集中對(duì)用源代碼實(shí)現(xiàn)的每一個(gè)程序單元進(jìn)行測(cè)試,與其相關(guān)的文檔是單元測(cè)試計(jì)劃和詳細(xì)設(shè)計(jì)說明

書.

集成測(cè)試把已測(cè)試過的模塊組裝過來,主要對(duì)與設(shè)計(jì)相關(guān)的軟件體系結(jié)構(gòu)的構(gòu)造進(jìn)行測(cè)試.與其相關(guān)的文檔

是集成測(cè)試計(jì)劃和軟件需求說明書.

確認(rèn)測(cè)試則是要檢查已實(shí)現(xiàn)的軟件是否滿足了需求規(guī)格說明中確定了的各種需求,以及軟件配置是否完全,

正確.與其相關(guān)的文檔是確認(rèn)測(cè)試計(jì)劃和軟件需求說明書.

平行運(yùn)行把已經(jīng)經(jīng)過確認(rèn)的軟件納入實(shí)際運(yùn)行環(huán)境中,與其他系統(tǒng)成份組合在一起進(jìn)行測(cè)試.與其相關(guān)的文

檔:用戶指南,使用手冊(cè)等.

15、可復(fù)用構(gòu)件庫中有哪幾種常見的分類模式?

目前最常用的有3種分類模式。

枚舉分類:通過定義一個(gè)層次結(jié)構(gòu)來對(duì)構(gòu)件進(jìn)行分類。構(gòu)件庫中的可及用構(gòu)件按照某種標(biāo)準(zhǔn)被分成了

若干個(gè)大類,而每個(gè)大類中的構(gòu)件再被劃分成若干個(gè)小類,依此類推,這樣就形成了?個(gè)構(gòu)件分類的層次

結(jié)構(gòu)。

刻面分類:一個(gè)刻面描述構(gòu)件某一個(gè)方面的特征??堂娣诸悇t是從不同的側(cè)面對(duì)構(gòu)件進(jìn)行分類,每一

種分類方式稱為一個(gè)刻面:不同的刻面根據(jù)其重要性可以設(shè)置不同的優(yōu)先級(jí)。

屬性-值分類:為領(lǐng)域中的所有構(gòu)件定義一組屬性,然后賦給這組屬性一組值。通過屬性,查找構(gòu)件。

16.在軟件工程管理中,如何理解人員-時(shí)間權(quán)衡定律和Brooks定律?

人員-時(shí)間權(quán)衡定律:開發(fā)工作量與開發(fā)時(shí)間的4次方成反比。

意味著如果將開發(fā)時(shí)間適當(dāng)延長(zhǎng),將顯著減少開發(fā)工作量。反過來,壓縮時(shí)間或搶進(jìn)度只能使開發(fā)工

作量急劇增加。在時(shí)間允許的情況下,適當(dāng)減少人員會(huì)提高工作效率,降低軟件開發(fā)成本。

Brooks定律:向一個(gè)已經(jīng)延晚的項(xiàng)目追加開發(fā)人員,可能使它完成得更晚。Brooks從另一個(gè)角度說明

了“時(shí)間和人員不能互換”這一原則,當(dāng)開發(fā)人員以算術(shù)級(jí)數(shù)增長(zhǎng)時(shí),人員之間的通信將以幾何級(jí)數(shù)增長(zhǎng),

從而可能導(dǎo)致得不償失的結(jié)果。

軟件開發(fā)寧可時(shí)間長(zhǎng)一點(diǎn),人員少一點(diǎn),這樣可以減少人員之間的通信開銷,工作效率會(huì)更高。

17、螺旋模型和構(gòu)建集成模型的異同?

螺旋模型在結(jié)合瀑布模型與快速原型法的基礎(chǔ)上增加了風(fēng)險(xiǎn)分析,但它并要求每一個(gè)增量都是可運(yùn)行

的程序,在早期的迭代中,發(fā)布的增量可以是一個(gè)紙上的模型或原型,在以后的迭代中產(chǎn)生更加完善的版

本。構(gòu)件集成模型利用預(yù)先封裝好的軟件構(gòu)件來構(gòu)造應(yīng)用軟件系統(tǒng),融合螺旋模型的很多特征,支持軟件

開發(fā)的迭代。

18、設(shè)有如下程序流程圖根據(jù)表中的測(cè)試數(shù)據(jù)回答如下問題:

(1)滿足點(diǎn)覆蓋的最少測(cè)試組合是什么?

(2)滿足邊覆蓋的最少測(cè)試組合是什么?

(1)2,3,4

(2)1,2,3,4

19、多模塊程序測(cè)試的策略是什么?每個(gè)階段與什么文檔有關(guān)?

測(cè)試過程按4個(gè)步驟進(jìn)行,即單元測(cè)試(模塊測(cè)試)、集成測(cè)試(子系統(tǒng)測(cè)試和系統(tǒng)測(cè)試)、確認(rèn)測(cè)試

(驗(yàn)收測(cè)試)和系統(tǒng)測(cè)試。

單元測(cè)試集中對(duì)用源代碼實(shí)現(xiàn)的每一個(gè)程序單元進(jìn)行測(cè)試,與其相關(guān)的文檔是單元測(cè)試計(jì)劃和詳細(xì)設(shè)

計(jì)說明書。

集成測(cè)試把已測(cè)試過的模塊組裝起來,主要對(duì)與設(shè)計(jì)相關(guān)的軟件體系結(jié)構(gòu)的構(gòu)造進(jìn)行測(cè)試。與其相關(guān)

的文檔是集成測(cè)試計(jì)劃和軟件需求說明書。

確認(rèn)測(cè)試則是要檢查已實(shí)現(xiàn)的軟件是否滿足了需求規(guī)格說明中確定了的各種需求,以及軟件配置是否

完全、正確。與其相關(guān)的文檔是確認(rèn)測(cè)試計(jì)劃和軟件需求說明書。

系統(tǒng)測(cè)試把已經(jīng)經(jīng)過確認(rèn)的軟件納入實(shí)際運(yùn)行環(huán)境中,與其他系統(tǒng)成份組合在一起進(jìn)行測(cè)試.與其相

關(guān)的文檔:用戶指南、使用手冊(cè)等。

20、類和類之間的結(jié)構(gòu)關(guān)系有哪些?并舉例說明。

聚集和泛化。聚集表類間的整體與部分的關(guān)系。例如一個(gè)窗口曰標(biāo)題、外框和顯示區(qū)組成。泛化表類間的

一般與特殊的關(guān)系。例如動(dòng)物分為飛鳥和走獸。

21、構(gòu)件必須具有的哪些特征?

構(gòu)件應(yīng)具有的特征:(1)通用性⑵可變性⑶易組裝性

22、確定和調(diào)整包之間的依賴關(guān)系遵循的一般原則?

復(fù)用價(jià)值較高的包不要依賴復(fù)用價(jià)值較低的包。包應(yīng)只依賴于同一層及下一層中的包。

包之間的依賴關(guān)系最好不要跨層。不要讓包直接依賴包含實(shí)現(xiàn)子系統(tǒng)接口的系統(tǒng)元素的包。

23、什么是維護(hù)的副作用?有哪幾種?

所謂副作用是指因修改軟件而造成的錯(cuò)誤或其它不希望發(fā)生的情況,有以下三種副作用:

(1)修改代碼的副作用

(2)修改數(shù)據(jù)的副作用

(3)文檔的副作用

24、2個(gè)用例A,B之間要建立依賴關(guān)系,如果執(zhí)行A用例時(shí)必須執(zhí)行B用例,則采用哪種關(guān)系?如果執(zhí)行A

用例時(shí)不一定執(zhí)行B用例,則采用哪種關(guān)系?分別畫圖表示。

如果執(zhí)行A用例時(shí)必須執(zhí)行B用例,則采用包含關(guān)系。如果執(zhí)行A用例時(shí)不一定執(zhí)行B川例,則采用擴(kuò)展

關(guān)系。

AB

AB

六、綜合題

1、描述題(7分)

下面是一個(gè)程序流程圖,試分別用N-S圖表示之,并計(jì)算其McCabe復(fù)雜度。

評(píng)分標(biāo)準(zhǔn):N-S圖中每畫正確一個(gè)步驟得1分,四個(gè)步驟共4分。

對(duì)應(yīng)的N-S圖如下

評(píng)分標(biāo)準(zhǔn):答對(duì)McCabe復(fù)雜度得3分。

McCabe復(fù)雜度都為3。

2、根據(jù)下列條件使用黑盒法設(shè)計(jì)測(cè)試用例。(12分)

某個(gè)程序模塊的輸入是一個(gè)字符串,以字母開頭,后面由字母和數(shù)字任意組合,字符最長(zhǎng)

為8個(gè)字符。

解:(一)(1)劃分等價(jià)類并編號(hào),如下表示:(4分)

輸入數(shù)據(jù)有效等價(jià)類無效等價(jià)類

以字母開頭的字符串不以字母開頭的字

以字母開頭

(1)符串(2)

后面由字母和由字母和數(shù)字構(gòu)成的字包含字母和數(shù)字之

數(shù)字任意組合符串(3)外的特殊字符的字

符串(4)

字符最長(zhǎng)為8個(gè)長(zhǎng)度為(1-8)的字符串長(zhǎng)度為0(6)

字符(5)大于8的字符串(7)

(2)為合理等價(jià)類設(shè)計(jì)測(cè)試用例(1分)

T1234567,預(yù)期結(jié)果:正常運(yùn)行,輸出為…。覆蓋(1)(3)(5)

(3)為不合理等價(jià)類設(shè)計(jì)測(cè)試用例(3分)

12345678,預(yù)期結(jié)果:米告輸入錯(cuò)誤。覆蓋(2)

T123S567,預(yù)期結(jié)果:表告輸入錯(cuò)誤。覆蓋(4),

空字符串,預(yù)期結(jié)果:報(bào)告輸入錯(cuò)誤。覆蓋(6)

T123456789,預(yù)期結(jié)果:報(bào)告輸入錯(cuò)誤。覆蓋(7)

(二)運(yùn)用邊界值法增加的測(cè)試用例(4分)

長(zhǎng)度為(1-8)的字符串

長(zhǎng)度為0的字符串:己有

長(zhǎng)度為1的字符串:T,預(yù)期結(jié)果:正常運(yùn)行,輸出為…。

長(zhǎng)度為2的字符串:T1,預(yù)期結(jié)果:正常運(yùn)行,輸出為…。

長(zhǎng)度為7的字符串:T123456,預(yù)期結(jié)果:正常運(yùn)行,輸出為…。

長(zhǎng)度為8的字符串:T1234567,預(yù)期結(jié)果:正常運(yùn)行,輸出為…。

長(zhǎng)度為9的字符串:T12345678,預(yù)期結(jié)果:報(bào)告輸入錯(cuò)誤。

3.圖書管理系統(tǒng)功能性需求說明如下:(12分)

圖書管理系統(tǒng)能夠?yàn)橐欢〝?shù)量的借閱者提供服務(wù)。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論