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

下載本文檔

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

文檔簡介

1、軟件工程填空題二、填空題(請(qǐng)把答案寫在相應(yīng)的橫線上,每小題1.5分)1、軟件是數(shù)據(jù)、計(jì)算機(jī)程序及其說明程序的各種文檔。2、概要設(shè)計(jì)主要是把各項(xiàng)功能需求轉(zhuǎn)換成系統(tǒng)的體系結(jié)構(gòu)。3、面向?qū)ο箝_發(fā)方法包括OOA、OOD、OOP三部分。4、結(jié)構(gòu)化設(shè)計(jì)中以數(shù)據(jù)流圖為基礎(chǔ)的兩種具體分析設(shè)計(jì)方法是變換分析、事物分析設(shè)計(jì)。5、在單元測(cè)試時(shí),需要為被測(cè)模塊設(shè)計(jì)驅(qū)動(dòng)模塊和樁模塊。6、CMM把軟件過程從無序到有序的進(jìn)化分成5個(gè)階段,排序而形成5個(gè)逐層提高的等級(jí),分別是初始級(jí)、可重復(fù)級(jí)、已定義級(jí)、已管理級(jí)和可優(yōu)化級(jí)。7 .子類自動(dòng)共享父類的屬性和操作的機(jī)制稱為繼承。8 .軟件工程管理的具體內(nèi)容包括對(duì)開發(fā)人員、組織機(jī)構(gòu)、

2、用戶、文檔資料等方面的管理。9、可行性研究的三個(gè)方面是技術(shù)可行性、社會(huì)可行性和經(jīng)濟(jì)可行性。10、在軟件概要設(shè)計(jì)階段,建立軟件結(jié)構(gòu)后,還應(yīng)為每個(gè)模塊寫一份處理說明和接口說明。11、在畫分層的DFD時(shí),父圖與子圖的輸入輸出數(shù)據(jù)流要平衡。12、在詳細(xì)設(shè)計(jì)階段,除了對(duì)模塊內(nèi)的算法進(jìn)行設(shè)計(jì),還應(yīng)對(duì)模塊內(nèi)的數(shù)據(jù)結(jié)構(gòu)進(jìn)行設(shè)計(jì)。13 .對(duì)象的抽象是類。14 .基線的作用是把各階段的開發(fā)工作劃分得更加明確,便于檢查與確認(rèn)階段成果。因此,基線可以作為項(xiàng)目的一個(gè)檢查點(diǎn)。15 .軟件工程包括軟件開發(fā)技術(shù)和軟件工程管理兩大部分內(nèi)容。16、開發(fā)過程管理包括項(xiàng)目計(jì)劃、控制和任務(wù)管理等。17、CASE是多年來在軟件開發(fā)管理、

3、軟件開發(fā)方法、軟件開發(fā)環(huán)境和軟件工具等方面研究和發(fā)展的產(chǎn)物。18、數(shù)據(jù)字典中有四類條目,分別是數(shù)據(jù)流、數(shù)據(jù)項(xiàng)、數(shù)據(jù)存儲(chǔ)、基本加工。19、用于描述基本加工的小說明的三種描述工具是結(jié)構(gòu)化語言、判定表、判定樹。20、子類只繼承一個(gè)父類的屬性和操作,這稱為單重繼承。21、McCabe復(fù)雜性度量又稱環(huán)路度量。22、噴泉模型是一種以用戶需求為動(dòng)力,以對(duì)象為驅(qū)動(dòng)的模型。23、Jackson圖不僅可表示程序結(jié)構(gòu),還可表示.數(shù)據(jù)Z構(gòu)。24、詳細(xì)設(shè)計(jì)的任務(wù)是確定每個(gè)模塊的內(nèi)部特性,即模塊的算法和數(shù)據(jù)結(jié)構(gòu)。25、UML提供的構(gòu)建系統(tǒng)動(dòng)態(tài)模型的機(jī)制有動(dòng)態(tài)視圖視圖(包括順序圖和協(xié)作圖)、靜態(tài)視圖視圖、功能視圖。26、軟

4、件質(zhì)量管理由軟件質(zhì)量保證、軟件質(zhì)量規(guī)劃和軟件質(zhì)量控制三方面活動(dòng)組成。27、用等價(jià)類劃分法設(shè)計(jì)一個(gè)測(cè)試用例時(shí),使其覆蓋盡可能多的尚未被覆蓋的合理等價(jià)類;覆蓋一個(gè)不合理等價(jià)類。28、需求分析階段產(chǎn)生的最重要的文檔是需求規(guī)格說明書。29、兩個(gè)模塊都使用同一張表,模塊的這種耦合稱為公共耦合。30、被測(cè)試程序不在機(jī)器上運(yùn)行,而是采用人工檢測(cè)和計(jì)算機(jī)輔助分析檢測(cè)的手段稱為_靜態(tài)_測(cè)試。非結(jié)構(gòu)化維護(hù)。結(jié)構(gòu)化方法、結(jié)構(gòu)化程31、采用手工方法開發(fā)軟件只有程序而無文檔,維護(hù)困難,這是一種32、結(jié)構(gòu)化方法是一種面向數(shù)據(jù)流的開發(fā)方法。由結(jié)構(gòu)化分析、序設(shè)計(jì)構(gòu)成。33、對(duì)象之間進(jìn)行通彳t的構(gòu)造叫做消息。34、按軟件服務(wù)對(duì)

5、象的范圍可以把軟件劃分為項(xiàng)目軟件和產(chǎn)品軟件。35、瀑布模型將軟件生命期劃分為若干階段,各個(gè)階段之間是通過文檔實(shí)現(xiàn)過渡的。36、概要設(shè)計(jì)主要是把各項(xiàng)功能需求轉(zhuǎn)換成系統(tǒng)的體系Z構(gòu)。37、詳細(xì)設(shè)計(jì)的任務(wù)是確定每個(gè)模塊的內(nèi)部特性,即模塊的數(shù)據(jù)結(jié)構(gòu)和算法c38、結(jié)構(gòu)化程序設(shè)計(jì)方法提倡開發(fā)人員的組織形式是主程序員組。39、軟件質(zhì)量管理由軟件質(zhì)量保證、軟件質(zhì)量規(guī)劃和軟件質(zhì)量控制三方面活動(dòng)組成。40、類具有操作,它是對(duì)象行為的抽象。41、產(chǎn)品管理包括版本管理和配置管理。42、集成測(cè)試中的具體方法是漸增式和非漸增式測(cè)試方法。43、增量模型適合于軟件需求_不明確、設(shè)計(jì)方案有一定風(fēng)險(xiǎn)的軟件項(xiàng)目。44、結(jié)構(gòu)化分析方法

6、的分析策略是自頂向下逐步求精。45、可行性研究實(shí)質(zhì)上是要在較高層次上以較抽象的方式進(jìn)行需求分析和設(shè)計(jì)的過程。46、衡量模塊獨(dú)立性的兩個(gè)定性標(biāo)準(zhǔn)是耦合性與內(nèi)聚性。47、Jackson方法是一種面向數(shù)據(jù)Z構(gòu)的設(shè)計(jì)方法。48、維護(hù)階段是軟件生存周期中花費(fèi)精力和費(fèi)用.最多的階段。49、繼承性是子類自動(dòng)共享其父類的數(shù)據(jù)結(jié)構(gòu)和方法機(jī)制。50、在面向?qū)ο蠓椒ㄖ?,人們常用狀態(tài)圖描述類中對(duì)象的動(dòng)態(tài)行為。51、規(guī)定功能的軟件,在一定程度上能從錯(cuò)誤狀態(tài)自動(dòng)恢復(fù)到正常狀態(tài),則稱該軟件為容錯(cuò)軟件。52 .軟件工程包括3個(gè)要素,即方法、工具、過程。53 .軟件生存周期是指一個(gè)軟件從提出開發(fā)要求開始直到該軟件報(bào)廢不止的整個(gè)

