2023軟件工程導(dǎo)論期末考試題庫及參考答案_第1頁
2023軟件工程導(dǎo)論期末考試題庫及參考答案_第2頁
2023軟件工程導(dǎo)論期末考試題庫及參考答案_第3頁
2023軟件工程導(dǎo)論期末考試題庫及參考答案_第4頁
2023軟件工程導(dǎo)論期末考試題庫及參考答案_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

.. ..2023軟件工程導(dǎo)論期末考試題庫及參考答案1.填空題一般來說,可以從

一致性 、_完整性 、_現(xiàn)實性 和_有效性 四個方面驗證軟件需求的正確性。IPO圖是_輸入、處理和輸出圖_的簡稱,它是美國IBM公司發(fā)展完善起來的一種圖形工具。系統(tǒng)流程圖是描述 物理模型 的傳統(tǒng)工具,用圖形符號表達(dá)了系統(tǒng)中各種元素之間的_

信息流動 情況。數(shù)據(jù)流圖中的箭頭表示

數(shù)據(jù)流 ,橢圓或圓形表示

數(shù)據(jù)處理 ,矩形表示數(shù)據(jù)的源點/終點 。軟件測試的步驟按順序分別是:

單元測試 、子系統(tǒng)測試、系統(tǒng)測試(子系統(tǒng)和系統(tǒng)測試通常稱為集成測試)、

確認(rèn)測試 和

系統(tǒng)測試(集成測試) 軟件生命周期一般可分為_問題定義_、可行性研究、_需求分析_、設(shè)計編碼、_測試_、運行與維護(hù)階段??尚行匝芯恐饕性谝韵滤膫€方面_經(jīng)濟可行性_、

技術(shù)可行性 、

法律可行性

和抉擇。在結(jié)構(gòu)化設(shè)計中,HIPO圖應(yīng)用在

總體設(shè)計

階段,由IPO圖和_層次圖_兩部分組成。復(fù)雜問題的對象模型通常由下述五個層次組成:主題層、

類與對象_層、

結(jié)構(gòu) 層、_屬性_層和

服務(wù)_層。實施精化設(shè)計的目標(biāo)是基于模塊的“高內(nèi)聚低耦合”的原則,提高模塊的_獨立性。軟件生命周期一般可分為

問題定義_、可行性研究、

需求分析 、概要設(shè)計 、詳細(xì)設(shè)計、編碼、

軟件測試_、運行與維護(hù)階段。面向?qū)ο蟮臄?shù)據(jù)存儲管理模式分為

文件 、_關(guān)系數(shù)據(jù)庫 和

面向?qū)ο髷?shù)據(jù)庫 三種。單元測試一般以_白盒_測試為主,

黑盒 測試為輔。軟件工程三要素包括_方法_、

工具 和

過程 ,其中,_過程_支持軟件開發(fā)的各個環(huán)節(jié)的控制和管理。類構(gòu)件的重用方式有_實力重用 、

繼承重用 和_多態(tài)重用 三種。能力成熟度模型分為5個等級:初始級、

可重復(fù) 級、

已定義 級、

已管理

級和

優(yōu)化 級。2.判斷題向滯后的項目中增加人手會使得項目更加滯后。(T)過程描述語言可以用于描述軟件的系統(tǒng)結(jié)構(gòu)。(F)3.按照瀑布模型開發(fā)軟件的一條指導(dǎo)思想是清楚地區(qū)分邏輯設(shè)計與物理設(shè)計,以便盡早開始程序的物理實現(xiàn)。(F

)5.

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

F)

6.層次圖用來描述軟件的層次結(jié)構(gòu)。層次圖中的一個矩形框代表一個模塊,方框間的連線表示模塊的組成關(guān)系。在層次圖中除最頂層的方框之外,給每個方框都加編號,即成為帶有編號的層次圖。(

F

)建立動態(tài)模型的第一步,是編寫典型交互行為的腳本。(

T)軟件錯誤可能出現(xiàn)在開發(fā)過程的早期,越早修改越好。(T)9.軟件模塊的耦合是越低越好。(

T)一個好的測試用例在于能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯誤。( T

)面向?qū)ο笤O(shè)計的結(jié)果只能采用面向?qū)ο笳Z言來實現(xiàn)(

F

)一個成功的項目唯一提交的就是運行程序。(F )用例之間的關(guān)系有3種。( T

)面向?qū)ο笤O(shè)計準(zhǔn)則也要遵循弱耦合的原則,但是繼承耦合則應(yīng)該提高,緊密地繼承耦合與高度的一般-特殊內(nèi)聚是一致的。

