軟件工程試題及答案_第1頁
軟件工程試題及答案_第2頁
軟件工程試題及答案_第3頁
軟件工程試題及答案_第4頁
軟件工程試題及答案_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、4. 面向?qū)ο蟮姆治龇椒ㄖ饕墙⑷惸P?,即(D )。A)系統(tǒng)模型、ER模型、應(yīng)用模型 B)對象模型、動態(tài)模型、應(yīng)用模型C) E -R模型、對象模型、功能模型D)對象模型、動態(tài)模型、功能模型5. 在E-R模型中,包含以下基本成分()。A)數(shù)據(jù)、對象、實體 B)控制、聯(lián)系、對象C)實體、聯(lián)系、屬性D)實體、屬性、操作9 若有一個計算類型的程序,它的輸入量只有一個 X,其范圍是-1.0, 1.0,現(xiàn)從輸入的角度考慮一組測試用例:-1.001, -1.0, 1.0, 1.001.設(shè)計這組測試用例的方法是(c )A.條件覆蓋法 B 等價分類法C.邊界值分析法D 錯誤推測法10、詳細(xì)設(shè)計的基本任務(wù)是確

2、定每個模塊的(d )A 功能B.調(diào)用關(guān)系C.輸入輸出數(shù)據(jù) D.算法11. 設(shè)函數(shù)C (X)定義問題X的復(fù)雜程序,函數(shù) E (X)確定解決問題 X需要的工作量(時間)。對于兩個問題 P1 和 P2,如果 C ( P1) >C ( P2)顯然 E (P1) >E (P2),則得出結(jié)論 E (P1+P2 >E (P1) +E (P2)就是:(a ) A 模塊化的根據(jù)B.逐步求精的根據(jù)C 抽象的根據(jù)D 信息隱藏和局部化的根據(jù)13. 面向數(shù)據(jù)流的設(shè)計方法把( D)映射成軟件結(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.過程

3、 C. 順序D. 時間15. 確定測試計劃是在(D)階段制定的.A.總體設(shè)計B. 詳細(xì)設(shè)計 C. 編碼D. 測試16 需求分析的產(chǎn)品是(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ù)維護18. (D )引入了 “風(fēng)險驅(qū)動”的思想,適用于大規(guī)模的內(nèi)部開發(fā)項目。A.增量模型B.噴泉模型C .原型模型D .螺旋模型(X )2、系統(tǒng)測試的主要方法是白盒法,主要進行功能測試、性能測試、安全性測試及可靠性等測試。(X )4、軟件需求分析的任務(wù)是建立軟件模塊結(jié)構(gòu)圖

4、。(V ) 5、盡可能使用高級語言編寫程序( X ) 6、以結(jié)構(gòu)化分析方法建立的系統(tǒng)模型就是數(shù)據(jù)流圖。(X )7、進行總體設(shè)計時加強模塊間的聯(lián)系。(X ) 8、編碼時盡量多用全局變量.(V ) 9、用CASE環(huán)境或程序自動生成工具來自動生成一部分程序.(X ) 10、軟件測試是要發(fā)現(xiàn)軟件中的所有錯誤。1. 軟件生命期各階段的任務(wù)是什么?答:軟件生命期分為 7個階段:1、問題定義:要解決的問題是什么2、 可行性研究:確定問題是否值得解,技術(shù)可行性、經(jīng)濟可行性、操作可行性3、需求分析:系統(tǒng)必須做什么4、總體設(shè)計:系統(tǒng)如何實現(xiàn),包括系統(tǒng)設(shè)計和結(jié)構(gòu)設(shè)計5、詳細(xì)設(shè)計:具體實現(xiàn)設(shè)計的系統(tǒng)6、實現(xiàn):編碼和測

5、試 7、運行維護:保證軟件正常運行。2、軟件重用的效益是什么?答:1、軟件重用可以顯著地改善軟件的質(zhì)量和可靠性。2、軟件重用可以極大地提高軟件開發(fā)的效率。3、節(jié)省軟件開發(fā)的成本,避免不必要的重復(fù)勞動和人力、財力的浪費。3、 自頂而下漸增測試與自底而上漸增測試各有何優(yōu)、缺點?答: 自頂而下漸增測試優(yōu)點:不需要測試驅(qū)動程序,能夠在測試階段的早期實現(xiàn)并驗證系統(tǒng)的主要功能,而且能夠盡早發(fā)現(xiàn)上層模塊的接口錯誤。缺點:需要存根程序,底層錯誤發(fā)現(xiàn)較晚。自底而上漸增測試優(yōu)點與缺點和自頂而下漸增測試相反。4、提高可維護性的方法有哪些?答:在軟件工程的每一階段都應(yīng)該努力提高系統(tǒng)的可維護性,在每個階段結(jié)束前的 審查

6、和復(fù)審中,應(yīng)著重對可維護性進行復(fù)審。在需求分析階段的復(fù)審中,應(yīng)對將來要擴充和修改的部分加以注明。在討論軟件可移植性問題時,要考慮可能要影響軟 件維護的系統(tǒng)界面。在軟件設(shè)計的復(fù)審中,因從便于修改、模塊化和功能獨立的目標(biāo)出發(fā),評價軟件的結(jié)構(gòu)和過程,還應(yīng)對將來可能修改的 部分預(yù)先做準(zhǔn)備。在軟件代碼復(fù)審中,應(yīng)強調(diào)編碼風(fēng)格和內(nèi)部說明這兩個影響可維護性的因素。在軟件系統(tǒng)交付使用前的每一測試步驟中都應(yīng)給出需要進行預(yù)防性維護部分的提示。在完成每項維護工作后,都應(yīng)對軟件維護本身進行仔細(xì)認(rèn)真的復(fù)審。為了從根本上提高軟件系統(tǒng)的可維護性,人們正試圖通過直接維護軟件規(guī)格說明來維護軟件,同時也在大力發(fā)展軟件1重用技術(shù)。簡

7、述軟件測試要經(jīng)過哪幾個步驟,每個步驟與什么文檔有關(guān)。【解答】測試過程按4個步驟進行,即單元測試(模塊測試)、集成測試(子系統(tǒng)測試和系統(tǒng)測試)、確認(rèn)測試(驗收測試)和平行運行。單元測試集中對用源代碼實現(xiàn)的每一個程序單元進行測試,與其相關(guān)的文檔是單元測試集成測試把已測試過的模塊組裝起來,主要對與設(shè)計相關(guān)的軟件體系結(jié)構(gòu)的構(gòu)造進行測試。與其相關(guān)的文檔是集成測 試計劃和軟件需求說明書。確認(rèn)測試則是要檢查已實現(xiàn)的軟件是否滿足了需求規(guī)格說明中確定了的各種需求,以及軟件配置是否完全、正確。與 其相關(guān)的文檔是確認(rèn)測試計劃和軟件需求說明書。平行運行把已經(jīng)經(jīng)過確認(rèn)的軟件納入實際運行環(huán)境中,與其他系統(tǒng)成份組合在一起進

8、行測試。與其相關(guān)的文檔:用戶_指南、使用手冊等。四、應(yīng)用題(每題 8分,共40分)1、假設(shè)一家工廠的采購部每天需要一張定貨報表,報表按零件編號排序,表中列岀所有需要再次定貨的零件。對于每個需要再次定貨的零件應(yīng)該列岀下述數(shù)據(jù):零件編號,零件名稱,定貨數(shù)量,目前價格,主要供應(yīng)者,次要供應(yīng) 者。零件入庫或?qū)鐜旆Q為事務(wù),通過放在倉庫中的CRT終端把事務(wù)報告給定貨系統(tǒng)。當(dāng)某種零件的庫存數(shù)量少于庫存量臨界值時就應(yīng)該再次定貨。要求:畫岀系統(tǒng)的數(shù)據(jù)流圖。答:色庫厲務(wù)管理員2、將下面給岀的偽碼轉(zhuǎn)換為void root ( float rootl, float root2 ) i = 1; j = 0; whil

9、e ( i <= 10 ) L.l摟收.J事務(wù)1.2N-S圖和PAD圖。f、1.3廠處理產(chǎn)生定黃.X7宦貨怡息1疋貨啟息D2迅貸佶息輸入一元二次方程的系數(shù)a, b, c;p = b*b - 4*a*c;if ( p < 0 )輸出“方程i無實數(shù)根” ;else if ( p > 0 )求出根并輸出;if ( p = 0 ) 【解答】(1 ) N-S圖求出重根并輸出;j = j + 1 ; i = i +1 ; 輸出重根的方程的個數(shù)j; i = 1; j = 0;while ( i <= 10 )輸入 a, b, c;計算 p = b2 - 4aG(2) PAD 圖F;輸

10、出“方程無實根Fi邈入 a,bpc>計算 戈=上乞範(fàn);;求出根并輸岀求出根并輸出while(i <= 10 )求出重根并輸出出方程j +無實根i = i + 1;輸出重根的方p程個數(shù)i求出重根并輸出;j =j+1;輸出重根的方程個數(shù)ii = i + 1;3、:輸入三整數(shù),判斷是否構(gòu)成三角形,如構(gòu)成三角形,則輸岀三條邊的值,否則輸岀”不能構(gòu)成三角形”.要求:1.用程序流程圖表示該冋題的算法;2.計算程序復(fù)雜度;答:3.設(shè)計路徑覆蓋的測試用例。2匚IV路徑:.一一一一一.一一一一.一一一.一一一一一程序復(fù)雜度=3+仁4路徑測試用例(A, B, C)結(jié)果1A=3,B=4,C=5A=3,B

11、=4,C=52A=5,B=8,C=2不能構(gòu)成三角形3A=2,B=2,C=5不能構(gòu)成三角形4A=5,B=2,C=2不能構(gòu)成三角形測試用例4、某航空公司規(guī)定,乘客可以免費托運重量不超過30kg的行李。當(dāng)行李重量超過 30kg時,對頭等艙的國內(nèi)乘客超重部分每公斤收費4元,對其他艙的國內(nèi)乘客超重部分每公斤收費6元,對外國乘客超重部分每公斤收費比國內(nèi)乘客多一倍,對殘疾乘客超重部分每公斤收費比正常乘客少一半。用判定樹表示與上述每種條件組合相對應(yīng)的計算行李費的算法.答案:頭竽艙匚扶他臉(F-30JX230)X4(»P-30)X3(r-30)X6外國乘客頭等艙匚其他龍匚正當(dāng)康客(-30)X125、一

12、個軟件公司有許多部門,分為開發(fā)部門和管理部門兩種,每個開發(fā)部門開發(fā)多個軟件產(chǎn)品,每個部門由部門名字唯一 確定。該公司有許多員工,員工分為經(jīng)理,工作人員和開發(fā)人員。開發(fā)部門有經(jīng)理和開發(fā)人員,管理部門有經(jīng)理和工作人員。每個開發(fā)人員可參加多個開發(fā)項目,每個開發(fā)項目需要多個開3軟件公司部門名5答案:發(fā)人員,每位經(jīng)理可主持多個開發(fā)項目,建立該公司的對象模型。1、C2、B3、B4、D5、C6、A7、B8、D9、C10、D 11、A12、D 13、A14、A 15、A16、D 17、C 18、D 19、D 20、DB 卷1、 瀑布模型把軟件生命周期劃分為8個階段:問題的定義、可行性研究、軟件需求分析、系統(tǒng)總

13、體設(shè)計、詳細(xì)設(shè)計、編碼、測試和運行、維護。八個階段又可歸納為三個大的階段:計劃階段、開發(fā)階段和(運行階段)。2、從結(jié)構(gòu)化的瀑布模型看,在它的生命周期中的八個階段中,需求分析階段出錯,對軟件的影響最大。3、 在結(jié)構(gòu)化的瀑布模型中,(需求分析階段)定義的標(biāo)準(zhǔn)將成為軟件測試中的系統(tǒng)測試階段的目標(biāo)。4、軟件工程的出現(xiàn)主要是由于(軟件危機的出現(xiàn))5軟件工程方法學(xué)的目的:使軟件生產(chǎn)規(guī)范化和工程化,而軟件工程方法得以實施的主要保證是軟件開發(fā)工具和軟件開發(fā)的環(huán)境。6、軟件開發(fā)常使用的兩種基本方法是結(jié)構(gòu)化和原型化方法,在實際的應(yīng)用中,它們之間的關(guān)系表現(xiàn)為相互補充。7、UML是軟件開發(fā)中的一個重要工具,它主要應(yīng)用

14、于基于對象的面向?qū)ο蟮姆椒ā?amp;在下面的軟件開發(fā)方法中,哪一個對軟件設(shè)計和開發(fā)人員的開發(fā)要求最高(原型化方法)。9、 結(jié)構(gòu)化分析方法是一種預(yù)先嚴(yán)格定義需求的方法,它在實施時強調(diào)的是分析對象的(數(shù)據(jù)流)。10、軟件開發(fā)的瀑布模型,一般都將開發(fā)過程劃分為:分析、設(shè)計、編碼和測試等階段,一般認(rèn)為可能占用人員最多的階 段是(編碼階段)。11、 軟件開發(fā)模型是指軟件開發(fā)的全部過程、活動和任務(wù)的結(jié)構(gòu)框架。 主要的開發(fā)模型有瀑布模型、演化模型、螺旋模型、噴泉模型和智能模型。螺旋模型將瀑布模型和演化模型相結(jié)合,并增加了(風(fēng)險分析),它建立在()的基礎(chǔ)上,沿著螺線自內(nèi)向外每旋轉(zhuǎn)一圈,就得到 (原型)的一個

