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

下載本文檔

版權(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ù)的錯誤觀點(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、是軟件生命周期?一個軟件從定義,開發(fā),使用和維護(hù),直到最終被廢棄,要經(jīng)歷一個漫長的時(shí)期,通常把軟件經(jīng)歷的這個漫長時(shí)期稱為生命周期7、 軟件生命周期有哪幾個階段和步驟?三個階段:定義、開發(fā)、維護(hù)八個步驟:問題定義、可行性研究、需求分析;總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼與單元測試、綜合測試;運(yùn)行維護(hù)。8、 計(jì)算機(jī)軟件的開發(fā)經(jīng)過哪三個大階段?三個階段:定義、開發(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ì)分哪兩個階段?總體設(shè)計(jì)的兩個階段分別是什么?分為總體設(shè)計(jì)和詳細(xì)設(shè)計(jì)兩個階段。11、 總體設(shè)計(jì)包括系統(tǒng)設(shè)計(jì)(劃分出組成系統(tǒng)的程序、文件、數(shù)據(jù)庫、人工過程和文檔等物理元素)和結(jié)構(gòu)設(shè)計(jì)(確定系統(tǒng)中每個程序是由哪些模塊組成的,以及這些模塊相互間的關(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.修正系

7、統(tǒng)開發(fā)計(jì)劃14、 瀑布模型與原型模型分別適用于開發(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.

8、找出外部實(shí)體的輸出數(shù)據(jù)流與輸入數(shù)據(jù)流。畫出頂層數(shù)據(jù)流圖。 3.從頂層加工出發(fā),逐步細(xì)化,畫出所需子圖。 4.分析系統(tǒng)的主要處理功能,把每一個處理功能作為一個加工,并且確定它們之間的數(shù)據(jù)流 入、流出關(guān)系,畫出第一層數(shù)據(jù)流圖。 5. 對流圖中的每個加工進(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ù)字典 e-r 圖中的數(shù)據(jù)信息(數(shù)據(jù)流、數(shù)據(jù)存儲、外部實(shí)體) 、控制信息(事件)等,不包括處理 ) 。 如何寫?數(shù)據(jù)元素的組合方式

9、順序:即以確定的次序連接兩個或多個分量。例:a+b 選擇:即從兩個或多個可能的元素中選取一個。例:a|b 重復(fù):即把指定的分量重復(fù)零次或多次。例:1a5 可選:即一個分量是可有可無的(重復(fù)零次或一次)17、 軟件設(shè)計(jì)的原則有哪些?模塊化,抽象化與逐步求精,信息隱藏與局部化,模塊獨(dú)立18、 耦合與內(nèi)聚分別有哪些?如何定義?如何區(qū)分?耦合衡量不同模塊彼此間互相依賴(連接)的緊密程度 內(nèi)聚衡量一個模塊內(nèi)部各個元素彼此結(jié)合的緊密程度 耦合的種類: 數(shù)據(jù)耦合:如果兩個模塊間的通訊信息是若干參數(shù),其中每一個參數(shù)都是一個數(shù)據(jù)元素,稱 數(shù)據(jù)耦合 這種耦合為數(shù)據(jù)耦合。這是模塊之間影響最小的耦合關(guān)系。 標(biāo)記耦合:

10、當(dāng)把整個數(shù)據(jù)結(jié)構(gòu)作為參數(shù)傳遞而被調(diào)用模塊只需要使用其中一部分?jǐn)?shù)據(jù)元素 標(biāo)記耦合時(shí),這種情況稱為標(biāo)記耦合。 控制耦合: 那么a和b之間 控制耦合如果模塊a向模塊b所傳遞的信息控制了模塊b的內(nèi)部邏輯,的耦合稱為控制耦合。 公共耦合:如果兩個或多個模塊都和同一個公共數(shù)據(jù)域有關(guān),則稱為公共耦合。 公共耦合 公共耦合是一種不良的耦合關(guān)系,它給模塊的維護(hù)和修改帶來困難。 如果兩個模塊共享的數(shù)據(jù)很多,都通過參數(shù)傳遞很不方便時(shí),可以利用公共耦合。 內(nèi)容耦合:如果一個模塊和另一個模塊的內(nèi)部屬性(即運(yùn)行程序和內(nèi)部數(shù)據(jù))有關(guān),則稱為 內(nèi)容耦合。 功能內(nèi)聚:如果一個模塊內(nèi)部的各組成部分的處理動作全都為執(zhí)行同一個功能而

11、存在, 并且 功能內(nèi)聚: 只執(zhí)行一個功能,則稱為功能內(nèi)聚。判斷一個模塊是不是功能內(nèi)聚,只要看這個模塊是“做什么” 是完成一個具體的任務(wù),還是完成多任務(wù)。 順序內(nèi)聚:如果一個模塊內(nèi)部的各個組成部分執(zhí)行的幾個處理動作有這樣的特征: 前一個處 順序內(nèi)聚:理動作所產(chǎn)生的輸出數(shù)據(jù)是后一個處理動作的輸入數(shù)據(jù),稱為順序內(nèi)聚。 順序內(nèi)聚維護(hù)起來不如功能內(nèi)聚方便, 要修改模塊中的一個功能, 會影響到同一個模塊中的 其他功能。 通訊內(nèi)聚: 如果一個模塊內(nèi)各組成部分的處理動作都使用相同的輸入數(shù)據(jù)或產(chǎn)生相同的輸 通訊內(nèi)聚 出數(shù)據(jù),稱為通訊內(nèi)聚。 過程內(nèi)聚:如果一個模塊內(nèi)部的各個組成部分的處理動作各不相同,彼此也沒有聯(lián)

12、系,但他 們都受同一個控制流支配,決定他們的執(zhí)行次序,稱為過程內(nèi)聚。暫時(shí)內(nèi)聚(時(shí)間內(nèi)聚):如果一個模塊內(nèi)的各組成部分的處理動作和時(shí)間有關(guān),則稱為暫時(shí) : 內(nèi)聚。暫時(shí)內(nèi)聚模塊的處理動作必須在特定的時(shí)間內(nèi)完成。-指在一個特定的時(shí)間范圍內(nèi) 完成,但完成次序不重要。例如:程序設(shè)計(jì)中的模塊的初始化。 邏輯內(nèi)聚:如果一個模塊內(nèi)部的各組成部分的處理動作在邏輯上相似, 但功能都彼此不同或 邏輯內(nèi)聚: 無關(guān),則稱為邏輯內(nèi)聚。一個邏輯內(nèi)聚模塊往往包括若干個邏輯相似的動作,使用時(shí)可以選 用一個或幾個功能。例如:把編輯各種輸入數(shù)據(jù)的功能放在一個模塊中。 機(jī)械內(nèi)聚(偶然內(nèi)聚): 如果一個模塊的內(nèi)部各組成部分的處理動作彼

13、此沒有任何聯(lián)系,則 : 稱為機(jī)械內(nèi)聚19、 詳細(xì)設(shè)計(jì)階段用到了哪些圖形工具?程序流程圖(pfd) 盒圖(n-s 圖) 問題分析圖(pad) 判定表/判定樹 (其他非圖形工具有過程設(shè)計(jì)語言(pdl) 20、 軟件工程的啟發(fā)式規(guī)則有哪些?a.當(dāng)模塊過大時(shí)就應(yīng)該分解它。 一般按功能分解到成為一個小的功能單一的模塊為止。 一般 一個模塊內(nèi)包含的語句在 30-50 條左右較好(指高級語言) 。分解后不應(yīng)該降低模塊的獨(dú)立 性。b. 深度、寬度、扇出和扇入都應(yīng)適當(dāng)。好的設(shè)計(jì)結(jié)構(gòu)通常是頂層扇出比較高,中層扇出比 較少,底層扇入到公共的實(shí)用模塊中去(底層模塊有高扇入) 。模塊的獨(dú)立性是貫穿始終的 標(biāo)準(zhǔn),不能為了

14、追求其它目標(biāo)而違背獨(dú)立性標(biāo)準(zhǔn)。 c.對于任何一個內(nèi)部存在判斷調(diào)用的模塊, 它的判斷作用的范圍應(yīng)該是其控制范圍的一個子 集。 存在判斷調(diào)用的模塊, 所在層次不要與那些屬于判斷作用范圍的模塊所在的層次相隔太 遠(yuǎn)-越近越好。 d. 力爭降低模塊接口的復(fù)雜程度。模塊接口復(fù)雜是軟件發(fā)生錯誤的一個主要原因。應(yīng)該仔 細(xì)設(shè)計(jì)模塊接口,使得信息傳遞簡單并且和模塊的功能一致。接口復(fù)雜或不一致(即看起來 傳遞的數(shù)據(jù)之間沒有聯(lián)系) ,是緊耦合或低內(nèi)聚的征兆,應(yīng)該重新分析這個模塊的獨(dú)立性。 e.設(shè)計(jì)單入口單出口的模塊: 防止出現(xiàn)內(nèi)容耦合-多入口 (多種處理功能) 意味著內(nèi)容耦合。 f.模塊功能應(yīng)該可以預(yù)測-模塊是黑合子

15、,輸入相同則輸出相同,其內(nèi)部數(shù)據(jù)結(jié)構(gòu)和接口 受到限制。模塊的功能應(yīng)該能夠預(yù)測,但也要防止模塊功能過分局限。過分局限將導(dǎo)致模塊 靈活性太差,會出現(xiàn)使用現(xiàn)場的修改。21、 模塊的作用域與控制域分別指什么?模塊的控制域:本身及其所有下級模塊(包括直接和間接下級模塊) 。 模塊的作用域:受該模塊內(nèi)一個判定影響的所有模塊的集合22、 模塊的扇入、扇出、深度、寬度分別是什么意思?深度表示軟件結(jié)構(gòu)中控制的層數(shù)-粗略的標(biāo)志一個系統(tǒng)的大小和復(fù)雜程度。 寬度是軟件結(jié)構(gòu)同一層次上的模塊總數(shù)的最大值-寬度越大系統(tǒng)越復(fù)雜。 模塊的扇出指一個模塊擁有的直屬下級模塊的個數(shù),一般扇出數(shù)控制在7以內(nèi),平均為3模塊的扇出或4。

16、模塊的扇入是指一個模塊的直接上級模塊的個數(shù)。23、 軟件測試的目的是什么? 軟件測試是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程; 測試是程序的執(zhí)行過程,目的在于發(fā)現(xiàn)錯誤; 軟件測試中需要數(shù)據(jù),即為測試而精心設(shè)計(jì)的測試用例,利用測試用例去運(yùn)行程序,幫助發(fā)現(xiàn)程序錯誤;一個好的測試用例在于能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯誤;一個成功的測試是發(fā)現(xiàn)了至今未發(fā)現(xiàn)的錯誤的測試。軟件測試絕對不是要證明程序的正確性, 也證明不了程序的正確性.24、 單元測試有那些內(nèi)容?將每一個模塊作為一個單獨(dú)的測試單元,保證每個模塊作為一個單元能正確運(yùn)行。單元測試主要針對模塊的以下五個基本特征進(jìn)行測試:1.模塊接口2.局部數(shù)據(jù)結(jié)構(gòu)3.重要的執(zhí)行路徑4

17、.錯誤處理5.邊界條件25、 什么是集成測試?非漸增式和漸增式有什么區(qū)別?漸增式如何組裝模塊?將模塊組合起來成為一個完整的系統(tǒng)對其進(jìn)行測試叫做集成測試。不論是子系統(tǒng)測試還是系統(tǒng)測試,都兼有檢測和組裝兩重含義,通常稱為集成測試。非漸增式是將模塊先進(jìn)行單元測試然后組裝在一起進(jìn)行測試。漸增式是逐個將未測試的模塊組裝到已經(jīng)測試過的模塊上去進(jìn)行集成測試,每加入一個就測試一次。非漸增式需要樁模塊和驅(qū)動模塊、非漸增式開始可以并行測試、漸增式可以及時(shí)的發(fā)現(xiàn)接口錯誤,非漸增式很難發(fā)現(xiàn)接口發(fā)現(xiàn)錯誤、漸增式開始不能并行測試、漸增式測試比較徹底。 漸增式組裝模塊有自頂向下和自底向上兩種組裝方式。26、 什么是確認(rèn)測試

18、?該階段有那些工作? 按照需求規(guī)格說明書中的確定指標(biāo)對系統(tǒng)進(jìn)行功能與性能的測試。該階段進(jìn)行明確測試(對照需求規(guī)格說明書用黑盒法進(jìn)行測試),軟件配置測試(文檔的完整性,發(fā)現(xiàn)遺漏錯誤及時(shí)補(bǔ)充和修改)27、 什么叫流圖?如何畫出流圖?流圖的環(huán)形復(fù)雜度如何計(jì)算? 流圖是抽象化的程序流圖,突出表現(xiàn)控制流. 符號為流圖的一個結(jié)點(diǎn),表示一個或多個無分支語句。箭頭為邊,表示控制流的方向。在 分支結(jié)構(gòu)中,分支的匯聚處應(yīng)有一個匯聚結(jié)點(diǎn). 每一條邊必須終止于一個結(jié)點(diǎn)。如果判斷中 的條件表達(dá)式是由一個或多個邏輯運(yùn)算符 (or, and, nand, nor) 連接的復(fù)合條件 表達(dá)式,則需要改為一系列只有單個條件的嵌套

19、的判斷。 根據(jù)程序內(nèi)單條件分支數(shù)或循環(huán)個數(shù)來度量環(huán)形復(fù)雜度即程序的復(fù)雜度. 環(huán)形復(fù)雜度即程序的復(fù)雜度 根據(jù)程序內(nèi)單條件分支數(shù)或循環(huán)個數(shù)來度量環(huán)形復(fù)雜度即程序的復(fù)雜度 v(g)=流圖區(qū)域數(shù) v(g)=邊數(shù)-結(jié)點(diǎn)數(shù)+2 v(g)=單條件判定數(shù)+1 28、 白盒測試與黑盒測試分別有哪些測試方法?如何對具體問題測試?白盒測試對程序模塊的所有的執(zhí)行路徑至少測試一次;對所有的邏輯判定,取“真”與取“假” 白盒測試的兩種情況都至少測試一次;白盒測試也叫邏輯覆蓋法包括:語句覆蓋,判定覆蓋,條件覆蓋 黑盒測試發(fā)現(xiàn)程序中的錯誤,必須在所有可能的輸入條件和輸出條件中確定測試數(shù)據(jù), 來檢查程序是否都能產(chǎn)生正確的輸出。

20、黑盒測試有等價(jià)類法和邊界值分析法29、 軟件測試的步驟有哪些?每個測試階段的測試依據(jù)是什么?分別有誰來測試?步驟 測試內(nèi)容 時(shí)間 單元測試:將每一個模塊作為一個單獨(dú)的測試單元,保證每個模塊作為一個單元能正確運(yùn)行。 (編碼測試階段) 子系測試系統(tǒng):將經(jīng)過單元測試的模塊放在一起形成一個子系統(tǒng)來測試,以測試模塊間的接口正確性作為主要任務(wù)。 (集中測試階段) 系統(tǒng)測試:將經(jīng)過測試的子系統(tǒng)裝配成一個完整的系統(tǒng)來測試,檢驗(yàn)系統(tǒng)是否確實(shí)能實(shí)現(xiàn)需求規(guī)格說明書中的功能,以及系統(tǒng)的動態(tài)特征是否符合預(yù)定要求。 階段 系統(tǒng)測試是指整個計(jì)算機(jī)系統(tǒng)(包括軟硬件)的測試,可與系統(tǒng)的安裝和驗(yàn)收相結(jié)合進(jìn)行。(集中測試階段)驗(yàn)收

21、測試:在用戶的參與下,把軟件系統(tǒng)作為單一的實(shí)體進(jìn)行測試,使軟件系統(tǒng)能滿足用戶的需要。測試內(nèi)容與系統(tǒng)測試基本相同。 (驗(yàn)收階段) 平行測試: 新舊兩個系統(tǒng)同時(shí)運(yùn)行進(jìn)行比較,避免風(fēng)險(xiǎn)的同時(shí)給用戶對新系統(tǒng)一段熟悉的時(shí)間(運(yùn)行階段)30、 什么叫維護(hù)?維護(hù)的類型有哪些?軟件維護(hù)就是在軟件已經(jīng)交付使用之后,為了改正錯誤或滿足新的需要而修改軟件的過程。 軟件維護(hù) 類型有: 1、改正性維護(hù):對程序使用期間發(fā)現(xiàn)的程序錯誤進(jìn)行診斷和改正的過程;占維護(hù)工作量 17-21%。 2、適應(yīng)性維護(hù):配合變化了的環(huán)境進(jìn)行修改軟件的活動;占維護(hù)工作量 18-25%。 3、完善性維護(hù):滿足用戶在使用過程中提出增加新的功能或修改

22、已有功能的建議而進(jìn)行的 改進(jìn)工作;占維護(hù)工作量 50-66%。 4、預(yù)防性維護(hù):為了改善未來的可維護(hù)性或可靠性而修改軟件的工作;占維護(hù)工作量 4% 左右31、 uml中活動圖、狀態(tài)圖、順序圖都分別描述什么?活動圖強(qiáng)調(diào)的是從活動到活動的控制流, 是一種表述過程基理、 業(yè)務(wù)過程以及工作流的技術(shù)。 活動圖 它可以用來對業(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 中的

23、名詞,它是模型的靜態(tài)部分,描述概念或物理元素。 行為事物:uml 中的動詞,它是模型中的動態(tài)部分,是一種跨越時(shí)間、空間的行為。分組事物:uml 中的容器,用來組織模型,使模型更加的結(jié)構(gòu)化。 注釋事務(wù):uml 中的解釋部分,和代碼中的注釋語句一樣,是用來描述模型的33、 面向?qū)ο蟮幕靖拍铑悺ο?、封裝、繼承等定義是什么?類(class)是具有相同屬性和服務(wù)的一組對象的集合,它為屬于該類的全部對象提供了統(tǒng)一的抽象描述,其內(nèi)部包括屬性和服務(wù)兩個主要部分。對象(object)是系統(tǒng)中描述客觀事物的一個實(shí)體,它是構(gòu)成系統(tǒng)的一個基本單位,由一組 屬性和對這組屬性進(jìn)行操作的一組服務(wù)組成,是類的一個實(shí)例 封

24、裝(encapsulation)是把對象的屬性和服務(wù)結(jié)合成一個獨(dú)立的系統(tǒng)單位,并盡可能隱藏對象的內(nèi)部細(xì)節(jié)。繼承性:如果一個類 a 繼承自另一個類 b,就把這個 a 稱為"b 的子類",而把 b 稱為"a 的 父類"。繼承使得相似對象可以共享程序代碼和數(shù)據(jù)結(jié)構(gòu),大大減少程序中的冗余信息;繼 承可以把已有的一般性的類具體化來提高軟件的可重用性。 多態(tài)性(polymorphism)是指在父類中定義的屬性或服務(wù)被子類繼承后,可以具有不同的數(shù)據(jù)類型或表現(xiàn)出不同的行為34、 用例圖的作用是什么?用例圖是外部參與者所能觀察到的系統(tǒng)功能的模型圖。 由一組用例、 參與者及

25、它們之間的關(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)系-依賴關(guān)系->泛化關(guān)系37、 用例、活動、狀態(tài)、節(jié)點(diǎn)等圖形符號分別是什么?填空參與者、用例間的關(guān)系類型關(guān)系類型說明表示符號關(guān)聯(lián)參與者和用例間的關(guān)系泛化參與者之間或用例之間的關(guān)系包含用例之間的關(guān)系<<include

26、>>擴(kuò)展用例之間的關(guān)系<<extend>> 面向?qū)ο?對象+類+繼承+通信1、畫出uml中依賴關(guān)系的圖形符號 ->2、在uml 2.0中定義了四種交互圖,其中強(qiáng)調(diào)對象調(diào)用順序的是程序圖。3、uml中實(shí)現(xiàn)關(guān)系的圖形符號是 。4、 軟件生命周期可劃分為8個階段,它們是什么?問題定義、可行性研究、需求分析;總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼與單元測試、綜合測試;運(yùn)行維護(hù)。5、軟件測試的目的是發(fā)現(xiàn)錯誤,通常把測試方法按功能劃分為 墨盒測試和白盒測試兩大類。因?yàn)橥ǔ2豢赡茏龅礁F盡測試,所以精心設(shè)計(jì) 測試方案 是保證達(dá)到測試目的所必須的。6、計(jì)算機(jī)軟件的開發(fā)經(jīng)過三個階段分別