(T

)軟件工作的考慮范圍主要是程序設(shè)計和實現(xiàn)。(F )環(huán)形復(fù)雜度定量度量程序的邏輯復(fù)雜度,可以用這個公式來計算環(huán)形復(fù)雜度:流圖G的環(huán)形復(fù)雜度V(G)

=N–

E+

2。(改成E-N+2)(F

)等價類劃分方法將所有可能的輸入數(shù)據(jù)劃分成若干部分,然后從每一部分中選取少數(shù)有代表性的數(shù)據(jù)作為測試用例。(

T

)在進(jìn)行總體(改成概要)設(shè)計時應(yīng)加強模塊間的聯(lián)系。( F )系統(tǒng)結(jié)構(gòu)圖是精確表達(dá)程序結(jié)構(gòu)的圖形表示法。因此,有時也可以將系統(tǒng)結(jié)構(gòu)圖當(dāng)作系統(tǒng)流程圖使用。( T )建立動態(tài)模型的第一步,是編寫典型交互行為的腳本。( T )在程序調(diào)試時,找出錯誤的位置和性質(zhì)比改正該錯誤更難。( F )如果通過軟件測試沒有發(fā)現(xiàn)錯誤,則說明軟件是正確的。( F )快速原型模型可以有效地適應(yīng)用戶需求的動態(tài)變化。( T ).. ..模塊化,信息隱藏,抽象和逐步求精的軟件設(shè)計原則有助于得到高內(nèi)聚,低耦合度的軟件產(chǎn)品。( T )集成測試主要由用戶來完成。( F )26.面向?qū)ο?對象+類+繼承+消息傳遞。( T )27.面向?qū)ο蟮姆治鍪敲嫦蛴嬎銠C系統(tǒng)建立軟件系統(tǒng)的對象模型。( F

)3.選擇題)。具有風(fēng)險分析的軟件生命周期模型是(A.瀑布模型C.螺旋模型

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

過程C.

硬件環(huán)境B.噴泉模型D.增量模型B.

軟件系統(tǒng)D.

人員軟件的復(fù)雜性是(A.

固有的C.

可消除的),它引起人員通信困難、開發(fā)費用超支、開發(fā)時間超時等問題。B.

人為的D.

不可降低的在結(jié)構(gòu)化分析方法中,(A.

數(shù)據(jù)字典C.

數(shù)據(jù)流圖)表達(dá)系統(tǒng)內(nèi)部數(shù)據(jù)運動的圖形化技術(shù)。B.

實體關(guān)系圖D.

狀態(tài)轉(zhuǎn)換圖“軟件危機”是指( )。A.計算機病毒的出現(xiàn) B.利用計算機進(jìn)行經(jīng)濟犯罪活動C.軟件開發(fā)和維護(hù)中出現(xiàn)的一系列問題

D.人們過分迷戀計算機系統(tǒng)隨著軟硬件環(huán)境變化而修改軟件的過程是(A.校正性維護(hù)C.完善性維護(hù)需求分析中開發(fā)人員要從用戶那里了解(軟件做什么C.輸入的信息軟件詳細(xì)設(shè)計的主要任務(wù)是確定每個模塊的(A.算法和使用的數(shù)據(jù)結(jié)構(gòu)C.功能

9.為了提高模塊的獨立性,模塊內(nèi)部最好是()。B.適應(yīng)性維護(hù)D.預(yù)防性維護(hù))。B.用戶使用界面D.軟件的規(guī)模)。B.外部接口D.編程)。//外部耦合,功能內(nèi)聚A.邏輯內(nèi)聚C.功能內(nèi)聚10.一個模塊的(B.時間內(nèi)聚D.通信內(nèi)聚)太大一般是因為缺乏中間層次,應(yīng)當(dāng)適當(dāng)增加中間層次的控制模塊。B.

寬度D.

扇入A.深度C.

扇出模塊的內(nèi)聚性最高的是(A.邏輯內(nèi)聚C.偶然內(nèi)聚)。B.時間內(nèi)聚D.功能內(nèi)聚需求分析是( )。A.

軟件開發(fā)工作的基礎(chǔ)C.

由系統(tǒng)分析員單獨完成的在白盒測試技術(shù)測試用例的設(shè)計中,(A.語句覆蓋C.條件組合覆蓋B.

軟件生存周期的開始D.

由用戶自己單獨完成的)是最強的覆蓋標(biāo)準(zhǔn)。B.路徑覆蓋D.判定覆蓋14. 軟件維護(hù)時,對測試階段未發(fā)現(xiàn)的錯誤進(jìn)行測試、診斷、定位、糾錯,直至修改的回歸測試過程稱為(A.

改正性維護(hù)C.

完善性維護(hù))。B.

適應(yīng)性維護(hù)D.

預(yù)防性維護(hù)15.()是把對象的屬性和操作結(jié)合在一起,構(gòu)成一個獨立的對象,其內(nèi)部信息對外界是隱蔽的,外界只能通過有限的接口與對象發(fā)生聯(lián)系。A.

多態(tài)性C.

封裝B.

繼承D.

消息16.對象實現(xiàn)了數(shù)據(jù)和操作的結(jié)合,使數(shù)據(jù)和操作()于對象的統(tǒng)一體中。C.封裝A.結(jié)合D.抽象17.面向?qū)ο蟮拈_發(fā)方法中,(B.隱藏)將是面向?qū)ο蠹夹g(shù)領(lǐng)域內(nèi)占主導(dǎo)地位的標(biāo)準(zhǔn)建模語言。A.Booch方法 B.Coad方法 C.UML語言D.OMT方法18.( )意味著一個操作在不同的類中可以有不同的實現(xiàn)方式。A.多態(tài)性 B.多繼承 C.類的可復(fù)用D.信息隱藏19.單元測試的測試用例主要根據(jù)( )的結(jié)果來設(shè)計。.. ..A.需求分析B.源程序C.概要設(shè)計