15、新版本。噴泉模型描述了 (面向?qū)ο螅┑拈_發(fā)模型,它體現(xiàn)了這種開發(fā)方 法創(chuàng)建軟件的過程所固有的(遞歸)和(開發(fā)各階段之間無“間隙”)的特征。12、 以下不屬于白盒測試技術(shù)的是(等價類劃分)。13、 為改正軟件系統(tǒng)中潛藏的錯誤而進行的維護活動稱為(糾錯性維護)。14、 保證軟件質(zhì)量的手段有復(fù)審、復(fù)查、管理復(fù)審和測試等。其中復(fù)審發(fā)生在軟件生命周期的(每個階段結(jié)束之前)。15、 完整的系統(tǒng)設(shè)計應(yīng)包括(計算機系統(tǒng)設(shè)計、應(yīng)用軟件設(shè)計、數(shù)據(jù)庫設(shè)計和網(wǎng)絡(luò)設(shè)計)。16、 在信息系統(tǒng)的物理模型中,表示系統(tǒng)各個物理組成部分之間的數(shù)據(jù)流動情況的工具是(系統(tǒng)流程圖)。二、填空題(每題1分,共10分)系統(tǒng)流程圖是描述物理

16、模型的傳統(tǒng)工具,用圖形符號表示系統(tǒng)中各個元素表達了系統(tǒng)中各種元素之間的(信息流動)情況。2、成本效益分析的目的是從(經(jīng)濟)角度評價開發(fā)一個項目是否可行。3、 自頂向下結(jié)合的漸增式測試法,在組合模塊時有兩種組合策略:深度優(yōu)先策略和(寬度優(yōu)先策略)。4、 在JSP方法中解決結(jié)構(gòu)沖突的具體辦法是 (中間數(shù)據(jù)結(jié)構(gòu)或中間文件)。5、 詳細(xì)設(shè)計的任務(wù)是確定每個模塊的內(nèi)部特性,即模塊的算法、(使用的數(shù)據(jù))。6、 所有軟件維護申請報告要按規(guī)定方式提出,該報告也稱(軟件問題)報告。7、 獨立路徑是指包括一組以前沒有處理的語句或條件的一條路徑。從程序圖來看,一條獨立路徑是至少包含有一條(在其他獨立路徑中未有過)的

