(完整word版)軟件工程考試題(含答案)(word文檔良心出品)_第1頁
(完整word版)軟件工程考試題(含答案)(word文檔良心出品)_第2頁
免費(fèi)預(yù)覽已結(jié)束,剩余37頁可下載查看

下載本文檔

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

文檔簡介

1、軟件工程考試題簡答題1、 什么叫軟件?軟件是計(jì)算機(jī)系統(tǒng)中與硬件相互依存的另一部分,它是包括程序,數(shù)據(jù)及其相關(guān)文檔的完整集合2、 什么叫軟件危機(jī)?軟件危機(jī)包含哪兩點(diǎn)?軟件危機(jī)產(chǎn)生的原因是什么?軟件危機(jī)是指在計(jì)算機(jī)軟件開發(fā)與維護(hù)過程中所遇到的一系列嚴(yán)重問題。包括兩點(diǎn):(1)如何開發(fā)軟件,以滿足對軟件日益增長的需求;(2 )如何維護(hù)數(shù)量不斷膨脹的已有軟件。軟件開發(fā)和維護(hù)過程中存在的許多嚴(yán)重問題,一方面與軟件本身的特點(diǎn)有關(guān),另一方面也和軟件開發(fā)與維護(hù)的方法不正確有關(guān)。具體表現(xiàn)如下:(1) 軟件是邏輯部件而不是物理部件。(2) 軟件的規(guī)模越來越大,復(fù)雜性越來越大。(3) 輕視需求分析的重要性,輕視軟件維

2、護(hù)的錯(cuò)誤觀點(diǎn)和方法。3、 什么叫軟件工程?1968 年在第一屆 NATO 會議上的早期定義:“建立并使用完善的工程化原則,以較經(jīng)濟(jì)的手段獲得能在實(shí)際機(jī)器上有效運(yùn)行的可靠軟件的一系列方法”。1993 年 IEEE 的定義:“軟件工程是:把系統(tǒng)的、規(guī)范的、可度量的途徑應(yīng)用于軟件開發(fā)、運(yùn)行和維護(hù)過程,也就是把工程應(yīng)用于軟件;進(jìn)而研究實(shí)現(xiàn)的途徑”。我們國家最近定義:軟件工程是指導(dǎo)計(jì)算機(jī)軟件開發(fā)和維護(hù)的工程學(xué)科。它采用工程的概念、原理、技術(shù)和方法來開 發(fā)與維護(hù)軟件,把經(jīng)過時(shí)間考驗(yàn)而證明正確的管理技術(shù)和當(dāng)前能夠得到的最好的技術(shù)方法結(jié)合起來。4、 兩種軟件工程方法學(xué)開發(fā)軟件時(shí)要建立哪些模型?軟件工程方法學(xué)包

3、括:傳統(tǒng)方法學(xué)和面向?qū)ο蠓椒▽W(xué)。常用的開發(fā)模型有:瀑布模型(需求穩(wěn)定,而且可以預(yù)先指定)原型模型(需求模糊或者隨時(shí)間變化)增量模型(分析員先作出需求分析和概要設(shè)計(jì),用戶參與逐步完善)螺旋模型(將瀑布模型與原型化模型結(jié)合起來,并加入了風(fēng)險(xiǎn)分析)噴泉模型(使開發(fā)過程具有迭代性和無間隙性)5、 軟件過程模型有哪些?簡述它們的特點(diǎn)。過程模型分為五大類:1管理過程模型。2瀑布模型(又稱為生命周期模型)。3增量過程模型:包括增量模型 ”RAD 模 型。4煙花過程模型:包括原型開發(fā)模型,螺旋模型,協(xié)同開發(fā)模型。5專用過程模型:包括機(jī)遇構(gòu)建的開發(fā)模型,形式化方法模型,面向方面的軟件開發(fā)模型。6、 什么是軟件生

4、命周期?一個(gè)軟件從定義,開發(fā),使用和維護(hù),直到最終被廢棄,要經(jīng)歷一個(gè)漫長的時(shí)期,通常把軟件經(jīng)歷的這個(gè)漫長時(shí)期稱 為生命周期7、 軟件生命周期有哪幾個(gè)階段和步驟?三個(gè)階段:定義、開發(fā)、維護(hù)八個(gè)步驟:問題定義、可行性研究、需求分析;總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼與單元測試、綜合測試;運(yùn)行維護(hù)。8、 計(jì)算機(jī)軟件的開發(fā)經(jīng)過哪三個(gè)大階段?三個(gè)階段:定義、開發(fā)、維護(hù)9、 軟件開發(fā)的各階段的任務(wù)是什么?定義階段:問題定義-任務(wù):關(guān)于規(guī)模和目標(biāo)的報(bào)告書;可行性研究-任務(wù):系統(tǒng)的高層邏輯模型:數(shù)據(jù)流圖,成本/效益分析;需求分析-任務(wù):系統(tǒng)的邏輯模型:數(shù)據(jù)流圖,數(shù)據(jù)字典,算法描述。開發(fā)階段:總體設(shè)計(jì)-任務(wù):系統(tǒng)流程圖,

5、成本/效益分析,推薦的系統(tǒng)結(jié)構(gòu):層次圖 /結(jié)構(gòu)圖;詳細(xì)設(shè)計(jì)-任務(wù):HIPO 圖或 PDL 圖;編碼和單元測試-任務(wù):源程序清單,單元測試方案和結(jié)果;綜合測試-任務(wù):綜合測試方案,結(jié)果集成測試,驗(yàn)收測試,完整一致的軟件配置。維護(hù)階段:軟件維護(hù)-任務(wù):維護(hù)記錄以及改正性維護(hù),適應(yīng)性維護(hù),完整性維護(hù)和預(yù)防性維護(hù)10、軟件設(shè)計(jì)分哪兩個(gè)階段?總體設(shè)計(jì)的兩個(gè)階段分別是什么?分為總體設(shè)計(jì)和詳細(xì)設(shè)計(jì)兩個(gè)階段。11、總體設(shè)計(jì)包括系統(tǒng)設(shè)計(jì)(劃分出組成系統(tǒng)的程序、文件、數(shù)據(jù)庫、人工過程和文檔等物理元素) 和結(jié)構(gòu)設(shè)計(jì)(確定系統(tǒng)中每個(gè)程序是由哪些模塊組成的,以及這些模塊相互間的關(guān)系,不涉及模塊內(nèi)部 算法流程)12、軟件

6、與硬件的區(qū)別是什么?軟件是一種邏輯部件,而不是具體的物理部件。軟件在開發(fā)、生產(chǎn)、使用、維護(hù)等方面與硬件相比有明顯差異。軟 件是開發(fā),硬件是制造 軟件是自定的,硬件是組裝的軟件不會磨損,硬件存在機(jī)械磨損問題13、軟件需求分析的任務(wù)是什么?需求分析的任務(wù)是確定系統(tǒng)必須完成哪些工作,也就是對目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。一般說來,需求分析的任務(wù)包括下述幾方面:1確定對系統(tǒng)的綜合要求(主要有:功能需求、性能需求、運(yùn)行需求、將來可能提出的需求。)2分析系統(tǒng)的數(shù)據(jù)要求3導(dǎo)出系統(tǒng)的邏輯模型:數(shù)據(jù)流圖、實(shí)體-聯(lián)系圖、狀態(tài)轉(zhuǎn)換圖、數(shù)據(jù)字典、算法流程等4修正系統(tǒng)開發(fā)計(jì)劃14、瀑布模型與原型模型分別適用

7、于開發(fā)哪些軟件?瀑布模型與原型模型分別適用于開發(fā)哪些軟件瀑布模型適合于需求穩(wěn)定,而且可以預(yù)先指定的大型系統(tǒng)工程項(xiàng)目。原型模型適合于需求模糊或者隨時(shí)間變化的中小型項(xiàng)目15、數(shù)據(jù)流圖的作用是什么?如何畫數(shù)據(jù)流圖簡稱 DFD(Data Flow Diagram)圖,它是以特定的圖形符號描述系統(tǒng)邏輯模型的工數(shù)據(jù)流圖 具;它從數(shù)據(jù)傳送和加工的角度抽象的描述信息在系統(tǒng)中的流動和數(shù)據(jù)處理的過程;它是開發(fā)人員與用戶之間交流信息的通信工具;它也是系統(tǒng)分析與系統(tǒng)設(shè)計(jì)的工具。數(shù)據(jù)流圖畫法總結(jié)1先找出數(shù)據(jù)源點(diǎn)和匯點(diǎn)。它們是外部實(shí)體,由它們確定系統(tǒng)與外界的接口。2.找出外部實(shí)體的輸出數(shù)據(jù)流與輸入數(shù)據(jù)流。畫出頂層數(shù)據(jù)流圖

