軟件工程導(dǎo)論試題(打印)_第1頁
軟件工程導(dǎo)論試題(打印)_第2頁
軟件工程導(dǎo)論試題(打印)_第3頁
軟件工程導(dǎo)論試題(打印)_第4頁
軟件工程導(dǎo)論試題(打印)_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、軟件工程導(dǎo)論試題(老師給的)一選擇1、瀑布模型把軟件生命周期劃分為八個階段:問題的定義、可行性研究、軟件需求分析、系統(tǒng)總體設(shè)計、詳細(xì)設(shè)計、編碼、測試和運行、維護(hù)。八個階段又可歸納為三個大的階段:計劃階段、開發(fā)階段和 ( C )。 A、詳細(xì)計劃B、可行性分析C、運行階段D、測試與排錯 2、從結(jié)構(gòu)化的瀑布模型看,在它的生命周期中的八個階段中,下面的幾個選項中哪個環(huán)節(jié)出錯,對軟件的影響最大 ( C )。 A、詳細(xì)設(shè)計階段B、概要設(shè)計階段 C、 需求分析階段D、 測試和運行階段 3、在結(jié)構(gòu)化的瀑布模型中,哪一個階段定義的標(biāo)準(zhǔn)將成為軟件測試中的系統(tǒng)測試階段的目標(biāo) ( A )。 A、需求分析階段B、詳細(xì)設(shè)

2、計階段 C、概要設(shè)計階段 D、 可行性研究階段 4、軟件工程的出現(xiàn)主要是由于(C)。 A.程序設(shè)計方法學(xué)的影響 B.其它工程科學(xué)的影響 C. 軟件危機(jī)的出現(xiàn)D.計算機(jī)的發(fā)展 5、軟件工程方法學(xué)的目的是:使軟件生產(chǎn)規(guī)范化和工程化,而軟件工程方法得以實施的主要保證是 ( C ) A、硬件環(huán)境B、軟件開發(fā)的環(huán)境 C、軟件開發(fā)工具和軟件開發(fā)的環(huán)境D、開發(fā)人員的素質(zhì) 6、軟件開發(fā)常使用的兩種基本方法是結(jié)構(gòu)化和原型化方法,在實際的應(yīng)用中,它們之間的關(guān)系表現(xiàn)為 ( B) A、相互排斥B、相互補(bǔ)充C、獨立使用D、交替使用 7、UML是軟件開發(fā)中的一個重要工具,它主要應(yīng)用于哪種軟件開發(fā)方法( C ) A、基于瀑

3、布模型的結(jié)構(gòu)化方法B、基于需求動態(tài)定義的原型化方法 C、基于對象的面向?qū)ο蟮姆椒―、基于數(shù)據(jù)的數(shù)據(jù)流開發(fā)方法 8、在下面的軟件開發(fā)方法中,哪一個對軟件設(shè)計和開發(fā)人員的開發(fā)要求最高( B )A、結(jié)構(gòu)化方法B、原型化方法C、面向?qū)ο蟮姆椒―、控制流方法 9、結(jié)構(gòu)化分析方法是一種預(yù)先嚴(yán)格定義需求的方法,它在實施時強(qiáng)調(diào)的是分析對象的 ( B) A、控制流B、數(shù)據(jù)流C、程序流D、指令流 10、軟件開發(fā)的結(jié)構(gòu)化生命周期方法將軟件生命周期劃分成 ( A ) A、 計劃階段、開發(fā)階段、運行階段B、 計劃階段、編程階段、測試階段 C、 總體設(shè)計、詳細(xì)設(shè)計、編程調(diào)試D、需求分析、功能定義、系統(tǒng)設(shè)計 11、軟件開發(fā)

4、中常采用的結(jié)構(gòu)化生命周期方法,由于其特征而一般稱其為( A )A、瀑布模型B、對象模型C、螺旋模型D、層次模型 12、軟件開發(fā)的瀑布模型,一般都將開發(fā)過程劃分為:分析、設(shè)計、編碼和測試等階段,一般認(rèn)為可能占用人員最多的階段是 ( C ) A、分析階段B、設(shè)計階段C、編碼階段D、測試階段二.填空21系統(tǒng)流程圖是描述物理模型的傳統(tǒng)工具,用圖形符號表示系統(tǒng)中各個元素表達(dá)了系統(tǒng)中各種元素之間的(信息流動)情況。解析系統(tǒng)流程圖是描述物理系統(tǒng)的傳統(tǒng)工具,用圖形符號表示系統(tǒng)中的各個元素,如人工處理、數(shù)據(jù)處理、數(shù)據(jù)庫、文件、設(shè)備等,表達(dá)了元素之間的信息流動的情況。22成本效益分析的目的是從(經(jīng)濟(jì))角度評價開發(fā)