17、邊的路徑。8設(shè)計任何一個人機界面,一般必須考慮(系統(tǒng)響應(yīng)時間、用戶幫助機制、錯誤信息處理和命令方式四個方面。9、在軟件測試中,已知產(chǎn)品內(nèi)部工作過程,通過測試檢驗產(chǎn)品內(nèi)部動作是否按照產(chǎn)品規(guī)格說明的規(guī)定正常進行的方法稱為(白盒)測試法。10、(耦合度)是對軟件結(jié)構(gòu)中??扉g關(guān)聯(lián)程度的一種度量。1. 缺乏有力的方法學(xué)的指導(dǎo)和有效的開發(fā)工具的支持,這往往是產(chǎn)生軟件危機的原因之一。()2. 一個好的開發(fā)人員應(yīng)具備的素質(zhì)和能力不包括具有良好的書面和口頭表達能力。()3. 在用戶需求分析時觀察用戶手工操作過程不是為了模擬手工操作過程,而是為了獲取第一手資料,并從中提取出有價值的需求。()4. 快速原型技術(shù)的適

18、用于軟件產(chǎn)品要求大量的用戶交互、或產(chǎn)生大量的可視輸出、或設(shè)計一些復(fù)雜的算法等場合。5.流程圖也稱為程序框圖是最常用的一種表示法。6. 面向數(shù)據(jù)設(shè)計方法一般都包括下列任務(wù):確定數(shù)據(jù)結(jié)構(gòu)特征;用順序、選擇和重復(fù)三種基本形式表示數(shù)據(jù)等步驟。7. 理想的人機界面應(yīng)針對具有典型個性的特定的一類用戶設(shè)計。()8. 數(shù)據(jù)輸入的一般準(zhǔn)則中包括盡量增加用戶輸入的動作。()9. 用窮舉測試是較現(xiàn)實的測試方法。()10、在軟件維護過程中改善性維護是為適應(yīng)環(huán)境的變化而修改軟件的活動。()1、軟件維護是軟件生命周期的重要組成,而影響維護的因素較多,除了人員因素、技術(shù)因素和管理因素外,還有程序自a)軟件系統(tǒng)的規(guī)模;b)軟