27、為:定義、設(shè)計(jì)和運(yùn)行。7、軟件維護(hù)的活動包括四種:改正性維護(hù) 、適應(yīng)性維護(hù)、完善性維護(hù)和預(yù)防性維護(hù)。 8、在軟件測試過程的4個步驟中,測試依據(jù)是需求規(guī)格說明的是 驗(yàn)收測試。選擇題1、以下哪個不是詳細(xì)設(shè)計(jì)中常用的圖形描述工具 。 a、數(shù)據(jù)流圖 b、程序流圖 c、盒圖(n-s圖) d、問題分析圖(pad)2、耦合是對軟件結(jié)構(gòu)中各個不同模塊之間互相關(guān)聯(lián)程度的度量。一個模塊直接訪問另一個模塊的內(nèi)部信息應(yīng)屬于 方式。 a、控制耦合 b、內(nèi)容耦合 c、數(shù)據(jù)耦合 d、外部耦合3、在七種內(nèi)聚中屬于最強(qiáng)的是 功能 內(nèi)聚,最弱的是 偶然 內(nèi)聚4、軟件工程的原則包括:模塊化、抽象與逐步求精、信息隱藏與局部化、模塊獨(dú)

28、立。模塊耦合程度低,則說明模塊的獨(dú)立性越強(qiáng)。 a 耦合越強(qiáng) b、 扇入數(shù)越高 c、扇入數(shù)越低 d、耦合越弱5、軟件設(shè)計(jì)包括 兩個階段。 a、接口設(shè)計(jì)和結(jié)構(gòu)設(shè)計(jì) b、數(shù)據(jù)設(shè)計(jì)和概要設(shè)計(jì) c、結(jié)構(gòu)設(shè)計(jì)和過程設(shè)計(jì) d、概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)6、現(xiàn)有一個計(jì)算類型的程序,它的輸入只有一個y,其范圍是50y50?,F(xiàn)從輸入的角度考慮設(shè)計(jì)了一組測試用例:100,100,0。設(shè)計(jì)這組測試用例的方法是 。 a、條件覆蓋法 b、邊緣值分析法 c、錯誤推測法 d 、等價(jià)劃分法7、系統(tǒng)設(shè)計(jì)分為兩個階段分別為 設(shè)計(jì)方案 與 選擇方案 。8、對于變換型的數(shù)據(jù)流圖,按照軟件設(shè)計(jì)思想,要將一個大型復(fù)雜的軟件進(jìn)行分解,要確定數(shù)據(jù)流圖