7、時(shí)期。通常,軟件生存周期包括問題定義、可行性研究,需求分析,總體設(shè)計(jì),詳細(xì)設(shè)計(jì),編碼測(cè)試,維護(hù)活動(dòng),可以將這些活動(dòng)以適當(dāng)方式分配到不同階段去完成54 .數(shù)據(jù)流圖中的箭頭表示數(shù)據(jù)流。軟件結(jié)構(gòu)圖中的箭頭方向表示模塊調(diào)用。55 .可行性研究的目的就是用最小的代價(jià)在盡可能短的時(shí)間內(nèi)確定該軟件項(xiàng)目是否能夠開發(fā),是否值得去開發(fā)。56 .數(shù)據(jù)流圖僅反映系統(tǒng)必須完成的邏輯功能,所以它是一種功能模型。復(fù)習(xí)資料、填空題1 .軟件是計(jì)算機(jī)系統(tǒng)中與硬件相互依存的另一部分,它是包括(程序)、(數(shù)據(jù))及其(相關(guān)文檔)完整集合。其中,(程序)是按事先設(shè)汁的功能和性能要求執(zhí)行的指令序列,(數(shù)據(jù))是使程序能夠正確操縱信息的數(shù)據(jù)

8、結(jié)構(gòu),(相關(guān)文檔)是與程序開發(fā)、維護(hù)和使用有關(guān)的圖文資料.2 .軟件危機(jī)是指計(jì)算機(jī)軟件的(開發(fā))和(維護(hù))過程中所遇到的一系列嚴(yán)重問題。3 .軟件工程是指導(dǎo)計(jì)算機(jī)軟件(開發(fā))和(維護(hù))的一門工程學(xué)科,采用工程的概念、原理、技術(shù)和方法來開發(fā)和維護(hù)軟件,把經(jīng)過時(shí)間考驗(yàn)而證明正確的管理技術(shù)和當(dāng)前能夠得到的最好技術(shù)方法結(jié)合起來,以經(jīng)濟(jì)地開發(fā)出高質(zhì)量的軟件并有效地(維護(hù))它,這就是軟件工程。4 .常見的軟件開發(fā)模型有(瀑布模型)、(快速原型模型)、(增量模型)和(螺旋模型)等;5 .軟件工程學(xué)方法的三要素是:(方法)、(工具)和(過程)。6,瀑布模型是一個(gè)(文檔)驅(qū)動(dòng)模型。7.可行性研究一般可以從(經(jīng)濟(jì)

9、)可行性、(技術(shù))可行性、法律可行性和法律可行性等方面來研究。8,數(shù)據(jù)流圖從數(shù)據(jù)傳輸和(數(shù)據(jù)加工)角度,以(圖形)的方式描述數(shù)據(jù)流從輸入到輸出的傳輸變換過程。9,數(shù)據(jù)流圖的四個(gè)基本符號(hào)分別表示(數(shù)據(jù)的源點(diǎn)或終點(diǎn))、(數(shù)據(jù)的加工)、(數(shù)據(jù)存儲(chǔ))和數(shù)據(jù)流;10 .實(shí)體-聯(lián)系圖中,數(shù)據(jù)對(duì)象之間的關(guān)系有(一對(duì)一)、(一對(duì)多)和(多對(duì)多關(guān)系)。11 .需求分析階段應(yīng)該建立三種模,即:(數(shù)據(jù)模型)、(功能模型)和(行為模型)。12 .一般從(一致性)、(完整性)、(現(xiàn)實(shí)性)和(有效性)四個(gè)方面驗(yàn)證軟件需求的正確性。13 .HIPO圖是由一組(層次圖)圖加上一張(IPO)圖組成。14,模塊獨(dú)立性的兩個(gè)度量標(biāo)

10、準(zhǔn)為:(耦合)和(內(nèi)聚)。15 .一般說來,模塊之間的耦合程度(低),則單個(gè)模塊的內(nèi)聚程度(高)。16 .經(jīng)驗(yàn)表明,設(shè)計(jì)好的軟件結(jié)構(gòu),通常頂層模塊的扇出(比較高),中層模塊扇出(較少),底層模塊(高)扇入17 .三種基本的程序控制結(jié)果是(順序結(jié)果)、(選擇(分支)結(jié)構(gòu))和(循環(huán)結(jié)構(gòu))。18 .把程序從一個(gè)硬件或軟件環(huán)境中轉(zhuǎn)移到另一種配置環(huán)境稱為軟件的(可移植性)。19 .如果一個(gè)模塊完成一組任務(wù),這些任務(wù)彼此之間的關(guān)系是很松散的,這種內(nèi)聚稱為(偶然(或巧合)類聚)。20 .白盒法的具體設(shè)計(jì)程序測(cè)試方法有語句覆蓋、(判定覆蓋)、(條件覆蓋)和路徑覆蓋。21 .組成UML的三種基本建筑塊是(事物)

11、、關(guān)系和(圖)。22 .面向?qū)ο蟮能浖こ谭椒ò嫦驅(qū)ο蟮姆治?、(面向?qū)ο蟮脑O(shè)計(jì))、(面向?qū)ο蟮木幊蹋?、(面向?qū)ο蟮臏y(cè)試)和面向?qū)ο蟮能浖S護(hù)等主要內(nèi)容。23 .保證軟件質(zhì)量的措施主要有(審查)、復(fù)查和管理復(fù)審、(測(cè)試)。24 .提高軟件質(zhì)量和可靠性的技術(shù)大致分為兩類,即(避開錯(cuò)誤技術(shù))和(容錯(cuò)技術(shù))。25,常用的估算軟件規(guī)模的方法有(代碼行技術(shù))和(功能點(diǎn)技術(shù))。26 .功能點(diǎn)技術(shù)的信息域包含(輸入項(xiàng)數(shù))(輸出項(xiàng)數(shù))、(查詢數(shù))、(主文件數(shù))、(外部接口數(shù))等5個(gè)方面的信息。27 .軟件的工作量計(jì)算模型是(軟件規(guī)模)的函數(shù),軟件工作量的單位通常是(人月),常用的計(jì)算軟件工作量的計(jì)算模型有(

12、靜態(tài)單變量模型)、(動(dòng)態(tài)多變量模型)、(COCOMO2模型)等。28 .軟件過程是軟件(生存期)中的一系列相關(guān)軟件工程(活動(dòng))的集合。每個(gè)軟件過程又是由一組(工作任務(wù))、項(xiàng)目(里程碑)、軟件工程產(chǎn)品和交付物以及軟件質(zhì)量保證(SQA)電等組成。29,軟件的度量包括直接度量和間接度量、軟件產(chǎn)品的直接度量包括(產(chǎn)生的代碼行數(shù))、(執(zhí)行速度)、(存儲(chǔ)量大小)、在某種時(shí)間周期中所報(bào)告的差錯(cuò)數(shù)。軟件產(chǎn)品的間接度量則包括(功能性)、(復(fù)雜性)、(效率)、(可靠性)、(可維護(hù)性)和許多其他的質(zhì)量特性。30 .軟件配置管理是在軟件的整個(gè)生命周期內(nèi)管理變化的一組活動(dòng)。這組活動(dòng)包括:標(biāo)志變化,控制變化,實(shí)現(xiàn)變化,報(bào)

13、告變化。31 .軟件的質(zhì)量可以定義為(用戶對(duì)軟件的滿意程度),具體地說,軟件質(zhì)量是軟件與(功能和性能需求),(開發(fā)標(biāo)準(zhǔn))以及所有軟件產(chǎn)品都應(yīng)該具有的(隱含特性)相致的程度32 .軟件維護(hù)可以分為(改正性維護(hù))、(適應(yīng)性維護(hù))、(完善性維護(hù))、(預(yù)防性維護(hù))等四類。33 .把程序從一種計(jì)算環(huán)境(硬件配置和操作系統(tǒng))轉(zhuǎn)移到另一種計(jì)算環(huán)境的難易程度叫軟件的(移植性)。34 .對(duì)象是封裝了數(shù)據(jù)結(jié)構(gòu)及可以施加在這些數(shù)據(jù)結(jié)構(gòu)上的(操作)的封裝體,這個(gè)封裝體可以唯一地標(biāo)識(shí)它的名字,而且向外界提供一組(服務(wù))。、單項(xiàng)選擇題1 .軟件設(shè)計(jì)中劃分程序模塊通常遵循的原則是使各模塊間的耦合盡可(C)a)強(qiáng)b)適中c)

