軟件工程考研真題考試-填空題_第1頁
軟件工程考研真題考試-填空題_第2頁
軟件工程考研真題考試-填空題_第3頁
軟件工程考研真題考試-填空題_第4頁
軟件工程考研真題考試-填空題_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、1、軟件工程學(xué)概述1.1 軟件危機(jī)1、為了克服軟件危機(jī),1968年北大西洋公約組織的工作會議上首先提出了_的概念?!敬鸢浮寇浖こ?、開發(fā)軟件工具的主要目的是為了和_改善軟件的質(zhì)量?!敬鸢浮刻岣哕浖a(chǎn)率3、程序設(shè)計(jì)時(shí)代的生產(chǎn)方式是_,程序系統(tǒng)時(shí)代的生產(chǎn)方式是_,軟件工程時(shí)代的生產(chǎn)方式是_?!敬鸢浮總€體手工、作坊式小團(tuán)體、工程化 1.2 軟件工程概念和任務(wù)1、文檔(document)是一種數(shù)據(jù)媒體和其上所記錄的( )【答案】數(shù)據(jù)2、軟件工程由方法、工具和( )三部分組成,稱軟件工程的三要素【答案】過程3、到目前為止,軟件生產(chǎn)的發(fā)展經(jīng)過了三個階段,即_、_、_?!敬鸢浮砍绦蛟O(shè)計(jì)時(shí)代、程序系統(tǒng)時(shí)代

2、、軟件工程時(shí)代4、組成軟件的兩個部分是:_?!敬鸢浮砍绦蚝臀臋n5、軟件工程的主要思想是在軟件生產(chǎn)中用_代替?zhèn)鹘y(tǒng)手工方法。【答案】工程化方法6、硬件與_一起構(gòu)成完整的計(jì)算機(jī)系統(tǒng)?!敬鸢浮寇浖?7、軟件是一種_產(chǎn)品,它與物質(zhì)產(chǎn)品有很大區(qū)別?!敬鸢浮窟壿?8、“軟件”包含計(jì)算機(jī)程序及其說明程序的各種_?!敬鸢浮课臋n1.3 軟件生命周期1、軟件生命周期可以分為 , 和 3個時(shí)期?!敬鸢浮寇浖x 軟件開發(fā) 軟件維護(hù)2、基于計(jì)算機(jī)系統(tǒng)的軟件要素中的軟部件由程序、數(shù)據(jù)和( )組成【答案】文檔 3、軟件生存周期模型是描述軟件開發(fā)過程中_的模型。【答案】各種活動如何執(zhí)行 4、軟件生存周期是指一個軟件從提出開發(fā)

3、要求開始直到_為止的整個時(shí)期?!敬鸢浮吭撥浖?bào)廢 5、_是描述軟件開發(fā)過程中各種活動如何執(zhí)行的模型?!敬鸢浮寇浖嬷芷谀P?.4 軟件過程1、經(jīng)過需求分析階段的工作,系統(tǒng)必須“做什么”已經(jīng)清楚了,現(xiàn)在是決定“怎樣做”的時(shí)候了??傮w設(shè)計(jì)的基本目的就是回答“概括地說,系統(tǒng)應(yīng)該如何實(shí)現(xiàn)”這個問題。因此,總體設(shè)計(jì)又稱為 或初步設(shè)計(jì)。通過這個階段的工作,將劃分出組成系統(tǒng)的物理元素: 、文件、數(shù)據(jù)庫、人工過程和文檔等。總體設(shè)計(jì)通常由兩個主要階段組成: 設(shè)計(jì)階段,確定系統(tǒng)的具體實(shí)現(xiàn)方案;結(jié)構(gòu)設(shè)計(jì)階段,確定軟件結(jié)構(gòu)?!敬鸢浮扛乓O(shè)計(jì) 程序 系統(tǒng)設(shè)計(jì)2、軟件定義過程可通過軟件系統(tǒng)的( )和( )兩個階段來完成

4、【答案】可行性研究和需求分析3、軟件定義的基本任務(wù)是確定軟件系統(tǒng)的工程( ),也就是要搞清“做什么”【答案】需求4、在軟件生產(chǎn)中,_的作用是規(guī)定了獲取、供應(yīng)、開發(fā)、操作和維護(hù)軟件時(shí),要實(shí)施的過程、活動和任務(wù)?!敬鸢浮寇浖こ踢^程5、基于方法的軟件開發(fā)環(huán)境可分為兩大類:支持軟件開發(fā)周期特定階段的管理和_?!敬鸢浮块_發(fā)過程6、開發(fā)過程依序包括_、_、_、_、軟件安裝和_等活動。【答案】需求分析、設(shè)計(jì)、編碼、集成、驗(yàn)收 7、軟件開發(fā)劃分的各階段任務(wù)盡可能_,同一階段任務(wù)性質(zhì)盡可能_?!敬鸢浮肯鄬Κ?dú)立、相同1.5 軟件過程模型1、增量模型適合于_不明確、設(shè)計(jì)方案有一定風(fēng)險(xiǎn)的軟件項(xiàng)目?!敬鸢浮寇浖枨?

5、2、增量模型根據(jù)增量方式和形式的不同,分為_和原型模型?!敬鸢浮繚u增模型 3、瀑布模型是以文檔為驅(qū)動、適合于_的軟件項(xiàng)目的模型。 【答案】軟件需求明確4、軟件開發(fā)的原型模型可以分為三類,它們是:探索型原型、實(shí)驗(yàn)型原型和_?!敬鸢浮垦莼驮?5、演化提交模型是在_的基礎(chǔ)上,項(xiàng)目開發(fā)的各階段都進(jìn)行增量開發(fā)?!敬鸢浮科俨寄P?6、軟件開發(fā)中的原型是軟件的一個_,它反映了最終系統(tǒng)的_?!敬鸢浮吭缙诳蛇\(yùn)行的版本,重要特性 7、瀑布模型是將_各活動規(guī)定為_依聯(lián)接的若干階段的模型?!敬鸢浮可嬷芷凇⒕€性順序8、變換模型是一種適合于_方法的模型。從_開始,經(jīng)過一系列變換,最終得到系統(tǒng)的目標(biāo)程序?!敬鸢浮啃问?/p>