19、件系統(tǒng)的年齡;c)軟件系統(tǒng)的結(jié)構(gòu)。1)給出上述三項因素的解釋,闡述“規(guī)?!?、“年齡”和“結(jié)構(gòu)”的具體含義。(5分)2)扼要分析影響維護工作量的因素,即分析可能增加維護工作量的因素和可能減少維護工作量的因素。(5分)3)簡單傳述軟件可維護性度量的含義。(5分)2、可行性研究報告的主要內(nèi)容有哪些 ?(5分)3、系統(tǒng)設(shè)計的內(nèi)容是什么? (10分)五、綜合題(10分)某電器集團公司下屬的廠包括技術(shù)科、生產(chǎn)科等基層單位?,F(xiàn)在想建立一個計算機輔助企業(yè)管理系 統(tǒng),其中:生產(chǎn)科的任務(wù)是:(1)根據(jù)銷售公司轉(zhuǎn)來的內(nèi)部合同(產(chǎn)品型號、規(guī)格、數(shù)量、交獲日期)制定車間月生產(chǎn)計劃。(2)根據(jù)車間實際生產(chǎn)日報表、周報表調(diào)

20、整月生產(chǎn)計劃(3)以月生產(chǎn)計劃為以及,制定產(chǎn)品設(shè)計(結(jié)構(gòu)、工藝)及產(chǎn)品組裝月計劃。(4) 將產(chǎn)品的組裝計劃傳達到各科,將組裝月計劃分解為周計劃,下達給車間技術(shù)科的任務(wù)是:(1)根據(jù)生產(chǎn)科轉(zhuǎn)來的組裝計劃進行產(chǎn)品結(jié)構(gòu)設(shè)計,產(chǎn)生產(chǎn)品裝配圖給生產(chǎn)科,產(chǎn)生外購需求計劃給供應(yīng)科,并產(chǎn) 生產(chǎn)品自制物料清單。(2)根據(jù)組裝計劃進行產(chǎn)品工藝設(shè)計,根據(jù)產(chǎn)品自制物料清單產(chǎn)生工藝流程圖給零件廠。 試寫出以上系統(tǒng)中生產(chǎn)科和技術(shù)科處理的軟件結(jié)構(gòu)圖。1. C 2.C 3.A 4.C 5.C 6.B 7.C 8.B 9.B 10.C11. B D A D A 12、D13、A 14、A 15、C 16、D1、信息流動2、經(jīng)濟

21、3、寬度優(yōu)先策略4、中間數(shù)據(jù)結(jié)構(gòu)或中間文件 5、使用的數(shù)據(jù)6、軟件問題7、在其他獨立路徑中未有過 8、系統(tǒng)響應(yīng)時間9、白盒測試法10、耦合度1、"2、X 3、“ 4、“ 5、“ 6、“7、"8、X9、X10、X1、系統(tǒng)的規(guī)模。指軟件系統(tǒng)規(guī)模的大小,系統(tǒng)規(guī)模越大,維護困難越大。系統(tǒng)的年齡。系統(tǒng)運行時間越長,可能經(jīng)過多次修改,從而造成維護的困難。系統(tǒng)的結(jié)構(gòu)。系統(tǒng)結(jié)構(gòu)合理與否,會給維護帶來困難。、增加維護工作量的因素有:軟件系統(tǒng)的年齡和規(guī)模、結(jié)構(gòu)合理性、程序復(fù)雜性、用戶的數(shù)量、應(yīng)用的變化和文檔的質(zhì)量。減少維護工作量的因素有:結(jié)構(gòu)化技術(shù)的使用、自動化工具的使用、數(shù)據(jù)庫技術(shù)應(yīng)用、高性