29、的輸入邊界,輸出邊界和 變換中心 。9、自頂向下結(jié)合的漸增式測試法,在組合模塊時(shí)有兩種組合策略:深度優(yōu)先策略和 寬度優(yōu)先策略 。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ì)。 a數(shù)據(jù)編碼 b數(shù)據(jù)流 c數(shù)據(jù)庫 d數(shù)據(jù)結(jié)構(gòu)15、軟件工程的過

30、程模型中, 瀑布 是經(jīng)典的傳統(tǒng)模型。16、模塊 定義為受該模塊內(nèi)一個判斷影響的所有模塊集合。 a 控制域 b、 作用域 c、 寬度 d、 接口17、在軟件生命周期中,能準(zhǔn)確確定軟件系統(tǒng)的體系結(jié)構(gòu)的功能階段是 。 a、概要設(shè)計(jì) b、詳細(xì)設(shè)計(jì) c、需求分析 d、可行性分析18、下面不屬于軟件工程的基本原則的是_ _。 a、模塊化b、抽象 c、局部化 d、自頂向上19、在數(shù)據(jù)流圖中,用圓或者橢圓來表示 。 a、數(shù)據(jù)流   b、數(shù)據(jù)源點(diǎn)或終點(diǎn) c、數(shù)據(jù)存儲 d、加工20、 軟件是計(jì)算機(jī)系統(tǒng)中與硬件相互依存的部分,它是包括(a)、(b)、及(c)的完整集合。其中,(a)是按事先設(shè)計(jì)的