6、化開發(fā)軟件、需求形式化說明9、噴泉模型是一種以_為動力,以_為驅(qū)動的模型?!敬鸢浮坑脩粜枨?;對象10、由于運(yùn)用原型的目的和方式不同,在使用原型時(shí)也采取不同的策略,有_和_。【答案】拋棄策略,附加策略 11、由于運(yùn)用原型的目的和方式不同,在使用原型時(shí)可采取的策略有_策略和_策略。【答案】拋棄、附加2、可行性研究和必要性2.1 可行性研究概念和任務(wù)1、可行性研究的目的是用最小的代價(jià)在盡可能短的時(shí)間內(nèi)確定該軟件項(xiàng)目_?!敬鸢浮渴欠裰档瞄_發(fā)2、可行性研究實(shí)質(zhì)上是要在較高層次上以較抽象的方式進(jìn)行_的過程?!敬鸢浮啃枨蠓治龊驮O(shè)計(jì)3、可行性研究從技術(shù)可行性、經(jīng)濟(jì)可行性、_三方面進(jìn)行分析?!敬鸢浮可鐣尚行?

7、、軟件項(xiàng)目計(jì)劃是_階段的結(jié)果產(chǎn)品?!敬鸢浮靠尚行匝芯?5、可行性研究的目的是用_的代價(jià),在盡可能_的時(shí)間內(nèi),確定該項(xiàng)目是否能夠_?!敬鸢浮孔钚?、短、開發(fā)6、可以從三方面研究可行性,即_可行性、_可行性、_可行性?!敬鸢浮考夹g(shù)經(jīng)濟(jì)社會 7、可行性研究實(shí)質(zhì)上是進(jìn)行一項(xiàng)_、壓縮了的需求分析、_過程?!敬鸢浮亢喕?;設(shè)計(jì) 8、可行性研究要在_層次上以_方式進(jìn)行需求分析和設(shè)計(jì)?!敬鸢浮枯^高、較抽象 9、社會可行性研究包括_、_、_、用戶組織的管理模式及_,其他一些技術(shù)人員常常不了解的_等。【答案】合同、責(zé)任、侵權(quán)、規(guī)范、陷阱10、可行性研究的目的不是去開發(fā)一個軟件項(xiàng)目,而是研究這個軟件項(xiàng)目是否_,_。【答

8、案】值得開發(fā)、其中的問題能否解決11、可行性研究需要從以下三個方面分析研究每種解決方法的可行性:技術(shù)可行性、經(jīng)濟(jì)可行性、_。【答案】社會可行性 2.2 系統(tǒng)流程圖2.3 數(shù)據(jù)流圖和數(shù)據(jù)字典1、第二代CASE工具的特點(diǎn)是支持圖形表示的_如數(shù)據(jù)流圖與結(jié)構(gòu)圖?!敬鸢浮拷Y(jié)構(gòu)化方法 2、SA方法中主要描述工具是_與_?!敬鸢浮緿FD(數(shù)據(jù)流圖)、DD(數(shù)據(jù)字典) 3、數(shù)據(jù)字典中有四類條目,分別是_、_、_、_?!敬鸢浮繑?shù)據(jù)流、數(shù)據(jù)項(xiàng)、數(shù)據(jù)存儲、加工4、數(shù)據(jù)字典中的加工邏輯主要描述該加工_,即實(shí)現(xiàn)加工的策略,而不是實(shí)現(xiàn)加工的細(xì)節(jié),它描述如何把輸入數(shù)據(jù)流變換為輸出數(shù)據(jù)流的_?!敬鸢浮孔鍪裁?、加工規(guī)則5、數(shù)據(jù)

9、流圖中的箭頭表示_。【答案】數(shù)據(jù)流6、數(shù)據(jù)流圖中,每個加工至少有_個輸入流和_個輸出流?!敬鸢浮?、1 7、建立數(shù)據(jù)字典一般的兩種形式是_和_。【答案】手工建立、利用計(jì)算機(jī)輔助建立并維護(hù)2.4 成本效益分析1、純收入是指在整個生存周期之內(nèi)的_與投資之差。 【答案】累計(jì)經(jīng)濟(jì)效益2、將開發(fā)項(xiàng)目與一個或多個已完成的類似項(xiàng)目進(jìn)行比較,找出與某個相類似項(xiàng)目的若干不同之處,并估算每個不同之處對成本的影響,得出開發(fā)項(xiàng)目的總成本。這種成本估算方法稱為_。 【答案】 差別估算3、成本效益分析的目的是從_角度評價(jià)開發(fā)一個新的軟件項(xiàng)目是否可行?!敬鸢浮拷?jīng)濟(jì)角度 4、投資回收期就是使累計(jì)的經(jīng)濟(jì)效益等于_所需的時(shí)間?!?/p>

10、答案】最初的投資費(fèi)用5、效益分析有_效益和_效益兩種?!敬鸢浮坑行巍o形 6、若年利率為i,不計(jì)復(fù)利,P元在n年后的價(jià)值F=_?!敬鸢浮縋(1+ni) 7、_就是使累計(jì)的經(jīng)濟(jì)效益等于最初的投資費(fèi)用所需的時(shí)間。項(xiàng)目的_是指在整個生存周期之內(nèi)的累計(jì)經(jīng)濟(jì)效益(折合成現(xiàn)在值)與投資之差?!敬鸢浮客顿Y回收期、純收入 8、投資回收期就是_等于最初的_所需的時(shí)間?!敬鸢浮坷塾?jì)的經(jīng)濟(jì)效益,項(xiàng)目投資9、成本效益分析的目的是從_角度評價(jià)開發(fā)一個_是否可行?!敬鸢浮拷?jīng)濟(jì)軟件、項(xiàng)目3、需求分析3.1 需求分析概念和任務(wù)軟件項(xiàng)目計(jì)劃是_階段的結(jié)果產(chǎn)品。但由于可行性研究是在高層次進(jìn)行系統(tǒng)分析,未能考慮軟件系統(tǒng)開發(fā)的細(xì)節(jié)情