8、。3從頂層加工出發(fā),逐步細(xì)化,畫出所需子圖。4.分析系統(tǒng)的主要處理功能,把每一個(gè)處理功能作為一個(gè)加工,并且確定它們之間的數(shù)據(jù)流 層數(shù)據(jù)流圖。5.對流圖中的每個(gè)加工進(jìn)行細(xì)化,畫出所需的子圖,直到加工不需再分解為止。6按照前面給出原則檢查和修改每一層數(shù)據(jù)流圖和子圖16、什么叫數(shù)據(jù)字典?如何寫數(shù)據(jù)字典?數(shù)據(jù)字典 是描述數(shù)據(jù)流圖中數(shù)據(jù)的信息的集合(描述內(nèi)容包括:數(shù)據(jù)流圖、狀態(tài)轉(zhuǎn)換圖、 信息(數(shù)據(jù)流、數(shù)據(jù)存儲、外部實(shí)體)、控制信息(事件)等,不包括處理 )如何寫?數(shù)據(jù)元素的組合方式順序:即以確定的次序連接兩個(gè)或多個(gè)分量。例:A+B選擇:即從兩個(gè)或多個(gè)可能的元素中選取一個(gè)。例:A|B重復(fù):即把指定的分量重

9、復(fù)零次或多次。例:1A5可選:即一個(gè)分量是可有可無的(重復(fù)零次或一次)17、軟件設(shè)計(jì)的原則有哪些?模塊化,抽象化與逐步求精,信息隱藏與局部化,模塊獨(dú)立18、耦合與內(nèi)聚分別有哪些?如何定義?如何區(qū)分?耦合衡量不同模塊彼此間互相依賴(連接)的緊密程度 內(nèi)聚衡量一個(gè)模塊內(nèi)部各個(gè)元素彼此結(jié)合的緊密程度 耦合的種類:數(shù)據(jù)耦合:如果兩個(gè)模塊間的通訊信息是若干參數(shù),其中每一個(gè)參數(shù)都是一個(gè)數(shù)據(jù)元素,稱 據(jù)耦合。這是模塊之間影響最小的耦合關(guān)系。標(biāo)記耦合:當(dāng)把整個(gè)數(shù)據(jù)結(jié)構(gòu)作為參數(shù)傳遞而被調(diào)用模塊只需要使用其中一部分?jǐn)?shù)據(jù)元素標(biāo)記耦合時(shí),這種情況稱為標(biāo)記耦合。入、流出關(guān)系,畫出第數(shù)據(jù)字典 E-R 圖中的數(shù)據(jù)數(shù)據(jù)耦合這

10、種耦合為數(shù)控制耦合:那么 A 和 B 之間 控制耦合如果模塊 A 向模塊 B 所傳遞的信息控制了模塊 B 的內(nèi)部邏輯,的耦合稱為控制耦合。公共耦合:如果兩個(gè)或多個(gè)模塊都和同一個(gè)公共數(shù)據(jù)域有關(guān),則稱為公共耦合。公共耦合 公共耦合是一種不良的耦合關(guān)系,它給模塊的維護(hù)和修改帶來困難。如果兩個(gè)模塊共享的數(shù)據(jù)很多,都通過參數(shù)傳遞很不方便時(shí),可以利用公共耦合。內(nèi)容耦合:如果一個(gè)模塊和另一個(gè)模塊的內(nèi)部屬性(即運(yùn)行程序和內(nèi)部數(shù)據(jù))有關(guān),則稱為內(nèi)容耦合。功能內(nèi)聚:如果一個(gè)模塊內(nèi)部的各組成部分的處理動作全都為執(zhí)行同一個(gè)功能而存在, 功能,則稱為功能內(nèi)聚。判斷一個(gè)模塊是不是功能內(nèi)聚,只要看這個(gè)模塊是“做什么” 完成

11、多任務(wù)。順序內(nèi)聚:如果一個(gè)模塊內(nèi)部的各個(gè)組成部分執(zhí)行的幾個(gè)處理動作有這樣的特征:生的輸出數(shù)據(jù)是后一個(gè)處理動作的輸入數(shù)據(jù),稱為順序內(nèi)聚。順序內(nèi)聚維護(hù)起來不如功能內(nèi)聚方便,要修改模塊中的一個(gè)功能,會影響到同一個(gè)模塊中的其他功能。通訊內(nèi)聚: 如果一個(gè)模塊內(nèi)各組成部分的處理動作都使用相同的輸入數(shù)據(jù)或產(chǎn)生相同的輸通訊內(nèi)聚 出數(shù)據(jù),稱為通訊內(nèi)聚。過程內(nèi)聚:如果一個(gè)模塊內(nèi)部的各個(gè)組成部分的處理動作各不相同,彼此也沒有聯(lián)系,但他 們都受同一個(gè)控制流支配,決定他們的執(zhí)行次序,稱為過程內(nèi)聚。暫時(shí)內(nèi)聚(時(shí)間內(nèi)聚):如果一個(gè)模塊內(nèi)的各組成部分的處理動作和時(shí)間有關(guān),則稱為暫時(shí):內(nèi)聚。暫時(shí)內(nèi)聚模塊的處理動作必須在特定的時(shí)

