(通用版)軟件工程導論期末考試題庫及答案_第1頁
(通用版)軟件工程導論期末考試題庫及答案_第2頁
(通用版)軟件工程導論期末考試題庫及答案_第3頁
(通用版)軟件工程導論期末考試題庫及答案_第4頁
(通用版)軟件工程導論期末考試題庫及答案_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、. . . .(通用版)軟件工程導論期末考試題庫及答案1.填空題1一般來說,可以從_一致性_、_完整性_、_現實性_和_有效性_四個方面驗證軟件需求的正確性。2IPO圖是_輸入、處理和輸出圖_的簡稱,它是美國IBM公司發(fā)展完善起來的一種圖形工具。3系統流程圖是描述_物理模型_的傳統工具,用圖形符號表達了系統中各種元素之間的_信息流動_情況。4數據流圖中的箭頭表示 數據流 ,橢圓或圓形表示 數據處理 ,矩形表示 數據的源點/終點 。軟件測試的步驟按順序分別是:_單元測試_、子系統測試、系統測試(子系統和系統測試通常稱為集成測試)、_確認測試_和_系統測試(集成測試)_軟件生命周期一般可分為_問題

2、定義_、可行性研究、_需求分析_、設計編碼、_測試_、運行與維護階段??尚行匝芯恐饕性谝韵滤膫€方面_經濟可行性_、_技術可行性_、_法律可行性_和抉擇。在結構化設計中,HIPO圖應用在 總體設計 階段,由IPO圖和_層次圖_兩部分組成。復雜問題的對象模型通常由下述五個層次組成:主題層、_類與對象_層、_結構_層、_屬性_層和_服務_層。實施精化設計的目標是基于模塊的“高內聚低耦合”的原則,提高模塊的_獨立性。軟件生命周期一般可分為_問題定義_、可行性研究、_需求分析_、概要設計_、詳細設計、編碼、_軟件測試_、運行與維護階段。面向對象的數據存儲管理模式分為_文件_、_關系數據庫_和_面向對

3、象數據庫_三種。單元測試一般以_白盒_測試為主,_黑盒_測試為輔。軟件工程三要素包括_方法_、_工具_和_過程_,其中, _過程_支持軟件開發(fā)的各個環(huán)節(jié)的控制和管理。類構件的重用方式有_實力重用_、_繼承重用_和_ 多態(tài)重用_三種。能力成熟度模型分為5個等級:初始級、_可重復_級、_已定義_級、_已管理_級和_優(yōu)化_級。2.判斷題1. 向滯后的項目中增加人手會使得項目更加滯后。(T) 2. 過程描述語言可以用于描述軟件的系統結構。(F) 3. 按照瀑布模型開發(fā)軟件的一條指導思想是清楚地區(qū)分邏輯設計與物理設計,以便盡早開始程序的物理實現。(F ) 5. 只有質量差的軟件產品才需要維護。( F)

4、6層次圖用來描述軟件的層次結構。層次圖中的一個矩形框代表一個模塊,方框間的連線表示模塊的組成關系。在層次圖中除最頂層的方框之外,給每個方框都加編號,即成為帶有編號的層次圖。( F )7建立動態(tài)模型的第一步,是編寫典型交互行為的腳本。( T)8.軟件錯誤可能出現在開發(fā)過程的早期,越早修改越好。(T)9.軟件模塊的耦合是越低越好。( T) 10.一個好的測試用例在于能發(fā)現至今未發(fā)現的錯誤。( T ) 11.面向對象設計的結果只能采用面向對象語言來實現( F ) 12. 一個成功的項目唯一提交的就是運行程序。(F ) 13.用例之間的關系有3種。( T )14.面向對象設計準則也要遵循弱耦合的原則,

5、但是繼承耦合則應該提高,緊密地繼承耦合與高度的一般-特殊內聚是一致的。 ( T )15.軟件工作的考慮范圍主要是程序設計和實現。(F )16.環(huán)形復雜度定量度量程序的邏輯復雜度,可以用這個公式來計算環(huán)形復雜度:流圖G的環(huán)形復雜度V(G) = N E + 2。(改成E-N+2)( F )17.等價類劃分方法將所有可能的輸入數據劃分成若干部分,然后從每一部分中選取少數有代表性的數據作為測試用例。( T ) 18.在進行總體(改成概要)設計時應加強模塊間的聯系。( F )19.系統結構圖是精確表達程序結構的圖形表示法。因此,有時也可以將系統結構圖當作系統流程圖使用。( T )20.建立動態(tài)模型的第一

