- 瀑布模型把軟件生命周期劃分為八個階段:問題的定義、可行性研究、軟件需求分析、系統(tǒng)總體設(shè)計、詳細(xì)設(shè)計、編碼、測試和運行、維護(hù)。八個階段又可歸納為三個大的階段:計劃階段、開發(fā)階段和(?C)。??
A、詳細(xì)計劃?B、可行性分析?C、?運行階段?D、?測試與排錯??
2、從結(jié)構(gòu)化的瀑布模型看,在它的生命周期中的八個階段中,下面的幾個選項中哪個環(huán)節(jié)出錯,對軟件的影響最大(C?)。??
A、詳細(xì)設(shè)計階段?B、概要設(shè)計階段?C、?需求分析階段?D、?測試和運行階段??
3、在結(jié)構(gòu)化的瀑布模型中,哪一個階段定義的標(biāo)準(zhǔn)將成為軟件測試中的系統(tǒng)測試階段的目標(biāo)(A?)。??
A、?需求分析階段?B、?詳細(xì)設(shè)計階段?C、?概要設(shè)計階段?D、?可行性研究階段?
?4、軟件工程的出現(xiàn)主要是由于(C?)。??
A.程序設(shè)計方法學(xué)的影響?B.其它工程科學(xué)的影響?
C.?軟件危機的出現(xiàn)?D.計算機的發(fā)展??
5、軟件工程方法學(xué)的目的是:使軟件生產(chǎn)規(guī)范化和工程化,而軟件工程方法得以實施的主要保證是(C?)??
A、?硬件環(huán)境???????????????B、軟件開發(fā)的環(huán)境??
C、軟件開發(fā)工具和軟件開發(fā)的環(huán)境?D、?開發(fā)人員的素質(zhì)??
6、軟件開發(fā)常使用的兩種基本方法是結(jié)構(gòu)化和原型化方法,在實際的應(yīng)用中,它們之間的關(guān)系表現(xiàn)為?(?B)??
A、?相互排斥?B、?相互補充?C、?獨立使用?D、?交替使用??
7、UML是軟件開發(fā)中的一個重要工具,它主要應(yīng)用于哪種軟件開發(fā)方法(C?)??
A、基于瀑布模型的結(jié)構(gòu)化方法????? ?B、基于需求動態(tài)定義的原型化方法?
?C、基于對象的面向?qū)ο蟮姆椒?/span>????? ?D、基于數(shù)據(jù)的數(shù)據(jù)流開發(fā)方法??
8、在下面的軟件開發(fā)方法中,哪一個對軟件設(shè)計和開發(fā)人員的開發(fā)要求最高(B?)
??A、結(jié)構(gòu)化方法?B、原型化方法?C、面向?qū)ο蟮姆椒?D、控制流方法??
9、結(jié)構(gòu)化分析方法是一種預(yù)先嚴(yán)格定義需求的方法,它在實施時強調(diào)的是分析對象的(B?)?
?A、控制流?B、數(shù)據(jù)流?C、程序流?D、指令流??
10、軟件開發(fā)的結(jié)構(gòu)化生命周期方法將軟件生命周期劃分成(A?)??
A、?計劃階段、開發(fā)階段、運行階段?
B、?計劃階段、編程階段、測試階段?
C、?總體設(shè)計、詳細(xì)設(shè)計、編程調(diào)試?
D、需求分析、功能定義、系統(tǒng)設(shè)計??
11、軟件開發(fā)中常采用的結(jié)構(gòu)化生命周期方法,由于其特征而一般稱其為(A?)?
?A、?瀑布模型?B、?對象模型?C、?螺旋模型?D、?層次模型??
12、軟件開發(fā)的瀑布模型,一般都將開發(fā)過程劃分為:分析、設(shè)計、編碼和測試等階段,一般認(rèn)為可能占用人員最多的階段是(?C)??
A、?分析階段?B、?設(shè)計階段?C、?編碼階段?D、?測試階段?
??三.判斷?
1.軟件的開發(fā)與運行經(jīng)常受到硬件的限制和制約。(√)?
2.模塊內(nèi)的高內(nèi)聚往往意味著模塊間的松耦合。(√?)
5.軟件的質(zhì)量好壞主要由驗收人員負(fù)責(zé),其他開發(fā)人員不必關(guān)心。(X?)?
6.判定覆蓋不一定包含條件覆蓋,條件覆蓋也不一定包含判定覆蓋。(√)?
7. 應(yīng)該盡量使用機器語言編寫代碼,提高程序運行效率,而減少高級語言的使用。(X)?
8.UML只能應(yīng)用于軟件系統(tǒng)模型的建立。(X)?
10.軟件測試的目的是為了無一遺漏的找出所有的錯誤。(X)?
一、填空
1.結(jié)構(gòu)化分析方法的分析策略是___自頂向下逐步求精_______。
2.衡量模塊獨立性的兩個定性標(biāo)準(zhǔn)是_耦合性與內(nèi)聚性________。
3.軟件集成測試的方法主要有兩種,它們是___漸增式與非漸增式測試_______。
4.可行性研究的目的是用最小的代價在盡可能短的時間內(nèi)確定該軟件項目_是否值得開發(fā)_。
5.需求分析階段,分析人員要確定對問題的綜合需求,其中最主要的是__功能需求_。
6.軟件生存周期中時間最長、花費的精力和費用最多的一個階段是__維護(hù)_____階段。
7. 計算機輔助軟件工程這一術(shù)語的英文縮寫為_CASE_______。
8.McCall提出的軟件質(zhì)量模型包括______11_____個軟件質(zhì)量特性。
9.軟件結(jié)構(gòu)是以____模塊_______為基礎(chǔ)而組成的一種控制層次結(jié)構(gòu)。
10.軟件概要設(shè)計的主要任務(wù)就是__軟件結(jié)構(gòu)的設(shè)計______。
11.結(jié)構(gòu)化程序設(shè)計方法是使用___三種基本控制結(jié)構(gòu)(條件\控制\循環(huán))____構(gòu)造程序。
12.在建立對象的功能模型時,使用的數(shù)據(jù)流圖中包含有處理、數(shù)據(jù)流、動作對象和__數(shù)據(jù)存儲對象_
二、選擇
1.UML是軟件開發(fā)中的一個重要工具,它主要應(yīng)用于哪種軟件開發(fā)方法( C )
A、基于瀑布模型的結(jié)構(gòu)化方法 B、基于需求動態(tài)定義的原型化方法
C、基于對象的面向?qū)ο蟮姆椒?/span> D、基于數(shù)據(jù)的數(shù)據(jù)流開發(fā)方法
2、面向?qū)ο蟮拈_發(fā)方法中,(B)將是面向?qū)ο蠹夹g(shù)領(lǐng)域內(nèi)占主導(dǎo)地位的標(biāo)準(zhǔn)建模語言。
A、Booch方法 B、UML語言
C、OMT方法 D、Coad方法
3、功能模型中所有的(A)往往形成一個層次結(jié)構(gòu)。在這個層次結(jié)構(gòu)中一個數(shù)據(jù)流圖的過程可以由下一層的數(shù)據(jù)流圖作進(jìn)一步的說明。
A、數(shù)據(jù)流圖? ?B、概念模型圖 ???C、狀態(tài)遷移圖 ???D、事件追蹤圖
4、(A)應(yīng)當(dāng)在應(yīng)用分析之前進(jìn)行,因為我們在了解問題之前應(yīng)當(dāng)對問題敞開思想考慮,不應(yīng)加以限制。
A、問題域分析?? ?B、高層分析 ??C、實例的建立 ???D、類的開發(fā)
5、通過執(zhí)行對象的操作改變對象的屬性,但它必須通過(B)的傳遞。
A、接口? ?B、消息 ???C、信息 ??D、操作
6、所有的對象可以成為各種對象類,每個對象類都定義了一組(B)
A、說明?? ?B、方法 ???C、過程? ?D、類型
9、面向?qū)ο蟮闹饕卣鞒龑ο笪ㄒ恍?、封裝、繼承外,還有(A)
A、多態(tài)性? ?B、完整性 ??C、可移植性? ?D、兼容
10、在面向?qū)ο蟮脑O(shè)計中,我們應(yīng)遵循的設(shè)計準(zhǔn)則除了模塊化、抽象、低耦合、高內(nèi)聚以外,還有(B)
A、 隱藏復(fù)雜性? ?B、 信息隱藏 ????C、 即存類的重用? ?D、 類的開發(fā)
13、在考察系統(tǒng)的一些涉及時序和改變的狀況時,要用動態(tài)模型來表示。動態(tài)模型著重于系統(tǒng)的控制邏輯,它包括兩個圖:一個是事件追蹤圖,另一個是(B)
A、數(shù)據(jù)流圖 ???B、狀態(tài)圖 ???C、系統(tǒng)結(jié)構(gòu)圖 ???D、時序圖
14、人們常用的評價軟件質(zhì)量的4個因素是( B )
A.可維護(hù)性、可靠性、健壯性、效率 ???B.可維護(hù)性、可靠性、可理解性、效率
C.可維護(hù)性、可靠性、完整性、效率 ???D.可維護(hù)性、可靠性、移植性、效率
15、軟件可移植性是用來衡量軟件的( C )重要尺度之一。
A.通用性? ?B.效率 ???C.質(zhì)量?? ?D.人機界面
16、為了提高軟件的可移植性,應(yīng)注意提高軟件的( D )
A.使用的方便性 ???B.簡潔性 ???C.可靠性 ???D.設(shè)備獨立性
20.在軟件質(zhì)量因素中,軟件在異常條件下仍能運行的能力稱之為軟件的( B )
A.可靠性 ??B.健壯性 ???C.可用性 ???D.安全性
21.在軟件設(shè)計中,設(shè)計復(fù)審是和軟件設(shè)計本身一樣重要的環(huán)節(jié),其主要的目的和作用是為了能夠( B)
A.減少測試工作量? ?B.避免后期付出高代價 ???C.保證軟件質(zhì)量?? ?D.縮短軟件開發(fā)周期
22.在軟件危機中表現(xiàn)出來的軟件質(zhì)量差的問題,其原因是( B)
A.用戶經(jīng)常干預(yù)軟件系統(tǒng)的研發(fā)工作 ???????B.沒有軟件質(zhì)量標(biāo)準(zhǔn)
C.軟件研發(fā)人員不愿意遵守軟件質(zhì)量標(biāo)準(zhǔn) ???D.軟件研發(fā)人員素質(zhì)太差
23.軟件工程管理是( D)一切活動的管理。
A.需求分析? ?B.軟件設(shè)計過程 ???C.模塊設(shè)計?? ?D.軟件生命期
24.軟件管理的主要職能包括(D )
A.人員管理、計劃管理 ??B.標(biāo)準(zhǔn)化管理、配置管理 ???C.成本管理、進(jìn)度管理 ???D.(A)和(B)
26.結(jié)構(gòu)化設(shè)計方法在軟件開發(fā)中用于(A )。
A、概要設(shè)計 ??B、詳細(xì)設(shè)計?? ?C、程序設(shè)計 ???D、測試用例設(shè)計
28.軟件測試中,白盒法是通過分析程序的(B )來設(shè)計測試用例的。
A、應(yīng)用范圍 B、內(nèi)部邏輯 C、功能 D、輸入數(shù)據(jù)
29.軟件維護(hù)費用高的主要原因是(C )。
A、人員少 B、人員多 C、生產(chǎn)率低 D、生產(chǎn)率高
30.軟件質(zhì)量必須在(D )加以保證。
A、開發(fā)之前? ?B、開發(fā)之后 ???C、可行性研究過程中? ?D、設(shè)計與實現(xiàn)過程中
31.確認(rèn)測試主要涉及的文檔是(A )。
A、需求規(guī)格說明書 ??B、概要設(shè)計說明書 ???C、詳細(xì)設(shè)計說明書 ??D、源程序
33.為了適應(yīng)軟硬件環(huán)境變化而修改軟件的過程是( C )。
A、校正性維護(hù) ???B、完善性維護(hù) ???C、適應(yīng)性維護(hù) ???D、預(yù)防性維護(hù)?
35.軟件質(zhì)量保證應(yīng)在( A )階段開始。
A.需求分析?? ?B.設(shè)計 C.編碼 D.投入使用
36.在McCall軟件質(zhì)量度量模型中,(C )屬于面向軟件產(chǎn)品修改。
A.可靠性 B.可重用性 C.適應(yīng)性 D.可移植性
37.對象實現(xiàn)了數(shù)據(jù)和操作的結(jié)合,使數(shù)據(jù)和操作(C )于對象的統(tǒng)一體中。
A.結(jié)合 B.隱藏 C.封裝 D.抽象
39.瀑布模型的存在問題是(B )
A.用戶容易參與開發(fā) ????B.缺乏靈活性
C.用戶與開發(fā)者易溝通 ??D.適用可變需求
40.軟件測試方法中的靜態(tài)測試方法之一為(A )
A.計算機輔助靜態(tài)分析 ???B.黑盒法 ????C.路徑覆蓋 ????D.邊界值分析
41.程序的三種基本控制結(jié)構(gòu)是(B )
A.過程、子程序和分程序 ??B.順序、選擇和重復(fù)
C.遞歸、堆棧和隊列 ??????D.調(diào)用、返回和轉(zhuǎn)移
43.詳細(xì)設(shè)計的結(jié)果基本決定了最終程序的(C )
A.代碼的規(guī)模 B.運行速度 C.質(zhì)量 D.可維護(hù)性
44.結(jié)構(gòu)化程序設(shè)計主要強調(diào)的是( D)
A. 程序的規(guī)模 ??B. 程序的效率 ??C. 程序設(shè)計語言的先進(jìn)性 ???D. 程序易讀性
46.黑盒測試在設(shè)計測試用例時,主要研究 ( A )
A.需求規(guī)格說明與概要設(shè)計說明? ?B.詳細(xì)設(shè)計說明
C.項目開發(fā)計劃??????????????? ?D.概要設(shè)計說明與詳細(xì)設(shè)計說明
47.若有一個計算類型的程序,它的輸入量只有一個,其范圍是從輸入的角度考慮一組測試用例, 設(shè)計這組測試用例的方法是(C )
A.條件覆蓋法? ?B.等價分類法 ???C.邊界值分析法?? ?D.錯誤推測法
48.下列屬于維護(hù)階段的文檔是( C )
A.軟件規(guī)格說明?? ?B.用戶操作手冊 ???C.軟件問題報告 ??D.軟件測試分析報告
49.快速原型模型的主要特點之一是(D )
A.開發(fā)完畢才見到產(chǎn)品?????????????????? ?B.及早提供全部完整的軟件產(chǎn)品
C.開發(fā)完畢后才見到工作軟件 ????????D.及早提供工作軟件
52.下列模型屬于成本估算方法的有( A)
A.COCOMO模型?? ?B.McCall模型 ???C.McCabe度量法??? ?D.時間估算法
53.能力成熟度模型可以( A )
A、使軟件組織建立一個有規(guī)律的成熟的軟件過程 ????B、使用軟件沒有錯誤
C、使軟件開發(fā)人員掌握更多的技術(shù) ????????????????D、避免開發(fā)人員跳槽
55.?dāng)?shù)據(jù)字典是對數(shù)據(jù)定義信息的集合,它所定義的對象都包含于(A )
A.?dāng)?shù)據(jù)流圖?? ?B.程序框圖 ???C.軟件結(jié)構(gòu)? ?D.方框圖
56.需求分析階段的任務(wù)是確定 ( D )。
A.軟件開發(fā)方法 B.軟件開發(fā)工具 ??C.軟件開發(fā)費 D.軟件系統(tǒng)的功能
58.軟件詳細(xì)設(shè)計的主要任務(wù)是確定每個模塊的 A 。
A.算法和使用的數(shù)據(jù)結(jié)構(gòu) ???B.外部接口 ???C.功能?? ?D.編程
59.程序的三種基本控制結(jié)構(gòu)是( B )。
A.過程、子程序積分程序 ???B.順序、選擇和重復(fù) ??
C.遞歸、堆棧和隊列?????? ?D.調(diào)用、返回和轉(zhuǎn)移
60.軟件測試方法中,黑盒測試方法和白盒測試方法是常用的方法,其中黑盒測試方法主要用于測試(B )。
A.結(jié)構(gòu)合理性 B.軟件外部功能 ??C.程序正確性 D.程序內(nèi)部邏輯
61.在軟件開發(fā)和維護(hù)的過程中,為了定量地評價軟件質(zhì)量,必須對軟件特性進(jìn)行 (B)
A.測試 B.度量 ??C.評審 ?D.維護(hù)
64.對象是OO方法的核心,對象的類型有多種,通常把例如飛行、事故、演出、開會等等,稱之為( C )
A.有形實體? B.作用 ??C.事件 D.性能說明
65.在面向?qū)ο筌浖_發(fā)方法中,類與類之間主要有以下結(jié)構(gòu)關(guān)系(A)
A.繼承和聚集 ?B繼承和一般 ?C 聚集和消息傳遞 ?D繼承和方法調(diào)用
66.以下哪一項不是軟件危機的表現(xiàn)形式(C)
A成本高 ?B生產(chǎn)率低 ?C技術(shù)發(fā)展快 ?D質(zhì)量得不到保證
67.以下哪一項不是面向?qū)ο蟮奶卣鳎―)
A)多態(tài)性?? B)繼承性? C封裝性?? D過程調(diào)用
68.面向?qū)ο竽P?/span>主要由以下哪些模型組成(A)
A對象模型、動態(tài)模型、功能模型???????? B對象模型、數(shù)據(jù)模型、功能模型
C數(shù)據(jù)模型、動態(tài)模型、功能模型???? D對象模型、動態(tài)模型、數(shù)據(jù)模型
69.軟件項目計劃一般不包括以下哪項內(nèi)容(D)
A培訓(xùn)計劃 B 人員安排 C 進(jìn)度安排 D軟件開發(fā)標(biāo)準(zhǔn)的選擇和制定
三、簡答
1. 簡述軟件工程方法學(xué)所包含的內(nèi)容。
軟件工程方法學(xué)包括三個要素, 這就是方法、工具和過程。其中,方法是完成軟件開發(fā)的各項任務(wù)的技術(shù)方法,回答“如何做”的問題;工具是為方法的運用提供自動的或半自動的軟件支撐,過程是為了獲得高質(zhì)量的軟件所需要完成的一系列任務(wù)的框架,它規(guī)定了完成各項任務(wù)的工作步驟。
2.什么是軟件過程?它與軟件工程方法學(xué)有何關(guān)系?
(1)軟件過程是為了獲得高質(zhì)量軟件所需要完成的一系列任務(wù)的框架,它規(guī)定了完成各項任務(wù)的工作步驟。
(2) 軟件過程是軟件工程方法學(xué)的3個重要組成部分之一。
(3) 軟件工程方法學(xué)包含三個要素:方法、工具和過程。
3.分析軟件危機產(chǎn)生的主要原因有哪些?
答:導(dǎo)致軟件危機的主要原因有:
(1)軟件日益復(fù)雜和龐大(2)軟件開發(fā)管理困難和復(fù)雜(3)軟件開發(fā)技術(shù)落后(4)生產(chǎn)方式落后(5)開發(fā)工具落后(6)軟件開發(fā)費用不斷增加
4、說明結(jié)構(gòu)化程序設(shè)計的主要思想是什么?
答:(1)自頂向下、逐步求精的程序設(shè)計方法
(2)使用3種基本控制結(jié)構(gòu)、單入口、單出口來構(gòu)造程序。
5、軟件測試包括哪些步驟?說明這些步驟的測試對象是什么?
答:(1)單元測試:測試對象對單元模塊
(2)集成測試:測試對象為組裝后的程序模塊
(3)確認(rèn)測試:測試對象為可運行的目標(biāo)軟件系統(tǒng)
(4)系統(tǒng)測試:測試對象為計算機系統(tǒng)的各組成部分
6、需求分析與軟件設(shè)計二個階段任務(wù)的主要區(qū)別是什么?
答:需求分析定義軟件的用戶需求,即定義待開發(fā)軟件能做什么
軟件設(shè)計定義軟件的實現(xiàn)細(xì)節(jié)以滿足用戶需求,即研究如何實現(xiàn)軟件。
7、說明軟件測試和調(diào)試的目的有何區(qū)別?
答:測試的目的是判斷和發(fā)現(xiàn)軟件是否有錯誤
調(diào)試的目的是定位軟件錯誤并糾正錯誤。
四、綜合應(yīng)用
1、某“調(diào)整工資”處理模塊接受一個“職稱”的變量,根據(jù)職稱的不同(助教,講師,副教授,教授)作不同的處理,其中若是助教還必須輸入工齡,只有工齡超過兩年才能調(diào)整工資。請用等價類劃分法設(shè)計測試用例。
?輸入條件 |
合理等價類 |
不合理等價類 |
職稱 |
①教授 ②副教授 ③講師 |
⑤四種職稱之外任意一種 |
職稱兼工齡 |
④助教兼工齡大于2年 |
⑥助教兼工齡等于兩年 ⑦助教兼工齡小于兩年? |
二、填空(20分)
1.增量模型適合于___軟件需求_____不明確、設(shè)計方案有一定風(fēng)險的軟件項目。
2.結(jié)構(gòu)化分析方法的分析策略是____自頂向下逐步求精______。
3.可行性研究實質(zhì)上是要在較高層次上以較抽象的方式進(jìn)行_____需求分析和設(shè)計______的過程。
4.衡量模塊獨立性的兩個定性標(biāo)準(zhǔn)是____耦合性和內(nèi)聚性_____。
5.Jackson方法是一種面向_____數(shù)據(jù)結(jié)構(gòu)_________的設(shè)計方法。
6.軟件集成測試的方法主要有兩種,它們是____漸增式和非漸增式測試______。
7.維護(hù)階段是軟件生存周期中花費精力和費用_____最多________的階段。
8.繼承性是子類自動共享其父類的________數(shù)據(jù)結(jié)構(gòu)和方法______機制。?
9.在面向?qū)ο蠓椒ㄖ?,人們常用狀態(tài)圖描述類中對象的_______動態(tài)行為____。
10.規(guī)定功能的軟件,在一定程度上能從錯誤狀態(tài)自動恢復(fù)到正常狀態(tài),則稱該軟件為_____容錯____軟件。
三、選擇(20分)
1.需求分析中,開發(fā)人員要從用戶那里解決的最重要的問題是(?A )。
A、要讓軟件做什么?????????????????? B、要給該軟件提供哪些信息
C、要求軟件工作效率怎樣???????????? D、要讓該軟件具有何種結(jié)構(gòu)
2.DFD中的每個加工至少有(?B )。
A、一個輸入流或一個輸出流?????????? B、一個輸入流和一個輸出流
C、一個輸入流????????????????????? D、一個輸出流
3.詳細(xì)設(shè)計與概要設(shè)計銜接的圖形工具是(?B )。
A、DFD圖?????????? B、SC圖????????? C、PAD圖????????? D、程序流程圖
4.下列幾種類型中,耦合性最弱的是(?D )。
A、內(nèi)容型???????? B、控制型????????? C、公共型?????????? D、數(shù)據(jù)型
5.確認(rèn)測試中,作為測試依據(jù)的文檔是(?A )。
A、需求規(guī)格說明書????????? B、設(shè)計說明書?? C、源程序????? D、開發(fā)計劃
6.為了適應(yīng)軟硬件環(huán)境變化而修改軟件的過程是(?C )。
A、校正性維護(hù)???? B、完善性維護(hù)?? C、適應(yīng)性維護(hù)??????? D、預(yù)防性維護(hù)
7.瀑布模型是一種(?A )。
A、整體開發(fā)模型?? B、非整體開發(fā)模型? C、風(fēng)險驅(qū)動模型?? D、對象驅(qū)動模型
8.用于描述對象模型的工具是(?D )。
A、數(shù)據(jù)流圖????? B、結(jié)構(gòu)圖???? C、狀態(tài)圖???? D、對象圖
9.基線可作為軟件生存期中各開發(fā)階段的一個檢查點。當(dāng)采用的基線發(fā)生錯誤時,可以返回到最近和最恰當(dāng) 的(?C )上
A.配置項????? ?????B.程序??????????? C.基線???????????? D.過程
10.軟件質(zhì)量保證應(yīng)在(? A? )階段開始。
A.需求分析????????? B.設(shè)計????? C.編碼??????? D.投入使用
四.簡答題(20分)
1.為了提高設(shè)計質(zhì)量,應(yīng)從哪幾方面優(yōu)化軟件結(jié)構(gòu)?
2.集成測試階段,漸增式與非漸增式測試有哪些區(qū)別?
3.說明瀑布模型的局限性。
4.說明面向?qū)ο蟮奶卣鳌?/p>
5.軟件工程管理包括哪些內(nèi)容?
五.綜合應(yīng)用(25分)
1.某“調(diào)整工資”處理模塊接受一個“職稱”的變量,根據(jù)職稱的不同(助教,講師,副教授,教授)作
不同的處理,其中若是助教還必須輸入工齡,只有工齡超過兩年才能調(diào)整工資。請用等價類劃分法設(shè)計測試用例。(7分)〔答案〕
2.某圖書館借閱系統(tǒng)有以下功能:
(1)借書:根據(jù)讀者的借書證查詢讀者檔案,若借書數(shù)目未超過規(guī)定數(shù)量,則辦理借閱手續(xù)(修改庫存記錄及讀者檔案),超過規(guī)定數(shù)量者不予借閱。對于第一次借閱者則直接辦理借閱手續(xù)。
(2)還書:根據(jù)讀者書中的條形碼,修改庫存記錄及讀者檔案,若借閱時間超過規(guī)定期限則罰款。
??請對以上問題,畫出分層數(shù)據(jù)流圖。(8分)
?
3.某報社采用面向?qū)ο蠹夹g(shù)實現(xiàn)報刊征訂的計算機管理系統(tǒng),該系統(tǒng)基本需求如下:
??(1)報社發(fā)行多種刊物,每種刊物通過訂單來征訂,訂單中有代碼,名稱,訂期,單價,份數(shù)等項目,訂戶通過填寫訂單來訂閱報刊。
??(2)報社下屬多個發(fā)行站,每個站負(fù)責(zé)收集登陸訂單、打印收款憑證等事務(wù)。
(3)報社負(fù)責(zé)分類并統(tǒng)計各個發(fā)行站送來的報刊訂閱信息。
??請就此需求建立對象模型。(10分)
參考答案
一、(略)
二、填空
1.軟件需求??????????? 2.自頂向下逐步求精???????
3.需求分析和設(shè)計????? 4.耦合性與內(nèi)聚性
5.數(shù)據(jù)結(jié)構(gòu)??????????? 6.漸增式與非漸增式測試?????
7.最多?????????????? ?8.數(shù)據(jù)結(jié)構(gòu)和方法
9.動態(tài)行為??????????? 10.容錯
三、選擇 ?
1.A???????????? 2.B
3.B???????????? 4.D
5.A???????????? 6.C ???????
7.A???????????? 8.D
9.C??????????? 10.A
四、(略)
五、綜合應(yīng)用
1.劃分等價類:
輸入條件 |
合理等價類 |
不合理等價類 |
|||
職稱 |
|
⑤四種職稱之外任意一種 |
|||
職稱兼工齡 |
④助教兼工齡大于2年 |
|
設(shè)計測試用例:
輸入數(shù)據(jù) |
預(yù)期結(jié)果 |
覆蓋范圍 |
教授 |
輸入有效,進(jìn)行調(diào)整工資處理 |
① |
副教授 |
輸入有效,進(jìn)行調(diào)整工資處理 |
② |
講師 |
輸入有效,進(jìn)行調(diào)整工資處理 |
③ |
助教 ?3 |
輸入有效,進(jìn)行調(diào)整工資處理 |
⑤ |
助教???2 |
輸入有效,不調(diào)整工資處理 |
⑥ |
助教???1 |
輸入有效,不調(diào)整工資處理 |
⑦ |
工程師 |
輸入無效 |
④ |
2.
?
?
3.
?
軟件工程
一、單向選擇題(四選一、每小題3分,共18分)
1、軟件的發(fā)展經(jīng)歷了(D)個發(fā)展階段。0102
- 一
- 二
- 三
- 四
2、需求分析的任務(wù)不包括(B)。0401
- 問題分析
- 系統(tǒng)設(shè)計
- 需求描述
- 需求評審。
4、當(dāng)模塊中包含復(fù)雜的條件組合,只有(A)能夠清晰地表達(dá)出各種動作之間的對應(yīng)關(guān)系。
- 判定表和判定樹
- 盒圖
- 流程圖
- 關(guān)系圖
5、以下不屬于邏輯覆蓋的是(D)。1402
- 語句覆蓋
- 判定覆蓋
- 條件覆蓋
- 基本路徑
6、為適應(yīng)軟件運行環(huán)境的變化而修改軟件的活動稱為(B)。1501
- 糾錯性維護(hù)
- 適應(yīng)性維護(hù)
- 改善性維護(hù)
- 預(yù)防性維護(hù)
二、填空題(每空2分,共18分)
-
- 軟件項目管理的范圍主要集中于3個P上,即:People人員、Problem問題和(過程process? 項目project
三、判斷題(每小題2分,共24分,錯誤打X、正確打√)
- 用戶對軟件需求的描述不精確,往往是產(chǎn)生軟件危機的原因之一。(√)
- 目前,軟件項目的進(jìn)度安排的兩種比較常用的方法是程序評估與審查技術(shù)(PERT)和關(guān)鍵路徑法(CPM)。(√)
- 一個好的開發(fā)人員應(yīng)具備的素質(zhì)和能力包括善于與周圍人員團(tuán)結(jié)協(xié)作,建立良好的人際關(guān)系,善于聽取別人的意見。(√)0206
- 目前的絕大多數(shù)軟件都不適合于快速原型技術(shù)。(X)0402
- 面向數(shù)據(jù)的設(shè)計方法適用場合是具有明顯的層次信息結(jié)構(gòu)的應(yīng)用如:企事業(yè)的信息管理系統(tǒng);系統(tǒng)軟件(如操作系統(tǒng))等。(√)10001
- 缺乏處理大型軟件項目的經(jīng)驗。是產(chǎn)生軟件危機的唯一原因。(X)0102
- 測試計劃、測試用例、出錯統(tǒng)計和有關(guān)的分析報告一般不用長期保存。(X)1401
- 軟件也會磨損和老化。(X)0101
- 完善性維護(hù)是提高或完善軟件的性能。(√)0101
四、簡答題(每小題4分,共20分)
1、軟件危機
是指在計算機軟件開發(fā)、使用與維護(hù)過程中遇到的一系列嚴(yán)重問題和難題。
3、軟件項目的質(zhì)量管理
制定軟件質(zhì)量保證計劃,按照質(zhì)量評價體系控制軟件質(zhì)量要素,對階段性的軟件產(chǎn)品進(jìn)行評審,對最終軟件產(chǎn)品進(jìn)行確認(rèn),確保軟件質(zhì)量。
4、好的編程風(fēng)格應(yīng)遵循哪四條規(guī)則?1304
1)節(jié)簡化????????? 2)模塊化
3)簡單化????????? 4)文檔化
《軟件工程》試題及參考答案
一、單向選擇題(四選一、每小題3分,共18分)
1、對在數(shù)據(jù)流圖中每一個命令的圖形元素均給以定義是(B)0501
A、條目定義
B、數(shù)據(jù)字典
C、數(shù)據(jù)定義
D、數(shù)據(jù)說明
2、軟件的可行性研究中不包括(D)0302
A、法律可行性
B、技術(shù)可行性
C、經(jīng)濟(jì)可行性
D、政治可行性
3、根據(jù)用戶在軟件使用過程中提出的建設(shè)性意見而進(jìn)行的維護(hù)活動稱為(C)。1501
- 糾錯性維護(hù)
- 適應(yīng)性維護(hù)
- 改善性維護(hù)
- 預(yù)防性維護(hù)
4、人機界面的風(fēng)格大致經(jīng)過了(B)代的演變。1202
A三???????? B四?????????? C五????????? D六
5、以下不屬于白盒測試技術(shù)的是(D)1402
A 邏輯覆蓋????? B基本路徑測試?? C循環(huán)覆蓋測試??? D等價類劃分
6、為改正軟件系統(tǒng)中潛藏的錯誤而進(jìn)行的維護(hù)活動稱為(A)。1501
A 糾錯性維護(hù)?? B適應(yīng)性維護(hù)?????? C改善性維護(hù)????? D預(yù)防性維護(hù)
二、填空題(每空2分,共18分)
- 文檔(document)—一種數(shù)據(jù)媒體和其上所記錄的(數(shù)據(jù))。0101
- 機器語言、匯編語言:依賴于機器,面向(機器)0101
- 軟件有效性(efficiency),指軟件系統(tǒng)的時間和(空間)效率。0103
- 軟件定義過程可通過軟件系統(tǒng)的? 可行性研究? 和 需求分析 兩個階段來完成。0103
- 軟件定義的基本任務(wù)是確定軟件系統(tǒng)的工程(需求),也就是要搞清“做什么”。0103
- 為了使用戶需求逐步精細(xì)化、完全化、一致化,通常采用(需求建模技術(shù))。0402
- 一個軟件的深度是指其控制的(層數(shù))。0801
- 以詳細(xì)設(shè)計說明書為輸入,將該輸入用某種程序設(shè)計語言翻譯成計算機可以理解并最終可運行的代碼的過程叫(編碼)過程。1301
- 軟件維護(hù)是軟件生命周期的(最后)一個階段。1501
三、判斷題(每小題2分,共24分,錯誤打X、正確打√)
- 缺乏有力的方法學(xué)的指導(dǎo)和有效的開發(fā)工具的支持, 這往往是產(chǎn)生軟件危機的原因之一。(√)0102
- 一個好的開發(fā)人員應(yīng)具備的素質(zhì)和能力不包括具有良好的書面和口頭表達(dá)能力。(X)0206
- 在用戶需求分析時觀察用戶手工操作過程不是為了模擬手工操作過程,而是為了獲取第一手資料,并從中提取出有價值的需求。(√)0402
- 快速原型技術(shù)適用于軟件產(chǎn)品要求大量的用戶交互、或產(chǎn)生大量的可視輸出、或設(shè)計一些復(fù)雜的算法等場合。(√)0402
- 流程圖也稱為程序(框圖)是最常用的一種表示法。(√)0802
- 面向數(shù)據(jù)設(shè)計方法一般都包括下列任務(wù): 確定數(shù)據(jù)結(jié)構(gòu)特征;用順序、選擇和重復(fù)三種基本形式表示數(shù)據(jù)等步驟。(√)1001
- 理想的人機界面應(yīng)針對具有典型個性的特定的一類用戶設(shè)計。(√)1201
- 數(shù)據(jù)輸入的一般準(zhǔn)則中包括盡量(增加)用戶輸入的動作。(X)1204
- 用窮舉測試是較現(xiàn)實的測試方法。(X)1401
10、編碼時應(yīng)盡可能使用全局變量(X)1302
11、重視程序結(jié)構(gòu)的設(shè)計,能使程序具有較好的層次結(jié)構(gòu)(√)1301
12、程序中的注解越少越好( X )。1302
四、簡答題(每小題4分,共20分)
1、計算機軟件
與計算機系統(tǒng)操作有關(guān)的程序、規(guī)程、 規(guī)則及任何與之有關(guān)的文檔和數(shù)據(jù)。0101
2、需求分析的任務(wù)是什么?0103
需求分析的任務(wù)是確定待開發(fā)的軟件系統(tǒng)“做什么”。具體任務(wù)包括確定軟件系統(tǒng)的功能需求、性能需求和運行環(huán)境約束,編制軟件需求規(guī)格說明書、軟件系統(tǒng)的驗收測試準(zhǔn)則和初步的用戶手冊。
4、快速原型技術(shù)的基本思想是什么?0402
在軟件開發(fā)的早期,快速開發(fā)一個目標(biāo)軟件系統(tǒng)的原型,讓用戶對其進(jìn)行評價并提出修改意見,然后開發(fā)人員根據(jù)用戶的意見對原型進(jìn)行改進(jìn)。
《軟件工程》試題及參考答案
一、單向選擇題(四選一、每小題3分,共18分)
1、在設(shè)計測試用例時,應(yīng)當(dāng)包括(C)1401
A、合理的輸入條件
B、不合理的輸入條件
C、合理的和不合理的輸入條件
D、部分條件
2、下列各項中不屬于邏輯覆蓋的是(D)1402
A、語句覆蓋
B、判定覆蓋
C、判定——條件覆蓋
D、全部覆蓋
5、實踐表明,確定發(fā)生錯誤的位置和內(nèi)在原因所需的工作量幾乎占整個調(diào)試工作量的(D)%。1404
- 30
- 50
- 70
- 90
二、填空題(每空2分,共18分)
- ?黑盒測試主要是測試軟件是否滿足(功能)需求。1402
- (調(diào)試)的目的是確定錯誤的位置和引起錯誤的原因,并加以改正。因此,又稱為排錯或糾錯。1404
- 軟件工程由方法、工具和(過程)三部分組成,稱軟件工程的三要素。0101
三、判斷題(每小題2分,共24分,錯誤打X、正確打√)
- 文檔可用于專業(yè)人員和用戶之間的通信和交流;軟件開發(fā)過程的管理; 運行階段的維護(hù)。(√)0101
- 軟件開發(fā)、設(shè)計幾乎都是從頭開始,成本和進(jìn)度很難估計。(√)0101
- 適應(yīng)性維護(hù)是改進(jìn)軟件未來的可維護(hù)性和可靠性。(X)0101
- 由于軟件是邏輯產(chǎn)品,軟件質(zhì)量較容易直接度量。(X)0203
- 按照功能,軟部件可劃分為系統(tǒng)軟件和應(yīng)用軟件兩類。(√)0301
- 如果某子功能可以用一段簡潔、精確的文字描述清楚,就無需進(jìn)一步分解,是創(chuàng)建用戶需求的數(shù)據(jù)流模型應(yīng)遵循的規(guī)則。(√)0502
- 耦合度是對軟件結(jié)構(gòu)中模塊間關(guān)聯(lián)程度的一種度量。在設(shè)計軟件時應(yīng)追求盡可能緊密的耦合的系統(tǒng)。(X)0803
- 在面向?qū)ο笤O(shè)計階段則著重完成“如何做”的問題,也就是著重考慮對象的實現(xiàn)細(xì)節(jié)。(√)1101
- 隨著軟件復(fù)雜性的不斷提高,軟件的維護(hù)難度越來越大。(√)1501
- 軟件的可維護(hù)性差是軟件維護(hù)工作量和費用激增的直接原因。(√)1505
《軟件工程》試題及參考答案
一、單向選擇題(四選一、每小題3分,共18分)
1、從事物的組成部件及每個部件的屬性、功能來認(rèn)識事物。這種方法被稱為(A)的方法。0701
A、面向?qū)ο?/p>
B、面向數(shù)據(jù)
C、面向過程
D、面向?qū)傩?/p>
2、判定表由四部分組成:左上部列出(B)。0802
- 條件組合與動作之間的對應(yīng)關(guān)系
- 所有條件
- 所有可能的動作
- 可能的條件組合
4、耦合度也可以分為七級:其中最松散的耦合是(A)。0801
- 非直接耦合
- 數(shù)據(jù)耦合
- 特征耦合
- 控制耦合
二、填空題(每空2分,共18分)
- 軟件工程由方法、(工具)和過程三部分組成,稱軟件工程的三要素。0101
- 軟件可理解性,指系統(tǒng)具有清晰的結(jié)構(gòu),能直接反映問題的(需求)。0103
- 在實體-關(guān)系圖簡稱E-R圖中,數(shù)據(jù)對象實體用長方形、關(guān)系用(菱形)、屬性用橢圓表示。0502
- 從工程管理的角度軟件設(shè)計可分為概要設(shè)計和(詳細(xì))設(shè)計兩大步驟。0801
- 通過向用戶提供視覺和聽覺上的反饋,保持用戶與界面間的雙向通信,是提高界面可(交互)性的措施之一。1204
- 測試用例中,不僅要選擇合理的輸入數(shù)據(jù),還要選擇(不合理)的輸入數(shù)據(jù)。1401
三、判斷題(每小題2分,共24分,錯誤打X、正確打√)
- 糾錯性維護(hù)是改正運行期間發(fā)現(xiàn)的潛伏錯誤。(√)0101
- 軟件可移植性(portability),是指軟件從一個計算機系統(tǒng)或(環(huán)境)移植到另一個上去的難易程度。(√)0103
- 軟件復(fù)雜性不能反映出軟件的可理解性、模塊化、簡單性等屬性。(X)0204
- 當(dāng)程序內(nèi)的分支數(shù)和循環(huán)數(shù)增加時,V(G)值將隨之增加,即程序的復(fù)雜性增大。(√)0204
- 一般來說,設(shè)計軟件時應(yīng)盡量使用數(shù)據(jù)耦合,減少控制耦合,限制外部環(huán)境耦合和公共數(shù)據(jù)耦合,杜絕內(nèi)容耦合。(√)0803
- 編碼的依據(jù)是詳細(xì)設(shè)計說明書。(√)1303
- 程序文檔應(yīng)該包括代碼的功能、代碼的完成者等內(nèi)容。(√)1303
- 預(yù)防性維護(hù)是修改軟件,以適應(yīng)軟硬件環(huán)境的變化。(X)0101
四、簡答題(每小題4分,共20分
5、瀑布模型一般適應(yīng)哪些場合?0104
瀑布模型一般適用于功能、性能明確、完整、無重大變化的軟件系統(tǒng)的開發(fā)。例如操作系統(tǒng)、編譯系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng)等系統(tǒng)軟件的開發(fā)。應(yīng)用有一定的局限性。
五、綜合題(每小題10分,共20分)
1、軟件工程的目標(biāo)是什么?0103
答:在給定成本、進(jìn)度的前提下,開發(fā)出具有可修改性、有效性、可靠性、可理解性、可維護(hù)性、可重用性、可適應(yīng)性、可移植性、可追蹤性和可互操作性并滿足用戶需求的軟件產(chǎn)品。
《軟件工程》試題及參考答案
一、單向選擇題(四選一、每小題3分,共18分)
1、描述靜態(tài)數(shù)據(jù)結(jié)構(gòu)的概念模式是(A )。0801
????? A、E-R圖 B、DFD C、結(jié)構(gòu)圖 D、框圖
2、結(jié)構(gòu)化程序設(shè)計理論認(rèn)為,實現(xiàn)良好的程序結(jié)構(gòu)要應(yīng)用( A )的分析方法。1301
????? A、自頂向下 B、自底向上 C、面向?qū)ο?D、基于組件
4、軟件生產(chǎn)過程中,需求信息由(D )給出。0401
????? A、程序員 B、項目管理者 C、軟件分析設(shè)計人員 D、軟件用戶
二、填空題(每空2分,共18分)
- 軟件工程由(方法)、工具和過程三部分組成,稱軟件工程的三要素。0103
- 基于計算機系統(tǒng)的軟件要素中的軟部件由程序、數(shù)據(jù)和(文檔)組成。0301
- 流程圖也稱為程序框圖是最常用的一種表示法,它有順序、分支和(循環(huán))三個基本控制構(gòu)件。0802
- 機器語言和匯編語言,也稱為(低級)語言。1301
- 軟件測試是執(zhí)行程序發(fā)現(xiàn)并排除程序中潛伏的(錯誤)的過程。1401
- 動態(tài)測試有兩種測試方法:黑盒測試和(白盒)測試。1401
- 軟件可維護(hù)性,是指軟件產(chǎn)品交付使用后,在實現(xiàn)改正潛伏的錯誤、改進(jìn)性能等屬性、適應(yīng)環(huán)境變化等方面工作的(難易)程度。0103
三、判斷題(每小題2分,共24分,錯誤打X、正確打√)
- 開發(fā)大型軟件易產(chǎn)生疏漏和錯誤,往往是產(chǎn)生軟件危機的原因之一。(√)0102
- 據(jù)統(tǒng)計,軟件維護(hù)人員為了分析和理解原軟件系統(tǒng)所花費的工作量約占整個維護(hù)工作量的60%以下。(X)0201
- 最高耦合度是數(shù)據(jù)耦合。(X)0803
- 人機界面(Human-Computer Interface,簡稱HCI)又稱人- 機接口或用戶界面。(√)1201
- 在同一用戶界面中,所有的菜單選擇、命令輸入、數(shù)據(jù)顯示和其他功能應(yīng)采用不同的形式和風(fēng)格。(X)1204
- 判定覆蓋必然滿足語句覆蓋。(√)1402
- 為提高可交互性一般對大多數(shù)操作動作應(yīng)允許用戶恢復(fù)。同時應(yīng)盡量減少用戶記憶的信息量。(√)1204
- 編程中應(yīng)采用統(tǒng)一的標(biāo)準(zhǔn)和約定,降低程序的復(fù)雜性。(√)1303
- 軟件在使用過程中維護(hù)不十分復(fù)雜。(X)0101
- 軟件可重用性(reusability),是指軟部件可以在多種場合使用的程度。(√)0103
四、簡答題(每小題4分,共20分)
1、螺旋模型的適應(yīng)場合有哪些?0104文章來源:http://www.zghlxwxcb.cn/news/detail-494103.html
適應(yīng)場合:支持需求不明確、特別是大型軟件系統(tǒng)的開發(fā),并支持面向規(guī)格說明、面向過程、面向?qū)ο蟮榷喾N軟件開發(fā)方法,是一種具有廣闊前景的模型。文章來源地址http://www.zghlxwxcb.cn/news/detail-494103.html
到了這里,關(guān)于【軟件工程】軟件工程期末考試試卷的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!