12、間內(nèi)完成。-指在一個(gè)特定的時(shí)間范圍內(nèi)完成,但完成次序不重要。例如:程序設(shè)計(jì)中的模塊的初始化。邏輯內(nèi)聚:如果一個(gè)模塊內(nèi)部的各組成部分的處理動作在邏輯上相似,但功能都彼此不同或 邏輯內(nèi)聚: 無關(guān),則稱為邏輯內(nèi)聚。一個(gè)邏輯內(nèi)聚模塊往往包括若干個(gè)邏輯相似的動作,使用時(shí)可以選用一個(gè)或幾個(gè)功能。例如:把編輯各種輸入數(shù)據(jù)的功能放在一個(gè)模塊中。機(jī)械內(nèi)聚(偶然內(nèi)聚):如果一個(gè)模塊的內(nèi)部各組成部分的處理動作彼此沒有任何聯(lián)系,則:稱為機(jī)械內(nèi)聚佃、詳細(xì)設(shè)計(jì)階段用到了哪些圖形工具?程序流程圖(PFD)盒圖(N-S 圖)問題分析圖(PAD)判定表/判定樹(其他非圖形工具有過程設(shè)計(jì)語言( PDL)20、軟件工程的啟發(fā)式規(guī)則

13、有哪些?A. 當(dāng)模塊過大時(shí)就應(yīng)該分解它。一般按功能分解到成為一個(gè)小的功能單一的模塊為止。一般一個(gè)模塊內(nèi)包含的語句在 30-50 條左右較好(指高級語言)。分解后不應(yīng)該降低模塊的獨(dú)立性。B. 深度、寬度、扇出和扇入都應(yīng)適當(dāng)。好的設(shè)計(jì)結(jié)構(gòu)通常是頂層扇出比較高,中層扇出比較少,底層扇入到公共的實(shí)用模塊中去(底層模塊有高扇入)。模塊的獨(dú)立性是貫穿始終的標(biāo)準(zhǔn),不能為了追求其它目標(biāo)而違背獨(dú)立性標(biāo)準(zhǔn)。C. 對于任何一個(gè)內(nèi)部存在判斷調(diào)用的模塊,它的判斷作用的范圍應(yīng)該是其控制范圍的一個(gè)子集。存在判斷調(diào)用的模塊,所在層次不要與那些屬于判斷作用范圍的模塊所在的層次相隔太遠(yuǎn)-越近越好。D. 力爭降低模塊接口的復(fù)雜程度

14、。模塊接口復(fù)雜是軟件發(fā)生錯(cuò)誤的一個(gè)主要原因。應(yīng)該仔細(xì)設(shè)計(jì)模塊接口,使得信息傳遞簡單并且和模塊的功能一致。接口復(fù)雜或不一致(即看起來傳遞的數(shù)據(jù)之間沒有聯(lián)系),是緊耦合或低內(nèi)聚的征兆,應(yīng)該重新分析這個(gè)模塊的獨(dú)立性。E.設(shè)計(jì)單入口單出口的模塊:防止出現(xiàn)內(nèi)容耦合-多入口 (多種處理功能)意味著內(nèi)容耦合。F 模塊功能應(yīng)該可以預(yù)測-模塊是黑合子,輸入相同則輸出相同,其內(nèi)部數(shù)據(jù)結(jié)構(gòu)和接口受到限制。模塊的功能應(yīng)該能夠預(yù)測,但也要防止模塊功能過分局限。過分局限將導(dǎo)致模塊靈活性太差,會出現(xiàn)使用現(xiàn)場的修改。21、模塊的作用域與控制域分別指什么?模塊的控制域:本身及其所有下級模塊(包括直接和間接下級模塊)。模塊的作用

15、域:受該模塊內(nèi)一個(gè)判定影響的所有模塊的集合22、模塊的扇入、扇出、深度、寬度分別是什么意思?深度表示軟件結(jié)構(gòu)中控制的層數(shù)-粗略的標(biāo)志一個(gè)系統(tǒng)的大小和復(fù)雜程度。寬度是軟件結(jié)構(gòu)同一層次上的模塊總數(shù)的最大值-寬度越大系統(tǒng)越復(fù)雜。并且功能內(nèi)聚:只執(zhí)行一個(gè) 是完成一個(gè)具體的任務(wù),還是前一個(gè)處 順序內(nèi)聚:理動作所產(chǎn)模塊的扇出指一個(gè)模塊擁有的直屬下級模塊的個(gè)數(shù),一般扇出數(shù)控制在7 以內(nèi),平均為 3 模塊的扇出或 4。模塊的扇入是指一個(gè)模塊的直接上級模塊的個(gè)數(shù)。23、軟件測試的目的是什么?軟件測試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過程;測試是程序的執(zhí)行過程,目的在于發(fā)現(xiàn)錯(cuò)誤;軟件測試中需要數(shù)據(jù),即為測試而精心設(shè)計(jì)的測

16、試用例,利用測試用例去運(yùn)行程序,幫助發(fā)現(xiàn)程序錯(cuò)誤;一個(gè)好的測試用例在于能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯(cuò)誤; 一個(gè)成功的測試是發(fā)現(xiàn)了至今未發(fā)現(xiàn)的錯(cuò)誤的測試。軟件測試絕對不是要證明程序的正確性,也證明不了程序的正確性24、單元測試有那些內(nèi)容?將每一個(gè)模塊作為一個(gè)單獨(dú)的測試單元,保證每個(gè)模塊作為一個(gè)單元能正確運(yùn)行。單元測試主要針對模塊的以下五個(gè)基本特征進(jìn)行測試:1模塊接口 2局部數(shù)據(jù)結(jié)構(gòu) 3重要的執(zhí)行路徑 4錯(cuò)誤處理 5邊界條件25、什么是集成測試?非漸增式和漸增式有什么區(qū)別?漸增式如何組裝模塊?將模塊組合起來成為一個(gè)完整的系統(tǒng)對其進(jìn)行測試叫做集成測試。不論是子系統(tǒng)測試還是系統(tǒng)測試,都兼有檢測和組裝兩重含義,通

17、常稱為集成測試。非漸增式是將模塊先進(jìn)行單元測試然后組裝在一起進(jìn)行測試。漸增式是逐個(gè)將未測試的模塊組裝到已經(jīng)測試過的模塊上去進(jìn)行集成測試, 每加入一個(gè)就測試一次。非漸增式需要樁模塊和驅(qū)動模塊、非漸增式開始可以并行測試、漸增式可以及時(shí)的發(fā)現(xiàn)接口錯(cuò)誤,非漸增式很難 發(fā)現(xiàn)接口發(fā)現(xiàn)錯(cuò)誤、漸增式開始不能并行測試、漸增式測試比較徹底。漸增式組裝模塊有自頂向下和自底向上兩種組裝方式。26、什么是確認(rèn)測試?該階段有那些工作?按照需求規(guī)格說明書中的確定指標(biāo)對系統(tǒng)進(jìn)行功能與性能的測試。該階段進(jìn)行明確測試(對照需求規(guī)格說明書用黑盒 法進(jìn)行測試),軟件配置測試(文檔的完整性,發(fā)現(xiàn)遺漏錯(cuò)誤及時(shí)補(bǔ)充和修改)27、什么叫流圖

18、?如何畫出流圖?流圖的環(huán)形復(fù)雜度如何計(jì)算?流圖是抽象化的程序流圖,突出表現(xiàn)控制流符號O為流圖的一個(gè)結(jié)點(diǎn),表示一個(gè)或多個(gè)無分支語句。箭頭為邊,表示控制流的方向。在分支結(jié)構(gòu)中,分支的匯聚處應(yīng)有一個(gè)匯聚結(jié)點(diǎn)每一條邊必須終止于一個(gè)結(jié)點(diǎn)。如果判斷中的條件表達(dá)式是由一個(gè)或多個(gè)邏輯運(yùn)算符(OR,AND, NAND, NOR) 連接的復(fù)合條件 表達(dá)式,則需要改為一系列只有單個(gè)條件的嵌套的判斷。根據(jù)程序內(nèi)單條件分支數(shù)或循環(huán)個(gè)數(shù)來度量環(huán)形復(fù)雜度即程序的復(fù)雜度環(huán)形復(fù)雜度即程序的復(fù)雜度根據(jù)程序內(nèi)單條件分支數(shù)或循環(huán)個(gè)數(shù)來度量環(huán)形復(fù)雜度即程序的復(fù)雜度V(G)=流圖區(qū)域數(shù)V(G)=邊數(shù)-結(jié)點(diǎn)數(shù)+2V(G)=單條件判定數(shù)+1

19、28、白盒測試與黑盒測試分別有哪些測試方法?如何對具體問題測試?白盒測試對程序模塊的所有的執(zhí)行路徑至少測試一次;對所有的邏輯判定,取“真”與取“假”白盒測試的兩種情況都至少測試一次;白盒測試也叫 邏輯覆蓋法 包括:語句覆蓋,判定覆蓋,條件覆蓋黑盒測試發(fā)現(xiàn)程序中的錯(cuò)誤,必須在所有可能的輸入條件和輸出條件中確定測試數(shù)據(jù),來檢查程序是否都能產(chǎn)生正確的輸出。黑盒測試有等價(jià)類法和邊界值分析法29、軟件測試的步驟有哪些?每個(gè)測試階段的測試依據(jù)是什么?分別有誰來測試?步驟測試內(nèi)容時(shí)間單元測試:將每一個(gè)模塊作為一個(gè)單獨(dú)的測試單元,保證每個(gè)模塊作為一個(gè)單元能正確運(yùn)行。(編碼測試階段)子系測試系統(tǒng):將經(jīng)過單元測試

20、的模塊放在一起形成一個(gè)子系統(tǒng)來測試,以測試模塊間的接口正確性作為主要任務(wù)。(集中測試階段)系統(tǒng)測試:將經(jīng)過測試的子系統(tǒng)裝配成一個(gè)完整的系統(tǒng)來測試,檢驗(yàn)系統(tǒng)是否確實(shí)能實(shí)現(xiàn)需求規(guī)格說明書中的功能,以及系統(tǒng)的動態(tài)特征是否符合預(yù)定要求。階段系統(tǒng)測試是指整個(gè)計(jì)算機(jī)系統(tǒng)(包括軟硬件)的測試,可與系統(tǒng)的安裝和驗(yàn)收相結(jié)合進(jìn)行。(集中測試階段)驗(yàn)收測試:在用戶的參與下,把軟件系統(tǒng)作為單一的實(shí)體進(jìn)行測試,使軟件系統(tǒng)能滿足用戶的需要。測試內(nèi)容與系統(tǒng)測 試基本相同。(驗(yàn)收階段)平行測試:新舊兩個(gè)系統(tǒng)同時(shí)運(yùn)行進(jìn)行比較,避免風(fēng)險(xiǎn)的同時(shí)給用戶對新系統(tǒng)一段熟悉的時(shí)間(運(yùn)行階段)30、什么叫維護(hù)?維護(hù)的類型有哪些?軟件維護(hù)就是

21、在軟件已經(jīng)交付使用之后,為了改正錯(cuò)誤或滿足新的需要而修改軟件的過程。軟件維護(hù)類型有:1、改正性維護(hù): 對程序使用期間發(fā)現(xiàn)的程序錯(cuò)誤進(jìn)行診斷和改正的過程;占維護(hù)工作量17-21%。2、適應(yīng)性維護(hù): 配合變化了的環(huán)境進(jìn)行修改軟件的活動;占維護(hù)工作量18-25%。3、完善性維護(hù):滿足用戶在使用過程中提出增加新的功能或修改已有功能的建議而進(jìn)行的改進(jìn)工作;占維護(hù)工作量50-66%。4、預(yù)防性維護(hù):為了改善未來的可維護(hù)性或可靠性而修改軟件的工作;占維護(hù)工作量4%左右31、UML 中活動圖、狀態(tài)圖、順序圖都分別描述什么?活動圖強(qiáng)調(diào)的是從活動到活動的控制流,是一種表述過程基理、業(yè)務(wù)過程以及工作流的技術(shù)?;顒訄D

22、 它可以用來對業(yè)務(wù)過程、工作流建模,也可以對用例實(shí)現(xiàn)甚至是程序?qū)崿F(xiàn)來建模狀態(tài)機(jī)圖常用來描述業(yè)務(wù)或軟件系統(tǒng)中的對象在外部事件的作用下,對象的狀態(tài)從一種狀態(tài) 狀態(tài)機(jī)圖 到另一種狀態(tài)的控制流。順序圖描述的是對象之間的消息發(fā)送關(guān)系,而不是類之間的關(guān)系32、UML 中的事物有哪些?結(jié)構(gòu)事物:UML 中的名詞,它是模型的靜態(tài)部分,描述概念或物理元素。行為事物:UML 中的動詞,它是模型中的動態(tài)部分,是一種跨越時(shí)間、空間的行為。分組事物:UML 中的容器,用來組織模型,使模型更加的結(jié)構(gòu)化。注釋事務(wù):UML 中的解釋部分,和代碼中的注釋語句一樣,是用來描述模型的33、面向?qū)ο蟮幕靖拍铑?、對象、封裝、繼承等定