14、弱2 .若一個(gè)模塊直接引用另一個(gè)模塊中的數(shù)據(jù),這種類型的耦合稱為(E)。a)公共偶合b)數(shù)據(jù)耦合c)邏輯耦合d)外部耦合e)內(nèi)容耦合f)控制耦合3 .瀑布模型是()驅(qū)動(dòng)模型a)b)c)d)功能文檔數(shù)據(jù)時(shí)間4 .若一個(gè)模塊把開關(guān)量作為參數(shù)傳送給另一個(gè)模塊,這種類型的耦合稱為(F)。a)公共偶合b)數(shù)據(jù)耦合c)邏輯耦合d)外部耦合e)內(nèi)容耦合f)控制耦合5 .若一個(gè)模塊通過公共數(shù)據(jù)結(jié)構(gòu)把數(shù)據(jù)傳送給另一個(gè)模塊,這種類型的耦合稱為(A)。a)公共偶合b)數(shù)據(jù)耦合c)邏輯耦合d)外部耦合e)內(nèi)容耦合f)控制耦合6 .以下各種類型的耦合中,(E)的耦合性最強(qiáng)。a)公共偶合b)數(shù)據(jù)耦合c)邏輯耦合d)外部耦

15、合e)內(nèi)容耦合f)控制耦合7 .為了高質(zhì)量地開發(fā)軟件項(xiàng)目,在軟件結(jié)構(gòu)設(shè)計(jì)時(shí)必遵循(C)的原則a)質(zhì)量控制b)程序優(yōu)化c)信息隱蔽d)數(shù)據(jù)共享e)模塊通信8 .在建立軟件系統(tǒng)的模塊結(jié)構(gòu)。應(yīng)根據(jù)(C)評(píng)價(jià)系統(tǒng)模塊劃分的質(zhì)量。a)數(shù)據(jù)獨(dú)立性b)程序獨(dú)立性c)模塊獨(dú)立性d) 可修改性e) 可理解性9 .結(jié)構(gòu)化程序設(shè)計(jì)方法要求每個(gè)(A)結(jié)構(gòu)應(yīng)是單入口和單出口。a)程序塊b)公共塊c)數(shù)據(jù)塊d)記錄塊e)通信塊10 .開發(fā)軟件時(shí),對(duì)于提高軟件開發(fā)人員工作效率至關(guān)重要的是(A)。a)程序開發(fā)環(huán)境b)操作系統(tǒng)的資源管理功能c)開發(fā)程序人員數(shù)量d)計(jì)算機(jī)的并行處理能力11 .軟件工程中描述軟件生存周期的瀑布模型

16、一般包括計(jì)劃、(D)、設(shè)計(jì)、編碼、測(cè)試、維護(hù)等幾個(gè)階段。其中,設(shè)計(jì)階段在管理上又可以依次分為(概要設(shè)計(jì))和(詳細(xì)設(shè)計(jì))兩個(gè)步驟。a)問題定義b) 需求調(diào)查c)可行性分析d)需求分析12.各種需求分析方法都有它們共同適用的(C)。a)說明方法b)描述方式c) 準(zhǔn)則d) 基本原則13 .軟件需求分析階段的工作,可以分為以下幾個(gè)方面;對(duì)問題定義、分析與綜合、編寫需求分析文檔以及(C)。a)總結(jié)b)階段性報(bào)告c)需求分析評(píng)審d)以上答案都不正確14 .在結(jié)構(gòu)化分析方法中,用以表達(dá)系統(tǒng)內(nèi)數(shù)據(jù)的運(yùn)動(dòng)情況的工具有(A)。a)數(shù)據(jù)流圖b)數(shù)據(jù)詞典c)結(jié)構(gòu)化英語d)判定表與判定樹15 .在結(jié)構(gòu)化分析方法中,用狀

17、態(tài)遷移圖表達(dá)系統(tǒng)或?qū)ο蟮男袨?。在狀態(tài)遷移圖中,由一個(gè)狀態(tài)和一個(gè)事件所決定的下一個(gè)狀態(tài)可能會(huì)有(C)個(gè)。a) 1b) 2c)多個(gè)d)不確定16 .軟件需求分析的任務(wù)不應(yīng)包括(C)。a)問題分析b)信息域分析c)結(jié)構(gòu)化程序設(shè)計(jì)d)確定邏輯模型17 .進(jìn)行需求分析可使用多種工具;但(C)是不適用的。a)數(shù)據(jù)流圖b)判定表c) PAD圖d)數(shù)據(jù)詞典18 .1960年底Dijkstra提倡的(D)是一種有效的提高程序設(shè)計(jì)效率的方法。a)標(biāo)準(zhǔn)化程序設(shè)計(jì)b)模塊化程序設(shè)計(jì)c)多道程序設(shè)計(jì)d)結(jié)構(gòu)化程序設(shè)計(jì)19 .匯編程序是指(C)。a)用匯編語言寫的程序B、b)符號(hào)程序c)匯編語言的處理程序20 .為了實(shí)現(xiàn)

18、遞歸子程序的正確調(diào)用,人們必須用(A)來保存(返回地址)及有關(guān)信息。a)堆棧b)線性表c) 隊(duì)列d) 入口點(diǎn)21 .UNIX操作系統(tǒng)是()研制的,它是用程序語言(C)書寫實(shí)現(xiàn)的。a) Bell實(shí)驗(yàn)室b) DEC公司c) IBM公司d) Microsoft公司22 .允許用戶建立、修改、存儲(chǔ)正文的計(jì)算機(jī)程序是(B)。a) Bootstrapb) Editorc) Loaderd) TextFormater23 .FORTRAN語言的源程序是(A)結(jié)構(gòu)。a)塊狀b)分程序嵌套c)既是塊狀,又是嵌套d)既不是塊狀,又不是嵌套的24 .國際上最廣泛使用的商用及行政管理語言是(A)。a) COBOLb)

19、 BASICc) FORTRANd) PL/l25 .國際上最流行的數(shù)值計(jì)算的程序設(shè)計(jì)語言是(C)。a) BASICb) Algolc) FORTRANd) C26 .美國國防部主持開發(fā)了高級(jí)程序設(shè)計(jì)語言Ada,在它研制開始時(shí),經(jīng)反復(fù)比較,確定以高級(jí)語言(C)作為Ada研究的出發(fā)點(diǎn)。a) LISPb) ALGOLc) ALGOL68d) PL/l27 .在人工智能領(lǐng)域,目前最廣?使用的高級(jí)語言是(D)。a) Adab) FORTRAc) COBOLd) LISP28 .下列(A)屬于系統(tǒng)軟件。a) WINDOWS2000b) Wordc) Flashd) 3DMAX29 .下列哪個(gè)圖是NS圖的

20、構(gòu)件(C)。30 .某次程序調(diào)試沒有出現(xiàn)預(yù)計(jì)的結(jié)果,下列(B)不可能是導(dǎo)致出錯(cuò)的原因。a)變量沒有初始化b)編寫的語句書寫格式不規(guī)范c)循環(huán)控制出錯(cuò)d)代碼輸入有誤31 .下列關(guān)于程序效率的描述錯(cuò)誤的是(C)。a)提高程序的執(zhí)行速度可以提高程序的效率b)降低程序占用的存儲(chǔ)空間可以提高程序的效率c)源程序的效率與詳細(xì)設(shè)計(jì)階段確定的算法的效率無關(guān)d)好的程序設(shè)計(jì)可以提高效率32 .下列偽碼片段的程序流圖是(),其環(huán)路復(fù)雜度是()33 .下列偽碼片段的環(huán)路復(fù)雜度是()a) 2b) 3c) 4d) 534 .軟件過程能力的提高首先需要對(duì)當(dāng)前白軟件過程狀況進(jìn)行料學(xué)的(C)。a)度量b)估算c)評(píng)估d)管