11、總,因此軟件項(xiàng)目計(jì)劃一般_在階段完成后才定稿的?!敬鸢浮靠尚行匝芯?、需求分析3.2 需求分析方法1、軟件需求獲取主要包括 、 、 、 等步驟?!敬鸢浮坑脩粼L談、面向數(shù)據(jù)流自頂向下求精、簡易技術(shù)規(guī)格說明書、快速建立軟件原型2、為了使用戶需求逐步精細(xì)化、完全化、一致化,通常采用( )。【答案】需求建模技術(shù)3、軟件需求分析方法必須能夠表達(dá)和理解問題的_和功能域?!敬鸢浮繑?shù)據(jù)域4、需求分析階段,分析人員要確定對問題的綜合需求,其中最主要的是_?!敬鸢浮抗δ苄枨?5、在需求分析階段要進(jìn)行以下幾方面的工作:問題識別、_、_、編寫文檔。【答案】分析與綜合、導(dǎo)出軟件的邏輯模型3.3 熟練掌握數(shù)據(jù)流圖的細(xì)化及E

12、R圖、狀態(tài)轉(zhuǎn)換圖的畫法系統(tǒng)流程圖是描述_的傳統(tǒng)工具,用圖形符號表示系統(tǒng)中各個_,表達(dá)了系統(tǒng)中各種元素之間的_情況?!敬鸢浮课锢砟P?、元素、信息流動2、通過_,可以確定組成軟件的過程實(shí)體。通過_,可以定義和實(shí)施對模塊的過程細(xì)節(jié)和局部數(shù)據(jù)結(jié)構(gòu)的存取限制?!敬鸢浮砍橄?、信息隱蔽3、為了較完整地描述用戶對系統(tǒng)的需求,DFD應(yīng)與數(shù)據(jù)庫中的_圖結(jié)合起來?!敬鸢浮縀R 3.4 掌握需求分析過程及各種圖形工具的應(yīng)用(層次方框圖、Warnier圖、IPO圖)1、由于數(shù)據(jù)流是流動中的數(shù)據(jù),所以必須有_。除了與_之間的數(shù)據(jù)流不用命名外,數(shù)據(jù)流應(yīng)該用名詞或名詞短語命名?!敬鸢浮苛飨?、數(shù)據(jù)存儲2、IPO圖描述分層圖中一

13、個模塊的輸入、輸出、_和內(nèi)容?!敬鸢浮刻幚?.5 需求驗(yàn)證3.6 形式化說明技術(shù)(有窮狀態(tài)機(jī)、Petri網(wǎng)、Z語言)1、需求分析階段產(chǎn)生的最重要的文檔之一是_?!敬鸢浮啃枨笠?guī)格說明書4、總體設(shè)計(jì)4.1 總體設(shè)計(jì)概念和任務(wù)1、軟件概要設(shè)計(jì)的主要任務(wù)就是_。 【答案】軟件結(jié)構(gòu)的設(shè)計(jì)2、軟件設(shè)計(jì)階段產(chǎn)生的最重要的文檔之一是_。【答案】概要設(shè)計(jì)說明書4.2 總體設(shè)計(jì)原理1、列舉五種你最熟悉并經(jīng)常運(yùn)用的軟件工程原則 、 、 、 、和 等?!敬鸢浮砍橄?、模塊化、信息隱蔽、局部化、確定性、一致性、完備性、可驗(yàn)證性;任選5個2、什么是模塊的作用范圍?什么是模塊的控制范圍?【答案】控制范圍:模塊本身和它的下屬模

14、塊的集合;作用范圍:模塊中的一個判定影響的所有模塊的集合4.3 啟發(fā)規(guī)則/設(shè)計(jì)技巧和經(jīng)驗(yàn)(耦合、內(nèi)聚、深度、寬度、扇入、扇出等)1、如果一個模塊被N個模塊調(diào)用,其中直接的上級模塊的個數(shù)是M個(MN),那么該模塊的扇入數(shù)是 個.【答案】N【解析】最大扇出數(shù),即模塊直接調(diào)用的下層模塊數(shù)目,可以看一個模塊向下輻射出去的第一層的模塊數(shù)。同理,最小扇出數(shù),即模塊被直接調(diào)用的上層模塊最大數(shù)目,可以看一個模塊向上輻射出去的第一層的模塊數(shù)。2、衡量模塊獨(dú)立性的兩個定性標(biāo)準(zhǔn)是_?!敬鸢浮狂詈闲院蛢?nèi)聚性3、耦合性和內(nèi)聚性是衡量_的兩個定性的標(biāo)準(zhǔn)。【答案】模塊獨(dú)立性4、在一段程序中,將多次出現(xiàn)的一組語句設(shè)計(jì)為一個子