23、義是什么?類(Class)是具有相同屬性和服務(wù)的一組對象的集合,它為屬于該類的全部對象提供了統(tǒng)一的抽象描述,其內(nèi)部包括 屬性和服務(wù)兩個(gè)主要部分。對象(Object)是系統(tǒng)中描述客觀事物的一個(gè)實(shí)體,它是構(gòu)成系統(tǒng)的一個(gè)基本單位,由一組屬性和對這組屬性進(jìn)行操作的一組服務(wù)組成,是類的一個(gè)實(shí)例封裝(Encapsulation)是把對象的屬性和服務(wù)結(jié)合成一個(gè)獨(dú)立的系統(tǒng)單位,并盡可能隱藏對象的內(nèi)部細(xì)節(jié)。繼承性:如果一個(gè)類 A 繼承自另一個(gè)類 B,就把這個(gè) A 稱為B 的子類”,而把 B 稱為A 的父類。繼承使得相似 對象可以共享程序代碼和數(shù)據(jù)結(jié)構(gòu),大大減少程序中的冗余信息;繼承可以把已有的一般性的類具體化來

24、提高軟件的可重用性。多態(tài)性(Polymorphism)是指在父類中定義的屬性或服務(wù)被子類繼承后,可以具有不同的數(shù)據(jù)類型或表現(xiàn)出不同的行 為34、用例圖的作用是什么?用例圖是外部參與者所能觀察到的系統(tǒng)功能的模型圖。由一組用例、 參與者及它們之間的關(guān)系組成。主要用于對系統(tǒng)、子系統(tǒng)或類的功能行為進(jìn)行建模。參與者是與系統(tǒng)交互的外部實(shí)體,可以是人,也可以是其它系統(tǒng)。用例是從用 戶的角度描述系統(tǒng)的行為(功能)它將系統(tǒng)的功能描述成一系列事件,這些事件最終對參與者產(chǎn)生可觀察結(jié)果35、UML 中的關(guān)系有哪些?關(guān)系有六種:依賴,類屬,關(guān)聯(lián),實(shí)現(xiàn),聚合和組合36、UML 中實(shí)現(xiàn)關(guān)系、依賴關(guān)系、泛化關(guān)系等符號?實(shí)現(xiàn)關(guān)

25、系-卜依賴關(guān)系-泛化關(guān)系一37、用例、活動、狀態(tài)、節(jié)點(diǎn)等圖形符號分別是什么?填空玄米開口參與者、用例間的關(guān)系類型-說明表示符號關(guān)系類型-關(guān)聯(lián)說明參與者和用例間的關(guān)系/表示符號/ -參與者之問或用例之問的關(guān)系-A包含用例之間的關(guān)系. .擴(kuò)展用例之間的關(guān)系 - * .亠-n-面向?qū)ο?對象+類+繼承+通信1、畫出 UML 中依賴關(guān)系的圖形符號 _- 2、 在 UML 2.0 中定義了四種交互圖,其中強(qiáng)調(diào)對象調(diào)用順序的是程序圖。3、UM 沖實(shí)現(xiàn)關(guān)系的圖形符號是-4、軟件生命周期可劃分為 8 個(gè)階段,它們是什么?問題定義、可行性研究、需求分析;總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼與單元測試、綜合測試;運(yùn)行維護(hù)。5

26、、 軟件測試的目的是發(fā)現(xiàn)錯(cuò)誤,通常把測試方法按功能劃分為墨盒測試和白盒測試兩大類。 因?yàn)橥ǔ2豢赡茏龅礁F 盡測試,所以精心設(shè)計(jì) 測試方案 _是保證達(dá)到測試目的所必須的。6、計(jì)算機(jī)軟件的開發(fā)經(jīng)過三個(gè)階段分別為:定義、 設(shè)計(jì)和運(yùn)行。7、 軟件維護(hù)的活動包括四種: 改正性維護(hù)_、適應(yīng)性維護(hù)、完善性維護(hù)和預(yù)防性維護(hù)。&在軟件測試過程的 4 個(gè)步驟中,測試依據(jù)是需求規(guī)格說明的是_驗(yàn)收測試。選擇題1、 以下哪個(gè)不是詳細(xì)設(shè)計(jì)中常用的圖形描述工具 _。A、數(shù)據(jù)流圖B、程序流圖C、盒圖(N-S 圖) D、問題分析圖(PAD)2、耦合是對軟件結(jié)構(gòu)中各個(gè)不同模塊之間互相關(guān)聯(lián)程度的度量。一個(gè)模塊直接訪問另一個(gè)

27、模塊的內(nèi)部信息應(yīng)屬于 方式。A、控制耦合B、內(nèi)容耦合C、數(shù)據(jù)耦合D、外部耦合3、 在七種內(nèi)聚中屬于最強(qiáng)的是 功能內(nèi)聚,最弱的是 偶然 內(nèi)聚4、軟件工程的原則包括:模塊化、抽象與逐步求精、信息隱藏與局部化、模塊獨(dú)立_模塊耦合程度低,則說明模塊的獨(dú)立性越強(qiáng)。A .耦合越強(qiáng)B、扇入數(shù)越高5、軟件設(shè)計(jì)包括兩個(gè)階段。7、系統(tǒng)設(shè)計(jì)分為兩個(gè)階段分別為 _ 設(shè)計(jì)方案_ 與_ 選擇方案_&對于變換型的數(shù)據(jù)流圖,按照軟件設(shè)計(jì)思想,要將一個(gè)大型復(fù)雜的軟件進(jìn)行分解,要確定數(shù)據(jù)流圖的輸入邊界,輸 出邊界禾廿 變換中心_ 。9、自頂向下結(jié)合的漸增式測試法,在組合模塊時(shí)有兩種組合策略:深度優(yōu)先策略和 一寬度優(yōu)先策略

28、一。10、 在用面向?qū)ο笥^點(diǎn)建立起的3 種模型中,_ 是最基本、最重要、最核心的。A、動態(tài)模型B、對象模型C、功能模型D、狀態(tài)模型11、 在軟件結(jié)構(gòu)圖的有關(guān)術(shù)語中,用于表示軟件結(jié)構(gòu)中控制的層數(shù)的是_ 。A、扇出B、扇入C、深度D、寬度12、 指出 PDL 是哪種語言_過程設(shè)計(jì)語言_。13、 在進(jìn)行軟件測試時(shí),首先應(yīng)當(dāng)進(jìn)行_單元測試,然后再進(jìn)行組裝測試,最后再進(jìn)行有效性測試。14、 結(jié)構(gòu)化設(shè)計(jì)方法是面向 _ 的設(shè)計(jì)。-O聚合組合C、扇入數(shù)越低D、耦合越弱A、接口設(shè)計(jì)和結(jié)構(gòu)設(shè)計(jì)C、結(jié)構(gòu)設(shè)計(jì)和過程設(shè)計(jì)B、數(shù)據(jù)設(shè)計(jì)和概要設(shè)計(jì)D、概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)6、現(xiàn)有一個(gè)計(jì)算類型的程序,它的輸入只有一個(gè)Y,其范圍是

29、一 50WY 50。現(xiàn)從輸入的角度考慮設(shè)計(jì)了一組測試用例:一 100, 100, 0。設(shè)計(jì)這組測試用例的方法是 _A、條件覆蓋法B、邊緣值分析法C、錯(cuò)誤推測法D、等價(jià)劃分法15、 軟件工程的過程模型中, _瀑布_是經(jīng)典的傳統(tǒng)模型。16、 模塊_定義為受該模塊內(nèi)一個(gè)判斷影響的所有模塊集合。A .控制域B、作用域C、寬度D、接口17、 在軟件生命周期中,能準(zhǔn)確確定軟件系統(tǒng)的體系結(jié)構(gòu)的功能階段是20、軟件是計(jì)算機(jī)系統(tǒng)中與硬件相互依存的部分,它是包括(A)、( B)、及(C)的完整集合。其中,(A)是按事先設(shè)計(jì)的功能和性能要求執(zhí)行的指令序列,(B)是使程序員能夠正確操縱信息的數(shù)據(jù)結(jié)構(gòu),(C)是與程序開