5、一個項目是否可行。解析成本效益分析首先是估算將要開發(fā)的系統(tǒng)的開發(fā)成本,然后與可能取得的效益進(jìn)行比較和權(quán)衡,其目的是從經(jīng)濟(jì)角度評價開發(fā)一個新的軟件項目是否可行。23自頂向下結(jié)合的漸增式測試法,在組合模塊時有兩種組合策略:深度優(yōu)先策略和(寬度優(yōu)先策略) 。解析漸增式測試法有自頂向下結(jié)合和自底向上結(jié)合兩種組裝模塊的方法,其中自頂向下集成是構(gòu)造程序結(jié)構(gòu)的一種增量式方式,不需要編寫驅(qū)動模塊,只需要編寫樁模塊。它從主控模塊開始,按照軟件的控制層次結(jié)構(gòu),以深度優(yōu)先或?qū)挾葍?yōu)先的策略,逐步把各個模塊集成在一起。24獨立路徑是指包括一組以前沒有處理的語句或條件的一條路徑。從程序圖來看,一條獨立路徑是至少包含有一條

6、(在其他獨立路徑中未有過)的邊的路徑。解析在基本路徑測試中,以詳細(xì)設(shè)計或源程序為基礎(chǔ),導(dǎo)出控制流程圖的拓?fù)浣Y(jié)構(gòu)程序圖,在計算了程序圖的環(huán)路復(fù)雜性之后,確定只包含獨立路徑的基本路徑圖,其中獨立路徑是包括一組以前沒有處理的語句或條件的一條路徑。從程序圖來看,一條獨立路徑是至少包含有一條在其他獨立路徑中未有過的邊的路徑。25匯編語言是面向(機(jī)器) 的,可以完成高級語言無法完成的特殊功能,如與外部設(shè)備之間的一些接口工作。解析匯編語言屬于低級語言,是一種面向機(jī)器的語言,它與高級語言相比有許多優(yōu)越性:如操作靈活,可以直接作用到硬件的最下層,完成與外部設(shè)備的接口工作等,是能夠利用計算機(jī)硬件特性直接控制硬件設(shè)

7、備的唯一語言。26在JSP方法中解決結(jié)構(gòu)沖突的具體辦法是(中間數(shù)據(jù)結(jié)構(gòu)或中間文件)。解析JSP方法是面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計方法。它定義了一組以數(shù)據(jù)結(jié)構(gòu)為指導(dǎo)的映射過程,根據(jù)輸入、輸出的數(shù)據(jù)結(jié)構(gòu),按一定的規(guī)則映射成軟件的過程描述,在JSP方法中解決結(jié)構(gòu)沖突的具體辦法是引入中間數(shù)據(jù)結(jié)構(gòu)或中間文件,將沖突部分分隔開來,建立多個程序結(jié)構(gòu),再利用中間文件把它們聯(lián)系起來,構(gòu)成一個系統(tǒng)的整體。27詳細(xì)設(shè)計的任務(wù)是確定每個模塊的內(nèi)部特性,即模塊的算法、(使用的數(shù)據(jù))。 解析詳細(xì)設(shè)計的基本任務(wù)是為每個模塊進(jìn)行詳細(xì)的算法設(shè)計,為模塊內(nèi)的數(shù)據(jù)結(jié)構(gòu)進(jìn)行設(shè)計,確定每個模塊的內(nèi)部特性,包括模塊的算法和使用的數(shù)據(jù)。對數(shù)據(jù)庫進(jìn)行

8、物理設(shè)計等。28所有軟件維護(hù)申請報告要按規(guī)定方式提出,該報告也稱( 軟件問題 )報告。解析在軟件維護(hù)的流程中,第一步就是制定維護(hù)申請報告,也稱為軟件問題報告,它是維護(hù)階段的一種文檔,由申請維護(hù)的用戶填寫。29有兩類維護(hù)技術(shù):在開發(fā)階段使用來減少錯誤、提高軟件可維護(hù)性的面向維護(hù)的技術(shù);在維護(hù)階段用來提高維護(hù)的效率和質(zhì)量的(維護(hù)支援)技術(shù)。解析面向維護(hù)的技術(shù)涉及軟件開發(fā)的所有階段,能夠減少軟件錯誤,提高軟件的可維護(hù)性。而維護(hù)支援技術(shù)則包含信息收集,錯誤原因分析,維護(hù)方案評價等項,是在軟件維護(hù)階段用來提高維護(hù)效率和質(zhì)量的技術(shù)。30科學(xué)工程計算需要大量的標(biāo)準(zhǔn)庫函數(shù),以便處理復(fù)雜的數(shù)值計算,可供選擇的語