15、程序,供多個部分調(diào)用,這種情況出 現(xiàn)的內(nèi)聚稱為_?!敬鸢浮颗既粌?nèi)聚 5、一個模塊通過傳遞開關(guān)、標(biāo)志對某一模塊的多種功能進(jìn)行選擇,則這兩個模塊之間的耦合方式是_?!敬鸢浮靠刂岂詈?6、有效的模塊化是通過定義一組_的模塊來實(shí)現(xiàn)信息隱蔽的,這些模塊彼此之間僅交換那些為了完成系統(tǒng)功能所必須的信息?!敬鸢浮肯嗷オ?dú)立7、兩個模塊之間把簡單的數(shù)值作為參數(shù)傳遞,這種耦合方式為_。【答案】數(shù)據(jù)耦合8、把在幾個模塊中都出現(xiàn)的一些毫無聯(lián)系的處理序列抽出來組成一個新的模塊,那么這個模 塊的內(nèi)聚性是_?!敬鸢浮颗既粌?nèi)聚9、一個進(jìn)行學(xué)生成績統(tǒng)計(jì)的模塊其功能是先對學(xué)生的成績進(jìn)行累加,然后求平均值,則該模塊的內(nèi)聚性是_?!敬?/p>

16、案】順序內(nèi)聚10、軟件結(jié)構(gòu)圖的寬度是指一層中_的模塊個數(shù)?!敬鸢浮孔畲?1、兩個模塊都使用同一張表,這種耦合稱為_?!敬鸢浮抗柴詈?12、一個模塊內(nèi)部各程序段都在同一張表上操作,這個模塊的內(nèi)聚性稱為_?!敬鸢浮客ㄐ艃?nèi)聚13、信息隱蔽指在設(shè)計(jì)和確定模塊時(shí),使得一個模塊內(nèi)包含的信息(過程或數(shù)據(jù)),對于_的其他模塊來說,是不能_的?!敬鸢浮坎恍枰@些信息、訪問14、一個模塊把數(shù)值作為參數(shù)傳送給另一個模塊,這種耦合方式稱為_?!敬鸢浮繑?shù)據(jù)耦合15、如果只有兩個模塊之間有公共數(shù)據(jù)環(huán)境,這種公共耦合有兩種情況:一是一個模塊只是給公共數(shù)據(jù)環(huán)境送數(shù)據(jù),另一個模塊只是從公共環(huán)境中取數(shù)據(jù),這是_耦合。二是兩個模

17、塊都往公共環(huán)境中送數(shù)據(jù)又從里面取數(shù)據(jù),這是_耦合?!敬鸢浮勘容^松散的、公共緊密的數(shù)據(jù) 16、在一個模塊中_,_和_反映模塊的外部特性,邏輯反映它的內(nèi)部特性?!敬鸢浮抗δ?、狀態(tài)、接口17、反映軟件結(jié)構(gòu)的基本形態(tài)特征是_、_、_和_?!敬鸢浮可疃?、寬度、扇入、扇出4.4 軟件結(jié)構(gòu)設(shè)計(jì)(層次圖和HIPO圖)1、耦合性和內(nèi)聚性是衡量 的兩個定性的標(biāo)準(zhǔn)。【答案】模塊獨(dú)立性2、如果兩模塊間的通信信息是若干個參數(shù),而每個參數(shù)是單一的數(shù)據(jù)項(xiàng),則稱這種耦合性為 耦合?!敬鸢浮繑?shù)據(jù)耦合【解析】數(shù)據(jù)耦合指兩個模塊之間有調(diào)用關(guān)系,傳遞的是簡單的數(shù)據(jù)值,相當(dāng)于高級語言的值傳遞3、結(jié)構(gòu)化分析方法的分析策略是_?!敬鸢浮孔?/p>

18、頂向下逐步求精4、一個軟件的深度是指其控制的( )【答案】層數(shù)5、人們在開發(fā)計(jì)算機(jī)軟件的長期實(shí)踐中積累了豐富的經(jīng)驗(yàn),總結(jié)這些經(jīng)驗(yàn)得出了一些啟發(fā)式規(guī)則。一個常用啟發(fā)規(guī)則是,設(shè)計(jì)出軟件的初步結(jié)構(gòu)后,應(yīng)該審查分析這軟件結(jié)構(gòu),通過模塊分解或( ), 力求降低耦合提高內(nèi)聚。例如,多個模塊公有的一個子功能可以獨(dú)立成一個模塊,由這些模塊調(diào)用:多個類共有的數(shù)據(jù)成員或功能可以抽取出來做成( ),由多個類繼承使用。第二個常用啟發(fā)規(guī)則是,模塊的規(guī)模應(yīng)該適中,并且其深度、寬度、扇出和扇入都應(yīng)適當(dāng)。第三個常用啟發(fā)規(guī)則就是降低模塊接口的( )。接口復(fù)雜或不一致(即看起來傳遞的數(shù)據(jù)之間沒有聯(lián)系),是緊耦合低內(nèi)聚的征兆,應(yīng)該

19、重新分析這個模塊的獨(dú)立性。第四個常用的啟發(fā)規(guī)則是,設(shè)計(jì)單入口單出口單功能的模塊?!敬鸢浮亢喜ⅰ⒏割?、復(fù)雜程度6、結(jié)構(gòu)化程序設(shè)計(jì)方法是使用_構(gòu)造程序。 【答案】基本控制結(jié)構(gòu)7、結(jié)構(gòu)化設(shè)計(jì)對數(shù)據(jù)流有兩種分析方法,它們是_設(shè)計(jì)和_設(shè)計(jì)。【答案】變換分析、事務(wù)分析8、軟件結(jié)構(gòu)是以_為基礎(chǔ)而組成的一種控制層次結(jié)構(gòu)。【答案】模塊 4.5 結(jié)構(gòu)化設(shè)計(jì)方法(數(shù)據(jù)流的類型,將其能換成軟件結(jié)構(gòu)圖,并能根據(jù)優(yōu)化準(zhǔn)則將其優(yōu)化) 結(jié)構(gòu)化方法總的指導(dǎo)思想是_逐層分解。【答案】自頂向下 2、在建立對象的功能模型時(shí),使用的數(shù)據(jù)流圖中包含有處理、數(shù)據(jù)流、動作對象和_。 【答案】數(shù)據(jù)存儲對象3、變換型數(shù)據(jù)流圖是由輸入、_和輸出三