22、能軟件使用、新的軟件技術(shù)的應(yīng)用。、可維護性度量表示軟件系統(tǒng)維護工作的強度或維護工作量的大小。人們?yōu)榱硕攘靠删S護性,常將可維護性度 量問題分解為對:可測試性、可理解性、可修改性、可移植性、可靠性、有效性和可用性的度量。2、個可行性研究報告的主要內(nèi)容如下:(1) 引言:說明編寫本文檔的目的;項目的名稱、背景;本文檔用到的專門術(shù)語和參考資料。(2) 可行性研究前提:可行性研究前提。說明開發(fā)項目的功能、性能和基本要求;達到的目標(biāo);各種限制條 件;可行性研究方法和決定可行性的主要因素。(3) 對現(xiàn)有系統(tǒng)的分析:說明現(xiàn)有系統(tǒng)的處理流程和數(shù)據(jù)流程;工作負(fù)荷;各項費用支岀;所需要各類專 業(yè)技術(shù)人員的數(shù)量;所需

23、要各種設(shè)備;現(xiàn)有系統(tǒng)存在什么問題。(4 )所建議系統(tǒng)的技術(shù)可行性分析:所建議系統(tǒng)的簡要說明;處理流程和數(shù)據(jù)流程;與現(xiàn)有的系統(tǒng)比較的 優(yōu)越性;采用所建議系統(tǒng)對用戶的影響;對各種設(shè)備、現(xiàn)有軟件、開發(fā)環(huán)境、運行環(huán)境的影響;對經(jīng)費支岀的影響; 對技術(shù)可行性的評價。(5) 所建議系統(tǒng)的經(jīng)濟可行性分析:說明所建議系統(tǒng)的各種支岀,各種效益;收益投資比;投資回收周期。(6) 社會因素可行性分析:說明法律因素,對合同責(zé)任、侵犯專利權(quán)、侵犯版權(quán)等問題的分析;說明用戶 使用可行性,是否滿足用戶行政管理、工作制度、人員素質(zhì)的要求。(7) 其他可供選擇方案:逐一說明其他可供選擇的方案,并說明未被推薦的理由。(8) 結(jié)論

24、意見:說明項目是否能開發(fā);還需要什么條件才能開發(fā);對項目目標(biāo)有什么變動等。3、系統(tǒng)設(shè)計階段先從高層入手,然后細(xì)化。系統(tǒng)設(shè)計要決定整個結(jié)構(gòu)及風(fēng)格,這種結(jié)構(gòu)為后面設(shè)計階段的更詳細(xì)策 略的設(shè)計提供了基礎(chǔ)。(1 )系統(tǒng)分解。系統(tǒng)中主要的組成部分稱為子系統(tǒng),子系統(tǒng)既不是一個對象也不是一個功能,而是類、關(guān) 聯(lián)、操作、時間和約束的集合。每次分解的各子系統(tǒng)數(shù)目不能太多,最底層子系統(tǒng)稱為模塊。(2) 確定并發(fā)性。分析模型、現(xiàn)實世界及硬件中不少對象均是并發(fā)的。系統(tǒng)設(shè)計的一個重要目標(biāo)就是確定 哪些是必須同時動作的對象,哪些不是同時動作的對象。后者可以放在一起,而綜合成單個控制線或任務(wù)。(3) 處理器及任務(wù)分配。各并

25、發(fā)子系統(tǒng)必須分配給單個硬件單元,要么是一個一般的處理器,要么是一個 具體的功能單元,必須完成下面的工作:估計性能要求和資源需求,選擇實現(xiàn)子系統(tǒng)的硬軟件,將軟件子系統(tǒng)分配 給各處理器以滿足性能要求和極小化處理器之間的通信,決定實現(xiàn)各子系統(tǒng)的各物理單元的連接。(4) 數(shù)據(jù)存儲管理。系統(tǒng)中的內(nèi)部數(shù)據(jù)和外部數(shù)據(jù)的存儲管理是一項重要的任務(wù)。通常各數(shù)據(jù)存儲可以將 數(shù)據(jù)結(jié)構(gòu)、文件、數(shù)據(jù)庫組合在一起,不同數(shù)據(jù)存儲要在費用、訪問時間、容量以及可靠性之間做折中考慮。(5) 全局資源的處理。必須確定全局資源,并且制定訪問全局資源的策略。全局資源包括:物理資源,如 處理器、驅(qū)動器等;空間,如盤空間、工作站屏等;邏輯名

26、字,如對象標(biāo)識符、類名、文件名等。如果資源是物理對象, 則可以通過建立協(xié)議實現(xiàn)對并發(fā)系統(tǒng)的訪問, 以達到自身控制;如果資源是邏輯實體, 如對象標(biāo)識符,那么在共享環(huán)境中有沖突訪問的可能,如獨立的事務(wù)可能同時使用同一個對象標(biāo)識符,則各個全局 資源都必須有一個保護對象,由保護對象來控制對該資源的訪問。(6) 選擇軟件控制機制。分析模型中所有交互行為都表示為對象之間的事件。系統(tǒng)設(shè)計必須從多種方法中 選擇某種方法來實現(xiàn)軟件的控制。(7) 人機交互接口設(shè)計。設(shè)計中的大部分工作都與穩(wěn)定的狀態(tài)行為有關(guān),但必須考慮用戶使用系統(tǒng)的交互接口。五、綜合題畫出生產(chǎn)科圖的給 6分,畫出技術(shù)科的給 4分1 軟件項目的可行性