30、發(fā)、維護(hù)和使用有關(guān)的圖文材料。軟件程序代碼 硬件文檔外設(shè)數(shù)據(jù)圖表21、開發(fā)軟件時(shí),對于提高軟件開發(fā)人員工作效率至關(guān)重要的是(A)。軟件工程中描述軟件生存周期的瀑布類型一般包括計(jì)劃、(B)、設(shè)計(jì)、編碼、測試、維護(hù)等幾個(gè)階段。其中,設(shè)計(jì)階段在管理上可以依次分成(0 和(D)兩個(gè)步驟。A :理能力程序開發(fā)環(huán)境 操作系統(tǒng)的資源管理功能開發(fā)程序人員數(shù)量計(jì)算機(jī)的并行處B :需求分析需求調(diào)查可行性分析問題定義C 、 D:方案設(shè)計(jì)代碼設(shè)計(jì)概要設(shè)計(jì)數(shù)據(jù)設(shè)計(jì)運(yùn)行設(shè)計(jì)詳細(xì)設(shè)計(jì)故障處理設(shè)計(jì)軟件體系結(jié)構(gòu)設(shè)計(jì)22.在結(jié)構(gòu)化的分析方法中,用以表達(dá)系統(tǒng)內(nèi)數(shù)據(jù)的運(yùn)行情況的工具有()。A A:數(shù)據(jù)流圖B :數(shù)據(jù)詞典C :結(jié)構(gòu)化英

31、語 D:判定表與判定樹23在結(jié)構(gòu)化的分析方法中,用實(shí)體關(guān)系圖表達(dá)系統(tǒng)中的對象及其關(guān)系,在實(shí)體關(guān)系圖中,表達(dá)對象的實(shí)例關(guān)系之間 的關(guān)聯(lián)有三種類型:一對一聯(lián)系,()聯(lián)系,多對多聯(lián)系。A :一對多B:多對多(A),進(jìn)行需求分析可使用多種工具,但(B)是不適用的,在需求分析中,分析員(C)。規(guī)格說明書的內(nèi)容不應(yīng)當(dāng)包括(D),該文檔在開發(fā)中具有重要的作用,但其作用不應(yīng)包括(E)。A .數(shù)據(jù)編碼B .數(shù)據(jù)流C.數(shù)據(jù)庫D .數(shù)據(jù)結(jié)構(gòu)A、概要設(shè)計(jì)B、詳細(xì)設(shè)計(jì)18、 下面不屬于軟件工程的基本原則的是A、模塊化B、抽象19、 在數(shù)據(jù)流圖中,用圓或者橢圓來表示A、數(shù)據(jù)流B、數(shù)據(jù)源點(diǎn)或終點(diǎn)C、需求分析D、可行性分析C

32、、局部化D、自頂向上C、數(shù)據(jù)存儲D、加工24.軟件需求分析的任務(wù), 不應(yīng)包括 要從用戶那里解決的最重要的問題是25原型化方法是用戶和軟件開發(fā)人員之間進(jìn)行的一種交互過程,適用于(A)系統(tǒng),它從用戶界面的開發(fā)入手,首先形成(B),用弓戶(C),并就(D)提出意見。A :1 1 需求不確定性高的2 需求確定的3 管理信息4 決策支持B :1 用戶界面使用手冊2 用戶界面需求分析說明書3系統(tǒng)界面原型4 完善的用戶界面C :1 改進(jìn)用戶界面的設(shè)計(jì)2 閱讀文檔資料3模擬用戶界面的運(yùn)行4 4 運(yùn)行用戶界面原型D1 1 同意什么和不同意什么2 使用和不使用哪一種編程語言3 程序的結(jié)構(gòu)4 執(zhí)行速度是否滿足要求2

33、6.從下列有關(guān)系統(tǒng)結(jié)構(gòu)圖的描述中選出正確的敘述。1系統(tǒng)結(jié)構(gòu)圖中反映的是程序中數(shù)據(jù)流的情況。2系統(tǒng)結(jié)構(gòu)圖是精確表達(dá)程序結(jié)構(gòu)的圖形表示法。因此有時(shí)也可將系統(tǒng)結(jié)構(gòu)圖當(dāng)作程序流程圖使用。3一個(gè)模塊的多個(gè)下屬模塊在系統(tǒng)結(jié)構(gòu)圖中所處的左右位置是無關(guān)緊要的。4在系統(tǒng)結(jié)構(gòu)圖中,上級模塊與其下屬模塊之間的調(diào)用關(guān)系用有向線段表示。這時(shí)使用斜的線段和水平、垂直的 線段具有相同的含義。27. 選出正確答案:1一組語句在程序中多處出現(xiàn),為了節(jié)省內(nèi)存空間,把這些語句放在一個(gè)模塊中,該模塊的內(nèi)聚性是(A)的。2將幾個(gè)邏輯上相似的成份,放在同一個(gè)模塊中,通過模塊入口的一個(gè)判斷決定執(zhí)行哪一個(gè)功能,該模塊的內(nèi)聚 性是(B)的。3

34、模塊中所有成份引用共同的數(shù)據(jù),該模塊的內(nèi)聚性是(C)的。4模塊內(nèi)的某成份的輸出是另一些成份的輸入,該模塊的內(nèi)聚性是(D)的。5模塊中所有成份結(jié)合起來完成一項(xiàng)任務(wù),該模塊的內(nèi)聚性是(E)的。A E:偶然內(nèi)聚時(shí)間內(nèi)聚 功能內(nèi)聚 通信內(nèi)聚 邏輯內(nèi)聚信息內(nèi)聚過程內(nèi)聚28.關(guān)于模塊化程序設(shè)計(jì)的說法正確的五項(xiàng):()1 程序設(shè)計(jì)比較方便但難于維護(hù)。2 2 便于由多人分工編制大型程序。3 3 軟件功能易于擴(kuò)充。4 4 易于理解,也便于排錯(cuò)。5 在主存儲器能夠容納的前提下,并使模塊盡可能大,以減少模塊的個(gè)數(shù)。6 模塊間的接口叫做數(shù)據(jù)文件。7 7 只要模塊之間的接口關(guān)系不變,模塊內(nèi)部實(shí)現(xiàn)細(xì)節(jié)的修改將不會影響別的模

35、塊。8 8 模塊間的單向調(diào)用關(guān)系叫做模塊的層次結(jié)構(gòu)。9 模塊越小,模塊化的優(yōu)點(diǎn)越明顯,一般來說模塊的大小都在10 行以下。29 從下列敘述中選出五條符合程序設(shè)計(jì)風(fēng)格指導(dǎo)原則的敘述。1 1 嵌套的重?cái)?shù)應(yīng)加以限制。2 2 盡量少使用全局變量。A :1 問題分析2 信息域分析3 3 結(jié)構(gòu)化程序設(shè)計(jì)4 確定邏輯模型B : 1 數(shù)據(jù)流圖2 2 判定表3 PAD 圖4 數(shù)據(jù)詞典C :1 1 要讓軟件做什么2 要對該軟件提供哪些信息3要求軟件工作效率如何D :1 對重要功能的描述3軟件確認(rèn)準(zhǔn)則4 讓軟件具有什么結(jié)構(gòu)2 2 對算法的詳細(xì)過程性描述4 軟件的性能E :1 軟件設(shè)計(jì)的依據(jù)2 用戶和開發(fā)人員對軟件要

36、”做什么”的共同理解3軟件驗(yàn)收的依據(jù)4 4 軟件可行性分析的依據(jù)3 不濫用語言特色。4 不用可以省略的括號。5 5 使用有意義的變量名。6 盡可能把程序編的短些。7 7 把常見的局部優(yōu)化工作留給編譯程序去做。8 注解越少越好。9 9 程序的格式應(yīng)有助于讀者理解程序。10 應(yīng)盡可能多用 goto 語句。31. 測試過程需要三類輸入:(A)、(B)、(C)。A、B、C:接口選擇軟件配置硬件配置測試配置軟件環(huán)境測試工具32. 測試的費(fèi)用已超過(A)的 30%以上,高產(chǎn)的測試是指(B),單元測試是在(C)階段完成的,集成測試的計(jì)劃是在(D)階段制定的,確認(rèn)測試的計(jì)劃是在(E)決定制定的。A:軟件開發(fā)費(fèi)

37、用軟件維護(hù)費(fèi)用軟件開發(fā)和維護(hù)費(fèi)用軟件研制費(fèi)用5軟件生存期全部E:用適量的測試用例運(yùn)行程序,證明被測試程序正確無誤2用適量的測試用例運(yùn)行程序,證明被測試程序符合相應(yīng)的要求3用少量的測試用例運(yùn)行程序發(fā)現(xiàn)被測試程序盡可能多的錯(cuò)誤4用少量的測試用例運(yùn)行程序,糾正被測程盡可能多的錯(cuò)誤C D E:可行性研究和計(jì)劃需求分析概要設(shè)計(jì)詳細(xì)設(shè)計(jì)實(shí)現(xiàn)6集成測試確認(rèn)測試使用和維護(hù)33.軟件測試的目的是(A),為了提高測試的效率,應(yīng)該(B)。使用白盒測試方法時(shí),確定測試數(shù)據(jù)應(yīng)根據(jù)(C)和指定的附帶標(biāo)準(zhǔn)。與設(shè)計(jì)測試無關(guān)的文檔是(D)。軟件的集成測試工作最好由 A:評價(jià)軟件的質(zhì)量發(fā)現(xiàn)軟件的錯(cuò)誤找出軟件中的所有錯(cuò)誤E:隨機(jī)的