31、功能和性能要求執(zhí)行的指令序列,(b)是使程序員能夠正確操縱信息的數(shù)據(jù)結(jié)構(gòu),(c)是與程序開發(fā)、維護(hù)和使用有關(guān)的圖文材料。 軟件   程序   代碼   硬件   文檔   外設(shè)   數(shù)據(jù)   圖表21、 開發(fā)軟件時(shí),對于提高軟件開發(fā)人員工作效率至關(guān)重要的是(a)。軟件工程中描述軟件生存周期的瀑布類型一般包括計(jì)劃、(b)、設(shè)計(jì)、編碼、測試、維護(hù)等幾個階段。其中,設(shè)計(jì)階段在管理上可以依次分成(c)和(d)兩個步驟。 a: 程序開發(fā)環(huán)境  &

32、#160; 操作系統(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è)

33、計(jì)   軟件體系結(jié)構(gòu)設(shè)計(jì)22在結(jié)構(gòu)化的分析方法中,用以表達(dá)系統(tǒng)內(nèi)數(shù)據(jù)的運(yùn)行情況的工具有( )。 a:數(shù)據(jù)流圖   b:數(shù)據(jù)詞典   c:結(jié)構(gòu)化英語   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:多對多24軟件需求分析的任務(wù),不應(yīng)包括(a),進(jìn)行需求分析可使用多種工具,但(b)是不適用的,在需求分析中,分析員要從用戶那里解