21、理36 .軟件工程學(xué)的目的應(yīng)該是最終解決軟件生產(chǎn)的(B)問題。A.提高軟件的開發(fā)效率B.使軟件生產(chǎn)工程化C.消除軟件的生產(chǎn)危機(jī)D.加強(qiáng)軟件的質(zhì)量保證.37 .目前存在有若干種軟件生存周期模型。例如瀑布模型、增量模型、螺旋模型等。其中規(guī)定了由前至后、相互銜接的固定次序的模型是(A)。A.瀑布模型c.噴泉模型B.增量模型D.螺旋模型38、瀑布模型的問題是(B)。A.用戶容易參與開發(fā)B.缺乏靈活性C.用戶與開發(fā)者易溝通D.適用可變需求39、系統(tǒng)定義明確之后,應(yīng)對(duì)系統(tǒng)的可行性進(jìn)行研究。可行性研究包括(B)A.軟件環(huán)境可行性、技術(shù)可行性、經(jīng)濟(jì)可行性、社會(huì)可行性B.經(jīng)濟(jì)可行性、技術(shù)可行性、操作可行性C.經(jīng)

22、濟(jì)可行性、社會(huì)可行性、系統(tǒng)可行性D.經(jīng)濟(jì)可行性、實(shí)用性、社會(huì)可行性40 .數(shù)據(jù)流圖是常用的進(jìn)行軟件需求分析的圖形工具,其基本符號(hào)是(C)。A.輸入、輸出、外部實(shí)體和加工B,變換、加工、數(shù)據(jù)流和存儲(chǔ)c.加工、數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)和外部實(shí)體D.變換、數(shù)據(jù)存儲(chǔ)、力IT-和數(shù)據(jù)流41 .數(shù)據(jù)流圖是用于表示軟件模型的一種圖示方法,在下列可采用的繪圖方法中,(B)是常采用的。自頂向下自底向上分層繪制逐步求精A.全是B.c.D.42、在軟件開發(fā)過程中常用圖作為描述工具,DFD就是面向(B)分析方法的描述工具。A數(shù)據(jù)結(jié)本勾B數(shù)據(jù)流C對(duì)象D構(gòu)件(component)43.結(jié)構(gòu)化分析方法使用的描述工具(B)定義了數(shù)據(jù)

23、流圖中每一個(gè)圖形元素。A.數(shù)據(jù)流圖B.數(shù)據(jù)字典c.判定表D.判定樹44、軟件需求規(guī)格說明書的內(nèi)容不應(yīng)包括對(duì)(B)的描述。A.主要功能B.算法的詳細(xì)過程C.用戶界面及運(yùn)行環(huán)境D.軟件的性能45、SA方法的分析步驟是首先調(diào)查了解當(dāng)前系統(tǒng)的工作流程,然后(B)。A.獲得當(dāng)前系統(tǒng)的物理模型,抽象出當(dāng)前系統(tǒng)的邏輯模型,建立目標(biāo)系統(tǒng)的邏輯模型B.獲得當(dāng)前系統(tǒng)的物理模型,抽象出目標(biāo)系統(tǒng)的邏輯模型,建立目標(biāo)系統(tǒng)的物理模型C.獲得當(dāng)前系統(tǒng)的邏輯模型,建立當(dāng)前系統(tǒng)的物理模型,抽象出目標(biāo)系統(tǒng)的邏輯模型D.獲得當(dāng)前系統(tǒng)的邏輯模型,建立當(dāng)前系統(tǒng)的物理模型,建立目標(biāo)系統(tǒng)的物理模型46.在面向數(shù)據(jù)流的軟件設(shè)計(jì)方法中,一般將

24、信息流分為(A)。A.變換流和事務(wù)流B.變換流和控制流c.事務(wù)流和控制流D.數(shù)據(jù)流和控制流47模塊獨(dú)立性是軟件模塊化所提出的要求,衡量模塊獨(dú)立性的度量標(biāo)準(zhǔn)是模塊的(C)。A.抽象和信息隱蔽B.局部化和封裝化c.內(nèi)聚性和耦合性D.激活機(jī)制和控制方法49 .Jackson方法是一種面向(B)的方法。A.對(duì)象B.數(shù)據(jù)結(jié)構(gòu)C.數(shù)據(jù)流D.控制流50 .為了提高測(cè)試的效率,應(yīng)該(D)。A.隨機(jī)地選取測(cè)試數(shù)據(jù)B.取一切可能的輸人數(shù)據(jù)作為測(cè)試數(shù)據(jù)C.在完成編碼以后制定軟件的測(cè)試計(jì)劃D.選擇發(fā)現(xiàn)錯(cuò)誤可能性大的數(shù)據(jù)作為測(cè)試數(shù)據(jù)51 .使用白盒測(cè)試方法時(shí),確定測(cè)試數(shù)據(jù)應(yīng)根據(jù)(A)和指定的覆蓋標(biāo)準(zhǔn)。A.程序的內(nèi)部邏輯

25、B.程序的復(fù)雜結(jié)構(gòu)c.使用說明書D.程序的功能三、多項(xiàng)選擇題1. 軟件危機(jī)可以表現(xiàn)為(A、B、C、D)。A.產(chǎn)品不符合用戶的需要B.軟件產(chǎn)品的質(zhì)量差C.軟件的可維護(hù)性差D.軟件的價(jià)格昂貴2. 優(yōu)秀的程序員經(jīng)常使用(A、B、C、D)顯示他們的經(jīng)驗(yàn)。A、空格B、空行C、注釋D、縮進(jìn)3. 下列(B、D)屬于主動(dòng)式防錯(cuò)程序設(shè)計(jì)。A.棧的深度是否合適B.內(nèi)存檢查C.數(shù)組界限是否正確D.時(shí)間檢查4 .關(guān)于數(shù)據(jù)流圖有關(guān)描述中正確的是(A、B、C)。A.數(shù)據(jù)流圖中不夾帶控制流B.數(shù)據(jù)流圖的主圖必須包括數(shù)據(jù)流圖中的四種基本元素C.數(shù)據(jù)流圖不是系統(tǒng)的執(zhí)行程序,不是程序流程圖D.加工可以只有輸入數(shù)據(jù)流,沒有輸出數(shù)據(jù)

26、流5 .軟件維護(hù)工作量的數(shù)學(xué)模型如下為:M=P+K*e(c-d),其中P是生產(chǎn)性工作量,K為一常數(shù),c為軟件的復(fù)雜程度,d為維護(hù)人員對(duì)軟件的數(shù)熟悉程度。從這個(gè)模型可以看出:(AD)A.不使用軟件工程學(xué)方法指導(dǎo)開發(fā)的軟件維護(hù)起來工作量較大;B.不使用軟件工程學(xué)方法指導(dǎo)開發(fā)的軟件維護(hù)起來工作量較??;C.軟件開發(fā)人員參加維護(hù)工作,維護(hù)的工作量將反而加大;D.軟件開發(fā)人員參加維護(hù)工作,維護(hù)的工作量將相對(duì)較低;6.用于需求分析的結(jié)構(gòu)化分析方法很多,這些分析方法大都遵循以下準(zhǔn)則(ABCD)A.必須理解并描述問題的信息域;B.必須定義軟件的功能域;C.必須描述軟件的行為;D.用層次的方法展示各種模型的細(xì)節(jié)7