38、選取測試數(shù)據(jù)2取一切可能的輸入數(shù)據(jù)作為測試數(shù)據(jù)3在完成編碼后,制定軟件的測試計(jì)劃4選擇發(fā)現(xiàn)錯(cuò)誤的可能性大的數(shù)據(jù)作為測試數(shù)據(jù)34.軟件調(diào)試的目的是(A)A:找出錯(cuò)誤所在,并改正之統(tǒng)計(jì)出錯(cuò)的次數(shù)選擇題:1._ 為了提高測試的效率,應(yīng)該。A 隨機(jī)地選取測試數(shù)據(jù)B 取一切可能的輸入數(shù)據(jù)作為測試數(shù)據(jù)庫C 在完成編碼后制定軟件的測試計(jì)劃D .選擇發(fā)現(xiàn)錯(cuò)誤可能性大的數(shù)據(jù)作為測試數(shù)據(jù)2 與設(shè)計(jì)測試數(shù)據(jù)無關(guān)的文檔是_。A 需求說明書B。數(shù)據(jù)說明書 C。源程序 D。項(xiàng)目開發(fā)設(shè)計(jì)3結(jié)構(gòu)化設(shè)計(jì)是一種應(yīng)用最廣泛的系統(tǒng)設(shè)計(jì)方法,是以 _ 為基礎(chǔ),自頂向下,求精和模塊化的過程。A 數(shù)據(jù)流B。數(shù)據(jù)流圖C。數(shù)據(jù)庫D。數(shù)據(jù)結(jié)構(gòu)(

39、E)承擔(dān),以提高集成測試的結(jié)果。證明軟件是正確的C:程序的內(nèi)部邏輯D:該軟件的設(shè)計(jì)人員程序的復(fù)雜程度程序的復(fù)雜程度使用說明書源程序程序的功能項(xiàng)目開發(fā)計(jì)劃E:該軟件的設(shè)計(jì)人員設(shè)計(jì)人員該軟件開發(fā)組的負(fù)責(zé)人該軟件的編程人員不屬于該軟件開發(fā)組的軟件排除存在錯(cuò)誤的可能性對錯(cuò)誤性質(zhì)進(jìn)行分類4 概要設(shè)計(jì)的結(jié)果是提供一份 _。A 模塊說明書B??驁D C 程序 D 數(shù)據(jù)結(jié)構(gòu)5需求分析是由分析員了解用戶的要求,認(rèn)真細(xì)致地調(diào)研。分析,最終應(yīng)建立目標(biāo)系統(tǒng)的邏輯模型并寫出A 模塊說明書B。軟件規(guī)格說明書C。項(xiàng)目開發(fā)計(jì)劃D。合同文檔6注釋是提高程序可讀性的有效手段,好的程序注釋占到程序總量的_。A.1/6 B。1/5Co

40、1/47.變換型和事務(wù)型是程序結(jié)構(gòu)的標(biāo)準(zhǔn)形式。A.變換型& PAD (Problem Analysis Diagram )圖是A 系統(tǒng)描述Bo詳細(xì)設(shè)計(jì)Co測試D。編程輔助9排錯(cuò)一般是在測試發(fā)現(xiàn)錯(cuò)誤后進(jìn)行,其中找到錯(cuò)誤位置占排錯(cuò)總工作量的A .95%B . 5%C . 50%D . 20%10分層數(shù)據(jù)流圖是一種比較嚴(yán)格又易于理解的描述方式,它的頂層描述了系統(tǒng)的 A .總貌B .細(xì)節(jié) C.抽象 D .軟件的作者11 .數(shù)據(jù)流圖中,當(dāng)數(shù)據(jù)流向或流自文件時(shí), _oA 數(shù)據(jù)流要命名,文件不必命名B .數(shù)據(jù)流不必命名,有文件名就足夠了C .數(shù)據(jù)流和文件均要命名,因?yàn)榱鞒龊土鬟M(jìn)數(shù)據(jù)流是不同的D .數(shù)

41、據(jù)流和文件均不要命名,通過加工可自然反映出12 .分析員是_oA.用戶中系統(tǒng)的直接使用者B .用戶和軟件人員的中間人C .軟件的編程人員D。用戶和軟件人員的領(lǐng)導(dǎo)13 .在軟件開發(fā)中,有利于發(fā)揮集體智慧的一種做法是 _oA .設(shè)計(jì)評審B .模塊化 C .主程序員制 D。進(jìn)度控制.可用來提高程序員的工作效率。B .操作系統(tǒng)的作業(yè)管理功能D。并行運(yùn)算的大型計(jì)算機(jī)test case)主要由輸入數(shù)據(jù)和 _ 兩部分組成。B.測試計(jì)劃D .以往測試記錄分析16 .結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)程序的 _oA . 效率 B.速度 C.可讀性17 .開發(fā)軟件需高成本和產(chǎn)品的低質(zhì)量之間有著尖銳的矛盾,這種現(xiàn)象稱作_oA.

42、軟件投機(jī)B .軟件危機(jī)C .軟件工程D.軟件產(chǎn)生18 .成功的測試是指_oA.運(yùn)行測試實(shí)例后未發(fā)現(xiàn)錯(cuò)誤項(xiàng)B .發(fā)現(xiàn)程序的錯(cuò)誤C .證明程序正確D .改正程序的錯(cuò)誤19 .系統(tǒng)開發(fā)的需求分析階段的重要工作之一是 _oA.數(shù)據(jù)定義B .數(shù)據(jù)庫設(shè)計(jì)C.數(shù)據(jù)維護(hù) D .數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)20 .文檔是軟件開發(fā)人員維護(hù)人員用戶以及計(jì)算機(jī)之間的 _,軟件開發(fā)人員在各個(gè)階段以文檔作為前段工作成果的 _和后段工作的 _oA.接口 B.橋梁C.科學(xué)D.繼續(xù)E.體現(xiàn)F基礎(chǔ)21 .單獨(dú)測試一個(gè)模塊時(shí),有時(shí)需要一個(gè)_ 程序驅(qū)動被測試的模塊有時(shí)還要有一個(gè)或幾個(gè)_ 模塊模擬由被測試模塊調(diào)用的模塊。1. A.理解B.驅(qū)動C.管理

43、D.傳遞2. A.子(Sub)B.仿真(Initation)C.棧(Ssack) D.樁(Ssub)22 .在結(jié)構(gòu)化程序設(shè)計(jì)思想提出以前,在程序設(shè)計(jì)中曾強(qiáng)調(diào)程序的_ ?,F(xiàn)在,與程序的 _ 相比,人們更重視程序的_o12A。安全性 B。專用性 Co致性 D。合理性Eo可理解性Fo效率1/3從某處獲得數(shù)據(jù),再對這些數(shù)據(jù)作處理, 然后將結(jié)果送出是屬于B 事務(wù)型,種_工具。C。測試14.在開發(fā)軟件時(shí),_A .程序開發(fā)環(huán)境C.編譯程序的優(yōu)化功能15.軟件測試中設(shè)計(jì)測試實(shí)例(A .測試規(guī)則C.預(yù)期輸出結(jié)果D .大小23 .軟件測試中,白箱方法是通過分析程序的 _來設(shè)計(jì)測試實(shí)例的方法, 除了測試程序外,還適

44、用于對 _階段的軟件文檔進(jìn)行測試。黑箱方法是根據(jù)程序的_來設(shè)計(jì)測試實(shí)例的方法,除了測試程序外,它適用于_階段的軟件文檔進(jìn)行測試。1、3A .應(yīng)用范圍 B .內(nèi)部邏輯C .功能D .輸入數(shù)據(jù)2、4A .編碼 B .軟件詳細(xì)設(shè)計(jì)C.軟件概要設(shè)計(jì)D.需求分析24 . (1 )在軟件生命期周期中, _ 階段所需工作量最大,約占 70%;39 .40 .33 .34 .35 .36 .37 .模塊本身的內(nèi)聚是模塊獨(dú)立性的重要度量因素之一,在七類內(nèi)聚中,具有最強(qiáng)內(nèi)聚的一類是A.順序性內(nèi)聚B.過程性內(nèi)聚 C.邏輯性內(nèi)聚D .功能性內(nèi)聚Jackson 設(shè)計(jì)方法由英國的 M. Jackson 提出的,它是一種面

45、向 _ 的設(shè)計(jì)方法。A.對象B.數(shù)據(jù)流C.數(shù)據(jù)結(jié)構(gòu)結(jié)構(gòu)化設(shè)計(jì)思想的核心是要求程序只由順序、循環(huán)和 A .分支B.單入口 C.單出口源程序的版面文檔要求應(yīng)有變量說明、適當(dāng)注釋和 A .框圖 B.統(tǒng)一書寫格式C .修改記錄 在軟件工程中,軟件測試的目的是D.控制結(jié)構(gòu)_ 三種結(jié)構(gòu)組成。D.有規(guī)則 GOTOOD.編程日期38 .A.試驗(yàn)性運(yùn)行軟件B.發(fā)現(xiàn)軟件錯(cuò)誤C .證明軟件是正確的D .找出軟件中的全部錯(cuò)誤在軟件工程中,當(dāng)前用于保證軟件質(zhì)量的主要技術(shù)手段還是A.正確性證明B.測試C.自動程序設(shè)計(jì)在軟件工程中,高質(zhì)量的文檔標(biāo)準(zhǔn)是完整性、一致性和 A.統(tǒng)一性B .安全性C .無二義性在軟件研究過程中,C

46、ASE 是_ 。OD.符號證明OD.組合性(2) 結(jié)構(gòu)化分析方法產(chǎn)生的系統(tǒng)說明書由一套_,一本數(shù)據(jù)字典和一組小說明及補(bǔ)充材料組成;(3) 軟件的 _一般由兩次故障平均間隔時(shí)間和故障平均恢復(fù)時(shí)間來度量;(4) 采用_且編寫程序,可提高程序的可移植性;(5) 僅依據(jù)規(guī)格說明書描述的程序功能來設(shè)計(jì)測試實(shí)例的方法稱為_。1 . A .分析 B .設(shè)計(jì) C 編碼 D 測試 E維護(hù)2.A .因果 B。分層數(shù)據(jù)流圖C PAD 圖 D 程序流程圖3.A .可維護(hù)性B 可靠性 C 效率D 互理解性4.A .機(jī)器語言B 宏指令 C 匯編語言 D咼級語言5.A.白箱法B 表態(tài)分析法C黑箱法D 人工分析法25. _

47、是以發(fā)現(xiàn)錯(cuò)誤為目的的,而 _ 以定位,分析和改正錯(cuò)誤為目的的。A .測試B .排錯(cuò)(調(diào)試)C.維護(hù) D .開發(fā)26 .請按順序?qū)懗鲕浖诘膸讉€(gè)階段 _ , _ , _ , _, _, _。A .維護(hù) B .測試 C.詳細(xì)設(shè)計(jì)D .概要設(shè)計(jì) E.編碼 F.需求分析27.軟件發(fā)展過程中,第一階段(50 年代)稱為“程序設(shè)計(jì)原始時(shí)期”,這時(shí)既沒有 1也沒有_2_,程序員只能用匯編語言編寫程序。第二階段(50 年代末一一 60 年代末)稱為“基本軟件期”,出現(xiàn)了 1_ 并漸普及,隨之2_ 編譯技術(shù)也有較大發(fā)展。第三階段(60 年代一一 70 年代中)稱為“程序設(shè)計(jì)方法的時(shí)代”。與硬件費(fèi)用下降相反,