9、言有:(FORTRAN語言)、PASCAL語言、C語言和PL/1語言。解析計算機(jī)語言根據(jù)不同行業(yè)的需求,使用的側(cè)重點也不盡相同,在辦公管理方面,一些數(shù)據(jù)庫語言如FOXPRO、ORICAL有很多的應(yīng)用,在工程行業(yè),計算機(jī)語言的科學(xué)計算能力就顯得格外重要,如MATLAB、PL/1、FORTRAN語言都是工程計算中常用的語言。三判斷1軟件的開發(fā)與運行經(jīng)常受到硬件的限制和制約。()2模塊內(nèi)的高內(nèi)聚往往意味著模塊間的松耦合。( )3Jackson圖只能表達(dá)程序結(jié)構(gòu),不能表達(dá)數(shù)據(jù)結(jié)構(gòu)。(X)4.上述數(shù)據(jù)流圖表示數(shù)據(jù)A和B同時輸入變換成C。(X )5軟件的質(zhì)量好壞主要由驗收人員負(fù)責(zé),其他開發(fā)人員不必關(guān)心。(

10、X )6判定覆蓋不一定包含條件覆蓋,條件覆蓋也不一定包含判定覆蓋。()7.應(yīng)該盡量使用機(jī)器語言編寫代碼,提高程序運行效率,而減少高級語言的使用。(X)8UML只能應(yīng)用于軟件系統(tǒng)模型的建立。(X)9容錯就是每個程序采用兩種不同的算法編寫。(X)10軟件測試的目的是為了無一遺漏的找出所有的錯誤。(X)四、名詞解釋題(本大題共5小題,每小題3分,共15分)31.軟件開發(fā)環(huán)境-是指在計算機(jī)的基本軟件的基礎(chǔ)上,為了支持軟件的開發(fā)而提供的一組工具軟件系統(tǒng)。32. 錯誤推測法-在測試程序時,人們可能根據(jù)經(jīng)驗或直覺推測程序中可能存在的各種錯誤,從而有針對性地編寫檢查這些錯誤的測試用例的方法。33. 黑盒測試法

11、把測試對象看成一個黑盒子,測試人員完全不考慮程序的內(nèi)部結(jié)構(gòu)和處理過程,只在軟件的接口處進(jìn)行測試,依據(jù)需求規(guī)格說明書,檢查程序是否滿足功能要求34. 軟件質(zhì)量保證是向用戶及社會提供滿意質(zhì)量的產(chǎn)品,確保軟件產(chǎn)品從誕生到消亡為止的所有階段的質(zhì)量的活動,即確定、達(dá)到和維護(hù)需要的軟件質(zhì)量而進(jìn)行的所有有計劃、有系統(tǒng)的管理活動35. 瀑布模型將軟件生存周期各個活動規(guī)定為依線性順序鏈接的若干階段的一種軟件開發(fā)模型。瀑布模型把軟件生命周期劃分為八個階段:【問題的定義】、【可行性研究】、【軟件需求分析】、【系統(tǒng)總體設(shè)計】、【詳細(xì)設(shè)計】、【編碼】、【測試和運行】、【維護(hù)】八個階段又可歸納為三個大的階段:【計劃階段】

12、、【開發(fā)階段】和【運行階段】五、圖 a 中,模塊 G 為判定,判斷涉及到模塊 B、F、G,請指出設(shè)計中的錯誤,再根據(jù)改進(jìn)模塊圖的基本原則,畫出 12 個改進(jìn)方案(不改變模塊 G 的判斷關(guān)系),并說明是按照哪條基本原則進(jìn)行改進(jìn)的。解:圖 b 為一個改進(jìn)方案,將模塊 G 的位置提高,使其作用范圍為控制范圍的子集,減少模塊 之間的聯(lián)系。40 請使用PAD圖和PDL語言描述在數(shù)組A(1)A(10)中找最大數(shù)的算法。解:PDL語言:N=1WHILE N=10 DOIF A(N)=A(N+1) MAX =A(N+1);ELSE MAX =A(N) ENDIF;N=N+1;ENDWHILE;PAD圖:解析人

13、工查找時,是從第一個元素開始查找,用當(dāng)前元素與下一個元素比較,將較大者作為當(dāng)前元素又與下一元素比較,如此循環(huán),直到數(shù)組末尾。41根據(jù)下列條件使用等價類劃分法設(shè)計測試用例。某一8位微機(jī),其八進(jìn)制常數(shù)定義為:以零開頭的數(shù)是八進(jìn)制整數(shù),其值的范圍是-177177,如05,0127,-065解:(1)劃分等價類并編號,如下表示:(4分)(2)為合理等價類設(shè)計測試用例,表中有兩個合理等價類,設(shè)計兩個例子(2分)(3)為不合理等價類測試用例,至少設(shè)計一個測試用例(2分)解析等價類劃分屬于黑盒測試的一種,它將輸入數(shù)據(jù)域按有效的或無效的劃分成若干個等價類,測試每個等價類的代表值就等于對該類其他值的測試,這樣用