20、部分組成的【答案】變換(或處理)4、結(jié)構(gòu)化語言是介于_和形式語言之間的一種半形式語言?!敬鸢浮孔匀徽Z言 5、結(jié)構(gòu)化分析是面向_進(jìn)行需求分析的方法。【答案】數(shù)據(jù)流6、結(jié)構(gòu)化設(shè)計(jì)以_為基礎(chǔ),按一定的步驟映射成軟件結(jié)構(gòu)?!敬鸢浮繑?shù)據(jù)流7、在SA方法的需求描述工具中,數(shù)據(jù)流圖描述系統(tǒng)的分解,即描述系統(tǒng)由哪幾部分組成,各部分之間有什么聯(lián)系等等。數(shù)據(jù)字典定義了數(shù)據(jù)流圖中每一個圖形元素;結(jié)構(gòu)化語言、判定表或判定樹則詳細(xì)描述數(shù)據(jù)流圖中不能被再分解的_?!敬鸢浮棵恳粋€加工8、結(jié)構(gòu)化設(shè)計(jì)以_為基礎(chǔ)映射成軟件結(jié)構(gòu)?!敬鸢浮繑?shù)據(jù)流9、結(jié)構(gòu)化方法由結(jié)構(gòu)化分析、_、結(jié)構(gòu)化程序設(shè)計(jì)構(gòu)成,它是一種面向_的開發(fā)方法?!敬鸢浮拷Y(jié)

21、構(gòu)化設(shè)計(jì),數(shù)據(jù)流4.6 優(yōu)化設(shè)計(jì)5、詳細(xì)設(shè)計(jì)5.1 詳細(xì)設(shè)計(jì)概念和任務(wù)1、模塊內(nèi)部的算法設(shè)計(jì)在結(jié)構(gòu)化方法的 階段進(jìn)行。【答案】詳細(xì)設(shè)計(jì)5.2 結(jié)構(gòu)程序設(shè)計(jì)1、軟件結(jié)構(gòu)是以 為基礎(chǔ)而組成的一種控制層次結(jié)構(gòu)?!敬鸢浮磕K2、詳細(xì)設(shè)計(jì)階段將設(shè)計(jì)出程序的“藍(lán)圖”,以后程序員將根據(jù)這個“藍(lán)圖”寫出實(shí)際的程序代碼。因?yàn)槌绦虻摹白x者”有兩個,那就是計(jì)算機(jī)和 。因此,衡量程序的質(zhì)量不僅要看它的邏輯是否正確、性能是否滿足要求,更主要的是要看它是否容易閱讀和理解。結(jié)構(gòu)程序設(shè)計(jì)技術(shù)是實(shí)現(xiàn)上述目標(biāo)的關(guān)鍵技術(shù),是詳細(xì)設(shè)計(jì)的邏輯基礎(chǔ)。該技術(shù)使用三種結(jié)構(gòu)即 、 和循環(huán)實(shí)現(xiàn)任何單入口和單出口的程序。【答案】人 順序 選擇3、

22、不采用軟件工程的方法開發(fā)軟件,軟件只有程序而無文檔,從而導(dǎo)致維護(hù)工作困難,這是一種_的維護(hù)?!敬鸢浮糠墙Y(jié)構(gòu)化4、PDL是一種用于描述模塊_和處理細(xì)節(jié)的語言?!敬鸢浮克惴ㄔO(shè)計(jì) 5、任何程序都可由順序、選擇、_三種基本控制結(jié)構(gòu)構(gòu)造?!敬鸢浮恐貜?fù)/循環(huán)5.3 人機(jī)界面設(shè)計(jì)1、用戶界面設(shè)計(jì)過程主要包括 、 、 和 等步驟?!敬鸢浮坷L制窗體和消息流程圖、制作用戶界面原型窗體和消息框之間的前后順序、從用戶哪里獲取反饋信息、迭代修改用戶界面2、通過向用戶提供視覺和聽覺上的反饋,保持用戶與界面間的雙向通信,是提高界面可( )性的措施之一?!敬鸢浮拷换?.4 過程設(shè)計(jì)工具(程序流程圖、盒圖、PAD圖、判定表、判

23、定樹、過程設(shè)計(jì)語言)1、計(jì)算機(jī)輔助軟件工程這一術(shù)語的英文縮寫為_?!敬鸢浮緾ASE【解析】Computer Aided Software Engineering(計(jì)算機(jī)輔助軟件工程)2、在軟件的詳細(xì)設(shè)計(jì)中,根據(jù)控制流程從上到下,從左到右展開的設(shè)計(jì)工具是_。【答案】PAD圖 3、在算法描述工具中,PAD圖可自動生成程序。由機(jī)器自動通過_生成相應(yīng)的源代碼,大大提高了_?!敬鸢浮孔邩涞霓k法、 軟件的生產(chǎn)率4、當(dāng)數(shù)據(jù)流圖中某個加工的一組動作存在著多個條件復(fù)雜組合的判斷時(shí),使用_或_較好?!敬鸢浮颗卸ū?判定樹 5、判定樹較判定表直觀易讀,判定表進(jìn)行邏輯驗(yàn)證較嚴(yán)格,能把所有的可能性全部都考慮到??蓪煞N