D.詳細(xì)設(shè)計20.

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

糾正錯誤B.發(fā)現(xiàn)錯誤C.

避免錯誤D.證明正確21.類構(gòu)件的重用方式有多態(tài)重用、繼承重用和( )A.實例重用B.重載重用C.

代碼重用D.

方法重用22.

支持面向?qū)ο蠹夹g(shù)的軟件生存周期模型是()。A.

噴泉模型C.

增量模型在白盒測試技術(shù)測試用例的設(shè)計中,(A.語句覆蓋C.條件組合覆蓋B.

螺旋模型D.

瀑布模型)是最弱的覆蓋標(biāo)準(zhǔn)。B.路徑覆蓋D.判定覆蓋1.

下面哪些測試方法屬于白盒測試()。//BCD是黑盒測試C、邊界值分析A、基本路徑測試 B、等價類劃分D、錯誤推測E、邏輯覆蓋測試2.

下列哪些選項是屬于內(nèi)容耦合( )。A、B、C、D、一個模塊直接訪問另一個模塊的內(nèi)部數(shù)據(jù)一個模塊有多個入口一個模塊不通過正常入口轉(zhuǎn)到另一模塊內(nèi)部一個模塊只有一個入口3.

下列屬于度量效益方法的是(A、貨幣的時間價值C、收入)。B、投資回收期D、投資回報率4.

數(shù)據(jù)流圖是用于表示軟件模型的一種圖示方法,在下列可采用的繪制方法中,哪些是常采用的(A、自頂向下)。B、自底向上 C、分層繪制 D、逐步求精5.

軟件設(shè)計中一般將用到圖形工具,下列哪種些可用作設(shè)計的圖形工具(A、結(jié)構(gòu)圖B、實體聯(lián)系圖C、IPO圖D、層次圖)。4.簡答題:1. 簡述增量模型的優(yōu)點和缺點。答:優(yōu)點