34、決的最重要的問題是(c)。規(guī)格說明書的內(nèi)容不應(yīng)當(dāng)包括(d),該文檔在開發(fā)中具有重要的作用,但其作用不應(yīng)包括(e)。 a: 1 問題分析    2 信息域分析    3 結(jié)構(gòu)化程序設(shè)計(jì)    4 確定邏輯模型 b: 1 數(shù)據(jù)流圖    2 判定表        3 pad圖            4

35、數(shù)據(jù)詞典 c: 1 要讓軟件做什么               2 要對該軟件提供哪些信息   3 要求軟件工作效率如何         4 讓軟件具有什么結(jié)構(gòu) d: 1 對重要功能的描述    2 對算法的詳細(xì)過程性描述 3 軟件確認(rèn)準(zhǔn)則        4

36、軟件的性能 e: 1 軟件設(shè)計(jì)的依據(jù)      2 用戶和開發(fā)人員對軟件要”做什么”的共同理解 3 軟件驗(yàn)收的依據(jù)      4 軟件可行性分析的依據(jù)25原型化方法是用戶和軟件開發(fā)人員之間進(jìn)行的一種交互過程,適用于(a)系統(tǒng),它從用戶界面的開發(fā)入手,首先形成(b),用戶(c),并就(d)提出意見。 a: 1 需求不確定性高的    2 需求確定的      3 管理信息    