24、工具結(jié)合起來,先用_作底稿,在此基礎(chǔ)上產(chǎn)生_?!敬鸢浮颗卸ū恚慌卸?5.5 Jackson圖和方法1、Jackson圖除了可以表達(dá) 外,還可以表達(dá)數(shù)據(jù)結(jié)構(gòu)【答案】程序結(jié)構(gòu)2、 Jackson方法是一種面向_的開發(fā)方法?!敬鸢浮繑?shù)據(jù)結(jié)構(gòu)3、在許多軟件項(xiàng)目中,輸入數(shù)據(jù)和輸出數(shù)據(jù)之間很少或沒有結(jié)構(gòu)上的對應(yīng)關(guān)系,Jackson把這種情況稱為_?!敬鸢浮拷Y(jié)構(gòu)沖突 4、Jackson方法是面向_的設(shè)計(jì)方法。早期的Jackson方法用于開發(fā)規(guī)模較小的數(shù)據(jù)處理系統(tǒng)的設(shè)計(jì),簡稱_。【答案】數(shù)據(jù)結(jié)、JSP5、Jackson結(jié)構(gòu)圖能對結(jié)構(gòu)進(jìn)行_分解,因此可以表示_?!敬鸢浮孔皂斚蛳?、層次結(jié)構(gòu) 5.6 程序復(fù)雜度的

25、度量方法(McCabe方法、Halstead方法)1、軟件復(fù)雜性度量的參數(shù)很多,主要有規(guī)模、_、結(jié)構(gòu)、智能度。【答案】難度 2、軟件復(fù)雜性主要表現(xiàn)在程序的復(fù)雜性。程序的復(fù)雜性主要指_程序的復(fù)雜性。【答案】模塊內(nèi)3、McCabe質(zhì)量度量模型,針對面向軟件產(chǎn)品的運(yùn)行、_、_。【答案】修正、轉(zhuǎn)移 4、軟件復(fù)雜性度量的參數(shù)主要有_、_、結(jié)構(gòu)和智能度?!敬鸢浮恳?guī)模、難度6、實(shí)現(xiàn)6.1 編碼的概念和任務(wù)以詳細(xì)設(shè)計(jì)說明書為輸入,將該輸入用某種程序設(shè)計(jì)語言翻譯成計(jì)算機(jī)可以理解并最終可運(yùn)行的代碼的過程叫( )過程?!敬鸢浮烤幋a2、軟件編碼是將_階段產(chǎn)生的算法,用某種程序設(shè)計(jì)語言編寫成程序的過程?!敬鸢浮吭敿?xì)設(shè)計(jì)

26、 6.2 編程語言和編程規(guī)范1、機(jī)器語言、匯編語言:依賴于機(jī)器,面向( )【答案】機(jī)器2、結(jié)構(gòu)化語言是介于自然語言和_之間的一種半形式語言?!敬鸢浮啃问秸Z言3、Lisp是一種_語言,Prolog是一種_語言。【答案】函數(shù)型 邏輯型 4、程序設(shè)計(jì)語言的_指語言的聯(lián)想性。在編碼過程中,由語句組合成模塊,由模塊組裝成系統(tǒng)結(jié)構(gòu),并在組裝過程中實(shí)現(xiàn)模塊的高內(nèi)聚,低耦合,使_得到加強(qiáng)?!敬鸢浮烤植啃浴⒕植啃?5、匯編語言是面向_的,可以完成_語言無法滿足要求的特殊功能,如與外部設(shè)備之間的一些接口操作。【答案】機(jī)器、高級6、程序設(shè)計(jì)語言的簡潔性是指人們必須記住的_的數(shù)量。人們要掌握一種語言,需要記住的成分?jǐn)?shù)

27、量越多,簡潔性越_?!敬鸢浮空Z言成分、差6.3 測試的概念和任務(wù)1、軟件測試的步驟主要包括 、集成測試、確認(rèn)測試和 【答案】單元測試 系統(tǒng)測試2、測試任何產(chǎn)品都有兩種方法:如果已經(jīng)知道了產(chǎn)品應(yīng)該具有的功能,可以通過測試來驗(yàn)證是否每個功能都正常使用;如果知道產(chǎn)品的內(nèi)部工作過程,可以通過測試來檢驗(yàn)產(chǎn)品內(nèi)部動作是否按照設(shè)計(jì)文檔的規(guī)定正常和正確運(yùn)行。前一種方法稱為 盒測試,也稱為功能測試;后一種方法稱為 盒測試,也稱為結(jié)構(gòu)測試。軟件測試必須分步驟進(jìn)行,后一個步驟在邏輯上是前一個步驟的繼續(xù)。大型軟件的測試一般分三步進(jìn)行,即模塊單元測試、 測試和驗(yàn)收(確認(rèn))測試。有時(shí)候還需要做子系統(tǒng)測試和回歸測試?!敬鸢?/p>

28、】黑盒 白盒 集成3、臨時(shí)維護(hù)小組采用“_”或“_”等方法來提高維護(hù)工作的效率?!敬鸢浮客聫?fù)審、同行復(fù)審 4、獨(dú)立路徑是指包括一組以前沒有處理的_的一條路徑。從程序圖來看,一條獨(dú)立路徑是至少包含有一條_的邊的路徑?!敬鸢浮空Z句或條件、在其他獨(dú)立路徑中未有過 6.4 測試步驟和準(zhǔn)則1、為了便于對照檢查,測試用例應(yīng)由輸入數(shù)據(jù)和預(yù)期 的兩部分組成?!敬鸢浮枯敵鼋Y(jié)果2、軟件開發(fā)是一個自頂向下逐步細(xì)化和求精過程,而軟件測試是一個_集成的過程。 【答案】自底向上3、軟件測試時(shí)需要三類信息:軟件配置、_和測試工具?!敬鸢浮繙y試配置6.5 單元測試1、軟件產(chǎn)品在交付使用之前一般要經(jīng)過_、集成測試、確認(rèn)測試和