:采用增量模型的優(yōu)點是人員分配靈活,剛開始不用投入大量人力資源。如果核心產(chǎn)品很受歡迎,則可增加人力實現(xiàn)下一個增量。當(dāng)配備的人員不能在設(shè)定的期限內(nèi)完成產(chǎn)品時,它提供了一種先推出核心產(chǎn)品的途徑。這樣即可先發(fā)布部分功能給客戶,對客戶起到鎮(zhèn)靜劑的作用。此外,增量能夠有計劃地管理技術(shù)風(fēng)險。缺點 :1)由于各個構(gòu)件是逐漸并入已有的軟件體系結(jié)構(gòu)中的,所以加入構(gòu)件必須不破壞已構(gòu)造好的系統(tǒng)部分,這需要軟件具備開放式的體系結(jié)構(gòu)。2)在開發(fā)過程中,需求的變化是不可避免的。增量模型的靈活性可以使其適應(yīng)這種變化的能力大大優(yōu)于瀑布模型和快速原型模型,但也很容易退化為邊做邊改模型,從而是軟件過程的控制失去整體性。3)如果增量包之間存在相交的情況且未很好處理,則必須做全盤系統(tǒng)分析,這種模型將功能細(xì)化后分別開發(fā)的方法較適應(yīng)于需求經(jīng)常改變的軟件開發(fā)過程。2. 簡述軟件設(shè)計的過程。答:軟件設(shè)計是把許多事物和問題抽象起來,并且抽象它們不同層次和角度,是將需求轉(zhuǎn)變?yōu)檐浖愂龅倪^程,是迭代的過程。軟件設(shè)計,要根據(jù)需求規(guī)格說明

書,對整個設(shè)計過程進(jìn)行計劃,然后實施具體的設(shè)計過程,即“先整體,再局部”,也是不斷迭代和精化的過程。然后需要對生成的設(shè)計規(guī)格說明書進(jìn)行評審,啟動

質(zhì)量評價的標(biāo)準(zhǔn),若未通過評審,需重新修改設(shè)計,直至評審?fù)ㄟ^,確定最后定型的過程本身。進(jìn)入后續(xù)階段,完成軟件設(shè)計過程。.. ..3.原型化方法主要用于解決什么問題?試說明這種方法的主要優(yōu)缺點。答:建立原型的主要原因是為了解決在產(chǎn)品開發(fā)的早期階段需求不確定的問題,用戶、經(jīng)理和其他非技術(shù)項目風(fēng)險承擔(dān)者發(fā)現(xiàn)在確定和開發(fā)產(chǎn)品時,原型可以使他們的想象更具體化。原型在軟件開發(fā)過程中可以起到以下主要作用:明確并完善需求原型作為一種需求工具,它初步實現(xiàn)所理解的系統(tǒng)的一部分。用戶對原型的評價可以指出需求中的許多問題,在你開發(fā)真正產(chǎn)品之前,可以最低的費用來解決這些問題。探索設(shè)計選擇方案原型作為一種設(shè)計工具,用它可以探索不同的用戶界面技術(shù),使系統(tǒng)達(dá)到最佳的可用性,并且可以評價可能的技術(shù)方案。發(fā)展為最終的產(chǎn)品原型作為一種構(gòu)造工具,是產(chǎn)品最初子集的完整功能實現(xiàn),通過一系列小規(guī)模的開發(fā)循環(huán),你可以完成整個產(chǎn)品的開發(fā)。4.請看下列偽代碼程序,要求完成下列問題:畫出代碼的流程圖(4分)根據(jù)該程序流程圖畫出該程序的流圖;(4分)計算該流圖的環(huán)形復(fù)雜度;(4分)STARTINPUT

(A,B,C)IF

A>5

THENX=10

ELSE

X=1ENDIF

IF

B>10THEN

Y=20ELSE

Y=2ENDIF

IF

C>15THEN

Z=30ELSE

Z=3END

IFPRINT

(X,Y,Z)STOP答:(1)(2)(3).. ..法一:環(huán)形復(fù)雜度=E-N+2=18-16+2=4法二:環(huán)形復(fù)雜度=P+1=3+1=45.簡述結(jié)構(gòu)化程序設(shè)計方法的基本特點。答:盡可能少用goto語句的程序設(shè)計方法;每個代碼塊都單入單出;使用控制結(jié)構(gòu):順序、選擇和循環(huán);自頂向下逐步求精。6.請比較快速原型模型和螺旋模型的優(yōu)缺點,并說明各自的適用范圍。答:模型 優(yōu)點 缺點 適用范圍快速原型