37、  4 決策支持 b: 1 用戶界面使用手冊      2 用戶界面需求分析說明書   3 系統(tǒng)界面原型          4 完善的用戶界面 c: 1 改進(jìn)用戶界面的設(shè)計(jì)    2 閱讀文檔資料    3 模擬用戶界面的運(yùn)行    4 運(yùn)行用戶界面原型 d: 1 同意什么和不同意什么    2 使用和不使用

38、哪一種編程語言     3 程序的結(jié)構(gòu)              4 執(zhí)行速度是否滿足要求26.從下列有關(guān)系統(tǒng)結(jié)構(gòu)圖的描述中選出正確的敘述。 系統(tǒng)結(jié)構(gòu)圖中反映的是程序中數(shù)據(jù)流的情況。 系統(tǒng)結(jié)構(gòu)圖是精確表達(dá)程序結(jié)構(gòu)的圖形表示法。因此有時(shí)也可將系統(tǒng)結(jié)構(gòu)圖當(dāng)作程序流程圖使用。 一個模塊的多個下屬模塊在系統(tǒng)結(jié)構(gòu)圖中所處的左右位置是無關(guān)緊要的。 在系統(tǒng)結(jié)構(gòu)圖中,上級模塊與其下屬模塊之間的調(diào)用關(guān)系用有向線段表示。這時(shí)使用斜的線段和水平、垂直的線段具有相同的含

39、義。27.選出正確答案:一組語句在程序中多處出現(xiàn),為了節(jié)省內(nèi)存空間,把這些語句放在一個模塊中,該模塊的內(nèi)聚性是(a)的。將幾個邏輯上相似的成份,放在同一個模塊中,通過模塊入口的一個判斷決定執(zhí)行哪一個功能,該模塊的內(nèi)聚性是(b)的。模塊中所有成份引用共同的數(shù)據(jù),該模塊的內(nèi)聚性是(c)的。模塊內(nèi)的某成份的輸出是另一些成份的輸入,該模塊的內(nèi)聚性是(d)的。模塊中所有成份結(jié)合起來完成一項(xiàng)任務(wù),該模塊的內(nèi)聚性是(e)的。ae:偶然內(nèi)聚   時(shí)間內(nèi)聚   功能內(nèi)聚   通信內(nèi)聚   邏輯內(nèi)聚   信息內(nèi)聚&

40、#160;  過程內(nèi)聚28關(guān)于模塊化程序設(shè)計(jì)的說法正確的五項(xiàng):(   )1程序設(shè)計(jì)比較方便但難于維護(hù)。2便于由多人分工編制大型程序。3軟件功能易于擴(kuò)充。4易于理解,也便于排錯。5在主存儲器能夠容納的前提下,并使模塊盡可能大,以減少模塊的個數(shù)。6模塊間的接口叫做數(shù)據(jù)文件。7只要模塊之間的接口關(guān)系不變,模塊內(nèi)部實(shí)現(xiàn)細(xì)節(jié)的修改將不會影響別的模塊。8模塊間的單向調(diào)用關(guān)系叫做模塊的層次結(jié)構(gòu)。9模塊越小,模塊化的優(yōu)點(diǎn)越明顯,一般來說模塊的大小都在10行以下。29從下列敘述中選出五條符合程序設(shè)計(jì)風(fēng)格指導(dǎo)原則的敘述。1嵌套的重?cái)?shù)應(yīng)加以限制。2盡量少使用全局變量。3不濫用語言特色。

41、4不用可以省略的括號。5使用有意義的變量名。6盡可能把程序編的短些。7把常見的局部優(yōu)化工作留給編譯程序去做。8注解越少越好。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)決定制定的。:軟件開發(fā)費(fèi)用   軟件維護(hù)費(fèi)用   軟件開發(fā)和維護(hù)費(fèi)用   軟

42、件研制費(fèi)用軟件生存期全部:用適量的測試用例運(yùn)行程序,證明被測試程序正確無誤用適量的測試用例運(yùn)行程序,證明被測試程序符合相應(yīng)的要求用少量的測試用例運(yùn)行程序發(fā)現(xiàn)被測試程序盡可能多的錯誤   用少量的測試用例運(yùn)行程序,糾正被測程盡可能多的錯誤c、d、e:可行性研究和計(jì)劃 需求分析 概要設(shè)計(jì) 詳細(xì)設(shè)計(jì) 實(shí)現(xiàn) 集成測試 確認(rèn)測試   使用和維護(hù)33.軟件測試的目的是(a),為了提高測試的效率,應(yīng)該(b)。使用白盒測試方法時(shí),確定測試數(shù)據(jù)應(yīng)根據(jù)(c)和指定的附帶標(biāo)準(zhǔn)。與設(shè)計(jì)測試無關(guān)的文檔是(d)。軟件的集成測試工作最好由(e)承擔(dān),以提高集成測試的結(jié)果。a:評價(jià)軟件

