軟件工程試題及參考答案_第1頁
軟件工程試題及參考答案_第2頁
軟件工程試題及參考答案_第3頁
軟件工程試題及參考答案_第4頁
軟件工程試題及參考答案_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

軟件工程試題及參考答案?一、單項選擇題(每題2分,共20分)1.軟件生命周期中花費(fèi)費(fèi)用最多的階段是()A.詳細(xì)設(shè)計B.軟件編碼C.軟件測試D.軟件維護(hù)答案:D解析:軟件維護(hù)階段是軟件生命周期中花費(fèi)費(fèi)用最多的階段,因為在軟件交付使用后,需要不斷進(jìn)行維護(hù)以修正錯誤、改進(jìn)性能、適應(yīng)環(huán)境變化等。2.軟件可行性研究一般不考慮()A.是否有足夠的人員和相關(guān)技術(shù)來支持系統(tǒng)開發(fā)B.是否有足夠的工具和相關(guān)技術(shù)來支持系統(tǒng)開發(fā)C.待開發(fā)軟件是否有市場、經(jīng)濟(jì)上是否合算D.待開發(fā)的軟件是否會有質(zhì)量問題答案:D解析:可行性研究主要關(guān)注技術(shù)可行性、經(jīng)濟(jì)可行性和操作可行性等方面,一般不考慮軟件未來的質(zhì)量問題,質(zhì)量問題是在開發(fā)過程中通過各種質(zhì)量保證措施來保障的。3.下列選項中不屬于總體設(shè)計階段任務(wù)的是()A.確定軟件的功能需求B.確定軟件的總體結(jié)構(gòu)C.確定模塊之間的接口D.設(shè)計數(shù)據(jù)庫的邏輯結(jié)構(gòu)答案:A解析:確定軟件的功能需求是需求分析階段的任務(wù),總體設(shè)計階段主要進(jìn)行軟件總體結(jié)構(gòu)設(shè)計、模塊劃分及接口設(shè)計等。4.詳細(xì)設(shè)計階段的任務(wù)是確定每個模塊的()A.功能B.調(diào)用關(guān)系C.算法和數(shù)據(jù)結(jié)構(gòu)D.輸入輸出數(shù)據(jù)答案:C解析:詳細(xì)設(shè)計階段要為每個模塊確定具體的算法和數(shù)據(jù)結(jié)構(gòu),以實現(xiàn)模塊的功能。5.結(jié)構(gòu)化程序設(shè)計主要強(qiáng)調(diào)的是()A.程序的規(guī)模B.程序的效率C.程序設(shè)計語言的先進(jìn)性D.程序的易讀性答案:D解析:結(jié)構(gòu)化程序設(shè)計強(qiáng)調(diào)程序的易讀性,通過采用自頂向下、逐步求精等方法,使程序結(jié)構(gòu)清晰,易于理解和維護(hù)。6.軟件測試的目的是()A.證明軟件的正確性B.發(fā)現(xiàn)軟件中的錯誤C.排除軟件中的錯誤D.改善軟件的性能答案:B解析:軟件測試的目的是發(fā)現(xiàn)軟件中的錯誤,而不是證明軟件的正確性或排除所有錯誤,軟件測試可以幫助發(fā)現(xiàn)問題以便進(jìn)行修復(fù)和改進(jìn)。7.軟件調(diào)試的目的是()A.找出錯誤所在并改正之B.排除存在錯誤的可能性C.對錯誤性質(zhì)進(jìn)行分類D.統(tǒng)計出錯的次數(shù)答案:A解析:軟件調(diào)試的目的是找出軟件中的錯誤并改正,通過調(diào)試手段定位和解決問題。8.下列關(guān)于軟件質(zhì)量保證的敘述中,不正確的是()A.質(zhì)量保證活動應(yīng)貫穿軟件開發(fā)的全過程B.質(zhì)量保證活動的目的是盡量預(yù)防錯誤,防患于未然C.質(zhì)量保證活動就是對軟件進(jìn)行測試D.質(zhì)量保證活動的主要任務(wù)是檢查和評審答案:C解析:軟件質(zhì)量保證活動貫穿軟件開發(fā)全過程,目的是預(yù)防錯誤,主要任務(wù)是檢查和評審等,而軟件測試只是質(zhì)量保證活動中的一部分,不能將質(zhì)量保證等同于軟件測試。9.軟件維護(hù)工作的最主要部分是()A.校正性維護(hù)B.適應(yīng)性維護(hù)C.完善性維護(hù)D.預(yù)防性維護(hù)答案:C解析:完善性維護(hù)是軟件維護(hù)工作中最主要的部分,它主要是為了改進(jìn)軟件性能、增加功能等,以滿足用戶不斷變化的需求。10.面向?qū)ο蠓椒ㄖ校瑢ο笫穷惖模ǎ〢.實例B.抽象C.子類D.父類答案:A解析:在面向?qū)ο蠓椒ㄖ校瑢ο笫穷惖膶嵗?,類是對象的抽象模板,通過類可以創(chuàng)建多個對象。二、填空題(每題2分,共20分)1.軟件工程三要素包括方法、工具和__________。答案:過程解析:軟件工程三要素是方法、工具和過程,方法用于指導(dǎo)軟件開發(fā),工具輔助軟件開發(fā),過程規(guī)定了軟件開發(fā)的步驟和流程。2.軟件生存周期可分為可行性研究、需求分析、__________、詳細(xì)設(shè)計、編碼、測試、維護(hù)等階段。答案:總體設(shè)計解析:軟件生存周期的階段包括可行性研究、需求分析、總體設(shè)計、詳細(xì)設(shè)計、編碼、測試、維護(hù)等,總體設(shè)計在需求分析之后,進(jìn)一步確定軟件的總體結(jié)構(gòu)。3.結(jié)構(gòu)化分析方法的常用工具包括數(shù)據(jù)流圖、數(shù)據(jù)字典、__________等。答案:判定表和判定樹解析:結(jié)構(gòu)化分析方法常用工具除了數(shù)據(jù)流圖和數(shù)據(jù)字典外,判定表和判定樹用于描述復(fù)雜的邏輯關(guān)系,幫助分析系統(tǒng)的功能需求。4.模塊獨(dú)立性的兩個定性度量標(biāo)準(zhǔn)是耦合性和__________。答案:內(nèi)聚性解析:模塊獨(dú)立性通過耦合性和內(nèi)聚性來衡量,耦合性描述模塊之間的聯(lián)系緊密程度,內(nèi)聚性描述模塊內(nèi)部各元素之間的聯(lián)系緊密程度。5.程序流程圖中的菱形框表示__________。答案:判斷條件解析:程序流程圖中菱形框用于表示判斷條件,根據(jù)條件的成立與否決定程序的流向。6.黑盒測試又稱為功能測試,白盒測試又稱為__________。答案:結(jié)構(gòu)測試解析:黑盒測試基于功能需求進(jìn)行測試,不考慮內(nèi)部結(jié)構(gòu);白盒測試基于內(nèi)部結(jié)構(gòu)進(jìn)行測試,所以又稱為結(jié)構(gòu)測試。7.軟件維護(hù)的內(nèi)容包括校正性維護(hù)、適應(yīng)性維護(hù)、__________和預(yù)防性維護(hù)。答案:完善性維護(hù)解析:軟件維護(hù)包含校正性維護(hù)、適應(yīng)性維護(hù)、完善性維護(hù)和預(yù)防性維護(hù),完善性維護(hù)是最主要的維護(hù)類型。8.面向?qū)ο蠓治龅闹饕蝿?wù)是建立系統(tǒng)的__________模型、動態(tài)模型和功能模型。答案:對象解析:面向?qū)ο蠓治鲋饕⑾到y(tǒng)的對象模型、動態(tài)模型和功能模型,對象模型描述系統(tǒng)中的對象及關(guān)系,動態(tài)模型描述系統(tǒng)的動態(tài)行為,功能模型描述系統(tǒng)的功能。9.在面向?qū)ο蠓椒ㄖ?,類之間共享屬性和操作的機(jī)制稱為__________。答案:繼承解析:繼承是面向?qū)ο蠓椒ㄖ蓄愔g共享屬性和操作的機(jī)制,通過繼承可以實現(xiàn)代碼復(fù)用和層次結(jié)構(gòu)的構(gòu)建。10.軟件項目管理的主要內(nèi)容包括人員管理、__________、成本管理、質(zhì)量管理、風(fēng)險管理等。答案:進(jìn)度管理解析:軟件項目管理主要內(nèi)容涵蓋人員管理、進(jìn)度管理、成本管理、質(zhì)量管理、風(fēng)險管理等,進(jìn)度管理對于確保項目按時交付至關(guān)重要。三、簡答題(每題10分,共30分)1.簡述軟件危機(jī)產(chǎn)生的原因。答案:軟件危機(jī)產(chǎn)生的原因主要有以下幾點(diǎn):軟件自身特點(diǎn):軟件是邏輯產(chǎn)品,缺乏可見性,難以準(zhǔn)確把握其質(zhì)量和進(jìn)度。軟件的規(guī)模和復(fù)雜度不斷增加,開發(fā)難度增大。軟件開發(fā)和維護(hù)方法不當(dāng):缺乏科學(xué)的軟件開發(fā)方法和工具,開發(fā)過程隨意性大。對軟件維護(hù)的重視不夠,維護(hù)成本高且效果不佳。人員因素:軟件開發(fā)人員對用戶需求理解不準(zhǔn)確,導(dǎo)致開發(fā)出的軟件不符合用戶期望。軟件開發(fā)團(tuán)隊成員之間溝通不暢,協(xié)作困難,影響開發(fā)效率和質(zhì)量。用戶需求變化:用戶需求在軟件開發(fā)過程中不斷變化,導(dǎo)致軟件需要頻繁修改,增加了開發(fā)難度和成本。2.什么是軟件測試?軟件測試的基本原則有哪些?答案:軟件測試是對軟件產(chǎn)品進(jìn)行驗證和確認(rèn)的過程,其目的是發(fā)現(xiàn)軟件中的錯誤。軟件測試的基本原則如下:盡早并不斷進(jìn)行測試:測試應(yīng)在軟件開發(fā)的早期階段介入,并貫穿整個開發(fā)過程,以便盡早發(fā)現(xiàn)和解決問題。全面測試:要對軟件的所有功能、性能、接口等方面進(jìn)行全面測試,確保軟件質(zhì)量。重點(diǎn)測試:對關(guān)鍵功能、容易出錯的部分等進(jìn)行重點(diǎn)測試,提高測試效率。避免測試自己的代碼:開發(fā)人員應(yīng)避免測試自己編寫的代碼,以減少主觀因素的影響,發(fā)現(xiàn)更多潛在問題。及時反饋測試結(jié)果:測試人員應(yīng)及時將測試中發(fā)現(xiàn)的問題反饋給開發(fā)人員,以便及時進(jìn)行修復(fù)。妥善保存測試文檔:測試過程中產(chǎn)生的文檔如測試計劃、測試用例、測試報告等應(yīng)妥善保存,以便后續(xù)參考和維護(hù)。3.簡述面向?qū)ο蠓椒ǖ膬?yōu)點(diǎn)。答案:面向?qū)ο蠓椒ň哂幸韵聝?yōu)點(diǎn):提高軟件的可維護(hù)性:采用封裝技術(shù),將數(shù)據(jù)和操作封裝在一起,使得代碼結(jié)構(gòu)清晰,易于維護(hù)。繼承機(jī)制便于代碼復(fù)用和擴(kuò)展,當(dāng)需求變化時,只需在子類中進(jìn)行修改,而不影響父類和其他相關(guān)類,降低了維護(hù)成本。提高軟件的可擴(kuò)展性:通過繼承可以方便地創(chuàng)建新的類,擴(kuò)展系統(tǒng)功能。多態(tài)性使得同一操作可以作用于不同類型的對象,為軟件的擴(kuò)展提供了靈活性。提高軟件的可復(fù)用性:類庫和組件的存在使得開發(fā)過程中可以復(fù)用已有的代碼,減少重復(fù)開發(fā)。面向?qū)ο蟮脑O(shè)計原則鼓勵代碼的復(fù)用,提高了軟件的開發(fā)效率。更好地反映問題域:面向?qū)ο蠓椒ㄒ詫ο鬄楹诵?,能夠更自然地模擬現(xiàn)實世界中的事物和關(guān)系,使軟件系統(tǒng)更符合用戶需求和實際應(yīng)用場景。增強(qiáng)軟件的可靠性:封裝和信息隱藏機(jī)制減少了外界對內(nèi)部數(shù)據(jù)的干擾,提高了軟件的穩(wěn)定性和可靠性。嚴(yán)格的面向?qū)ο笤O(shè)計和開發(fā)過程有助于發(fā)現(xiàn)和避免潛在的錯誤,提高軟件質(zhì)量。四、綜合應(yīng)用題(每題15分,共30分)1.某高校要開發(fā)一個學(xué)生成績管理系統(tǒng),該系統(tǒng)應(yīng)具備以下功能:錄入學(xué)生的基本信息(包括學(xué)號、姓名、性別、年齡等)。錄入學(xué)生的課程成績(包括課程號、課程名、成績等)。計算學(xué)生的平均成績。查詢學(xué)生的成績信息(可以按學(xué)號、課程號等條件查詢)。統(tǒng)計各課程的平均分。請用結(jié)構(gòu)化分析方法畫出該系統(tǒng)的數(shù)據(jù)流圖。答案:學(xué)生成績管理系統(tǒng)的數(shù)據(jù)流圖如下:頂層數(shù)據(jù)流圖:```++|學(xué)生成績||管理系統(tǒng)|++||++++|錄入||查詢||信息||成績|++++||||||++++|計算||統(tǒng)計||平均||課程||成績||平均|++++```第一層數(shù)據(jù)流圖:```++|學(xué)生成績||管理系統(tǒng)|++||++++|錄入||查詢||信息||成績|++++||||||++++|計算||統(tǒng)計||平均||課程||成績||平均|++++||||||++++|學(xué)生基本||課程號||信息|||++++||||||++++|課程成||課程平||績||均分|++++```說明:頂層數(shù)據(jù)流圖描述了系統(tǒng)的總體功能和數(shù)據(jù)流向。第一層數(shù)據(jù)流圖進(jìn)一步細(xì)化了各個功能模塊及其輸入輸出數(shù)據(jù)流。"錄入信息"模塊接收學(xué)生基本信息和課程成績信息。"計算平均成績"模塊根據(jù)錄入的課程成績計算學(xué)生平均成績。"查詢成績"模塊根據(jù)輸入的條件查詢學(xué)生成績信息。"統(tǒng)計課程平均分"模塊統(tǒng)計各課程的平均分。2.假設(shè)一個簡單的圖形系統(tǒng),包含圓形、矩形和三角形三種圖形。請用面向?qū)ο蠓椒ㄔO(shè)計該圖形系統(tǒng),要求包括圖形類的層次結(jié)構(gòu)、各圖形類的屬性和方法。答案:圖形系統(tǒng)的面向?qū)ο笤O(shè)計如下:圖形類的層次結(jié)構(gòu):```Shape/|\CircleRectangleTriangle```Shape類:```javaabstractclassShape{privateStringcolor;publicShape(Stringcolor){this.color=color;}publicStringgetColor(){returncolor;}publicabstractdoublearea();}```Circle類:```javaclassCircleextendsShape{privatedoubleradius;publicCircle(Stringcolor,doubleradius){super(color);this.radius=radius;}@Overridepublicdoublearea(){returnMath.PI*radius*radius;}}```Rectangle類:```javaclassRectangleextendsShape{privatedoublelength;privatedoublewidth;publicRectangle(Stringcolor,doublelength,doublewidth){super(color);this.length=length;this.width=width;}@Overridepublicdoublearea(){returnlength*width;}}```Triangle類:```javaclassTriangleextendsShape{privatedoublebase;privatedoubleheight;publicTriangle(Stringcolor,doublebase,doubleheight){super(color);this.base=base;this.height=height;}@Overridepublicdoublearea(){

溫馨提示

  • 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

提交評論