易于獲取客戶 可能導(dǎo)致系統(tǒng)設(shè)計差、效 適用于對軟件需求缺乏模型 真實需求 率低,難于維護(hù) 準(zhǔn)確認(rèn)識的情況螺旋模型

風(fēng)險驅(qū)動,降 風(fēng)險分析人員需要有經(jīng)驗 內(nèi)部開發(fā)的大型軟件項低風(fēng)險 且經(jīng)過充分訓(xùn)練 目7.衡量模塊獨立性的兩個定性標(biāo)準(zhǔn)是什么?這兩個標(biāo)準(zhǔn)的定義分別是什么?在我們的軟件設(shè)計中,關(guān)于模塊獨立性我們追求的目標(biāo)是什么?答:衡量模塊獨立性的兩個定性標(biāo)準(zhǔn)是內(nèi)聚和耦合(2分)。耦合是指對一個軟件結(jié)構(gòu)內(nèi)不同模塊彼此之間互相依賴(連接)的緊密程度;而內(nèi)聚則標(biāo)志一個模塊內(nèi)部各個元素彼此結(jié)合的緊密程度(2分)。在我們的軟件設(shè)計中,關(guān)于模塊獨立性我們追求的目標(biāo)是緊密內(nèi)聚松散耦合(1分)。8.什么是黑盒測試法?答:黑盒測試法把程序看成一個黑盒子,完全不考慮程序的內(nèi)部結(jié)構(gòu)和處理過程(2分)。它只檢查程序功能是否能按照規(guī)格說明書的規(guī)定正常使用(1分),程序是否能適當(dāng)?shù)亟邮蛰斎霐?shù)據(jù)(1分),產(chǎn)生正確地輸出信息(1分)。9.面向?qū)ο笤O(shè)計中,存在有哪幾種耦合和內(nèi)聚?答:弱耦合:交互耦合,繼承耦合強內(nèi)聚:服務(wù)內(nèi)聚,類內(nèi)聚,一般-特殊內(nèi)聚10.某個程序的偽碼如下(前面的標(biāo)號只用于標(biāo)明語句順序,不參與程序運行):STARTIF

L1

THENS1DO

WHILE

L2S2IF

L3

THENS3ELSES4

END

IFEND DOEISES5

END

IFSTOP(1) 試將其轉(zhuǎn)換成PAD圖(5分)(2) 計算程序的環(huán)路復(fù)雜度(5分)法一:環(huán)路復(fù)雜度=E-N+2=15-13+2=4法二:環(huán)路復(fù)雜度=P+1=3+1=4.. ..11.簡述面向?qū)ο蟮?個要點的含義。答:面向?qū)ο蟮模磦€要點是:對象分解、數(shù)據(jù)專有、繼承、封裝性。(1分)對象分解:認(rèn)為客觀世界是由各種對象組成的。 (1分)數(shù)據(jù)專有,方法共享:把所有對象都劃分成各種對象類(簡稱為類,class),每個對象類都定義了一組數(shù)據(jù)和一組方法。

(1分)3)繼承:按照子類(或稱為派生類)與父類(或稱為基類)的關(guān)系,把若干個對象類組成一個層次結(jié)構(gòu)的系統(tǒng)(也稱為類等級)。(1分)4)封裝性:對象彼此之間僅能通過傳遞消息互相聯(lián)系。(1分)12.在下面用例圖中,有哪些行為者,有哪些用例?答:行為者:Bank

network,

Manager,

Clerk用例:Authorize

purchase,

Log

onto

redister,

Sell

goods,

Restock

inventory,Open

store13.航空公司托運行李規(guī)定:乘客可以免費托運重量不超過20公斤的行李。當(dāng)行李超過20公斤時,對頭等艙的國內(nèi)乘客超重部分每公斤收費3元,對其它艙的國內(nèi)乘客超重部分每公斤收費5元,對外國乘

溫馨提示

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

評論

0/150

提交評論