14、少量有代表性的例子代替大量測試目的相同的例子,可以有效提高測試效率。本題劃分了3個合理等價類,9個不合理等價類進(jìn)行測試,取到了預(yù)期的效果。42某電器集團(tuán)公司下屬的廠包括技術(shù)科、生產(chǎn)科等基層單位?,F(xiàn)在想建立一個計算機(jī)輔助企業(yè)管理系統(tǒng),其中:生產(chǎn)科的任務(wù)是:(1)根據(jù)銷售公司轉(zhuǎn)來的內(nèi)部合同(產(chǎn)品型號、規(guī)格、數(shù)量、交獲日期)制定車間月生產(chǎn)計劃。(2)根據(jù)車間實際生產(chǎn)日報表、周報表調(diào)整月生產(chǎn)計劃(3)以月生產(chǎn)計劃為以及,制定產(chǎn)品設(shè)計(結(jié)構(gòu)、工藝)及產(chǎn)品組裝月計劃。(4)將產(chǎn)品的組裝計劃傳達(dá)到各科,將組裝月計劃分解為周計劃,下達(dá)給車間技術(shù)科的任務(wù)是:(1)根據(jù)生產(chǎn)科轉(zhuǎn)來的組裝計劃進(jìn)行產(chǎn)品結(jié)構(gòu)設(shè)計,產(chǎn)生產(chǎn)

15、品裝配圖給生產(chǎn)科,產(chǎn)生外購需求計劃給供應(yīng)科,并產(chǎn)生產(chǎn)品自制物料清單。(2)根據(jù)組裝計劃進(jìn)行產(chǎn)品工藝設(shè)計,根據(jù)產(chǎn)品自制物料清單產(chǎn)生工藝流程圖給零件廠。 試寫出以上系統(tǒng)中生產(chǎn)科和技術(shù)科處理的軟件結(jié)構(gòu)圖。解:畫出生產(chǎn)科圖的給6分,畫出技術(shù)科的給4分。 解析軟件結(jié)構(gòu)圖是軟件系統(tǒng)的模塊層次結(jié)構(gòu),反映了整個系統(tǒng)的功能實現(xiàn),即將來程序的控制層次體系,軟件結(jié)構(gòu)往往用樹狀或網(wǎng)狀結(jié)構(gòu)的圖形來表示,其主要內(nèi)容有模塊及模塊的控制關(guān)系,根據(jù)題意,可繪制出生產(chǎn)科和技術(shù)科的軟件結(jié)構(gòu)圖,其中生產(chǎn)科的結(jié)構(gòu)圖深度和寬度均為4,技術(shù)科的結(jié)構(gòu)圖的深度和寬度均為3。20092010學(xué)年第二學(xué)期期末考試試題1. 軟件危機(jī)具有下列表現(xiàn)(

16、D )。I. 對軟件開發(fā)成本估計不準(zhǔn)確II. 軟件產(chǎn)品的質(zhì)量往往靠不住III. 軟件常常不可維護(hù)IV. 軟件成本逐年上升A. I、II和IIIB. I、III和IVC. II、III和IVD. 以上都正確2. 軟件生命周期一般都被劃分為若干個獨立的階段,其中占用精力和費用最多的階段往往是( A )。A. 運行和維護(hù)階段B. 設(shè)計階段 C. 代碼實現(xiàn)階段D. 測試階段3. 下列屬于軟件的特點的是( D )。A. 軟件是一種邏輯實體,具有抽象性 B. 軟件在使用過程中沒有磨損、老化的問題C. 軟件不同于一般程序,它的一個顯著特點是規(guī)模龐大,復(fù)雜程度高 D. 以上都正確4. 軟件工程的出現(xiàn)是由于(

17、D )。A. 軟件危機(jī)的出現(xiàn) B. 計算機(jī)硬件技術(shù)的發(fā)展 C. 軟件社會化的需要 D. 計算機(jī)軟件技術(shù)的發(fā)展5. 軟件開發(fā)技術(shù)不包含( D )。A. 軟件開發(fā)方法學(xué)B. 軟件工程環(huán)境 C. 軟件工具D. 軟件質(zhì)量度度量6. 軟件工程的課程特點( D )。I. 學(xué)科理論及其知識應(yīng)用的多維性 II. 工程化 III. 濃厚的方法學(xué)色彩 IV. 實踐性、指導(dǎo)性強(qiáng)A. I、II和IIIB. I、III和IVC. II、III和IVD. 以上都正確7. 下列屬于應(yīng)用軟件的是( B )。I. 計算機(jī)輔助教學(xué)軟件 II. 軟件測試工具 III. 辦公自動化軟件 IV. 工程與科學(xué)計算軟件A. I、II和II

18、IB. I、III和IVC. II、III和IVD. 以上都正確8. 需求分析階段最重要的技術(shù)文檔是( B )。A. 設(shè)計說明書B. 需求規(guī)格說明書 C. 可行性分析報告 D. 用戶手冊9. 以下關(guān)于數(shù)據(jù)流圖的說法錯誤的是( C )。A. 數(shù)據(jù)流圖舍去了具體的物質(zhì),只剩下數(shù)據(jù)的流動、加工處理和存儲B. 數(shù)據(jù)流圖是用作結(jié)構(gòu)化分析的一種工具C. 傳統(tǒng)的數(shù)據(jù)流圖中主要由加工、數(shù)據(jù)源點/終點、數(shù)據(jù)流、控制流、數(shù)據(jù)存儲組成D. 數(shù)據(jù)流圖的繪制采用自上向下、逐層分解的方法10. 數(shù)據(jù)字典是軟件需求分析階段的最重要工具之一,其最基本的功能是( C )。A. 數(shù)據(jù)庫設(shè)計B. 數(shù)據(jù)通信C. 數(shù)據(jù)定義D. 數(shù)據(jù)維