27、研究要進行一次()需求分析。A.詳細(xì)的 B.全面的 C.簡化的、壓縮的D.徹底的2、 系統(tǒng)流程圖用于可行性分析中的()的描述。A. 當(dāng)前運行系統(tǒng)B.當(dāng)前邏輯模型C.目標(biāo)系統(tǒng)D.新系統(tǒng)3、程序的三種基本控制結(jié)構(gòu)的共同特點是()A. 不能嵌套使用B.只能用來寫簡單程序C 已經(jīng)用硬件實現(xiàn)D.只有一個入口和一個出口4、 維護中,因誤刪除一個標(biāo)識符而引起的錯誤是()副作用 A.文檔 B.數(shù)據(jù)C.編碼D.設(shè)計5、 ()是以提高軟件質(zhì)量為目的的技術(shù)活動A.技術(shù)創(chuàng)新B.測試C.技術(shù)創(chuàng)造D.技術(shù)評審6、面向?qū)ο蠓椒▽W(xué)的出發(fā)點和基本原則是盡可能模擬人類習(xí)慣的思維方式,分析、設(shè)計和實現(xiàn)一個軟件系統(tǒng)的方法和過程,盡可

28、能接近于人類認(rèn)識世界解決問題的方法和過程。因此面向?qū)ο蠓椒ㄓ性S多特征,如軟件系統(tǒng)是由對象 組成的;();對象彼此之間僅能通過傳遞消息互相聯(lián)系;層次結(jié)構(gòu)的繼承。A. 開發(fā)過程基于功能分析和功能分解B.強調(diào)需求分析重要性C.把對象劃分成類,每個對象類都定義一組數(shù)據(jù)和方法D.對既存類進行調(diào)整7 、原型化方法是用戶和設(shè)計者之間執(zhí)行的一種交互構(gòu)成,適用于()系統(tǒng)。A 需求不確定性高的B.需求確定的C.管理信息D.實時8 、為了提高測試的效率,應(yīng)該()。A 隨機地選取測試數(shù)據(jù)B.取一切可能的輸入數(shù)據(jù)作為測試數(shù)據(jù)C.在完成編碼以后制定軟件的測試計劃D .選擇發(fā)現(xiàn)錯誤可能性大的數(shù)據(jù)作為測試數(shù)據(jù)9 、使用白盒測

29、試方法時,確定測試數(shù)據(jù)應(yīng)根據(jù)()和指定的覆蓋標(biāo)準(zhǔn)。A .程序的內(nèi)部邏輯B .程序的復(fù)雜結(jié)構(gòu)C.使用說明書D .程序的功能11、 軟件按照設(shè)計的要求,在規(guī)定時間和條件下達到不出故障,持續(xù)運行的要求的質(zhì)量特性稱為()。A.可用性B.可靠性 C. 正確性D.完整性12、瀑布模型的關(guān)鍵不足在于()A.過于簡單B.不能適應(yīng)需求的動態(tài)變更 C.過于靈活D.各個階段需要進行評審13、 軟件維護的副作用主要有以下哪幾種()A.編碼副作用、數(shù)據(jù)副作用、測試副作用B.編碼副作用、數(shù)據(jù)副作用、調(diào)試副作用C.編碼副作用、數(shù)據(jù)副作用、文檔副作用D.編碼副作用、文檔副作用、測試副作用14、 在下面的軟件開發(fā)方法中,哪一個

30、對軟件設(shè)計和開發(fā)人員的開發(fā)要求最高()。A、結(jié)構(gòu)化方法B、原型化方法C、面向?qū)ο蟮姆椒?D、控制流方法15、 軟件工程方法學(xué)的目的是:使軟件生產(chǎn)規(guī)范化和工程化,而軟件工程方法得以實施的主要保證是()。A、硬件環(huán)境B、軟件開發(fā)的環(huán)境 C、軟件開發(fā)工具和軟件開發(fā)的環(huán)境D、開發(fā)人員的素質(zhì)16、軟件開發(fā)模型是指軟件開發(fā)的全部過程、活動和任務(wù)的結(jié)構(gòu)框架。主要的開發(fā)模型有瀑布模型、演化模型、螺旋模型、噴泉模型和智能模型。螺旋模型將瀑布模型和演化模型相結(jié)合,并增加了(1),它建立在(2)的基礎(chǔ)上,沿著螺線自內(nèi)向外每旋轉(zhuǎn)一圈,就得到(2)的一個新版本。噴泉模型描述了(3)的開發(fā)模型,它體現(xiàn)了這種開發(fā)方法創(chuàng)建軟

