軟件工程期終試題B_第1頁
軟件工程期終試題B_第2頁
軟件工程期終試題B_第3頁
軟件工程期終試題B_第4頁
軟件工程期終試題B_第5頁
已閱讀5頁,還剩9頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

軟件工程期終試題B?一、單項選擇題(每題2分,共20分)1.軟件危機(jī)是指()A.軟件需求增長得不到滿足B.軟件生產(chǎn)成本高、質(zhì)量差C.軟件的開發(fā)和維護(hù)遇到了嚴(yán)重問題D.以上都正確答案:D解析:軟件危機(jī)是指在計算機(jī)軟件的開發(fā)和維護(hù)過程中所遇到的一系列嚴(yán)重問題,包括軟件需求增長得不到滿足、軟件開發(fā)成本高、質(zhì)量差以及軟件的開發(fā)和維護(hù)遇到嚴(yán)重困難等。2.軟件工程的出現(xiàn)是由于()A.軟件危機(jī)的出現(xiàn)B.計算機(jī)硬件技術(shù)的發(fā)展C.軟件社會化的需要D.計算機(jī)軟件技術(shù)的發(fā)展答案:A解析:軟件工程的出現(xiàn)是為了解決軟件危機(jī),通過采用工程化的方法來開發(fā)和維護(hù)軟件,提高軟件的質(zhì)量和生產(chǎn)率。3.瀑布模型的關(guān)鍵不足在于()A.過于簡單B.不能適應(yīng)需求的動態(tài)變更C.過于靈活D.各個階段需要進(jìn)行評審答案:B解析:瀑布模型是一種線性的軟件開發(fā)模型,它的關(guān)鍵不足在于不能適應(yīng)需求的動態(tài)變更,一旦需求發(fā)生變化,整個項目可能需要重新進(jìn)行。4.快速原型模型的主要特點(diǎn)之一是()A.開發(fā)完畢才見到產(chǎn)品B.及早提供全部完整的軟件產(chǎn)品C.開發(fā)完畢后才見到工作軟件D.及早提供工作軟件答案:D解析:快速原型模型的主要特點(diǎn)是及早提供工作軟件,通過快速構(gòu)建一個原型,讓用戶能夠盡早看到軟件的實(shí)際效果,并提出反饋意見,以便及時進(jìn)行修改和完善。5.軟件可行性研究一般不考慮()A.是否有足夠的人員和資金來支持系統(tǒng)開發(fā)B.是否有足夠的工具和相關(guān)技術(shù)來支持系統(tǒng)開發(fā)C.待開發(fā)軟件是否有市場、經(jīng)濟(jì)上是否合算D.待開發(fā)的軟件是否會有質(zhì)量問題答案:D解析:軟件可行性研究主要考慮技術(shù)可行性、經(jīng)濟(jì)可行性和操作可行性等方面,一般不考慮待開發(fā)軟件是否會有質(zhì)量問題,質(zhì)量問題是在軟件開發(fā)過程中需要關(guān)注和解決的。6.軟件需求規(guī)格說明書的作用不包括()A.軟件設(shè)計的依據(jù)B.用戶與開發(fā)人員對軟件要做什么的共同理解C.軟件驗(yàn)收的依據(jù)D.軟件可行性研究的依據(jù)答案:D解析:軟件需求規(guī)格說明書是軟件設(shè)計的依據(jù)、用戶與開發(fā)人員對軟件要做什么的共同理解以及軟件驗(yàn)收的依據(jù),而軟件可行性研究是在需求分析之前進(jìn)行的,其依據(jù)不是軟件需求規(guī)格說明書。7.數(shù)據(jù)字典是用來定義()中的各個成份的具體含義的。A.流程圖B.功能結(jié)構(gòu)圖C.系統(tǒng)結(jié)構(gòu)圖D.數(shù)據(jù)流圖答案:D解析:數(shù)據(jù)字典是用來定義數(shù)據(jù)流圖中的各個成份的具體含義的,包括數(shù)據(jù)項、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存儲和處理過程等。8.詳細(xì)設(shè)計的結(jié)果基本決定了最終程序的()A.代碼的規(guī)模B.運(yùn)行速度C.質(zhì)量D.可維護(hù)性答案:C解析:詳細(xì)設(shè)計的結(jié)果基本決定了最終程序的質(zhì)量,它對程序的算法、數(shù)據(jù)結(jié)構(gòu)、模塊劃分等進(jìn)行了詳細(xì)的設(shè)計,為編碼提供了具體的指導(dǎo)。9.軟件測試的目的是()A.證明軟件的正確性B.發(fā)現(xiàn)軟件中的錯誤C.排除軟件中的錯誤D.測定軟件的可靠性答案:B解析:軟件測試的目的是發(fā)現(xiàn)軟件中的錯誤,而不是證明軟件的正確性,也不能完全排除軟件中的錯誤,軟件測試可以幫助提高軟件的可靠性,但不是其主要目的。10.軟件維護(hù)工作的最主要部分是()A.校正性維護(hù)B.適應(yīng)性維護(hù)C.完善性維護(hù)D.預(yù)防性維護(hù)答案:C解析:完善性維護(hù)是軟件維護(hù)工作的最主要部分,它主要是為了滿足用戶不斷增長的需求,對軟件進(jìn)行功能擴(kuò)展、性能優(yōu)化等。二、填空題(每題2分,共20分)1.軟件工程的三要素是方法、工具和()。答案:過程解析:軟件工程的三要素是方法、工具和過程,方法是完成軟件開發(fā)的各項任務(wù)的技術(shù)方法,工具是為方法的運(yùn)用提供自動的或半自動的軟件支撐環(huán)境,過程是為了獲得高質(zhì)量的軟件所需要完成的一系列任務(wù)的框架。2.軟件開發(fā)模型有瀑布模型、快速原型模型、()、螺旋模型等。答案:增量模型(或其他正確的軟件開發(fā)模型)解析:常見的軟件開發(fā)模型還有增量模型、噴泉模型、敏捷開發(fā)模型等。3.可行性研究的目的是用最小的代價在盡可能短的時間內(nèi)確定該軟件項目是否()。答案:值得開發(fā)解析:可行性研究通過對技術(shù)、經(jīng)濟(jì)、操作等方面的分析,判斷該軟件項目是否值得開發(fā)。4.需求分析階段產(chǎn)生的最重要的文檔是()。答案:軟件需求規(guī)格說明書解析:軟件需求規(guī)格說明書是需求分析階段的主要成果,它明確了軟件的功能、性能、界面等方面的要求。5.結(jié)構(gòu)化分析方法的核心是()。答案:數(shù)據(jù)流圖解析:結(jié)構(gòu)化分析方法以數(shù)據(jù)流圖為核心,通過對數(shù)據(jù)流的分析來描述系統(tǒng)的功能和數(shù)據(jù)流程。6.模塊的獨(dú)立程度可以由兩個定性標(biāo)準(zhǔn)度量,這兩個標(biāo)準(zhǔn)分別稱為耦合性和()。答案:內(nèi)聚性解析:耦合性衡量模塊之間的相互依賴程度,內(nèi)聚性衡量模塊內(nèi)部各元素之間的緊密程度,它們是衡量模塊獨(dú)立程度的兩個重要指標(biāo)。7.詳細(xì)設(shè)計通常以()圖為工具,采用結(jié)構(gòu)化程序設(shè)計方法進(jìn)行詳細(xì)的過程設(shè)計。答案:程序流程圖(或其他正確的詳細(xì)設(shè)計工具圖)解析:詳細(xì)設(shè)計常用的工具包括程序流程圖、NS圖、PAD圖等。8.軟件測試的步驟主要有單元測試、集成測試、()和系統(tǒng)測試。答案:確認(rèn)測試解析:軟件測試一般按照單元測試、集成測試、確認(rèn)測試和系統(tǒng)測試的順序進(jìn)行。9.軟件維護(hù)可分為校正性維護(hù)、適應(yīng)性維護(hù)、完善性維護(hù)和()維護(hù)。答案:預(yù)防性解析:預(yù)防性維護(hù)是為了提高軟件的可維護(hù)性和可靠性,對軟件進(jìn)行的一種維護(hù)活動。10.軟件項目管理的主要內(nèi)容包括軟件項目計劃、軟件配置管理、軟件質(zhì)量保證、軟件項目()等。答案:風(fēng)險管理(或其他正確的軟件項目管理內(nèi)容)解析:軟件項目管理還包括人員管理、成本管理、進(jìn)度管理等方面。三、簡答題(每題10分,共30分)1.簡述軟件危機(jī)產(chǎn)生的原因。答案:軟件危機(jī)產(chǎn)生的原因主要包括以下幾個方面:用戶需求不明確:在軟件開發(fā)過程中,用戶需求往往不明確或頻繁變更,導(dǎo)致開發(fā)人員難以準(zhǔn)確把握軟件的功能和性能要求。缺乏正確的理論指導(dǎo):軟件開發(fā)初期,缺乏有效的軟件開發(fā)方法和工具,開發(fā)過程隨意性大,導(dǎo)致軟件質(zhì)量低下。軟件規(guī)模越來越大:隨著軟件應(yīng)用領(lǐng)域的不斷擴(kuò)大,軟件規(guī)模日益增大,結(jié)構(gòu)越來越復(fù)雜,增加了軟件開發(fā)和維護(hù)的難度。軟件復(fù)雜度高:現(xiàn)代軟件涉及到多種技術(shù)和領(lǐng)域知識,復(fù)雜度不斷提高,使得軟件開發(fā)和維護(hù)面臨更大的挑戰(zhàn)。軟件開發(fā)人員與用戶溝通不暢:開發(fā)人員與用戶之間缺乏有效的溝通渠道和方式,導(dǎo)致雙方對軟件需求的理解存在偏差,影響軟件的開發(fā)質(zhì)量。軟件開發(fā)技術(shù)更新快:軟件開發(fā)技術(shù)不斷發(fā)展和更新,開發(fā)人員如果不能及時掌握新的技術(shù),就會在開發(fā)過程中遇到困難。軟件維護(hù)困難:軟件交付使用后,由于各種原因需要進(jìn)行維護(hù),但維護(hù)工作往往缺乏有效的管理和規(guī)范,導(dǎo)致維護(hù)成本高、質(zhì)量難以保證。2.什么是軟件生命周期?軟件生命周期包括哪些階段?答案:軟件生命周期是指從軟件定義、開發(fā)、使用和維護(hù)直到最終被淘汰的全過程。軟件生命周期通常包括以下階段:軟件定義階段:包括問題定義、可行性研究和需求分析。問題定義明確要解決的問題是什么;可行性研究分析項目在技術(shù)、經(jīng)濟(jì)和操作上的可行性;需求分析確定軟件的功能、性能、界面等方面的要求。軟件開發(fā)階段:包括總體設(shè)計、詳細(xì)設(shè)計、編碼和單元測試、集成測試。總體設(shè)計確定軟件的總體結(jié)構(gòu)和模塊劃分;詳細(xì)設(shè)計對每個模塊進(jìn)行詳細(xì)的算法和數(shù)據(jù)結(jié)構(gòu)設(shè)計;編碼實(shí)現(xiàn)各個模塊的功能;單元測試對每個模塊進(jìn)行測試,確保模塊功能的正確性;集成測試將各個模塊集成起來進(jìn)行測試,檢查模塊之間的接口和協(xié)作是否正常。軟件維護(hù)階段:包括校正性維護(hù)、適應(yīng)性維護(hù)、完善性維護(hù)和預(yù)防性維護(hù)。校正性維護(hù)修復(fù)軟件中的錯誤;適應(yīng)性維護(hù)使軟件適應(yīng)環(huán)境的變化;完善性維護(hù)對軟件進(jìn)行功能擴(kuò)展和性能優(yōu)化;預(yù)防性維護(hù)為了提高軟件的可維護(hù)性和可靠性,對軟件進(jìn)行的一種維護(hù)活動。3.簡述軟件測試的原則。答案:軟件測試應(yīng)遵循以下原則:盡早并不斷地進(jìn)行測試:測試應(yīng)貫穿于軟件開發(fā)的整個過程,盡早發(fā)現(xiàn)問題并及時解決,避免問題積累。全面測試:要對軟件的功能、性能、界面、兼容性等各個方面進(jìn)行全面測試,確保軟件的質(zhì)量。重點(diǎn)測試:在全面測試的基礎(chǔ)上,要根據(jù)軟件的特點(diǎn)和用戶的需求,對關(guān)鍵功能和重要模塊進(jìn)行重點(diǎn)測試。避免測試自己的代碼:開發(fā)人員應(yīng)避免測試自己編寫的代碼,因?yàn)樽约嚎赡軐Υa存在思維定式,難以發(fā)現(xiàn)其中的問題,應(yīng)由獨(dú)立的測試人員進(jìn)行測試。及時反饋測試結(jié)果:測試人員發(fā)現(xiàn)問題后應(yīng)及時向開發(fā)人員反饋,以便開發(fā)人員及時修復(fù)問題,同時開發(fā)人員應(yīng)及時對測試結(jié)果進(jìn)行分析和處理。嚴(yán)格執(zhí)行測試計劃:測試計劃應(yīng)明確測試的目標(biāo)、范圍、方法、步驟等,測試人員應(yīng)嚴(yán)格按照測試計劃進(jìn)行測試,確保測試工作的有序進(jìn)行。充分注意測試中的群集現(xiàn)象:在測試過程中,往往會發(fā)現(xiàn)少數(shù)模塊存在較多的缺陷,這些模塊應(yīng)重點(diǎn)關(guān)注和測試。避免測試用例的隨意性:測試用例應(yīng)具有代表性和針對性,能夠覆蓋軟件的各種功能和邊界情況,避免測試用例的隨意編寫。對測試結(jié)果進(jìn)行全面評估:不僅要關(guān)注測試是否通過,還要對測試結(jié)果進(jìn)行全面評估,分析軟件的質(zhì)量狀況,為軟件的改進(jìn)提供依據(jù)。四、綜合應(yīng)用題(每題15分,共30分)1.某學(xué)校要開發(fā)一個學(xué)生成績管理系統(tǒng),要求實(shí)現(xiàn)學(xué)生信息管理、課程信息管理、成績錄入與查詢、成績統(tǒng)計與分析等功能。請使用結(jié)構(gòu)化分析方法對該系統(tǒng)進(jìn)行需求分析,畫出數(shù)據(jù)流圖,并寫出數(shù)據(jù)字典中的部分?jǐn)?shù)據(jù)項定義。答案:數(shù)據(jù)流圖頂層數(shù)據(jù)流圖:```++++|學(xué)生||成績管理系統(tǒng)||成績管理系統(tǒng)|||||||+^++^+||||vv++++|課程||成績統(tǒng)計與||信息管理系統(tǒng)||分析模塊|||||+^++^+||||vv++++|成績||學(xué)生信息管理||錄入與查詢模塊|||||||++++```第1層數(shù)據(jù)流圖(以成績錄入與查詢模塊為例):```++++|學(xué)生||成績錄入與||信息管理系統(tǒng)||查詢模塊|||||+^++^+||||vv++++|課程||成績錄入表單||信息管理系統(tǒng)|||||||+^++^+||||vv++++|成績||成績查詢表單||錄入與查詢模塊|||||||++++```數(shù)據(jù)字典數(shù)據(jù)項定義:學(xué)生信息:學(xué)號:字符型,長度為10位,唯一標(biāo)識學(xué)生。姓名:字符型,長度為20位。性別:字符型,長度為2位,取值為"男"或"女"。年齡:數(shù)值型,范圍為1530歲。課程信息:課程號:字符型,長度為8位,唯一標(biāo)識課程。課程名:字符型,長度為30位。學(xué)分:數(shù)值型,范圍為16分。成績:學(xué)號:與學(xué)生信息中的學(xué)號一致。課程號:與課程信息中的課程號一致。成績:數(shù)值型,范圍為0100分。2.某軟件系統(tǒng)有一個模塊,其功能是計算兩個整數(shù)的最大公約數(shù)。請用Python語言實(shí)現(xiàn)該模塊,并進(jìn)行單元測試。答案:```pythondefgcd(a,b):whileb!=0:a,b=b,a%breturna單元測試importunittestclassTestGCD(unittest.TestCase):deftest_gcd(self):self.assertEqual(gcd(12,18),6)self.assertEqual(gcd(25,5),5)self.assertEqual(gcd(3,7),1)if__name__=='__main__':unittest.main()```解析:首先定義了一個函

溫馨提示

  • 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

提交評論