19、護(hù)11. 需求分析階段的研究對象是( B )。A. 系統(tǒng)分析員要求B. 用戶要求 C. 軟硬件要求 D. 系統(tǒng)要求12. 結(jié)構(gòu)化方法的基本原則是( B )。A. 模塊化B. 抽象與分解C. 信息隱蔽D. 逐步求精13. 耦合度最高的是( B )耦合。A. 環(huán)境B. 內(nèi)容C. 控制D. 數(shù)據(jù)14. 內(nèi)聚程度較低的是( A )內(nèi)聚。A. 偶然B. 通訊C. 順序D. 時間15. 對一個程序來說,組成系統(tǒng)的模塊數(shù)目( C ),則開發(fā)成本越小。A. 越多B. 越少C. 順序D. 時間16. 畫軟件結(jié)構(gòu)圖時應(yīng)注意調(diào)用關(guān)系只能是( B )。A. 從下到上B. 從上到下C. 從左到右D. 從右到左17. 程

20、序流程圖中的“”代表( B )。A. 數(shù)據(jù)流B. 控制流C. 順序流D. 調(diào)用18. DFD中的“”代表( A )。A. 數(shù)據(jù)流B. 文件C. 處理D. 控制流19. DFD中的“”代表( C )。A. 數(shù)據(jù)流B. 文件C. 處理D. 控制流20. DFD中的“”代表( B )。A. 數(shù)據(jù)流B. 文件C. 處理D. 控制流二、填空題1. 計算機(jī)軟件不僅僅是程序,還應(yīng)該有一整套 文檔 。2. 傳統(tǒng)的軟件生存期模型是 瀑布模型 。3. 軟件按照功能的不同可以劃分為3大類型 系統(tǒng)軟件 、 應(yīng)用軟件和 支持軟件 。4. DFD在軟件工程中表示 數(shù)據(jù)流圖 。5. 耦合性 與 內(nèi)聚性 是模塊獨立性的兩個定

21、性標(biāo)準(zhǔn),將軟件系統(tǒng)劃分模塊時,盡量做到 高 內(nèi)聚、 低 耦合,提高模塊的 獨立性 ,為設(shè)計高質(zhì)量的軟件結(jié)構(gòu)奠定基礎(chǔ)。6. 數(shù)據(jù)流圖有四種基本成分: 數(shù)據(jù)流、 加工(又稱為數(shù)據(jù)處理) 、 文件 、 數(shù)據(jù)的源點或終點。7. 數(shù)據(jù)字典有以下四類條目: 數(shù)據(jù)流、 數(shù)據(jù)項 、 文件、 基本加工。 數(shù)據(jù)項是組成數(shù)據(jù)流和數(shù)據(jù)存儲的最小元素。三、簡答題8. 某廠對部分職工重新分配工作的政策是:年齡有20歲以下者,初中文化程度脫產(chǎn)學(xué)習(xí),高中文化程度當(dāng)電工;年齡有20歲至40歲之間者,中學(xué)文化程度男性當(dāng)鉗工,女性當(dāng)車工,大學(xué)文化程度者當(dāng)技術(shù)員;年齡有40歲以上者,中學(xué)文化程度當(dāng)材料員,大學(xué)文化程度當(dāng)技術(shù)員。請用結(jié)

22、構(gòu)化語言、判定表或判定樹描述上述問題的加工邏輯。答:(1)結(jié)構(gòu)化語言。IF年齡C(P2)顯然E(P1)E(P2),則得出結(jié)論E(P1+P2)E(P1)+E(P2)就是:(A )A模塊化的根據(jù)B逐步求精的根據(jù)C抽象的根據(jù)D信息隱藏和局部化的根據(jù)12下面幾種白箱測試技術(shù),哪種是最強(qiáng)的覆蓋準(zhǔn)則(D )A語句覆蓋B條件覆蓋C判定覆蓋D條件組合覆蓋13面向數(shù)據(jù)流的設(shè)計方法把( A)映射成軟件結(jié)構(gòu)。A數(shù)據(jù)流 B系統(tǒng)結(jié)構(gòu) C控制結(jié)構(gòu) D信息流14.內(nèi)聚程度最低的是(A )內(nèi)聚A.偶然B.過程C.順序D.時間15.確定測試計劃是在(A )階段制定的.A總體設(shè)計 B.詳細(xì)設(shè)計 C.編碼 D.測試16需求分析的產(chǎn)

