北方工業(yè)大學(xué)軟件工程期末復(fù)習(xí)題(含答案)講課教案_第1頁
北方工業(yè)大學(xué)軟件工程期末復(fù)習(xí)題(含答案)講課教案_第2頁
北方工業(yè)大學(xué)軟件工程期末復(fù)習(xí)題(含答案)講課教案_第3頁
北方工業(yè)大學(xué)軟件工程期末復(fù)習(xí)題(含答案)講課教案_第4頁
北方工業(yè)大學(xué)軟件工程期末復(fù)習(xí)題(含答案)講課教案_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

北方工業(yè)大學(xué)軟件工程期末復(fù)習(xí)題(含答案)____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________序號北方工業(yè)大學(xué)序號《軟件工程》課程期末復(fù)習(xí)題A卷2014年春季學(xué)期訂線訂線裝考試方式:閉卷考試時間:120分鐘班級姓名學(xué)號題號一二三四五六七八九十總分得分閱卷人一.簡要回答下列各問題(共40分,每個小題5分)(1)闡述軟件工程的定義。答:是指導(dǎo)計算機軟件開發(fā)和維護(hù)的一門工程學(xué)科;采用工程的概念、原理、技術(shù)和方法來開發(fā)和維護(hù)軟件;把證明正確的管理技術(shù)和最好技術(shù)綜合運用到軟件開發(fā)中;研究經(jīng)濟地開發(fā)出高質(zhì)量的軟件方法和技術(shù);研究有效維護(hù)軟件的方法和技術(shù)。(2)簡述軟件危機的原因。答:缺乏軟件開發(fā)的經(jīng)驗和有關(guān)軟件開發(fā)數(shù)據(jù)的積累,使得開發(fā)計劃很難制定。軟件人員與用戶的交流存在障礙,使得獲取的需求不充分或存在錯誤。軟件開發(fā)過程不規(guī)范。如,沒有真正了解用戶的需求就開始編程序。隨著軟件規(guī)模的增大,其復(fù)雜性往往會呈指數(shù)級升高。需要很多人分工協(xié)作,不僅涉及技術(shù)問題,更重要的是必須有科學(xué)嚴(yán)格的管理。缺少有效的軟件評測手段,提交用戶的軟件質(zhì)量不能完全保證。

(3)畫出軟件生存周期的瀑布模型的示意圖,并簡單評述其優(yōu)缺點。優(yōu)點:優(yōu)點:可強迫開發(fā)人員采用規(guī)范化的方法。嚴(yán)格地規(guī)定了每個階段必須提交的文檔。要求每個階段交出的所有產(chǎn)品都必須是經(jīng)過驗證的。缺點由于瀑布模型幾乎完全依賴于書面的規(guī)格說明,很可能導(dǎo)致最終開發(fā)出的軟件產(chǎn)品不能真正滿足用戶的需要。如果需求規(guī)格說明與用戶需求之間有差異,就會發(fā)生這種情況。瀑布模型只適用于項目開始時需求已確定的情況。1-2瀑布模型示意圖1-2瀑布模型示意圖(4)畫出軟件生存周期的增量模型的示意圖,并簡述其優(yōu)點。能在較短時間內(nèi)向用戶提交可完成一些有用的工作產(chǎn)品,即從第1個構(gòu)件交付之日起,用戶就能做一些有用的工作。能在較短時間內(nèi)向用戶提交可完成一些有用的工作產(chǎn)品,即從第1個構(gòu)件交付之日起,用戶就能做一些有用的工作。逐步增加產(chǎn)品的功能可以使用戶有較充裕的時間學(xué)習(xí)和適應(yīng)新產(chǎn)品,從而減少一個全新的軟件可能給用戶組織帶來的沖擊。項目失敗的風(fēng)險較低,雖然在某些增量構(gòu)件中可能遇到一些問題,但其他增量構(gòu)件將能夠成功地交付給客戶。優(yōu)先級最高的服務(wù)首先交付,然后再將其他增量構(gòu)件逐次集成進(jìn)來。因此,最重要的系統(tǒng)服務(wù)將接受最多的測試。

(5)畫出D.Ross提出的軟件工程結(jié)構(gòu)化分析方法的框架示意圖,并解釋數(shù)據(jù)字典和數(shù)據(jù)流的含義。數(shù)據(jù)字典:數(shù)據(jù)字典:數(shù)據(jù)字典以詞條方式定義在數(shù)據(jù)模型、功能模型和行為模型中出現(xiàn)的數(shù)據(jù)對象及控制信息的特性,給出它們的準(zhǔn)確定義,包括數(shù)據(jù)流、加工、數(shù)據(jù)文件、數(shù)據(jù)元素,以及數(shù)據(jù)源點、數(shù)據(jù)匯點等。數(shù)據(jù)流圖:(6)舉例說明變換型和事務(wù)型流圖的特點。答:變換型流圖由輸入、中心變換和輸出3部分組成,而且逐層展開。如:事務(wù)型流圖通常接受一項事務(wù),根據(jù)事務(wù)處理的特點和性質(zhì),選擇分派一個適當(dāng)?shù)奶幚韱卧?,然后給出結(jié)果。(7)給出下面變換型數(shù)據(jù)流圖對應(yīng)的模塊結(jié)構(gòu)圖。答:

(8)給出下面交易型數(shù)據(jù)流圖對應(yīng)的模塊結(jié)構(gòu)圖。答:(9)舉例說明模塊結(jié)構(gòu)圖優(yōu)化方法中的不同模塊相似部分調(diào)整的原則。答:完全相似的模塊可以歸并;兩個模塊部分相似的代碼可以通過建立公共新模塊,并設(shè)立對公共模塊調(diào)用進(jìn)行調(diào)整。例如:(10)舉例說明模塊結(jié)構(gòu)圖優(yōu)化方法中作用域與控制域調(diào)整的原則。答:作用域是指判斷語句所在模塊和他判斷調(diào)用的下屬模塊,而控制域是指他本身以及他的下屬模塊;一般要求作用域在控制域內(nèi)。例如:D通過B判斷調(diào)用C,故D的作用范圍不在它的控制范圍內(nèi),調(diào)整為右圖。

(11)試將下面的代碼段進(jìn)行局部調(diào)整,使其更容易理解。要進(jìn)行適當(dāng)?shù)目s排;增加必要的注釋;增加必要的語句,以免產(chǎn)生錯誤;For(i=1;i<=n-1,i++){t=i;for(j=i+1,j<=n,j++)if(a[j]<a[t])t=j;if(t!=i){tm=a[t];a[t]=a[i];a[i]=tm}}答:inti=0;/*實現(xiàn)***功能intt=0;inttm=0;For(i=1;i<=n-1,i++)/*實現(xiàn)***功能{t=i;for(j=i+1,j<=n,j++)/*實現(xiàn)***功能if(a[j]<a[t])t=j;if(t!=i){tm=a[t];/*實現(xiàn)***功能a[t]=a[i];a[i]=tm}}(12)試按照規(guī)范編寫一個求3個數(shù)中最小值的程序。程序規(guī)范如下:禁止使用GOTO語句;使用縮排編寫程序;變量命名明晰答:main()//accodeaboutfindingoutthesmalloneintreeinputnumber

{intnum1,num2,num3,min;

printf("Pleaseinputthreenumbers:");

scanf("%d,%d,%d",&num1,&num2,&num3);

if(num1<num2)

MIN=num1;

else

MIN=num2;

if(num3<MIN)

MIN=num3;

printf("Thesmalloneis:%d",small);

(13)舉例說明軟件測試的不完備性。答:就目前的軟件測試方法而言,還無法做到對代碼的完全覆蓋測試,所以說軟件測試是不完備的。例如,下面的代碼是無法完全測試的。包含的不同執(zhí)行路徑數(shù)達(dá)520包含的不同執(zhí)行路徑數(shù)達(dá)520條,對每一條路徑進(jìn)行測試需要1毫秒,假定一年工作365×24小時,要想把所有路徑測試完,需3170年。(14)試解釋單元測試中“驅(qū)動模塊”、“樁模塊”與“被測模塊”含義以及它們之間的關(guān)系。答:驅(qū)動模塊相當(dāng)于被測模塊的主程序,它接收測試數(shù)據(jù),并把這些數(shù)據(jù)傳送給被測模塊,最后再輸出實測結(jié)果。樁模塊也叫做存根模塊,用以代替被測模塊調(diào)用的子模塊。被測模塊是單元測試要測試的模塊,他與驅(qū)動模塊和樁模塊有被調(diào)用和調(diào)用的關(guān)系。(15)簡述軟件改正性、適應(yīng)性維護(hù)的含義。答:改正性是為了識別和糾正軟件錯誤、改正軟件性能上的缺陷、排除實施中的誤使用,應(yīng)進(jìn)行的診斷和改正錯誤的過程。適應(yīng)性維護(hù)是指,隨著信息技術(shù)的飛速發(fā)展,軟件運行的外部環(huán)境(新的硬、軟件配置)或數(shù)據(jù)環(huán)境(數(shù)據(jù)庫、數(shù)據(jù)格式、數(shù)據(jù)輸入/輸出方式、數(shù)據(jù)存儲介質(zhì))可能發(fā)生變化,為了使軟件適應(yīng)這種變化,而修改軟件的過程叫做適應(yīng)性維護(hù)

(16)舉例說明影響維護(hù)工作量的因素。答:系統(tǒng)規(guī)模:系統(tǒng)規(guī)模大,維護(hù)困難;程序設(shè)計語言:開發(fā)語言復(fù)雜,維護(hù)也困難;系統(tǒng)年齡大?。簳r間久遠(yuǎn)的系統(tǒng),維護(hù)困難;數(shù)據(jù)庫技術(shù)的應(yīng)用水平:數(shù)據(jù)應(yīng)用水平低,維護(hù)工作量大。所采用的軟件開發(fā)技術(shù)及軟件開發(fā)工程化的程度:工程化程度高,維護(hù)相對容易。例如:商業(yè)企業(yè)進(jìn)銷存管理軟件。由于商品品種多,經(jīng)營手段靈活,所以對數(shù)據(jù)庫技術(shù)應(yīng)用的水平要求比較高;一般大型商業(yè)企業(yè),如沃爾瑪是全球連鎖,所以系統(tǒng)規(guī)模巨大,維護(hù)困難;商業(yè)企業(yè)管理軟件一般要處理的內(nèi)容多樣,目前還沒有一種語言可以完成整個系統(tǒng)的開發(fā)任務(wù),所以選擇功能相對強大的語言會減少開發(fā)困難。

二、已知程序框圖如圖2-1所示,試分別給出(a)語句覆蓋,(b)條件覆蓋,(c)判斷覆蓋,(d)條件組合覆蓋,(e)判斷/條件的最小測試用例和路徑。(每小題5分,共25分)答:(a)語句覆蓋路徑:ace測試用例【(2,0,4),(2,0,3)】 (b)條件覆蓋路徑:ace測試用例:【(2,0,4),(2,0,3)】路徑:abd測試用例:【(1,1,1),(1,1,1)】 (c)判斷覆蓋路徑:ace測試用例:【(2,0,4),(2,0,3)】路徑:abd測試用例:【(1,1,1),(1,1,1)】 (d)條件組合覆蓋路徑:ace測試用例:【(2,0,4),(2,0,3)】路徑:abd測試用例:【(1,1,1),(1,1,1)】路徑:abe測試用例:【(2,1,1),(2,1,2)】路徑:abe測試用例:【(1,0,3),(1,0,4)】 (e)判斷/條件覆蓋路徑:ace測試用例:【(2,0,4),(2,0,3)】路徑:abd測試用例:【(1,1,1),(1,1,1)】

三、現(xiàn)有一個PASCAL語言的編譯器。試采用黑盒測試法測試該編譯器對語法規(guī)定:“標(biāo)識符是由字母開頭、后跟字母或數(shù)字的任意組合構(gòu)成;有效字符數(shù)為8個,最大字符數(shù)為80個;標(biāo)識符必須先說明,再使用;在同一說明語句中,標(biāo)識符至少必須有一個?!钡囊恢滦?。(每一個分類5分,共25分)答:等價類劃分如下:測試用例:下面選取了8個測試用例,它們覆蓋了所有的等價類。①VARx,T1234567:REAL;}(1)(2)(4)(7)(8)(11)(13)BEGINx:=3.414;T1234567:=2.732;……②VAR:REAL;

}(3)③VARx,:REAL;}(5)④VART12345……:REAL;}(6)多于80個字符⑤VART$:CHAR;}(9)⑥VARGOTO:INTEGER;}(10)⑦VAR2T:REAL;

}(12)⑧VARPAR:REAL;}(14)BEGIN……PAP:=SIN(3.14*0.8)/6;

四、已知程序偽代碼如圖4-1所示,試完成下列工作:試用算法4.1給出對應(yīng)的流圖;計算流圖的復(fù)雜性V(G);求基本路徑構(gòu)成的基本集合(num1,num2,num3各取一次最小值);給出每條路徑執(zhí)行的期望結(jié)果;給出每一條路徑的測試用例。(每小題3分,共15分)答:main()main()//accodeaboutfindingoutthesmalloneintreeinputnumber

{intnum1,num2,num3,Min;

printf("Pleaseinputthreenumbers:");

(1)scanf("%d,%d,%d",&num1,&num2,&num3);

(2)if(num1<num2)

(3)MIN=num1;

else

(4)MIN=num2;

(5)if(num3<MIN)

(6)MIN=num3;

(7)printf("Thesmalloneis:%d,Min);

printf("min=%d\n",min);

}

圖4-1一個計算三個數(shù)中最小值的程序112435786環(huán)形復(fù)雜性:3基本路徑集:123571245712367期望結(jié)果:12357的結(jié)果:num1是最小值12457的結(jié)果:num2是最小值12367的結(jié)果:num3是最小值測試用例:Num1=3;num2=4;num3=5Num1=4;num2=3;num3=5Num1=4;num2=5;num3=3

五、已知程序偽代碼如圖5-1所示,試完成下列工作:試用算法5.1給出對應(yīng)的流圖;計算流圖的復(fù)雜性V(G);求基本路徑構(gòu)成的基本集合(num1,num2,num3各取一次最小值);給出每條路徑執(zhí)行的期望結(jié)果;給出每一條路徑的測試用例。(每小題3分,共15分)V(V(G)=6path1:1-2-10-11-13path2:1-2-10-12-13path3:1-2-3-10-11-13path4:1-2-3-4-5-8-9-2……path5:1-2-3-4-5-6-8-9-2……path6:1-2-3-4-5-6-7-8-9-2……path1:輸入數(shù)據(jù):value[k]=有效輸入,限于k<i(i定義如下)value[i]=?999,當(dāng)2≤i≤100;預(yù)期結(jié)果:n個值的正確的平均值、正確的總計數(shù)。注意:不能孤立地進(jìn)行測試,應(yīng)當(dāng)作為路徑4

溫馨提示

  • 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

提交評論