29、系統(tǒng)測試【答案】單元測試6.6 集成測試1、軟件集成測試的方法主要有兩種,它們是_ _?!敬鸢浮繚u增式與非漸增式測試2、各模塊經(jīng)過單元測試后,將各模塊組裝起來進(jìn)行_,以檢查與設(shè)計(jì)相關(guān)的_的有關(guān)問題?!敬鸢浮考蓽y試、軟件體系結(jié)構(gòu) 6.7 確認(rèn)測試6.8 白盒測試1、動態(tài)測試有兩種測試方法:黑盒測試和( )測試。【答案】白盒2、白盒法中,_首先以詳細(xì)設(shè)計(jì)或源程序?yàn)榛A(chǔ),導(dǎo)出控制流程圖的拓?fù)浣Y(jié)構(gòu)(程序圖)?!敬鸢浮炕韭窂綔y試 6.9 黑盒測試1、黑盒測試主要是測試軟件是否滿足( )需求。【答案】功能2、為了確保每個開發(fā)過程的質(zhì)量,防止把軟件差錯傳遞到下一個過程,必須進(jìn)行質(zhì)量檢驗(yàn)。檢驗(yàn)的實(shí)施有_和

30、_兩種形式?!敬鸢浮堪缀袦y試、黑盒測試3、黑盒測試是功能測試,因此設(shè)計(jì)測試用例時(shí),需要研究_和_中有關(guān)程序功能或輸入、輸出之間的關(guān)系等信息,從而與測試后的結(jié)果進(jìn)行分析比較?!敬鸢浮啃枨笠?guī)格說明、概要設(shè)計(jì)說明6.10 調(diào)試和調(diào)試方法1、( )的目的是確定錯誤的位置和引起錯誤的原因,并加以改正。因此,又稱為排錯或糾錯【答案】調(diào)試6.11 軟件可靠性1、軟件的 一般由兩次故障平均間隔時(shí)間和故障平均恢復(fù)時(shí)間來度量?!敬鸢浮靠煽啃?、McCall提出的軟件質(zhì)量模型包括_個軟件質(zhì)量特性?!敬鸢浮?1【解析】正確性、可靠性、效率、完整性、可使用性、可維護(hù)性、可測試性、靈活性、可移植性、可復(fù)用性、互連性3、規(guī)

31、定功能的軟件,在一定程度上對自身錯誤的作用(軟件錯誤)具有屏蔽能力,則稱此軟件具有_的軟件?!敬鸢浮咳蒎e功能4、規(guī)定功能的軟件,在一定程度上能從錯誤狀態(tài)自動恢復(fù)到正常狀態(tài),則稱該軟件為_軟件?!敬鸢浮咳蒎e5、常借用硬件可靠性的定量度量方法來度量軟件的可靠性與可用性。常用指標(biāo)有_與_?!敬鸢浮科骄У却龝r(shí)間、MTTF平均失效間隔時(shí)間MTBF7、維護(hù)7.1 軟件維護(hù)概念和任務(wù)1、一般來說,在管理軟件中,軟件生存周期各個階段的工作量以 所占的比例最大?!敬鸢浮烤S護(hù)階段2、程序設(shè)計(jì)語言的 性通常指這種語言編寫的程序被理解,被修改及調(diào)整和改進(jìn)的難易程度?!敬鸢浮靠删S護(hù)3、在軟件產(chǎn)品被開發(fā)出來并交付用戶

32、使用之后,就進(jìn)入了軟件生命周期的最后一個階段,該階段將保證軟件在相當(dāng)長的時(shí)間內(nèi)能夠正常運(yùn)行。在這個階段,把診斷和改正錯誤而修改軟件的過程稱為 維護(hù),為了和變化了的環(huán)境適當(dāng)配合而修改軟件的過程稱為 維護(hù),為了滿足用戶提出的新增功能和修改已有功能而修改軟件的過程稱為完善性維護(hù),為了改進(jìn)未來的可維護(hù)性和可靠性或給未來的改進(jìn)奠定更好的基礎(chǔ)而修改軟件的過程稱為預(yù)防性維護(hù)。這四類維護(hù)活動都必須應(yīng)用于整個軟件配置,維護(hù)軟件 和軟件文檔同樣重要。【答案】改正性 適應(yīng)性 代碼4、軟件生存周期中時(shí)間最長、花費(fèi)的精力和費(fèi)用最多的一個階段是_階段?!敬鸢浮烤S護(hù)5、軟件維護(hù)是軟件生命周期的( )一個階段【答案】最后6、

33、維護(hù)的副作用有編碼副作用、_、文檔副作用三種。【答案】數(shù)據(jù)副作用7.2 維護(hù)過程1、軟件維護(hù)工作的生產(chǎn)性活動包括分析評價(jià)、修改設(shè)計(jì)和_等?!敬鸢浮?編寫程序代碼2、為了使應(yīng)用軟件適應(yīng)計(jì)算機(jī)環(huán)境的變化而_的過程稱為適應(yīng)性維護(hù)?!敬鸢浮啃薷能浖?、有兩類維護(hù)技術(shù):在開發(fā)階段使用來減少錯誤、提高軟件可維護(hù)性的_技術(shù),在維護(hù)階段 用來提高維護(hù)的效率和質(zhì)量的_技術(shù)?!敬鸢浮棵嫦蚓S護(hù)、維護(hù)支援7.3 可維護(hù)性判斷標(biāo)準(zhǔn)1、軟件可維護(hù)性度量的七個質(zhì)量特性是可理解性、可測試性、可修改性、可靠性、 、可使用性和效率?!敬鸢浮靠梢浦残?、軟件可維護(hù)性,是指軟件產(chǎn)品交付使用后,在實(shí)現(xiàn)改正潛伏的錯誤、改進(jìn)性能等屬性、適