23、品是(D )A數(shù)據(jù)流程圖案 B數(shù)據(jù)字典C判定表 D需求規(guī)格說明書17數(shù)據(jù)字典是軟件需求分析階段的最重要工具之一,其最基本的功能是(C )A數(shù)據(jù)庫設(shè)計 B數(shù)據(jù)通信 C數(shù)據(jù)定義 D數(shù)據(jù)維護(hù)18.(D )引入了“風(fēng)險驅(qū)動”的思想,適用于大規(guī)模的內(nèi)部開發(fā)項目。A增量模型 B噴泉模型 C原型模型 D螺旋模型19模塊的內(nèi)聚性最高的是( D)A邏輯內(nèi)聚 B時間內(nèi)聚 C偶然內(nèi)聚 D功能內(nèi)聚20.提高測試的有效性非常重要,成功的測試是指(D )A.證明了被測試程序正確無誤 B. 說明了被測試程序符合相應(yīng)的要求C.未發(fā)現(xiàn)被測程序的錯誤 D.發(fā)現(xiàn)了至今為止尚未發(fā)現(xiàn)的錯誤_簡述軟件測試的任務(wù)、目的與類型。答:軟件測試

24、是一個為了尋找軟件錯誤而運行程序的過程。目的就是為了發(fā)現(xiàn)軟件中的錯誤。一個好的測試用例是指很可能找到迄今為止尚未發(fā)現(xiàn)的錯誤的用例。一個成功的測試是指揭示了迄今為止尚未發(fā)現(xiàn)的錯誤的測試。軟件測試主要分為白盒測試和黑盒測試兩大類。簡述軟件工程目標(biāo)和面臨的主要問題。答:軟件工程的目標(biāo)是應(yīng)用計算機(jī)科學(xué)、數(shù)學(xué)及管理科學(xué)等原理開發(fā)軟件的工程。它采用經(jīng)過實踐驗證的工程的原則、方法,以提高質(zhì)量,降低成本。 但是目前的軟件開發(fā)面臨著許多問題:(1)對軟件開發(fā)成本和進(jìn)度的估計常常很不準(zhǔn)確。(2)用戶常對“已完成的”軟件系統(tǒng)不滿意。(3)軟件產(chǎn)品的質(zhì)量往往靠不住。(4) 軟件常常很難維護(hù)。(5)軟件常常缺乏適當(dāng)?shù)奈?/p>

25、檔資料。(6)軟件開發(fā)生產(chǎn)率提高的速度,遠(yuǎn)遠(yuǎn)跟不上計算機(jī)應(yīng)用迅速普及深入的趨勢。(7)軟件成本在計算機(jī)系統(tǒng)總成本中所占的比例逐年上升。簡述軟件開發(fā)過程、每個里程碑的提交物。答:軟件開發(fā)的基本過程:(1)可行性研究,做初步的需求分析工作,決定項目可行與否(2)軟件需求分析,軟件工程師必須了解軟件的信息領(lǐng)域,以及需求的功能、行為、性能和接口。系統(tǒng)需求和軟件需求均需文檔化,并與用戶一起復(fù)審。并提交需求分析報告。(3)設(shè)計,包括總體設(shè)計和詳細(xì)設(shè)計,軟件設(shè)計是一個多步驟的過程,主要是對軟件的數(shù)據(jù)結(jié)構(gòu)、軟件體系結(jié)構(gòu)、界面表示及過程細(xì)節(jié)進(jìn)行設(shè)計。設(shè)計過程將需求轉(zhuǎn)換為軟件表示,在編碼之前可以評估其質(zhì)量,所有設(shè)

26、計均要文檔化,它是軟件配置的重要組成部分,經(jīng)復(fù)審后提交相應(yīng)的概要設(shè)計和詳細(xì)設(shè)計報告。(4)編碼,把設(shè)計轉(zhuǎn)化為機(jī)器可執(zhí)行的程序。提交源程序清單。(5)測試,提交測試報告。(6)維護(hù),提交維護(hù)報告。軟件生命周期模型?瀑布模型?快速原型模型?答;概括的說,軟件生命周期模型由軟件定義、軟件開發(fā)和運行維護(hù)3個時期組成,每個時期又進(jìn)一步劃分成若干個階段。 軟件生命周期模型有問題定義,可行性研究,需求分析,總體詳細(xì)設(shè)計,總體編碼和單元測試,綜合測試,軟件維護(hù)組 瀑布模型是一個項目開發(fā)架構(gòu),開發(fā)過程是通過設(shè)計一系列階段順序展開的,從系統(tǒng)需分析開始直到產(chǎn)品發(fā)布和維護(hù),每個階段都會產(chǎn)生循環(huán)反饋,如果有信息未被覆蓋