27、.從下列敘述中選出5條關(guān)于好的程序設(shè)計(jì)風(fēng)格的正確敘述()使用括號(hào)以改善表達(dá)式的情晰性。對(duì)遞歸定義的數(shù)據(jù)結(jié)構(gòu)不要使用遞歸過程。盡可能對(duì)程序代碼進(jìn)行優(yōu)化。不要修補(bǔ)不好前程序,要重新寫。不要進(jìn)行浮點(diǎn)數(shù)的相等比較。應(yīng)盡可能多地輸出中間結(jié)果。利用數(shù)據(jù)類型對(duì)數(shù)據(jù)值進(jìn)行防范。用計(jì)數(shù)方法而不是用文件結(jié)束符或輸入序列結(jié)束符來判別輸入的結(jié)束。 程序中的注釋是可有可無的。 使用有意義的標(biāo)識(shí)符。8.從下列敘述中選出5條關(guān)于軟件測(cè)試的正確敘述。()為了使得軟件容易測(cè)試,應(yīng)該使用高級(jí)的程序設(shè)計(jì)語言編制程序。 軟件測(cè)試是一個(gè)程序的執(zhí)行過程,目的是為了發(fā)現(xiàn)軟件中隱藏的錯(cuò)誤。 如果程序中連鎖式連接了8個(gè)判定(IF)結(jié)構(gòu),則程序

28、中總的路徑數(shù)可達(dá)28。白盒測(cè)試僅與程序的內(nèi)部結(jié)構(gòu)有關(guān),完全可以不考慮程序的功能要求。 為了快速完成集成測(cè)試,采用一次性集成方式是適宜的。 對(duì)一批模塊進(jìn)行側(cè)試,被發(fā)現(xiàn)的錯(cuò)誤多的模塊中殘留的錯(cuò)誤將比其他的模塊少。 好的測(cè)試用例應(yīng)能證明軟件是正確的。 邊界值分析方法是取輸入/輸出等價(jià)類的邊界值作為測(cè)試用例。等價(jià)類劃分方法考慮了各等價(jià)類之間取值的組合情況下可能的結(jié)果。 判定覆蓋法可能查不出在判定中邏輯運(yùn)算符使用有誤時(shí)產(chǎn)生的錯(cuò)誤。9.從下列敘述中選出5條有利于軟件可維護(hù)性的正確敘述。()在進(jìn)行需求分析時(shí)需同時(shí)考慮可維護(hù)性問題。完成測(cè)試作業(yè)后,為了縮短源程序的長度應(yīng)刪去程序中的注釋。盡可能在軟件生產(chǎn)過程中

29、保證各階段文檔的正確性。編程時(shí)應(yīng)盡可能使用全局變量。選擇時(shí)間效率和空間效率盡可能高的算法。盡可能利用硬件的特點(diǎn)。重視程序結(jié)構(gòu)的設(shè)計(jì),使程序具有較好的層次結(jié)構(gòu)。使用維護(hù)工具或支撐環(huán)境。在進(jìn)行概要設(shè)計(jì)時(shí)應(yīng)加強(qiáng)模塊間的聯(lián)系。提高程序的易讀性,盡可能使用高級(jí)語言編寫程序。10 .從下列關(guān)于模塊化程序設(shè)計(jì)的敘述中,選出5條正確的敘述。()程序設(shè)計(jì)比較方便,但比較難以維護(hù)。便于由多個(gè)人分工編制大型程序。軟件的功能便于擴(kuò)充。程序易于理解,也便于排錯(cuò)。在主存儲(chǔ)器能夠容納得下的前提下,應(yīng)使模塊盡可能大,以便減少模塊的個(gè)數(shù)。模塊之間的接口叫做數(shù)據(jù)文件。(可能是數(shù)據(jù)文件)只要模塊之間的接口關(guān)系不變,各模塊內(nèi)部實(shí)現(xiàn)細(xì)

30、節(jié)的修改將不會(huì)影響別的模塊。模塊間的單向調(diào)用關(guān)系叫做模塊的層次結(jié)構(gòu)。模塊越小模塊化的優(yōu)點(diǎn)越明顯。一般來說,模塊的大小都在10行以下。11 .從下列敘述中選出5條符合程序設(shè)計(jì)風(fēng)格指導(dǎo)原則的敘述。()嵌套的重?cái)?shù)應(yīng)加以限制。盡量多使用臨時(shí)變量。不濫用語言特色。不用可以省略的括號(hào)。使用有意義的變量名。應(yīng)盡可能把程序編得短些。把常見的局部優(yōu)化工作留給編譯程序去做。注解越少越好。程序的格式應(yīng)有助于讀者理解程序。應(yīng)盡可能多用goto語句。12 .由于軟件工程有如下哪些的特點(diǎn),使得軟件的管理比其他工程的管理更為困難:(A、B、D)a) 軟件產(chǎn)品不可見;b) 軟件生產(chǎn)不存在標(biāo)準(zhǔn)的過程;c) 軟件的開發(fā)成本往往非

31、常高;d) 有些大型軟件項(xiàng)目往往是“一次性”的項(xiàng)目;13 .軟件維護(hù)可以分為改正性維護(hù)和()a) 適應(yīng)性維護(hù)b)文檔性維護(hù)c) 完善性維護(hù)d) 預(yù)防性維護(hù)14 .OO軟件系統(tǒng)可維護(hù)性好體現(xiàn)在以下幾個(gè)方面(ABCD)a) OO的軟件的穩(wěn)定性比較好b) OO的軟件比較容易修改c) OO的軟件比較容易理解d) OO的軟件易于測(cè)試和調(diào)試15 .OO方法建模需要建立以下哪幾種模型(A、B、D)。a)對(duì)象模型b)功能模型c) 數(shù)據(jù)模型d) 動(dòng)態(tài)模型四、判斷題1 .軟件生存周期是從軟件開始開發(fā)到開發(fā)結(jié)束的整個(gè)時(shí)期。(F)2 .系統(tǒng)流程圖是一個(gè)典型的描述邏輯系統(tǒng)的傳統(tǒng)工具。(F)3 .數(shù)據(jù)流圖和數(shù)據(jù)字典共同構(gòu)

32、成系統(tǒng)的邏輯模型。(T)4 .扇出是一個(gè)模塊直接調(diào)用的模塊數(shù)目,一般推薦的扇出為3或4。(T)5 .耦合用于衡量一個(gè)模塊內(nèi)部的各個(gè)元素彼此結(jié)合的緊密程度。(F)6 .判定覆蓋不一定包含條件覆蓋,但是條件覆蓋一定包含判定覆蓋。(F)7 .在代碼的編寫中要盡量避免使用ELSEGOTO或者ELSERETURN吉構(gòu)。(T)8 .軟件測(cè)試的目的就是證明軟件沒有錯(cuò)。(F)9 .語句覆蓋的含義是使被測(cè)試程序中的每個(gè)語句都至少被執(zhí)行一次。(T)10 .軟件開發(fā)的成本主要是人的勞動(dòng)消耗。(T)11 .從層次圖和結(jié)構(gòu)圖中能看出模塊之間的調(diào)用次序(F)12 .結(jié)構(gòu)化程序設(shè)計(jì)就是要徹底在程序中消除GOTO語句(F)1

33、3 .自頂向下的集成測(cè)試方法需要驅(qū)動(dòng)(存根)程序(F)14 .為了加快軟件維護(hù)作業(yè)的進(jìn)度,應(yīng)盡可能增加維護(hù)人員的數(shù)目(F)15 .軟件交付給用戶使用后,隨即進(jìn)入軟件的維護(hù)階段(T)16 .CMM定義的5個(gè)等級(jí)能引導(dǎo)軟件機(jī)構(gòu)不斷識(shí)別出其軟件過程的缺陷,指出應(yīng)該做哪些改進(jìn),并(不)提供做這些改進(jìn)的具體措施。(F)17 .開發(fā)軟件時(shí)投入的人員越多,開發(fā)時(shí)間就越短(F)18 .程序正確性證明能證明程序的功能和動(dòng)態(tài)特性符合設(shè)計(jì)要求(F)五、簡答題1 .層次圖和層次方框圖之間區(qū)別何在?P92層次圖描繪軟件的層次結(jié)構(gòu),層次方框圖描繪數(shù)據(jù)結(jié)構(gòu)層次圖中方框代表一個(gè)功能模塊,層次方框圖方框代表數(shù)據(jù)的子集或數(shù)據(jù)元素