43、的質(zhì)量 發(fā)現(xiàn)軟件的錯誤 找出軟件中的所有錯誤 證明軟件是正確的:隨機(jī)的選取測試數(shù)據(jù)       取一切可能的輸入數(shù)據(jù)作為測試數(shù)據(jù)在完成編碼后,制定軟件的測試計(jì)劃選擇發(fā)現(xiàn)錯誤的可能性大的數(shù)據(jù)作為測試數(shù)據(jù)c:程序的內(nèi)部邏輯   程序的復(fù)雜程度   使用說明書   程序的功能d:該軟件的設(shè)計(jì)人員   程序的復(fù)雜程度   源程序   項(xiàng)目開發(fā)計(jì)劃e:該軟件的設(shè)計(jì)人員   該軟件開發(fā)組的負(fù)責(zé)人 &

44、#160; 該軟件的編程人員 不屬于該軟件開發(fā)組的軟件設(shè)計(jì)人員34.軟件調(diào)試的目的是(a) :找出錯誤所在,并改正之   排除存在錯誤的可能性   對錯誤性質(zhì)進(jìn)行分類   統(tǒng)計(jì)出錯的次數(shù)一 選擇題:1為了提高測試的效率,應(yīng)該_。a隨機(jī)地選取測試數(shù)據(jù) b取一切可能的輸入數(shù)據(jù)作為測試數(shù)據(jù)庫c在完成編碼后制定軟件的測試計(jì)劃d選擇發(fā)現(xiàn)錯誤可能性大的數(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ǔ),自頂向下,求精和模塊化的過程。

45、a數(shù)據(jù)流 b。數(shù)據(jù)流圖 c。數(shù)據(jù)庫 d。數(shù)據(jù)結(jié)構(gòu)4概要設(shè)計(jì)的結(jié)果是提供一份_。 a模塊說明書 b。框圖 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注釋是提高程序可讀性的有效手段,好的程序注釋占到程序總量的_。 a1/6 b。1/5 c。1/4 d。1/37變換型和事務(wù)型是程序結(jié)構(gòu)的標(biāo)準(zhǔn)形式。從某處獲得數(shù)據(jù),再對這些數(shù)據(jù)作處理,然后將結(jié)果送出是屬于_。 a變換型 b 事務(wù)型 8pad(problem analysis diagram)圖是一種_工具。

46、a系統(tǒng)描述 b。詳細(xì)設(shè)計(jì) c。測試 d。編程輔助9排錯一般是在測試發(fā)現(xiàn)錯誤后進(jìn)行,其中找到錯誤位置占排錯總工作量的_。a 95%b5%c50%d20% 10分層數(shù)據(jù)流圖是一種比較嚴(yán)格又易于理解的描述方式,它的頂層描述了系統(tǒng)的_。a 總貌b細(xì)節(jié)c抽象d軟件的作者 11數(shù)據(jù)流圖中,當(dāng)數(shù)據(jù)流向或流自文件時(shí),_。a數(shù)據(jù)流要命名,文件不必命名b數(shù)據(jù)流不必命名,有文件名就足夠了c數(shù)據(jù)流和文件均要命名,因?yàn)榱鞒龊土鬟M(jìn)數(shù)據(jù)流是不同的d數(shù)據(jù)流和文件均不要命名,通過加工可自然反映出 12分析員是_。a 用戶中系統(tǒng)的直接使用者b用戶和軟件人員的中間人c軟件的編程人員 d。用戶和軟件人員的領(lǐng)導(dǎo) 13在軟件開發(fā)中,有利

47、于發(fā)揮集體智慧的一種做法是_。a 設(shè)計(jì)評審b模塊化c主程序員制d。進(jìn)度控制14在開發(fā)軟件時(shí),_可用來提高程序員的工作效率。a程序開發(fā)環(huán)境b操作系統(tǒng)的作業(yè)管理功能c編譯程序的優(yōu)化功能d。并行運(yùn)算的大型計(jì)算機(jī) 15軟件測試中設(shè)計(jì)測試實(shí)例(test case)主要由輸入數(shù)據(jù)和_兩部分組成。a 測試規(guī)則b測試計(jì)劃c預(yù)期輸出結(jié)果d以往測試記錄分析 16結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)程序的_。a 效率b速度c可讀性d大小 17開發(fā)軟件需高成本和產(chǎn)品的低質(zhì)量之間有著尖銳的矛盾,這種現(xiàn)象稱作_。a.軟件投機(jī)b軟件危機(jī)c軟件工程d軟件產(chǎn)生18成功的測試是指_。a運(yùn)行測試實(shí)例后未發(fā)現(xiàn)錯誤項(xiàng)b發(fā)現(xiàn)程序的錯誤c證明程序正確d

48、改正程序的錯誤19系統(tǒng)開發(fā)的需求分析階段的重要工作之一是_。a數(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ā)人員在各個階段以文檔作為前段工作成果的_和后段工作的_。a. 接口b.橋梁c.科學(xué)d.繼續(xù)e.體現(xiàn)f.基礎(chǔ)21單獨(dú)測試一個模塊時(shí),有時(shí)需要一個_程序驅(qū)動被測試的模塊.有時(shí)還要有一個或幾個_模塊模擬由被測試模塊調(diào)用的模塊 。1.a.理解b.驅(qū)動c.管理d.傳遞2.a.子(sub)b.仿真(initation)c.棧(ssack)d.樁(ssub)22在結(jié)構(gòu)化程序設(shè)計(jì)思想提出以前,在程序設(shè)計(jì)中曾強(qiáng)調(diào)程序的_。現(xiàn)在,與程序的_相