34、應(yīng)環(huán)境變化等方面工作的( )程度。【答案】難易3、軟件開發(fā)環(huán)境的主要目標(biāo)是提高_(dá)、_和降低軟件成本?!敬鸢浮寇浖_發(fā)的生產(chǎn)率、改善軟件質(zhì)量7.4 軟件再工程1、軟件維護(hù)的內(nèi)容包括校正性維持,適應(yīng)性維護(hù)、_和預(yù)防性維護(hù)。 【答案】完善性維護(hù)8、面向?qū)ο蠓椒▽W(xué)引論8.1 面向?qū)ο蠓椒▽W(xué)的要點(diǎn)1、面向?qū)ο箝_發(fā)方法包括_、_、_三部分?!敬鸢浮棵嫦?qū)ο蠓治觥⒚嫦驅(qū)ο笤O(shè)計(jì)、面向?qū)ο髮?shí)現(xiàn)8.2 面向?qū)ο蠓椒▽W(xué)的優(yōu)點(diǎn)8.3 面向?qū)ο笙嚓P(guān)概念1、類的實(shí)例化是_。【答案】對象2、面向?qū)ο笥腥齻€基本要素,它們是_、_和_?!敬鸢浮砍橄蟆⒎庋b性(信息隱蔽)、共享性3、對象具有狀態(tài),描述對象的狀態(tài)用它的_。【答案】屬

35、性值4、是自動地共享類、子類和對象中的方法和數(shù)據(jù)的機(jī)制?!敬鸢浮坷^承5、屬性指的是類中對象所具有的_。不同對象的同一屬性可以具有相同或不同的_?!敬鸢浮啃再|(zhì)的抽象、屬性值6、繼承性是子類自動共享其父類的_機(jī)制?!敬鸢浮繑?shù)據(jù)結(jié)構(gòu)和方法7、軟件部件的內(nèi)部實(shí)現(xiàn)與外部可訪問性分離,這是指軟件的_。【答案】封裝 8、用來模擬被測模塊的上級調(diào)用模塊的模塊稱為_。【答案】驅(qū)動模塊9、子類自動共享父類數(shù)據(jù)結(jié)構(gòu)和方法的機(jī)制是_,這是類之間的一種關(guān)系【答案】繼承性10、在面向?qū)ο蠓椒ㄖ?,_是子類共享父類數(shù)據(jù)結(jié)構(gòu)和方法的機(jī)制,體現(xiàn)了類之間的一種關(guān)系?!敬鸢浮坷^承性 11、在面向?qū)ο蠓椒ㄖ校瑢ο髮?shí)現(xiàn)了數(shù)據(jù)和操作的結(jié)合

36、,使數(shù)據(jù)和操作_于對象的統(tǒng)一體中?!敬鸢浮糠庋b12、在類層次中,子類只繼承一個父類的數(shù)據(jù)結(jié)構(gòu)和方法,則稱為_。子類繼承了多個父類的 數(shù)據(jù)結(jié)構(gòu)和方法,則稱為_。【答案】單重繼承、多重繼承 13、不同對象的同一屬性可以具有相同或不同的_?!敬鸢浮繉傩灾?14、同一個類中的共享是指同一個類中的對象有著相同_和相同的_?!敬鸢浮繑?shù)據(jù)結(jié)構(gòu)、行為特征 8.4 面向?qū)ο?中模型1、通常認(rèn)為UML的結(jié)構(gòu)視圖包括_、_和 對象圖?!敬鸢浮款悎D、包圖2、在面向?qū)ο蟮脑O(shè)計(jì)中,先后要建立的模型,分別是_、_和_【答案】對象模型、動態(tài)模型、功能模型3、用面向?qū)ο蠓椒ㄩ_發(fā)軟件,通常需要建立 3 種形式的模型:描述系統(tǒng)_的

37、對象模型、描述系統(tǒng)控制結(jié)構(gòu)的_和描述系統(tǒng)功能的功能模型?!敬鸢浮快o態(tài)結(jié)構(gòu)、動態(tài)模型4、在面向?qū)ο蠓椒ㄖ?,人們常用狀態(tài)圖描述類中對象的_。【答案】動態(tài)行為5、IDEF0方法用來描述系統(tǒng)的功能活動及其聯(lián)系,建立系統(tǒng)的_模型?!敬鸢浮抗δ?、IDEF0用來描述系統(tǒng)的功能活動及其聯(lián)系,建立系統(tǒng)的_模型。【答案】功能7、動態(tài)模型把腳本表示成事件跟蹤表,其中對象為_?!敬鸢浮勘碇械牧?、基于IDEF0圖的設(shè)計(jì)是以系統(tǒng)的功能模型和_為基礎(chǔ)設(shè)計(jì)系統(tǒng)的軟件結(jié)構(gòu)?!敬鸢浮啃畔⒔Y(jié)構(gòu)9、IDEF圖是一種_模型,表示系統(tǒng)功能的圖形稱為_圖形,連方框上的箭頭有四種類型,它們分別是_、_、_、_?!敬鸢浮抗δ?、活動、輸入、輸出、控制機(jī)制10、基于IDEF0圖的設(shè)計(jì)也是結(jié)構(gòu)化設(shè)計(jì)技術(shù)之一,它以系統(tǒng)的_和信息結(jié)構(gòu)為基礎(chǔ)設(shè)計(jì)軟件結(jié)構(gòu)?!敬鸢浮抗δ苣P?9、面向?qū)ο蠓治?.1 什么是面向?qū)ο蠓治?.2 面向?qū)ο蠓治龅幕具^程1、面向?qū)ο蠓治龅哪康氖菍陀^世界的系統(tǒng)進(jìn)行_?!敬鸢浮拷?9.3 掌握對象模型建立方法(ATM案例)9.4 掌握動態(tài)模型建立方法(ATM案例)9.5 掌握功能模型建立方法(ATM案例)10、面向?qū)ο笤O(shè)計(jì)10.1 掌握面向?qū)ο笤O(shè)計(jì)的概念和準(zhǔn)則1、從結(jié)構(gòu)化程序設(shè)計(jì)到 是程序設(shè)計(jì)方法的又一次飛躍?!?/p>

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論