48、軟件開發(fā)費(fèi)急劇上升。人們提出了3_ 和 4_等到程序設(shè)計(jì)方法,設(shè)法降低軟件開發(fā)的費(fèi)用。第四代階段(70 年代中至今)稱為“軟件工程時(shí)期”,軟件開發(fā)技術(shù)不再僅僅是程序設(shè)計(jì)技術(shù),而是同軟件開發(fā)的各階段(5_, 6_ ,編碼,測試,7_ )及整體和管理有關(guān)。A .匯編語言B .操作系統(tǒng)C .虛擬存儲器概念D .高級語言E.結(jié)構(gòu)化程序設(shè)計(jì)數(shù)據(jù)庫概念F.固件G .模塊化程序設(shè)計(jì)A.使用和維護(hù)B .兼容性的確認(rèn)C.完整性的確定D .設(shè)計(jì) E 需求定義 F 圖像處理28._ 軟件危機(jī)出現(xiàn)于 _,為了解決軟件危機(jī),人們提出了用的原理來設(shè)計(jì)軟件,這是軟件工程誕生的基礎(chǔ)。A . 50 年代末 B . 60 年代初

49、 C. 60年代末D . 70 年代初A .運(yùn)籌學(xué) B .工程學(xué)C .軟件學(xué) D .軟件學(xué)E.數(shù)字29.瀑布模型把軟件生存周期劃分為軟件定義、軟件開發(fā)和 _ 三個(gè)階段,而每一階段又可細(xì)分為若干個(gè)更小的階段。A .詳細(xì)設(shè)計(jì)B .可行性分析C.運(yùn)行及維護(hù)D .測試與排錯(cuò)30._軟件的設(shè)計(jì)又稱為總體設(shè)計(jì),其主要任務(wù)是建立軟件系統(tǒng)的總體結(jié)構(gòu)。A .概要B .抽象C .邏輯 D .規(guī)劃31 .結(jié)構(gòu)化分析 SA 是軟件開發(fā)需求分析階段所使用的方法, _ 不是 SA 所使用的工具。A . DFD 圖B . PAD圖C .結(jié)構(gòu)化英語D .判定表32 .結(jié)構(gòu)化分析方法以數(shù)據(jù)流圖、_和加工說明等描述工具,即用直觀

50、的圖和簡潔的語言來描述軟件系統(tǒng)模型。A . DFD 圖B . PAD 圖C . IPO 圖D.數(shù)據(jù)字典A 指計(jì)算機(jī)輔助系統(tǒng)工程B . CAD 和 CAM 技術(shù)的發(fā)展動力C .正在實(shí)驗(yàn)室用的工具D .指計(jì)算機(jī)輔助軟件工程41 軟件(結(jié)構(gòu))設(shè)計(jì)階段(概要設(shè)計(jì))的文檔是 _。A.系統(tǒng)模型說明書B .程序流程圖C .系統(tǒng)功能說明書D .模塊結(jié)構(gòu)圖和說明書42._ 軟件的維護(hù)是指。A .對軟件的改進(jìn)、適應(yīng)和完善B .維護(hù)正常運(yùn)行C .配置新軟件D .軟件開發(fā)期的一個(gè)階段43._逆向工程在軟件工程中主要用于階段。A .分析B .設(shè)計(jì) C .編碼D .維護(hù)44.軟件工程中, 只根據(jù)程序的功能說明而不關(guān)心程序

51、內(nèi)部的邏輯結(jié)構(gòu)的測試方法,稱為_測試。A .白盒法B .灰盒法C .黑盒法D .綜合法45. 模塊內(nèi)聚聯(lián)系最大的是 _。A .順序內(nèi)聚B .功能內(nèi)聚C .通信內(nèi)聚D .時(shí)間內(nèi)聚46.在軟件的設(shè)計(jì)階段應(yīng)提供的文檔是_。A.軟件需求規(guī)格說明書B.概要設(shè)計(jì)規(guī)格說明書和詳細(xì)設(shè)計(jì)規(guī)格說明書C.數(shù)據(jù)字典及流程圖D.源程序以及源程序的說明書47 .程序流程圖、N-S 圖和 PAD 圖是_ 使用的算法表達(dá)工具。A.設(shè)計(jì)階段的概要設(shè)計(jì)B.設(shè)計(jì)階段的詳細(xì)設(shè)計(jì)C .編碼階段D .測試階段48 .軟件的可維護(hù)性是指 _ 。A.軟件的可理解程度,程序修改的難易程度B .軟件文檔修改的難易程度C.程序修改的難易程度D .

52、使用維護(hù)工具進(jìn)行維護(hù)的難易程度49 .月收入=800 元者免稅,現(xiàn)用輸入數(shù) 800 元和 801 元測試程序,則采用的是 _ 方法。A .邊緣值分析B .條件覆蓋C .錯(cuò)誤推測D.等價(jià)類50 .采用黑盒法測試程序是根據(jù) _。A.程序的邏輯 B .程序的功能說明C.程序中的語句D .程序中的數(shù)據(jù)51.數(shù)據(jù)流圖的小說明中描述的最基本部分是 _。A.激發(fā)條件 B .加工邏輯C .優(yōu)先級D.執(zhí)行頻率52 .系統(tǒng)的健壯性是指 _。A.系統(tǒng)能夠正確地完成預(yù)期的功能B .系統(tǒng)能有效地使用計(jì)算機(jī)資源C .在有干擾或輸入數(shù)據(jù)不合理等意外情況下,系統(tǒng)仍能進(jìn)行適當(dāng)?shù)毓ぷ鱀 .在任何情況下,系統(tǒng)均具有錯(cuò)誤自修復(fù)功能5

53、3 .軟件工程學(xué)是應(yīng)用科學(xué)理論和工程上的技術(shù)指導(dǎo)軟件開發(fā)的學(xué)科,其目的是_。A.引入新技術(shù)提高空間利用率B .用較少的投資獲得高質(zhì)量的軟件C .縮短研制周期擴(kuò)大軟件功能D .硬軟件結(jié)合使系統(tǒng)面向應(yīng)用54 .不適于作為數(shù)據(jù)流圖處理(加工)框名稱的是 _。A.人工校核工資數(shù)據(jù) B .工資支票數(shù)據(jù)C .打印工資支票D .計(jì)算職工工資55 .如果模塊中所有成分引用共同的數(shù)據(jù),該模塊內(nèi)的聯(lián)系類型是_。A.順序內(nèi)聚 B .功能內(nèi)聚C .通信內(nèi)聚D.過程內(nèi)聚56 .某模塊的功能是打印錄取通知書或不錄取通知書,調(diào)用模塊可通過向此模塊傳遞布爾標(biāo)志信息決定本次調(diào)用哪種通知書的打印,這種模塊之間的耦合稱為 _。A