49、比,人們更重視程序的_。12a。安全性b。專用性c。一致性d。合理性 e??衫斫庑詅。效率23軟件測試中,白箱方法是通過分析程序的_來設(shè)計(jì)測試實(shí)例的方法,除了測試程序外,還適用于對_階段的軟件文檔進(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%;(2)結(jié)構(gòu)化分析方法產(chǎn)生的系統(tǒng)說明書由一套_,一本數(shù)據(jù)字典和一組小說明及補(bǔ)充材料組成; (3)軟件的_一般由兩次故障平均間隔時(shí)間和故障平均恢

50、復(fù)時(shí)間來度量; (4)采用_且編寫程序,可提高程序的可移植性; (5)僅依據(jù)規(guī)格說明書描述的程序功能來設(shè)計(jì)測試實(shí)例的方法稱為_。 1a分析b設(shè)計(jì)c 編碼d 測試 e 維護(hù) 2a因果b。分層數(shù)據(jù)流圖c pad圖 d 程序流程圖 3a可維護(hù)性 b可靠性 c效率 d互理解性 4a機(jī)器語言 b宏指令 c匯編語言 d高級語言 5a白箱法 b表態(tài)分析法 c黑箱法 d人工分析法25_是以發(fā)現(xiàn)錯誤為目的的,而_是以定位,分析和改正錯誤為目的的。a測試 b排錯(調(diào)試) c維護(hù) d開發(fā)26請按順序?qū)懗鲕浖诘膸讉€階段_,_ ,_,_,_,_。a維護(hù) b測試 c詳細(xì)設(shè)計(jì) d概要設(shè)計(jì) e編碼 f需求分析27軟件發(fā)

51、展過程中,第一階段(50年代)稱為“程序設(shè)計(jì)原始時(shí)期”,這時(shí)既沒有1_也沒有_2_,程序員只能用匯編語言編寫程序。第二階段(50年代末60年代末)稱為“基本軟件期”,出現(xiàn)了1_并漸普及,隨之2_編譯技術(shù)也有較大發(fā)展。第三階段(60年代70年代中)稱為“程序設(shè)計(jì)方法的時(shí)代”。與硬件費(fèi)用下降相反,軟件開發(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)化程

52、序設(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ǔ)。 a50年代末 b60年代初 c60年代末 d70年代初 a運(yùn)籌學(xué) b工程學(xué) c軟件學(xué) d軟件學(xué) e數(shù)字29 瀑布模型把軟件生存周期劃分為軟件定義、軟件開發(fā)和_三個階段,而每一階段又可細(xì)分為若干個更小的階段。a詳細(xì)設(shè)計(jì)b可行性分析c運(yùn)行及維護(hù)d測試與排錯30軟件的_設(shè)計(jì)又稱為總體設(shè)計(jì),其主要任務(wù)是建立軟件系統(tǒng)的總體結(jié)構(gòu)。a概要b抽象c邏輯d規(guī)劃31結(jié)構(gòu)化分析sa是軟件開發(fā)需求分析階段所

53、使用的方法,_不是sa所使用的工具。adfd圖bpad圖c結(jié)構(gòu)化英語d判定表32結(jié)構(gòu)化分析方法以數(shù)據(jù)流圖、_和加工說明等描述工具,即用直觀的圖和簡潔的語言來描述軟件系統(tǒng)模型。adfd圖bpad圖cipo圖d數(shù)據(jù)字典33模塊本身的內(nèi)聚是模塊獨(dú)立性的重要度量因素之一,在七類內(nèi)聚中,具有最強(qiáng)內(nèi)聚的一類是_。a順序性內(nèi)聚b過程性內(nèi)聚c邏輯性內(nèi)聚d功能性內(nèi)聚34jackson設(shè)計(jì)方法由英國的m. jackson提出的,它是一種面向_的設(shè)計(jì)方法。a對象b數(shù)據(jù)流c數(shù)據(jù)結(jié)構(gòu)d控制結(jié)構(gòu)35結(jié)構(gòu)化設(shè)計(jì)思想的核心是要求程序只由順序、循環(huán)和_三種結(jié)構(gòu)組成。a分支b單入口c單出口d有規(guī)則goto36源程序的版面文檔要求

54、應(yīng)有變量說明、適當(dāng)注釋和_。a框圖b統(tǒng)一書寫格式c修改記錄d編程日期37在軟件工程中,軟件測試的目的是_。a試驗(yàn)性運(yùn)行軟件b發(fā)現(xiàn)軟件錯誤c證明軟件是正確的d找出軟件中的全部錯誤38在軟件工程中,當(dāng)前用于保證軟件質(zhì)量的主要技術(shù)手段還是_。a正確性證明b測試c自動程序設(shè)計(jì)d符號證明39在軟件工程中,高質(zhì)量的文檔標(biāo)準(zhǔn)是完整性、一致性和_。a統(tǒng)一性b安全性c無二義性d組合性40在軟件研究過程中,case是_。a指計(jì)算機(jī)輔助系統(tǒng)工程bcad和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ā)期的一個階段43逆向工程在軟件工程中主要用于_階段。a分析b設(shè)計(jì)c編碼d維護(hù)44軟件工程中,只根據(jù)程序的功能說明而不關(guān)心程序內(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圖是_使用的

溫馨提示

  • 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

提交評論