6、步,是編寫典型交互行為的腳本。( T )21.在程序調試時,找出錯誤的位置和性質比改正該錯誤更難。( F )22.如果通過軟件測試沒有發(fā)現錯誤,則說明軟件是正確的。( F ) 23.快速原型模型可以有效地適應用戶需求的動態(tài)變化。( T )24.模塊化,信息隱藏,抽象和逐步求精的軟件設計原則有助于得到高內聚,低耦合度的軟件產品。( T )25.集成測試主要由用戶來完成。( F )26.面向對象 = 對象 + 類 + 繼承 + 消息傳遞。( T )27.面向對象的分析是面向計算機系統建立軟件系統的對象模型。( F )3.選擇題1具有風險分析的軟件生命周期模型是( )。 A.瀑布模型B.噴泉模型 C

7、.螺旋模型D.增量模型2軟件工程的基本要素包括方法、工具和( )。 A. 過程 B. 軟件系統 C. 硬件環(huán)境 D. 人員 3軟件的復雜性是( ),它引起人員通信困難、開發(fā)費用超支、開發(fā)時間超時等問題。 A. 固有的 B. 人為的 C. 可消除的 D. 不可降低的 4在結構化分析方法中,( )表達系統內部數據運動的圖形化技術。 A. 數據字典 B. 實體關系圖 C. 數據流圖 D. 狀態(tài)轉換圖 5“軟件危機”是指( )。A.計算機病毒的出現 B利用計算機進行經濟犯罪活動 C軟件開發(fā)和維護中出現的一系列問題 D人們過分迷戀計算機系統6隨著軟硬件環(huán)境變化而修改軟件的過程是( )。 A校正性維護B適

8、應性維護 C完善性維護D預防性維護7. 需求分析中開發(fā)人員要從用戶那里了解( )。 A軟件做什么B用戶使用界面C輸入的信息D軟件的規(guī)模 8軟件詳細設計的主要任務是確定每個模塊的( )。 A算法和使用的數據結構B外部接口 C功能D編程 9為了提高模塊的獨立性,模塊內部最好是( )。/外部耦合,功能內聚 A邏輯內聚B時間內聚 C功能內聚D通信內聚10一個模塊的( )太大一般是因為缺乏中間層次,應當適當增加中間層次的控制模塊。A深度 B. 寬度C. 扇出 D. 扇入11模塊的內聚性最高的是( )。 A邏輯內聚B時間內聚偶然內聚D功能內聚12. 需求分析是( )。 A. 軟件開發(fā)工作的基礎 B. 軟件

9、生存周期的開始 C. 由系統分析員單獨完成的 D. 由用戶自己單獨完成的13. 在白盒測試技術測試用例的設計中,( )是最強的覆蓋標準。A語句覆蓋B路徑覆蓋條件組合覆蓋D判定覆蓋軟件維護時,對測試階段未發(fā)現的錯誤進行測試、診斷、定位、糾錯,直至修改的回歸測試過程稱為( )。A. 改正性維護 B. 適應性維護C. 完善性維護 D. 預防性維護( )是把對象的屬性和操作結合在一起,構成一個獨立的對象,其內部信息對外界是隱蔽的,外界只能通過有限的接口與對象發(fā)生聯系。 A. 多態(tài)性 B. 繼承 C. 封裝 D. 消息 16.對象實現了數據和操作的結合,使數據和操作( )于對象的統一體中。A結合B隱藏C