54、.數(shù)據(jù)耦合 B .混合耦合C .公共耦合D .控制耦合57 .適應(yīng)性維護(hù)的含義是所進(jìn)行的維護(hù)。A.為使軟件在改變了的環(huán)境下仍能使用B 為改正在開發(fā)時(shí)期產(chǎn)生、測試階段沒有發(fā)現(xiàn)、運(yùn)行時(shí)出現(xiàn)的錯(cuò)誤C為改善系統(tǒng)性能、擴(kuò)充功能D為軟件的正常執(zhí)行58 采用白盒法測試模塊(程序),應(yīng)根據(jù)_。A內(nèi)部邏輯結(jié)構(gòu)B.算法復(fù)雜度C 外部功能特性D.支撐環(huán)境59 下列關(guān)于軟件工程方面的敘述中,正確的說法是 _ 。A 軟件的質(zhì)量標(biāo)準(zhǔn)中,某些因素是不可兼得的B 數(shù)據(jù)字典包括數(shù)據(jù)流、文件、模塊調(diào)用關(guān)系等三種條目C 測試過程即調(diào)試D 白盒法測試用例中,滿足條件覆蓋的一定滿足判定覆蓋60 程序編寫(實(shí)現(xiàn))階段完成的文檔有 _。A

55、詳細(xì)設(shè)計(jì)說明書B 詳細(xì)設(shè)計(jì)說明書、用戶手冊C 模塊開發(fā)宗卷、操作手冊D 用戶手冊、操作手冊61 軟件總體結(jié)構(gòu)的內(nèi)容應(yīng)在 _文檔中闡明。A 軟件需求規(guī)格說明書B 概要設(shè)計(jì)規(guī)格說明書C 詳細(xì)設(shè)計(jì)規(guī)格說明書D 數(shù)據(jù)要求規(guī)格說明書62 使用結(jié)構(gòu)化分析方法時(shí),采用的基本手段是 _ 。A 分解和抽象B .分解和綜合C .歸納與推導(dǎo)D .試探與回溯63 決定軟件可維護(hù)性的主要因素可概括為 _ 。A 可測試性、可理解性、可修改性B .一致性、結(jié)構(gòu)性、自我描述性C 可計(jì)測性、可訪問性、可通訊性D 可擴(kuò)充性、簡潔性、結(jié)構(gòu)性64 要減少兩個(gè)模塊之間的耦合,則必須 _。A 兩個(gè)模塊間的調(diào)用次數(shù)要少B 模塊間傳遞的參數(shù)

56、要少C 模塊間傳遞的參數(shù)要少且布傳遞開關(guān)型參數(shù)D 模塊間傳遞的參數(shù)要少且不傳遞開關(guān)型參數(shù)以及兩模塊不引用同樣的全局變量65 軟件開發(fā)中系統(tǒng)分析階段產(chǎn)生的文檔是 _ 。A 數(shù)據(jù)流圖B 系統(tǒng)說明書C 模塊結(jié)構(gòu)圖和模塊說明書D 數(shù)據(jù)字典66 初始化模塊和結(jié)束模塊從塊內(nèi)聯(lián)系看,被稱為_模塊。A 過程內(nèi)聚B 功能內(nèi)聚C時(shí)間內(nèi)聚D 邏輯內(nèi)聚67 結(jié)構(gòu)化設(shè)計(jì)方法采用變換分析和事務(wù)分析技術(shù)實(shí)現(xiàn)_。A 從數(shù)據(jù)結(jié)構(gòu)導(dǎo)出程序結(jié)構(gòu)B 從模塊結(jié)構(gòu)導(dǎo)出程序結(jié)構(gòu)C 從模塊結(jié)構(gòu)導(dǎo)出數(shù)據(jù)結(jié)構(gòu)D 從數(shù)據(jù)流圖導(dǎo)出初始化結(jié)構(gòu)圖68 在軟件測試中,確認(rèn)(驗(yàn)收)測試主要用于發(fā)現(xiàn) _ 階段的錯(cuò)誤。A .軟件計(jì)劃B 需求分析C .軟件設(shè)計(jì)D

57、 .編碼69 結(jié)構(gòu)化系統(tǒng)分析主要是通過 _進(jìn)行分析的。A算法分解B控制結(jié)構(gòu)分解 C數(shù)據(jù)結(jié)構(gòu)分解D.處理功能分解70 .結(jié)構(gòu)化設(shè)計(jì)方法是面向 _的設(shè)計(jì)方法。A 過程B 對象C .數(shù)據(jù)流D 數(shù)據(jù)結(jié)構(gòu)71._ 在維護(hù)請求且進(jìn)行的維護(hù)過程中,應(yīng)先,然后對維護(hù)要求進(jìn)行評估并分別處理。A確定維護(hù)類型B、安排維護(hù)先次序C 組織人員維護(hù)D 分析軟件錯(cuò)誤的嚴(yán)重程序72._ 劃分軟件生存周期的階段時(shí)所應(yīng)遵循的基本原則是_ 。A 各階段的任務(wù)盡可能相關(guān)性B 、各階段的任務(wù)盡可能相對獨(dú)立C 各階段的任務(wù)在時(shí)間上連續(xù)D 、各階段的任務(wù)在時(shí)間上相對獨(dú)立73.OOA 莫型規(guī)定了一組對象如何協(xié)同才能完成軟件系統(tǒng)所指定的工作。

58、這種協(xié)同在模型中是以表明對象通信方式的一組_ 連接來表示的。A消息B、記錄C、數(shù)據(jù) D 、屬性74._用黑盒法設(shè)計(jì)測試用例時(shí)采用的方法包括。A 判定覆蓋法B、條件覆蓋法C 、因果圖法D、路徑分析法75._ 軟件維護(hù)過程中,將會引起維護(hù)副作用。A修改代碼或數(shù)據(jù)后未作測試B、進(jìn)行改正性維護(hù)時(shí)錯(cuò)誤未全部改正C 進(jìn)行完善性、適應(yīng)性或預(yù)防性維護(hù)時(shí)考慮因素不全面D 維護(hù)過程中發(fā)生系統(tǒng)運(yùn)行錯(cuò)誤76._ Jacks on 程序設(shè)計(jì)方法是一種面向的設(shè)計(jì)方法。A數(shù)據(jù)結(jié)構(gòu)B 、數(shù)據(jù)流圖 C 、IPO 圖 D 、系統(tǒng)流程圖77._ 下面所列的性質(zhì)中,不屬于面向?qū)ο蟪绦蛟O(shè)計(jì)的特性。A 繼承性 B 、重用性C 、封裝性D

59、 、可視化78般來說,在管理軟件中,軟件生存周期各個(gè)階段的工作量以_ 所占的比例最大。A、需求分析與設(shè)計(jì)階段B 、編碼實(shí)現(xiàn)階段 C 、測試階段 D 、維護(hù)階段79.系統(tǒng)開發(fā)人員使用系統(tǒng)流程圖或其他工具描述系統(tǒng),估計(jì)每種方案的成本和效益的工作是在 的。A 需求分析B 、總體設(shè)計(jì)C 、詳細(xì)設(shè)計(jì)D 、編碼階段80.結(jié)構(gòu)化設(shè)計(jì)方法采用變換分析和事務(wù)分析技術(shù)實(shí)現(xiàn)B 、從數(shù)據(jù)流圖導(dǎo)出初始結(jié)構(gòu)圖D 、從模塊結(jié)構(gòu)導(dǎo)程序結(jié)構(gòu)81. 設(shè)一模塊內(nèi)部的處理動作為:成分A順序內(nèi)聚B 、功能內(nèi)聚82._某個(gè)模塊的作用域是指 _ 。C、過程內(nèi)聚D 、通信內(nèi)聚B 、調(diào)用該模塊的所有模塊D 、受該模塊內(nèi)的判定所影響的所有模塊8

60、3._在軟件測試中,確認(rèn)(驗(yàn)收)測試主要用于發(fā)現(xiàn) _階段的錯(cuò)誤。A、軟件計(jì)劃C、需求分析B 、軟件設(shè)計(jì)D、編碼84. 如果按用戶要求增加新功能或修改已有的功能而進(jìn)行的維護(hù)工作,稱為_A、完善性維護(hù)B 、適應(yīng)性維護(hù) C、預(yù)防性維護(hù)D、改正性維護(hù)85._軟件維護(hù)階段是軟件生存周期中持續(xù)時(shí)間最長的階段,它從 _時(shí)算起。A 、產(chǎn)生可執(zhí)行程序B組裝測試通過C、軟件交付使用D、用戶提出第一份維護(hù)報(bào)告86._軟件質(zhì)量因素中,是指軟件產(chǎn)品能準(zhǔn)確執(zhí)行需求規(guī)格說明中所規(guī)定的任務(wù)。A、健壯性B 、正確性C、可擴(kuò)充性D 、精確性87._下列是面向?qū)ο笤O(shè)計(jì)方法中有關(guān)對象的敘述,其中 _是正確的。A、對象在內(nèi)存中沒有它的存儲區(qū)B 、對象的屬性

溫馨提示

  • 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

提交評論