31、件的過程所固有的(1)A、系統(tǒng)工程B、風(fēng)險分析C、(2)A、模塊劃分B、子程序分解C、(3)A、面向?qū)ο驜、面向數(shù)據(jù)流C、(4)A、 歸納B、推理C、 迭代D、(5A、開發(fā)各階段之間無“間隙”B :遞歸設(shè)計;D、原型面向數(shù)據(jù)結(jié)構(gòu)D、(4)和(5)的特征。設(shè)計評審D、進度控制面向事件驅(qū)動C、部分開發(fā)階段分界明顯D、開發(fā)過程不分段1.螺旋模型是在瀑布模型和增量模型的基礎(chǔ)上增加了風(fēng)險分析活動。2. 數(shù)據(jù)字典是對數(shù)據(jù)流圖中的數(shù)據(jù)流,加工、數(shù)據(jù)存儲、數(shù)據(jù)的源和終點進行詳細(xì)定義。()3. JAVA語言編譯器是一個 CASE工具。()。4. 軟件是指用程序設(shè)計語言 (如PASCALC,VISUAL BASI

32、C等)編寫的程序,軟件開發(fā)實際上就是編寫程序代碼。()5. 軟件模塊之間的耦合性越弱越好。()6.數(shù)據(jù)庫設(shè)計說明書是一個軟件配置項()7. 在面向?qū)ο蟮能浖_發(fā)方法中,每個類都存在其相應(yīng)的對象,類是對象的實例,對象是生成類的模板。()8. 過程描述語言可以用于描述軟件的系統(tǒng)結(jié)構(gòu)。()9. 如果通過軟件測試沒有發(fā)現(xiàn)錯誤,則說明軟件是正確的10.快速原型模型可以有效地適應(yīng)用戶需求的動態(tài)變化。11. 模塊化,信息隱藏,抽象和逐步求精的軟件設(shè)計原則有助于得到高內(nèi)聚,低耦合度的軟件產(chǎn)品。()12. 集成測試主要由用戶來完成。()13. 確認(rèn)測試計劃應(yīng)該在可行性研究階段制定()14. 白盒測試無需考慮模塊

33、內(nèi)部的執(zhí)行過程和程序結(jié)構(gòu),只要了解模塊的功能即可。()15. 軟件概要設(shè)計包括軟件系統(tǒng)結(jié)構(gòu)設(shè)計以及數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)庫設(shè)計。()1、分析軟件危機產(chǎn)生的主要原因有哪些?2、說明結(jié)構(gòu)化程序設(shè)計的主要思想是什么?3、軟件測試包括哪些步驟?說明這些步驟的測試對象是什么?4、需求分析與軟件設(shè)計二個階段任務(wù)的主要區(qū)別是什么?5、簡述文檔在軟件工程中的作用。某培訓(xùn)中心要研制一個計算機管理系統(tǒng)。它的業(yè)務(wù)是:將學(xué)員發(fā)來的信件收集分類后,按幾種不同的情況處理。1)如果是報名的,則將報名數(shù)據(jù)送給負(fù)責(zé)報名事務(wù)的職員,他們將查閱課程文件,檢查該課程是否額滿,然后在學(xué)生文件、課程文件上登記,并開岀報告單交財務(wù)部門,財務(wù)人員開

34、岀發(fā)票給學(xué)生。)如果是想注銷原來已選修的課程,則由注銷人員在課程文件、學(xué)生文件和帳目文件上做相應(yīng)的修改,并給學(xué)生注銷單。3)如果是付款的,則由財務(wù)人員在帳目文件上登記,也給學(xué)生一張收費收據(jù)。要求:1. 對以上問題畫出數(shù)據(jù)流程圖。(2.5分)2.畫出該培訓(xùn)管理的軟件結(jié)構(gòu)圖的主圖。(2.5分)1、C 2、A 3、D 4、C 5、D 6、C 7、A 8、D 9、A 10、C 11、B 12、B 13、C 14、B 15、C 16、 B D3) A D5) A1、“ 2、X 3、“ 4、X 5、“ 6、“ 7、X 8、X 9、X 10、“ 11、“ 12、X 13、X14、X 15、“1. 分析軟件危

35、機產(chǎn)生的主要原因有哪些?答:導(dǎo)致軟件危機的主要原因有:(1)軟件日益復(fù)雜和龐大(2)軟件開發(fā)管理困難和復(fù)雜(3)軟件開發(fā)技術(shù)落后(4)生產(chǎn)方式落后(5)開發(fā)工具落后(6 )軟件開發(fā)費用不斷增加2. 說明結(jié)構(gòu)化程序設(shè)計的主要思想是什么?答:(1)自頂向下、逐步求精的程序設(shè)計方法(2分)(2)使用3種基本控制結(jié)構(gòu)、單入口、單出口來構(gòu)造程序。3. 軟件測試包括哪些步驟?說明這些步驟的測試對象是什么?答:(1)單元測試,測試對象對單元模塊(2分)(2)集成測試,測試對象為組裝后的程序模塊(2分)(3)確認(rèn)測試,測試對象為可運行的目標(biāo)軟件系統(tǒng)(1分)4. 需求分析與軟件設(shè)計二個階段任務(wù)的主要區(qū)別是什么?

36、答:需求分析定義軟件的用戶需求,即定義待開發(fā)軟件能做什么(2.5分)軟件設(shè)計定義軟件的實現(xiàn)細(xì)節(jié)以滿足用戶需求,即研究如何實現(xiàn)軟件。(2.5分)5. 簡述文檔在軟件工程中的作用。(5分).(1)提高軟件開發(fā)過程的能見度(1分)(2)提高開發(fā)效率、便于用戶了解軟件功能、性能(1分)(3)作為開發(fā)人員階段工作成果和結(jié)束標(biāo)志(1分)(4)記錄開發(fā)過程的有關(guān)信息便于使用與維護(1分);(5)提供軟件運行、維護和培訓(xùn)有關(guān)資料;(1分)一、應(yīng)用題(5分)(1)數(shù)據(jù)流圖(2.5分)(2)軟件結(jié)構(gòu)(2.5分)常訓(xùn)計算虬營理疽件結(jié)料主世一、選擇題,請從四個可選項中選擇正確答案。(60分,每題3分)1. 軟件工程四