10、封裝D抽象17.面向對象的開發(fā)方法中,( )將是面向對象技術領域內占主導地位的標準建模語言。ABooch方法BCoad方法CUML語言DOMT方法18.( )意味著一個操作在不同的類中可以有不同的實現方式。A多態(tài)性B多繼承C類的可復用D信息隱藏19.單元測試的測試用例主要根據( )的結果來設計。A需求分析 B源程序C概要設計D詳細設計20. 軟件測試是為了( )而執(zhí)行程序的過程。 A. 糾正錯誤 B. 發(fā)現錯誤 C. 避免錯誤 D. 證明正確 21類構件的重用方式有多態(tài)重用、繼承重用和( )A實例重用 B.重載重用 C. 代碼重用 D. 方法重用22. 支持面向對象技術的軟件生存周期模型是(

11、)。 A. 噴泉模型 B. 螺旋模型 C. 增量模型 D. 瀑布模型23. 在白盒測試技術測試用例的設計中,( )是最弱的覆蓋標準。A語句覆蓋B路徑覆蓋 C條件組合覆蓋D判定覆蓋下面哪些測試方法屬于白盒測試( )。/BCD是黑盒測試A、基本路徑測試 B、等價類劃分 C、邊界值分析 D、錯誤推測 E、邏輯覆蓋測試下列哪些選項是屬于內容耦合( )。一個模塊直接訪問另一個模塊的內部數據一個模塊有多個入口一個模塊不通過正常入口轉到另一模塊內部一個模塊只有一個入口下列屬于度量效益方法的是( )。A、貨幣的時間價值 B、投資回收期C、收入 D、投資回報率數據流圖是用于表示軟件模型的一種圖示方法,在下列可采

12、用的繪制方法中,哪些是常采用的( )。A、自頂向下 B、自底向上 C、分層繪制 D、逐步求精軟件設計中一般將用到圖形工具,下列哪種些可用作設計的圖形工具( )。A、結構圖B、實體聯系圖C、IPO圖D、層次圖4.簡答題:簡述增量模型的優(yōu)點和缺點。答:優(yōu)點 :采用增量模型的優(yōu)點是人員分配靈活,剛開始不用投入大量人力資源。如果核心產品很受歡迎,則可增加人力實現下一個增量。當配備的人員不能在設定的期限內完成產品時,它提供了一種先推出核心產品的途徑。這樣即可先發(fā)布部分功能給客戶,對客戶起到鎮(zhèn)靜劑的作用。此外,增量能夠有計劃地管理技術風險。 缺點 :1) 由于各個構件是逐漸并入已有的軟件體系結構中的,所以

13、加入構件必須不破壞已構造好的系統部分,這需要軟件具備開放式的體系結構。 2) 在開發(fā)過程中,需求的變化是不可避免的。增量模型的靈活性可以使其適應這種變化的能力大大優(yōu)于瀑布模型和快速原型模型,但也很容易退化為邊做邊改模型,從而是軟件過程的控制失去整體性。 3)如果增量包之間存在相交的情況且未很好處理,則必須做全盤系統分析,這種模型將功能細化后分別開發(fā)的方法較適應于需求經常改變的軟件開發(fā)過程。簡述軟件設計的過程。答:軟件設計是把許多事物和問題抽象起來,并且抽象它們不同層次和角度,是將需求轉變?yōu)檐浖愂龅倪^程,是迭代的過程。軟件設計,要根據需求規(guī)格說明書,對整個設計過程進行計劃,然后實施具體的設計過

14、程,即“先整體,再局部”,也是不斷迭代和精化的過程。然后需要對生成的設計規(guī)格說明書進行評審,啟動質量評價的標準,若未通過評審,需重新修改設計,直至評審通過,確定最后定型的過程本身。進入后續(xù)階段,完成軟件設計過程。3.原型化方法主要用于解決什么問題?試說明這種方法的主要優(yōu)缺點。答:建立原型的主要原因是為了解決在產品開發(fā)的早期階段需求不確定的問題,用戶、經理和其他非技術項目風險承擔者發(fā)現在確定和開發(fā)產品時,原型可以使他們的想象更具體化。原型在軟件開發(fā)過程中可以起到以下主要作用:(1) 明確并完善需求 原型作為一種需求工具,它初步實現所理解的系統的一部分。用戶對原型的評價可以指出需求中的許多問題,在

15、你開發(fā)真正產品之前,可以最低的費用來解決這些問題。(2) 探索設計選擇方案 原型作為一種設計工具,用它可以探索不同的用戶界面技術,使系統達到最佳的可用性,并且可以評價可能的技術方案。(3) 發(fā)展為最終的產品 原型作為一種構造工具,是產品最初子集的完整功能實現,通過一系列小規(guī)模的開發(fā)循環(huán),你可以完成整個產品的開發(fā)。4.請看下列偽代碼程序,要求完成下列問題:(1)畫出代碼的流程圖(4分)(2)根據該程序流程圖畫出該程序的流圖;(4分)(3)計算該流圖的環(huán)形復雜度;(4分) START INPUT (A,B,C) IF A5 THEN X=10 ELSE X=1 END IF IF B10 THEN