34、層次圖中連線表示模塊間調(diào)用關(guān)系,層次方框圖連線表示組成關(guān)系。2 .2、軟件設(shè)計(jì)過程中為什么要采用模塊化設(shè)計(jì)方法?P85參考答案:(1)、采用模塊化原理可以使軟件結(jié)構(gòu)清晰,不僅容易設(shè)計(jì),也容易閱讀和理解;(2)、模塊化使軟件容易測(cè)試和調(diào)試,因而有助于提高軟件的可靠性;(3)、模塊化可以提高軟件的可修改性;(4)、模塊化有助于開發(fā)過程的組織和管理;3 .用某種軟件復(fù)雜性度量算法來度量不同類型的程序時(shí)。得出的度量值是否真正反映了它們的復(fù)雜性?如果對(duì)同類型的程序進(jìn)行度量,其結(jié)果是否就比較有價(jià)值?參考答案:開發(fā)規(guī)模相同,但復(fù)雜性不同的軟件,花費(fèi)的成本和時(shí)間會(huì)有很大的差異。因此到目前為止,還沒有一個(gè)軟件復(fù)

35、雜性度量的方法能夠全面、系統(tǒng)地度量任一軟件的復(fù)雜性,某一種度量方法只偏重于某一方面。所以,用某種軟件復(fù)雜性來度量不同類型的程序,所得到的度量值不一定真正反映它們的復(fù)雜性。但對(duì)同一類里的程序,按某種視點(diǎn)來度量它們的復(fù)雜性,其結(jié)果還是比較有價(jià)值的。4 .數(shù)據(jù)流圖的作用是什么?它有哪些基本成分?參考答案:數(shù)據(jù)流圖可以用來抽象地表示系統(tǒng)或軟件。它從信息傳遞和加工的角度.以圖形的方式刻畫數(shù)據(jù)流從輸入到輸出的移動(dòng)變換過程,同時(shí)可以按自頂向下、逐步分解的方法表示內(nèi)容不斷增加的數(shù)據(jù)流和功能細(xì)節(jié)。因此,數(shù)據(jù)流圖既提供了功能建模的機(jī)制.也提供了信息流建模的機(jī)制,從而可以建立起系統(tǒng)或軟件的功能模型?;境煞钟校簲?shù)據(jù)

36、原點(diǎn)/終點(diǎn)數(shù)據(jù)處理數(shù)據(jù)流數(shù)據(jù)存儲(chǔ)5 .常用的估算軟件規(guī)模的方法有哪些?試比較這些方法的優(yōu)缺點(diǎn)。代碼行技術(shù)的優(yōu)點(diǎn),容易計(jì)算,缺點(diǎn)是太片面,因?yàn)樵闯绦蛑皇擒浖渲玫暮苌僖徊糠?,不同語言實(shí)現(xiàn)同一個(gè)軟件所需的代碼行數(shù)不同;功能點(diǎn)數(shù)的特點(diǎn):與編程語言無關(guān),但是判斷信息域復(fù)雜性級(jí)別和技術(shù)因素的影響程度時(shí),存在著相當(dāng)大的主觀因素。6 .CMM的全稱是什么?其基本思想是什么?為什么要對(duì)CMM進(jìn)行分級(jí)?P321其基本思想是:軟件開發(fā)和維護(hù)過程中的問題是由于管理軟件過程的方法不當(dāng)引起的,即使是應(yīng)用新的軟件技術(shù),也不會(huì)自動(dòng)提高軟件的生產(chǎn)率和質(zhì)量。能力成熟度模型有助于軟件開發(fā)機(jī)構(gòu)建立一個(gè)有規(guī)律的、成熟的軟件過程。改進(jìn)

37、后的軟件過程將有利于開發(fā)出高質(zhì)量的軟件,使更多的軟件項(xiàng)目免受時(shí)間和費(fèi)用超支之苦。3分對(duì)于任何軟件開發(fā)機(jī)構(gòu)的軟件過程的改進(jìn)都是在完成一個(gè)又一個(gè)小的改進(jìn)的基礎(chǔ)之上不斷進(jìn)行的漸進(jìn)過程,而不是一蹴而就的徹底革命。CMM將軟件過程從無序到有序的進(jìn)化過程分為5個(gè)等級(jí),用于測(cè)量軟件機(jī)構(gòu)的軟件過程成熟度和評(píng)價(jià)其軟件過程能力什么是軟件配置管理?答:軟件配置管理,簡稱SCM(SoftwareConfigurationManagement),是在軟件的整個(gè)生命周期內(nèi)管理變化的一組活動(dòng)。具體地講,這組活動(dòng)包括:標(biāo)志變化,控制辯化,確保適當(dāng)?shù)貙?shí)現(xiàn)變化,向需要指導(dǎo)這類信息的人報(bào)告變化。軟件配置管理技術(shù)可以使軟件變更所產(chǎn)生

38、的錯(cuò)誤達(dá)到最小并最有效地提高生產(chǎn)率。7 .什么是基線?你是如何理解基線的?P319基線:已經(jīng)通過正式復(fù)審的規(guī)格說明或中間產(chǎn)品,它可以作為進(jìn)一步開發(fā)的基礎(chǔ),并且只有通過正式的變化控制過程才能改變它?;€是通過了正式復(fù)審的軟件配置項(xiàng)。一旦軟件配置變成基線,那么,對(duì)于軟件配置的改變,必須使用特定的、正式的過程來評(píng)估、實(shí)現(xiàn)和驗(yàn)證每個(gè)變化?;€除了包含軟件配置之外,還有可能包含軟件工具。8 .什么是面向?qū)ο蟮姆椒▽W(xué)?它有哪些優(yōu)點(diǎn)?P193面向?qū)ο蟮姆椒ň褪悄M人類認(rèn)識(shí)世界解決問題的思維習(xí)慣開發(fā)軟件的方法,這種方法認(rèn)為:00=對(duì)象+類+繼承+對(duì)象之間的通訊。1分00方法有如下四個(gè)方面的要點(diǎn):客觀世界是由各

39、種對(duì)象組成的,任何事物都是對(duì)象,復(fù)雜的對(duì)象可以有比較簡單的對(duì)象以某種方式組合而成。把所有對(duì)象都劃分成各種對(duì)象類,每個(gè)類定義一組數(shù)據(jù)(靜態(tài)屬性,狀態(tài)信息,類實(shí)例專有數(shù)據(jù))和一組方法(施加于對(duì)象上的操作,類實(shí)例所共有的)。按照子類與父類的關(guān)系,把若干個(gè)類組成一個(gè)層次結(jié)構(gòu)的系統(tǒng)。子類繼承父類的方法和屬性,同時(shí)可以重載某些方法。對(duì)象之間僅能通過傳遞消息相互聯(lián)系2分優(yōu)點(diǎn):與人類習(xí)慣的思維方法一致,穩(wěn)定性好,可重用性好,較易開發(fā)大型軟件產(chǎn)品,可維護(hù)性好。2分六、分析題1 .試說明下面的兩個(gè)程序段的功能是什么?可否用另一些等效的程序段來代替它,以提高其可讀性。A=A+BB=A-BA=A-B2 2)for(i

40、=0;j<n;i+)for(j=0;j<n;j+)Vij=(i/j)*(j*i)按照“條件覆蓋”法,在表格中填入滿足測(cè)試要求的數(shù)據(jù)。2.已知被測(cè)試模塊流程圖如下,T1:A>3F1:A<=3T2:B=1F2:B1T3:A=1F3:Aw1T4:M>1F4:M<=1填寫下表(注意:本題答案不唯一)數(shù)據(jù)覆蓋路徑覆蓋條件M值A(chǔ)=4,B=1,M=2cdT1,T2,F3,F46A=1,B=2,M=4beF1,F2,T3,T4-1請(qǐng)?jiān)O(shè)計(jì)路徑覆蓋用例,并寫出各種測(cè)試用例下程序的執(zhí)行路徑。3 .下面是一段用Seidel迭代法求解線性方程組的程序。其中An,n是方程組的系數(shù)矩陣。