27、或者發(fā)現(xiàn)了問題,那么最好 “返回”上一個階段并進(jìn)行適當(dāng)?shù)男薷?,項目開發(fā)進(jìn)程從一個階段“流動”到下一個階段。 快速原型模型是在用戶不能給出完整、準(zhǔn)確的需求說明,或者開發(fā)者不能確定算法的有效性、操作系統(tǒng)的適應(yīng)性或人機(jī)交互的形式等許多情況下,可以根據(jù)用戶的一組基本需求,快速建造一個原型(可運行的軟件),然后進(jìn)行評估,進(jìn)一步精化、調(diào)整原型,使其滿足用戶的要求,也使開發(fā)者對將要做的事情有更好的理解。軟件?軟件產(chǎn)品具有哪些特性?答:軟件是計算機(jī)系統(tǒng)中與硬件相互依存的另一部分,它是包括程序,數(shù)據(jù)及其相關(guān)文檔的完整集合。軟件產(chǎn)品具有以下特性:1、非常復(fù)雜;2、成本高;3、風(fēng)險大;4、維護(hù)困難;可行性分析的目的

28、和主要任務(wù)是什么?答:可行性分析的目的不是解決問題,而是確定問題是否值得去解決。主要任務(wù)是從下面幾方面研究每種解法的可行性:技術(shù)可行性,經(jīng)濟(jì)可行性,操作可行性,社會可行性,抉擇可行性。需求分析的目的和主要任務(wù)是什么?答:進(jìn)行需求分析是為了準(zhǔn)確地回答“系統(tǒng)必須做什么”這個問題,決定可以做什么不做什么。需求分析的主要任務(wù)是描述系統(tǒng)的功能需求、性能需求、數(shù)據(jù)需求、可靠性/可用性需求、出錯處理需求、接口需求、約束條件、其他需求。總體設(shè)計的目的和主要任務(wù)是什么?答:總體設(shè)計的目的是用比較抽象的方法確定系統(tǒng)概要地是如何實現(xiàn)的(How to do generally !)。從初步的數(shù)據(jù)流圖導(dǎo)出(設(shè)計出)軟件

29、結(jié)構(gòu);根據(jù)數(shù)據(jù)需求設(shè)計數(shù)據(jù)結(jié)構(gòu)(數(shù)據(jù)庫結(jié)構(gòu)、文件結(jié)構(gòu)設(shè)計)。 主要任務(wù)是概括地說,如何解決這些問題,系統(tǒng)怎樣實現(xiàn)?劃分系統(tǒng)的構(gòu)成成分(黑盒子),如程序、文件、數(shù)據(jù)庫、人工操作等。設(shè)計系統(tǒng)的軟件結(jié)構(gòu),即構(gòu)成模塊。詳細(xì)設(shè)計的目的和主要任務(wù)是什么?答:在總體設(shè)計的基礎(chǔ)上,進(jìn)一步確定軟件怎樣具體實現(xiàn),經(jīng)過這個階段的設(shè)計工作,應(yīng)該得出對目標(biāo)系統(tǒng)的精確描述,從而在編碼階段可以把這個描述直接翻譯成用某種程序設(shè)計語言書寫的程序。 主要任務(wù)包括人機(jī)界面設(shè)計、模塊過程設(shè)計。編碼的目的和主要任務(wù)是什么?答:把軟件設(shè)計結(jié)果翻譯成用某種程序設(shè)計語言書寫的程序軟件測試的目的和主要任務(wù)是什么(G.J.Myers的觀點)?答

30、:發(fā)現(xiàn)程序中的錯誤軟件維護(hù)的目的和主要任務(wù)是什么?維護(hù)的類型有哪些?答:軟件維護(hù)是軟件生命周期中最后一個、持續(xù)時間最長的階段。 主要任務(wù)是在軟件已經(jīng)交付使用之后,為了改正錯誤或滿足新的需要而修改軟件,目的是提高軟件的可靠性、可用性,延長軟件的壽命。維護(hù)的類型有:改正性(錯誤)、適應(yīng)性(環(huán)境)、完善性(功能)、預(yù)防性(新產(chǎn)品)什么是耦合?模塊的耦合包括哪些類型?答:耦合是對一個軟件結(jié)構(gòu)內(nèi)不同模塊之間互連程度的度量。模塊的耦合包括以下幾種類型:數(shù)據(jù)耦合,控制耦合,特征耦合,公共環(huán)境耦合,內(nèi)容耦合,標(biāo)記耦合,無耦合/非直接耦合什么是內(nèi)聚?模塊的內(nèi)聚包括哪些類型?答:內(nèi)聚標(biāo)志著一個模塊內(nèi)各個元素彼此結(jié)