16、 Y=20 ELSE Y=2 END IF IF C15 THEN Z=30 ELSE Z=3 END IF PRINT (X,Y,Z) STOP答:法一:環(huán)形復雜度=E-N+2=18-16+2=4法二:環(huán)形復雜度=P+1=3+1=45.簡述結構化程序設計方法的基本特點。答:(1)盡可能少用goto語句的程序設計方法;(2)每個代碼塊都單入單出;(3)使用控制結構:順序、選擇和循環(huán);自頂向下逐步求精。6.請比較快速原型模型和螺旋模型的優(yōu)缺點,并說明各自的適用范圍。答:模型優(yōu)點缺點適用范圍快速原型模型易于獲取客戶真實需求可能導致系統設計差、效率低,難于維護適用于對軟件需求缺乏準確認識的情況螺旋模

17、型風險驅動,降低風險風險分析人員需要有經驗且經過充分訓練內部開發(fā)的大型軟件項目7.衡量模塊獨立性的兩個定性標準是什么?這兩個標準的定義分別是什么?在我們的軟件設計中,關于模塊獨立性我們追求的目標是什么?答:衡量模塊獨立性的兩個定性標準是內聚和耦合(2分)。耦合是指對一個軟件結構內不同模塊彼此之間互相依賴(連接)的緊密程度;而內聚則標志一個模塊內部各個元素彼此結合的緊密程度(2分)。在我們的軟件設計中,關于模塊獨立性我們追求的目標是緊密內聚松散耦合(1分)。8.什么是黑盒測試法?答:黑盒測試法把程序看成一個黑盒子,完全不考慮程序的內部結構和處理過程(2分)。它只檢查程序功能是否能按照規(guī)格說明書的

18、規(guī)定正常使用(1分),程序是否能適當地接收輸入數據(1分),產生正確地輸出信息(1分)。9.面向對象設計中,存在有哪幾種耦合和內聚?答:弱耦合:交互耦合,繼承耦合強內聚:服務內聚,類內聚,一般-特殊內聚10.某個程序的偽碼如下(前面的標號只用于標明語句順序,不參與程序運行):STARTIF L1 THENS1DO WHILE L2S2IF L3 THENS3ELSES4END IFEND DOEISES5END IFSTOP試將其轉換成PAD圖(5分)計算程序的環(huán)路復雜度(5分)法一:環(huán)路復雜度=E-N+2=15-13+2=4法二:環(huán)路復雜度=P+1=3+1=411.簡述面向對象的4個要點的含

19、義。答:面向對象的個要點是:對象分解、數據專有、繼承、封裝性。(分)1)對象分解:認為客觀世界是由各種對象組成的。 (分)2)數據專有,方法共享:把所有對象都劃分成各種對象類(簡稱為類,class),每個對象類都定義了一組數據和一組方法。 (分)3)繼承:按照子類(或稱為派生類)與父類(或稱為基類)的關系,把若干個對象類組成一個層次結構的系統(也稱為類等級)。(分)4)封裝性:對象彼此之間僅能通過傳遞消息互相聯系。(分)12.在下面用例圖中,有哪些行為者,有哪些用例?答:行為者:Bank network, Manager, Clerk用例:Authorize purchase, Log onto redister, Sell goods, Restock inventory, Open store13.航空公司托運行李規(guī)定:乘客可以免費托運重量不超過20公斤的行李。當行李超過20公斤時,對頭等艙的國內乘客超重部分每公斤收費3元,對其它艙的國內乘客超重部分每公斤收費5元,對外國乘客超重部分每公斤收費比國內乘客多一倍,對殘疾乘客超重部分每公斤收費比正常乘客少一半。要求用判定樹來表示計算行李費的算法。答:14.已知有一段代碼實現了“輸出ABC三個數中的最大值”,要求完成下列問題:(1)畫出代碼的流程圖(4分

溫馨提示

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

評論

0/150

提交評論