41、Bn是方程組的右端項(xiàng),Xn是方程組的解向量。eps是控制迭代精度的較小實(shí)數(shù)。imax是控制迭代的最大次數(shù)。flag是標(biāo)志,值為0時(shí)表示迭代不收斂,值為l時(shí)表示迭代收斂。for(k=0;k<n;k+)Xk=0.0;Xn-1=1.0;for(i=1;i<imax;i+)flag=1;for(j=0;j<n;j+)s=Bj;for(k=0;k<n;k+)if(j=k)s+=Xk;s=s-Aj,k*Xk;if(abs(Xj-s)>(abs(s)+1.0)*epsflag=0;Xj=s;if(flag=1)break;畫出該C偽碼的程序流程圖,N-S圖,程序流圖,并計(jì)算程序

42、的McCabe環(huán)形復(fù)雜度。4 .閱讀下列關(guān)于軟件可靠性方面的敘述,回答問題1和問題2。軟件的可靠度可定義為:在假定輸入和硬件不發(fā)生錯(cuò)誤的前提下,對(duì)于給定的環(huán)境和給定的輸入,在指定的時(shí)間內(nèi)能完成規(guī)定任務(wù)的概率。某軟件中心的評(píng)測(cè)部為了評(píng)估已開發(fā)實(shí)現(xiàn)的應(yīng)用軟件ASP的可靠性,決定采用軟件可靠性的錯(cuò)誤播種模型來進(jìn)行測(cè)試和評(píng)估。評(píng)測(cè)部在評(píng)估時(shí),作了下列3個(gè)假設(shè):(l)在測(cè)試前,單位長度的故障個(gè)數(shù)Et/It為一常數(shù),此常數(shù)基本上落在一個(gè)固定的范圍內(nèi)。其中It為被測(cè)程序的長度(即機(jī)器指令條數(shù)),Et為被測(cè)程序中故障總數(shù)。(2)失效率正比于軟件中剩余的(潛伏的)故障數(shù),平均無敵障時(shí)間MTTF(MeanTime

43、ToFailure)與單位長度的剩余故障個(gè)數(shù)成反比,即MTTF=1/(K&)。其中e為單位長度剩余故障個(gè)數(shù),K的典型值現(xiàn)取為200。(3)測(cè)試中發(fā)現(xiàn)的錯(cuò)誤都得到了及時(shí)改正,在測(cè)試過程中沒有引入新的錯(cuò)誤。評(píng)測(cè)部對(duì)ASP軟件人為地植入了10個(gè)錯(cuò)誤,即Ns=10,在開始測(cè)試的一小段時(shí)間內(nèi),發(fā)現(xiàn)了160個(gè)固有故障,即n=160,又發(fā)現(xiàn)了植入的故障2個(gè),即ns=2,被測(cè)程序ASP的長度(即機(jī)器指令條數(shù))為100000。問題1:用故障播種(植入)的數(shù)學(xué)模型,估算出被測(cè)程序ASP的固有故障的個(gè)數(shù)N的值。如果通過測(cè)試一段時(shí)間后,發(fā)現(xiàn)的固有錯(cuò)誤個(gè)數(shù)為Ec=795時(shí),請(qǐng)估算此程序的平均無故障時(shí)間MTTF的

44、值。問題2:若要求把此MTTF提高4倍,應(yīng)至少再排除多少個(gè)固有錯(cuò)誤?請(qǐng)簡要地列出有關(guān)計(jì)算式。NNsns16010800MTTFK*rK(EtEc)/It)200*800795/100000100由200*800x/100000500得:x799所以應(yīng)該在排除:799-795=4個(gè)錯(cuò)誤。5 .對(duì)于包含10000條機(jī)器指令的程序進(jìn)行一個(gè)月集成測(cè)試后,總共改正了15個(gè)錯(cuò)誤,此時(shí)MTTF=10h;經(jīng)過兩個(gè)月的測(cè)試后,總共改正了25個(gè)錯(cuò)誤(第二個(gè)月改正了10個(gè)錯(cuò)誤),MTTF=15h。請(qǐng)問:(1)在開始測(cè)試之前,軟件中潛藏著多少個(gè)錯(cuò)誤?(2)為了達(dá)到MTTF=100h,還應(yīng)該改正多少個(gè)錯(cuò)誤?程序中還殘留

45、多少個(gè)錯(cuò)誤?6 .在測(cè)試一個(gè)長度為24000條指令的程序時(shí),第一個(gè)月內(nèi)由甲、乙兩人各自獨(dú)立地測(cè)試這個(gè)程序。經(jīng)過一個(gè)月后,甲發(fā)現(xiàn)并改正了20個(gè)錯(cuò)誤,使MTTF達(dá)到10h。與此同時(shí),乙發(fā)現(xiàn)了24個(gè)錯(cuò)誤,其中6個(gè)錯(cuò)誤甲也發(fā)現(xiàn)了。以后甲一個(gè)人繼續(xù)獨(dú)立測(cè)試這個(gè)程序。請(qǐng)問:(1)剛開始測(cè)試這個(gè)程序時(shí),程序中總共潛藏有多少個(gè)錯(cuò)誤?(2)為了使MTTF達(dá)到60h,需要再改正多少個(gè)錯(cuò)誤?此時(shí)程序中還殘留有多少個(gè)錯(cuò)誤?7.根據(jù)下列程序流程圖畫出相應(yīng)得N-S圖和PAD圖,并計(jì)算其環(huán)路復(fù)雜度。七、名詞解釋1、系統(tǒng)流程圖系統(tǒng)流程圖是描繪物理系統(tǒng)的傳統(tǒng)工具,系統(tǒng)中各個(gè)元素之間的信息流動(dòng)的情況。用圖形符號(hào)來表示系統(tǒng)中的各個(gè)

46、元素,表達(dá)了2 .數(shù)據(jù)字典答:數(shù)據(jù)字典(DataDictionary,簡稱DD)就是對(duì)數(shù)據(jù)流圖中包含的所有元素的定義的集合。它和數(shù)據(jù)流圖共同構(gòu)成了系統(tǒng)的邏輯模型。3 .數(shù)據(jù)流圖(DFD)答:數(shù)據(jù)流圖,簡稱DFD,是SA方法中用于表示系統(tǒng)邏輯模型的一種工具,它以圖形的方式描繪數(shù)據(jù)在系統(tǒng)中流動(dòng)和處理的過程,由于它只反映系統(tǒng)必須完成的邏輯功能,所以它是一一種功能模型。4 .軟件工程答:軟件工程是:把系統(tǒng)的、規(guī)范的、可度量的途徑應(yīng)用于軟件開發(fā)、運(yùn)行和維護(hù)過程,也就是把工程應(yīng)用于軟件;研究中提到的途徑。5 .模塊答:在程序中是數(shù)據(jù)說明、可執(zhí)行語句等程序?qū)ο蟮募?,或者是單?dú)命名和編址的元素,在軟件的體系