31、合的緊密程度,它是信息隱蔽和局部化概念的自然擴(kuò)展模塊的內(nèi)聚包括以下幾種類型:低內(nèi)聚偶然內(nèi)聚,邏輯內(nèi)聚,時間內(nèi)聚中內(nèi)聚過程內(nèi)聚,通信內(nèi)聚; 高內(nèi)聚順序內(nèi)聚,功能內(nèi)聚如何選擇程序設(shè)計語言的工程特性答:1.系統(tǒng)用戶的要求2.可以使用的編譯程序3.可以得到的軟件工具4.工程規(guī)模5.程序員的知識6.軟件可移植性的要求7.軟件的應(yīng)用領(lǐng)域什么是編碼風(fēng)格?為什么要強(qiáng)調(diào)編碼風(fēng)格?答:編碼風(fēng)格包括以下內(nèi)容:程序內(nèi)部良好的文檔(注釋)、數(shù)據(jù)說明、語句構(gòu)造、輸入輸 出和效率保障等。因為編碼風(fēng)格對軟件的可讀性、可維護(hù)性、可靠性、可用性很重要,所以要強(qiáng)調(diào)編碼風(fēng)格。 單選題1 在軟件危機(jī)中表現(xiàn)出來的軟件質(zhì)量差的問題,其原因

32、是_C_。A 軟件研發(fā)人員素質(zhì)太差 B.用戶經(jīng)常干預(yù)軟件系統(tǒng)的研發(fā)工作B 沒有軟件質(zhì)量標(biāo)準(zhǔn) D.軟件開發(fā)人員不遵守軟件質(zhì)量標(biāo)準(zhǔn)2 在軟件質(zhì)量因素中,軟件在異常條件下仍能運行的能力成為軟件的_B_。A 安全性 B.健壯性 C.可用性 D.可靠性3 在下列測試技術(shù)中,_D_不屬于黑盒測試技術(shù)。A 等價劃分 B.邊界值分析 C.錯誤推測 D.邏輯覆蓋4 軟件工程方法是在實踐中不斷發(fā)展著的方法,而早期的軟件工程方法主要是指_B_。A 原型化方法 B.結(jié)構(gòu)化方法 C.功能化方法 D.面向?qū)ο蠓椒? _C_是把對象的屬性和操作結(jié)合在一起,構(gòu)成一個獨立的對象,其內(nèi)部信息對外界是隱蔽的,外界只能通過有限的接口

33、與對象發(fā)生聯(lián)系。A 多態(tài) B.繼承 C.封裝 D.消息6 Jackson方法是在軟件開發(fā)過程中常用的方法,使用Jackson方法時可以實現(xiàn)_A_。A 從數(shù)據(jù)結(jié)構(gòu)導(dǎo)出程序結(jié)構(gòu) B.從數(shù)據(jù)流圖導(dǎo)出初始結(jié)構(gòu)圖B 從模塊結(jié)構(gòu)導(dǎo)出數(shù)據(jù)結(jié)構(gòu) D.從模塊結(jié)構(gòu)導(dǎo)出程序結(jié)構(gòu)7 軟件測試時為了_B_而執(zhí)行程序的過程。A 糾正錯誤 B.發(fā)現(xiàn)錯誤 C.避免錯誤 D.證明錯誤8 在軟件系統(tǒng)中,一個模塊應(yīng)具有什么樣的功能,這是由_B_決定的。A 總體設(shè)計 B.需求分析 C.詳細(xì)設(shè)計 D.程序設(shè)計9 面向?qū)ο蠓治鍪菍ο到y(tǒng)進(jìn)行_A_的一種方法。A 需求分析 B.程序設(shè)計 C.設(shè)計評審 D.測試驗收10 軟件文檔是軟件工程實施

34、中的重要部分,它不僅是軟件開發(fā)各階段的重要依據(jù),而且影響軟件的_B_。A 可理解性 B.可維護(hù)性 C.可擴(kuò)展性 D.可移植11 模塊內(nèi)聚度越高,說明模塊內(nèi)各成分彼此結(jié)合的程序越_B_。A 松散 B.緊密C.無法判斷 D.相等12 軟件開發(fā)的瀑布模型,一般都將開發(fā)過程劃分為:分析、設(shè)計、編碼、測試和維護(hù)等階段,一般認(rèn)為可能占用人員最多的階段是_C_。A 分析階段 B.設(shè)計階段C.維護(hù)階段D.測試階段13 常用的面向?qū)ο蟮能浖^程模型是_B_。A 瀑布模型 B.噴泉模型C.原型模型D.增量模型14 面向?qū)ο蟮姆治鲭A段建立的系統(tǒng)模型不包括_D_。A 對象模型B.動態(tài)模型C.功能模型D.數(shù)據(jù)模型15 提高軟件的可維護(hù)性可采用很多措施,下列哪個不在措施之列?AA 提供沒有錯誤的程序 B.建立質(zhì)量保證制度C.改進(jìn)程序文檔質(zhì)量D.明確軟件質(zhì)量標(biāo)準(zhǔn)一、 填空題1 軟件工程中的結(jié)構(gòu)化分析SA是一種面向_數(shù)據(jù)流_的分析方法。2 軟件模塊獨立性的兩個定性度量標(biāo)準(zhǔn)是_內(nèi)聚性

溫馨提示

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

評論

0/150

提交評論