37、個層次由下至上是(),它們的順序不能互換。A. 質(zhì)量層、過程層、方法層、工具層B. 過程層、方法層、質(zhì)量層、工具層C. 方法層、過程層、質(zhì)量層、工具層D. 方法層、質(zhì)量層、過程層、工具層2. 根據(jù)軟件工程的7條基本原理判斷下面正確的選項是()A. 軟件錯誤發(fā)現(xiàn)的時機不重要,重要的是錯誤的嚴(yán)重程度B. 軟件錯誤只能通過運行代碼才能發(fā)現(xiàn)C. 軟件錯誤發(fā)現(xiàn)的越早改正的成本越低D. 。需求階段一般不會引入錯誤3. 下列有關(guān)標(biāo)準(zhǔn)的符號,屬于國內(nèi)標(biāo)準(zhǔn)的是()A. ZG B. GBC.GN D.CB4. 經(jīng)濟可行性研究的主要內(nèi)容包括( D )oA.開發(fā)過程B.開發(fā)工具C.風(fēng)險分析D.效益分析5. ( A )

38、定義了用戶使用該軟件要完成的任務(wù)。A.用戶需求 B.業(yè)務(wù)需求 C.性能需求D.功能需求6. 數(shù)據(jù)流程圖上的數(shù)據(jù)流必須封閉在( A )之間。A.外部過程 B.內(nèi)部數(shù)據(jù) C.內(nèi)部過程D.外部實體7. 按照模塊獨立性,耦合程度由強至弱正確的順序是( C )oA. 外部耦合、控制耦合、數(shù)據(jù)耦合B. 控制耦合、數(shù)據(jù)耦合、外部耦合C. 外部耦合、數(shù)據(jù)耦合、控制耦合D. 數(shù)據(jù)耦合、外部耦合、控制耦合8. PDL是描述處理過程(A ) oA.做什么B為什么做C.怎么做D.對誰做9. 面向?qū)ο蟮倪@種(D )模式與人們對客觀世界的認(rèn)識規(guī)律相符,從而使得面向?qū)ο蠹夹g(shù)在軟件工程領(lǐng)域中獲 得了廣泛的應(yīng)用。A.主體/動作

39、 B.主體/對象 C.主體/類 D.對象/屬性10. ()是從用戶的觀點描述系統(tǒng)功能,它由一組用例、參與者以及它們之間關(guān)系所組成。A.類圖 B.對象圖 C.順序圖 D.用例圖11. 面向?qū)ο蠓治龊驮O(shè)計涉及到三個方面的內(nèi)容:()、一系列有效的分析步驟和一個方便易用的建模工具。A. 一套完善的建模符號B.有效的數(shù)據(jù)結(jié)構(gòu)C.靈活的體系結(jié)構(gòu)D.穩(wěn)定的系統(tǒng)架構(gòu)12. 確定角色是()的任務(wù)。A.對象模型 B.用例模型 C.動態(tài)模型D.交互模型13. 面向?qū)ο笤O(shè)計首先要進行高層設(shè)計:確定系統(tǒng)的總體結(jié)構(gòu)和風(fēng)格,構(gòu)造系統(tǒng)的(),將系統(tǒng)劃分成不同的子系統(tǒng)。A.邏輯模型 B.物理模型C.數(shù)據(jù)模型D.用例模型14.

40、每個子系統(tǒng)的接口上定義了若干(),其他子系統(tǒng)只能通過接口享受這個子系統(tǒng)提供的服務(wù)。A.操作 B.數(shù)據(jù)C.屬性D.命令15. 科學(xué)計算領(lǐng)域一般不選擇()語言。A.FORTRAN B.C/C +C.匯編語言D.PASCAL16. 對于嵌套的循環(huán)和分支程序,層次不要超過()層。A.1B.2C.3D.517. 軟件中遺留的錯誤數(shù)量與已經(jīng)發(fā)現(xiàn)的錯誤數(shù)量成()oA.反比B.正比C.相等 D.沒關(guān)系18. 黑盒測試在設(shè)計測試用例時,主要研究()。A.需求規(guī)格說明B.詳細(xì)設(shè)計說明C.項目開發(fā)計劃D.概要設(shè)計說明與詳細(xì)設(shè)計說明19. 通常軟件的可維護性常常隨著時間的推移而()。A. 降低 B.提高C.不變D.不確定20. 通俗的說,軟件項目管理中常說的基線是()。A.管理的基本思路B. 通過正式復(fù)審的文檔。C.基本的技術(shù)路線 D. 種軟件開發(fā)的基本策略二、簡答題(30分,每小題6分)1. 什么是軟件工程?請分析軟件工程的目標(biāo)是什么?2. 請簡單說明結(jié)構(gòu)化分析的主要步驟。群管3. QQ軟件的用戶分為游客和登陸會員,登陸會員分為群成員和非群成員,群成員分為群主和群普通成員、理員,請用類的繼承關(guān)系描述QQ用戶群。4. 請簡單分析順序圖和活動圖的區(qū)別。5. 提高程序可讀性有哪些招數(shù)?對你來

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論