47、結(jié)構(gòu)中,模塊是可組合、分解和更換的單元。6 .控制耦合答:控制耦合指一個(gè)模塊調(diào)用另一個(gè)模塊時(shí),傳遞的是控制變量(如開關(guān)、標(biāo)志等),被調(diào)模塊通過該控制變量的值有選擇地執(zhí)行塊內(nèi)某一功能。7 .內(nèi)聚性答:內(nèi)聚性指模塊的功能強(qiáng)度的度量,即一個(gè)模塊內(nèi)部各個(gè)元素彼此結(jié)合的緊密程度的度量。8 .PAD圖答:PAD圖指問題分析圖(ProblemAnalysisDiagram),是日本日立公司于1979年提出的一算法描述工具,它是一種由左往右展開的二維樹型結(jié)構(gòu)。PAD圖的控制流程為自上而下、從左到右地執(zhí)行。9 .單元測(cè)試答:單元測(cè)試指對(duì)源程序中每一個(gè)程序單元進(jìn)行測(cè)試,檢查各個(gè)模塊是否正確實(shí)現(xiàn)規(guī)定的功能,從而發(fā)現(xiàn)

48、模塊在編碼中或算法中的錯(cuò)誤。10 .判定/條件覆蓋答:指設(shè)計(jì)足夠的測(cè)試用例,使得判定表達(dá)式中的每個(gè)條件的所有可能取值至少出現(xiàn)一次,并使每個(gè)判定表達(dá)式所有可能的結(jié)果也至少出現(xiàn)一次。11 .完善性維護(hù)答:在軟件運(yùn)行時(shí)期中,用戶往往會(huì)對(duì)軟件提出新的功能要求與性能要求。這種增加軟件功能、增強(qiáng)軟件性能、提高軟件運(yùn)行效率而進(jìn)行的維護(hù)活動(dòng)稱為完善性維護(hù)。軟件工程期末復(fù)習(xí)資料二模擬試題一、填空題1 .軟件開發(fā)模型有()、()、第四代技術(shù)模型、()、構(gòu)件組裝模型、混合模型。2 .可行性研究一般可以從()可行性、()可行性、運(yùn)行可行性、法律可行性和開發(fā)可行性等方面來研究。3 .現(xiàn)在向銀行存款,年利率為i,若希望在

49、n年后從銀行得到F元,現(xiàn)在應(yīng)該存入的錢數(shù)為()。4 .數(shù)據(jù)流圖從數(shù)據(jù)傳輸和()角度,以()方式描述數(shù)據(jù)流從輸入到輸出的傳輸變換過程。5 .Jackson圖除了可以表達(dá)程序結(jié)構(gòu)外,還可以表達(dá)(),它首先要分析(),并用適當(dāng)?shù)墓ぞ邅砻枋觥? .HIPO圖是由一組()圖加上一張()圖組成。7 .把程序從一個(gè)硬件或軟件環(huán)境中轉(zhuǎn)移到另一種配置環(huán)境稱為軟件的()。8 .如果一個(gè)模塊完成一組任務(wù),這些任務(wù)彼此之間的關(guān)系是很松散的,這種內(nèi)聚稱為()。9 .白盒法的具體設(shè)計(jì)程序測(cè)試方法有語句覆蓋、()、()、和路徑覆蓋。10 .組成UML的三種基本建筑塊是()、關(guān)系和()。11 .面向?qū)ο蟮能浖こ谭椒ò嫦?/p>

50、對(duì)象的分析、()、()、()和面向?qū)ο蟮能浖S護(hù)等主要內(nèi)容。12 .保證軟件質(zhì)量的措施主要有()、復(fù)查和管理復(fù)審、()。13 .提高軟件質(zhì)量和可靠性的技術(shù)大致分為兩類,即()和()。二、單項(xiàng)選擇題1 .下列()屬于系統(tǒng)軟件。A. WINDOWS2000B. WordC. FlashD. 3DMAX2 .下列哪個(gè)圖是NS圖的構(gòu)件()。3.4.5.1.2.3.A.C.對(duì)于螺旋模型,下列(A.制定計(jì)劃C.風(fēng)險(xiǎn)分析不是利用笛卡爾坐標(biāo)表達(dá)的活動(dòng)。B.實(shí)施工程D.程序編碼某次程序調(diào)試沒有出現(xiàn)預(yù)計(jì)的結(jié)果,下列(A.變量沒有初始化B.編寫的語句書寫格式不規(guī)范C.循環(huán)控制出錯(cuò)D.代碼輸入有誤下列關(guān)于程序效率的描

51、述錯(cuò)誤的是()不可能是導(dǎo)致出錯(cuò)的原因。B.C.D.提高程序的執(zhí)行速度可以提高程序的效率降低程序占用的存儲(chǔ)空間可以提高程序的效率源程序的效率與詳細(xì)設(shè)計(jì)階段確定的算法的效率無關(guān)好的程序設(shè)計(jì)可以提高效率、多項(xiàng)選擇題軟件危機(jī)可以表現(xiàn)為(A.B.C.D.產(chǎn)品不符合用戶的需要軟件產(chǎn)品的質(zhì)量差軟件的可維護(hù)性差軟件的價(jià)格昂貴Jackson圖中一般可能包括(A.B.C.D.表頭表體表名字段名優(yōu)秀的程序員經(jīng)常使用()顯示他們的經(jīng)驗(yàn)。A.B.C.空格空行注釋D.縮進(jìn)4 .下列()屬于主動(dòng)式防錯(cuò)程序設(shè)計(jì)。A.棧的深度是否合適B.內(nèi)存檢查C.數(shù)組界限是否正確D.時(shí)間檢查5 .關(guān)于數(shù)據(jù)流圖有關(guān)描述中正確的是()。A.數(shù)據(jù)

52、流圖中不夾帶控制流B.數(shù)據(jù)流圖的主圖必須包括數(shù)據(jù)流圖中的四種基本元素C.數(shù)據(jù)流圖不是系統(tǒng)的執(zhí)行程序,不是程序流程圖D.加工可以只有輸入數(shù)據(jù)流,沒有輸出數(shù)據(jù)流四、判斷題1 .軟件生存周期是從軟件開始開發(fā)到開發(fā)結(jié)束的整個(gè)時(shí)期。()2 .系統(tǒng)流程圖是一個(gè)典型的描述邏輯系統(tǒng)的傳統(tǒng)工具。()3 .數(shù)據(jù)流圖和數(shù)據(jù)字典共同構(gòu)成系統(tǒng)的邏輯模型。()4 .扇出是一個(gè)模塊直接調(diào)用的模塊數(shù)目,一般推薦的扇出為3或4。()5 .耦合用于衡量一個(gè)模塊內(nèi)部的各個(gè)元素彼此結(jié)合的緊密程度。()6 .判定覆蓋不一定包含條件覆蓋,但是條件覆蓋一定包含判定覆蓋。()7 .在代碼的編寫中要盡量避免使用ELSEGOTO或者ELSERE

53、TURN吉構(gòu)。()8 .軟件測(cè)試的目的就是證明軟件沒有錯(cuò)。()9 .語句覆蓋的的含義是使被測(cè)試程序中的每個(gè)語句都至少被執(zhí)行一次。()10 .軟件開發(fā)的成本主要是人的勞動(dòng)消耗。()五、問答題1 .什么是軟件生存周期?2 .在需求分析階段,建立目標(biāo)系統(tǒng)的邏輯模型的具體做法是什么?3 .什么是逆向工程?4 .簡述什么是程序效率?針對(duì)程序的效率有哪些準(zhǔn)則?六、分析題按照“條件覆蓋”法,在表格中填入滿足測(cè)試要求的數(shù)據(jù)。1 .已知被測(cè)試模塊流程圖如下,假設(shè)幾種可能的條件是:T1:A>3F1:A<=3T2:B=1F2:Bw1T3:A=1F3:Aw1T4:M>1F4:M<=1填寫下表數(shù)據(jù)覆蓋路徑覆蓋條件M值T1,T2,F3,F4F1,F2,T3,T42 .根據(jù)偽碼程序回出程序流程圖、N-S圖。STARTAREPEATUNTILPBENDREPCDSTOP答案二、填空1 .瀑布模型、螺旋模型、原型模型2 .經(jīng)濟(jì)、技術(shù)3 .F/(1+i)n4 .加工、圖形5 .數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)結(jié)構(gòu)6 .IPO

溫馨提示

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

評(píng)論

0/150

提交評(píng)論