軟件工程試卷與參考題答案_第1頁
軟件工程試卷與參考題答案_第2頁
軟件工程試卷與參考題答案_第3頁
軟件工程試卷與參考題答案_第4頁
軟件工程試卷與參考題答案_第5頁
已閱讀5頁,還剩11頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

試卷(一)一、單選題1、在構造化設計(SD)辦法中全方面指導模塊劃分的最重要的原則是()A、程序模塊化B、模塊高內聚C、模塊低耦合D、模塊獨立性2、軟件維護產生的副作用,是指()A、開發時的錯誤B、隱含的錯誤C、因修改軟件而造成的錯誤D、運行時誤操作3、軟件具體設計的重要任務是擬定每個模塊的()A、算法和使用的數據構造B、外部接口C、功效D、編程4、為了提高模塊的獨立性,模塊內部最佳是()A、邏輯內聚B、時間內聚C、功效內聚D、通信內聚5、軟件是一種()A、程序

B、數據

C、邏輯產品

D、物理產品6、因計算機硬件和軟件環境的變化而作出的修改軟件的過程稱為()A、糾正性維護 B、適應性維護C、完善性維護 D、防止性維護7、只有單重繼承的類層次構造是()層次構造。A、網狀型 B、星型C、樹型 D、環型8、下列屬于維護階段的文檔是()A、軟件規格闡明 B、顧客操作手冊C、軟件問題報告 D、軟件測試分析報告9、不適合作為科學工程計算的語言是()A、Pascal B、CC、Fortran D、Prolog10、研究開發所需要的成本和資源是屬于可行性研究中的()研究的首先。A.技術可行性 B.經濟可行性C.社會可行性 D.法律可行性11、中級構造性成本模型COCOMO是一種()A、靜態單變量模型B、動態單變量模型C、靜態多變量模型D、動態多變量模型12、PAD圖為()提供了有力的工具。A、系統分析B、軟件的自動化生成C、自動分析數據D、測試軟件13、下列有關JSP辦法不對的的說法是()A、JSP辦法重要用于規模不大的數據解決系統B、JSP辦法不明確的劃分軟件概要設計和具體設計的兩個階段C、JSP辦法合用于輸入數據和輸出數據之間有對應關系的問題求解D、JSP辦法根據輸入、輸出的數據構造,按一定的規則映射成軟件的體系構造。因此它只合用于具體設計階段14、在具體設計階段,經常采用的工含有()A、PADB、SAC、SCD、DFD15、確認軟件的功效與否與需求規格闡明書中所規定的功效相符的測試屬于()A、集成測試B、恢復測試C、驗收測試D、單元測試16、盒圖(N-S圖)為()提供了有力的工具。A、系統分析B、軟件的自動化生成C、自動分析數據D、測試軟件17、(

)是比較抱負的可重用軟構件。A.子程序庫

B.源代碼包含文獻C.對象

D.類

18、需求分析階段的任務是擬定()A、軟件開發辦法B、軟件開發工具C、軟件開發費D、軟件系統的功效19、下列文檔與維護人員有關的有()A、軟件需求闡明書 B、項目開發計劃C、概要設計闡明書 D、操作手冊20、程序的三種基本控制構造是()A、過程、子程序和分程序B、次序、選擇和重復C、遞歸、堆棧和隊列D、調用、返回和轉移21、軟件生存周期中時間最長的是()階段。A、總體設計B、需求分析C、軟件測試D、軟件維護22、為使得開發人員對軟件產品的各個階段工作都進行周密的思考,從而減少返工,因此()的編制是很重要的。A、需求闡明B、概要闡明C、軟件文檔D、測試計劃23、軟件部件的內部實現與外部可訪問性的分離,是指軟件的()。A、繼承性B、共享性C、封裝性D、抽象性24、單元測試是發現編碼錯誤,集成測試是發現模塊的接口錯誤,確認測試是為了發現功效錯誤,那么系統測試是為了發現()的錯誤。A、接口錯誤B、編碼錯誤C、性能、質量不合規定D、功效錯誤25、軟件工程管理對軟件項目的開發管理,即對整個軟件()的一切活動的管理。A、軟件項目B、生存期C、軟件開發計劃D、軟件開發二、名詞解釋1、數據流圖2、軟件維護3、軟件測試4、程序的可維護性5、軟件生存周期三、簡答題1、簡述軟件構造設計的啟發式原則。2、簡述構造化程序設計辦法的基本要點3、簡述需求分析的原則。4、簡述軟件生命周期開發辦法的基本過程及每個階段的任務。四、敘述題1、你認為“軟件就是程序”這一種觀點對的嗎?如果不對的,請批駁之。2、試論軟件界面和諧設計的重要性。3、試述軟件開發工具對軟件開發的影響。五、應用設計題1、某圖書出版公司但愿每月定時向固定客戶郵寄近來一種月的圖書分類目錄。客戶可在其收到的目錄上圈定自己要買的書。出版公司按照客戶的反饋信息郵寄圖書。規定為出版公司設計軟件,以實現下列功效:(1)自動生成圖書分類目錄;(2)自動解決客戶反饋信息。

試用面對數據流的辦法給出系統的數據流圖,并設計出軟件構造圖。2、現為某銀行開發一種計算機儲蓄管理系統。規定系統能夠完畢:將儲戶填寫的存款單或取款單輸入系統,如果是存款,系統統計存款人姓名、住址、存款類型、存款日期、利率等信息,同時規定儲戶輸入口令,并打印出存款單給儲戶;如果是取款,則系統首先規定儲戶輸入口令,儲戶身份確認后,系統計算結算清單給儲戶,結算清單中的信息涉及本息金額和利息金額。試根據規定畫出該系統的數據流程圖。

試卷(二)一、單選題1、瀑布模型本質上是一種()A、線性次序模型B、次序迭代模型C、線性迭代模型D、及早見產品模型2、使用程序設計的控制構造導出測試用例的測試辦法是()A、黑盒測試B、白盒測試C、邊界測試D、系統測試3、軟件構造圖的形態特性能反映程序重用率的是()A、深度B、寬度C、扇入D、扇出4、軟件構造圖中,模塊框之間若有直線連接,表達它們之間存在()A、調用關系

B、構成關系

C、鏈接關系

D、次序執行關系5、需求分析最后成果是產生()A、項目開發計劃B、需求規格闡明書C、設計闡明書D、可行性分析報告6、快速原型模型的重要特點之一是()A、開發完畢才見到產品 B、及早提供全部完整的軟件產品C、開發完畢后才見到工作軟件 D、及早提供工作軟件7、若有一種計算類型的程序,它的輸入量只有一種X,其范疇是[-1.0,1.0],現從輸入的角度考慮一組測試用例:-1.001,-1.0,1.0,1.001。設計這組測試用例的辦法是()A、條件覆蓋法 B、等價分類法C、邊界值分析法 D、錯誤推測法8、軟件具體設計重要采用的辦法是()A、模塊設計 B、構造化設計C、PDL語言 D、構造化程序設計9、開發軟件所需高成本和產品的低質量之間有著鋒利的矛盾,這種現象稱做()A.軟件工程 B.軟件周期C.軟件危機 D.軟件產生10、按軟件生命周期辦法設計軟件的過程中,畫數據流圖屬于下面哪個階段的工作()A、需求分析B、概要設計C、具體設計D、軟件維護11、在快速原型模型的開發過程中,僅作為需求闡明的補充形式的原型是()A、探索型模型B、演化型模型C、實驗型模型D、提交型模型12、程序設計語言的工程特性之一為()A、軟件的可重用性B、數據構造的描述性C、抽象類型的描述性D、數據庫的易操作性13A.可用性 B.可靠性C.對的性 D.完整性14、模塊設計中,最不但愿的內聚是()A、功效內聚B、通信內聚C、過程內聚D、偶然內聚15、實施快速原型模型辦法開發軟件的核心在于()A、CASE工具的支持B、如何開發演化型模型C、項目主管的支持D、開發人員的素質16、程序流程圖(框圖)中的箭頭代表(

)。A.數據流

B.控制流

C.調用關系

D.構成關系

17、一種只有次序構造的程序,其環形復雜度是(

)。A.0

B.1

C.3

D.不擬定的

18、可行性分析是在系統開發的早期所做的一項重要的論證工作,它是決定該系統與否開發的決策根據,因此必須給出什么樣的回答。()A.擬定B.行或不行C.對的D.無二義19、構造化程序設計重要強調的是()A、程序的規模B、程序的效率C、程序設計語言的先進性D、程序易讀性20、對象實現了數據和操作的結合,使數據和操作()于對象的統一體中。A、結合B、隱藏C、封裝D、抽象21、軟件概要設計結束后得到()A、初始化的軟件構造圖B、優化后的軟件構造圖C、模塊的接口圖和具體算法D、程序編碼22、軟件需求是度量軟件質量的基礎,不符合需求的軟件就不含有()A、軟件的特點B、質量C、軟件產品D、功效23、軟件特性中,程序能夠滿足規格闡明和完畢顧客業務目的的程度,稱作()A、對的性B、移植性C、可靠性D、完整性24、為使得開發人員對軟件產品的各個階段工作都進行周密的思考,從而減少返工,因此()的編制是很重要的。A、需求闡明B、概要闡明C、軟件文檔D、測試計劃25、系統因錯誤而發生故障時,仍然能在一定程度上完畢預期的功效,則把該軟件稱為()。A、軟件容錯B、系統軟件C、測試軟件D、恢復測試二、名詞解釋1、程序的可維護性2、容錯技術3、構造化維護4、軟件生存周期5、模塊獨立性三、簡答題1、簡述軟件測試的任務、目的與類型。2、簡述軟件工程目的和面臨的重要問題。3、簡述軟件開發過程、每個里程碑的提交物。4、簡述軟件工程的七條基本原理。四、敘述題1、試論面對對象辦法較之構造化辦法的先進性。2、試述軟件開發工具對軟件開發的影響。3、試論文檔在軟件開發過程中的重要性。五、應用設計題1、一種軟件公司有許多部門,分為開發部門和管理部門兩種。每個開發部門開發多個軟件產品。每個部門由部門名字唯一擬定。該公司有許多員工,員工分為經理、工作人員和開發人員。開發部門有經理和開發人員,管理部門有經理和工作人員。每個開發人員可參加多個開發項目,每個開發項目需要多個開發人員,開發人員使用語言開發項目。每位經理可主持多個開發項目。請建立該軟件公司的對象模型。2、某考務中心準備開發一種成人自學考試系統考務管理系統,通過調研,該系統有以下的功效:(1)對考生填寫的報名單進行審查,對合格的考生,編好準考證發給考生,匯總后的報名單送給閱卷站;(2)給合格的考生制作考試告知單,將考試科目、時間、地點安排告訴考生;(3)對閱卷站送來的成績進行登記,按當年原則審查單科合格者,并發成績單,對所考專業各科成績全部合格者發給大專畢業證書;(4)對成績進行分類(按地區、年紀、職業、專業、科目等分類)產生對應統計表;(5)查詢:考生可按準考證號隨時查詢自己的各科成績。試根據規定畫出該系統的數據流程圖。

試卷(一)參考答案一、1.d 2.c 3.a 4.c5.c 6.b 7.c 8.c 9.d 10.B 11.a12.b 13.B 14.a 15.c 16.b17.d 18.d 19.c 20.b 21.d 22.c 23.c 24.c

25.b 二、1.數據流圖:是描述數據解決過程的工具。它從數據傳遞和加工的角度,以圖形的方式刻畫數據流從輸入到輸出的移動變換過程。2.軟件維護是軟件生命周期的最后一種階段,是在軟件已經交付給顧客使用之后,為了改正軟件錯誤或滿足新的需要而修改軟件的過程。它涉及四種類型的維護活動:改正型維護、適應型維護、防止型維護和完善型維護。3.軟件測試是一種為了尋找軟件錯誤而運行程序的過程。目的就是為了發現軟件中的錯誤。一種好的測試用例是指很可能找到迄今為止尚未發現的錯誤的用例。一種成功的測試是指揭示了迄今為止尚未發現的錯誤的測試。4.程序的可維護性:為滿足顧客新的需求,或當環境發生了變化,或運行中發現了新的錯誤時,對一種已投入運行的軟件進行對應診療和修改所需工作量的大小。5.軟件生存周期是指從提出軟件開發規定開始,直到該軟件報廢不用為止的整個時期。這個時期又分為若干個階段,對軟件生產的管理和進度控制有重要作用,使軟件的開發有對應的模式、流程、工序和環節。三、1.(1)改善軟件構造提高模塊獨立性;(2)模塊規模要適中;(3)深度、寬度、扇出和扇入都應適宜;(4)模塊的作用域應當在控制域內;(5)力求減少模塊接口的復雜度;(6)設計單入口單出口的模塊;(8)模塊功效應當能夠預測。2.(1)采用自頂向下,逐步求精的程序設計辦法。(2)使用三種基本控制構造構造程序,分別是次序,選擇和循環(3)采用主程序員組的組織形式。(4)采用單入口單出口的模塊形式。3.需求分析階段的基本過程涉及四個方面:對問題的識別,分析與綜合,制訂規格闡明以及評審。(1)問題識別,系統分析人員要研究計劃階段產生的可行性分析報告和軟件項目實施計劃。然后進行功效需求、性能需求、環境需求、可靠性需求安全保密需求、顧客界面需求、資源使用需求等方面的工作。(2)分析與綜合,分析員需從數據流和數據構造出發,逐步細化全部的軟件功效,找出系統各元素之間的聯系、接口特性和設計上的限制,分析他們與否滿足功效需求,與否合理。(3)制訂規格闡明,編寫需求分析的文檔。(4)需求分析評審。為確保軟件需求定義的質量,評審應以專門指定的人員負責,并按規程嚴格執行。4、簡述軟件生命周期開發辦法的基本過程及每個階段的任務。問題定義階段,盡量清晰地描述問題,搞清晰要解決的問題是什么;可行性研究階段,重要是擬定待解的問題與否有可行的解決方法。需要做經濟可行性分析、技術可行性分析、操作可行性分析和法律可行性分析;需求分析階段,重要是擬定目的系統必須含有的功效。普通用數據流圖、數據字典和簡要的算法表達系統的邏輯模型。總體設計階段,從總體上解決問題,擬定可實現的方案,并設計出軟件的層次構造圖;具體設計,把解法具體化,擬定如何具體地實現這個系統。針對每個模塊設計對應的算法;編碼和單元測試階段,把具體設計的成果翻譯成選定的語言所寫的程序,并對每個模塊進行單元測試。測試階段,系統地設計測試用例,盡量多地發現軟件中的錯誤,并調試改正軟件中的錯誤;軟件維護階段,重要目的是通過修改軟件使所開發的軟件能夠持久地滿足顧客的需要。四、1.請從下列幾個方面結合自己的經驗實例加以敘述。軟件就是程序的觀點是不對的的,由于軟件等于程序加文檔加數據。文檔是軟件的一種非常重要的構成部分,在軟件的開發過程中起著非常重要的作用。在軟件開發的每一種階段都應有對應的文檔。它是開發人員與顧客以及開發人員與項目管理人員之間交流的媒介文檔是軟件在不同階段的體現形式。程序與文檔必須一致,文檔才有價值。文檔質量直接決定軟件質量的高低。文檔也是軟件測試和維護的根據。在沒有文檔或文檔不全的狀況下對大型軟件進行測試與維護是不可思議的事情。文檔是軟件可重用的根據。2.最后顧客能夠看到的是軟件界面,軟件界面是顧客與計算機交互的接口。如果界面不和諧,顧客不樂意使用,那么軟件的功效再強,也是沒有用的。這就規定軟件界面應以顧客為中心進行設計。設計應遵照下列的原則:(1)一致性,菜單選擇、命令輸入、數據顯示等功效應使用一致的風格。(2)提供故意義的反饋。(3)允許取消大多數操作。(4)減少在動作間必須記憶的信息量。(5)在對話、移動和思考中提高效率。(6)允許錯誤。(7)按功效對動作分類,并據此安排屏幕布局。(8)提供上下文有關的幫組機制。(9)命令用簡樸的動詞或動詞短語命名。只有顧客樂意使用的軟件才是好的軟件,因此軟件界面設計的好壞直接影響軟件的質量。3.軟件開發工具應用于軟件開發能夠大幅度地提高軟件生產率,提高軟件質量。方便軟件管理,便于軟件重用,減少低檔重復勞動,支持快速原型設計,便于顧客和開發人員的交流。減少大型復雜軟件的開發難度。五、1、2、

試卷(二)參考答案一、1.c 2.b 3.c 4.a 5.b 6.d

7.c 8.c 9.B 10.c 11.a 12.c 13.a

14.c 15.D 16.a 17.b 18.b

19.d 20.c 21.b 22.b 23.a

24.c 25.a二、1.程序的可維護性:為滿足顧客新的需求,或當環境發生了變化,或運行中發現了新的錯誤時,對一種已投入運行的軟件進行對應診療和修改所需工作量的大小。2.容錯技術:對那些無法避開的差錯,使其影響減少至最小的技術。也就是說,當錯誤發生時,盡量地不影響其它的系統元素,或是把顧客的影響限制在某些允許的范疇內。3.構造化維護:如果維護工作是從評價完整的軟件配備開始入手,擬定軟件的重要構造特點、性能特點以及接口特點;預計規定的改動將帶來的影響,并且計劃實施途徑。然后首先修改設計并且對所做的修改善行認真審查。接下來編寫對應的源程序代碼;使用在測試闡明書中包含的信息進行回歸測試;最后,把修改后的軟件再次交付使用。4.軟件生存周期是指從提出軟件開發規定開始,直到該軟件報廢不用為止的整個時期。這個時期又分為若干個階段,對軟件生產的管理和進度控制有重要作用,使軟件的開發有對應的模式、流程、工序和環節。5.模塊獨立性:是模塊化、抽象和信息隱蔽的直接產物。每個模塊只要完畢獨立的功效,與其它模塊聯系越少,則模塊的獨立性就越強。通過模塊與模塊之間的耦合性和模塊內部的內聚性來衡量模塊的獨立性。三、1.軟件測試是一種為了尋找軟件錯誤而運行程序的過程。目的就是為了發現軟件中的錯誤。一種好的測試用例是指很可能找到迄今為止尚未發現的錯誤的用例。一種成功的測試是指揭示了迄今為止尚未發現的錯誤的測試。軟件測試重要分為白盒測試和黑盒測試兩大類。2.軟件工程的目的就是建造高質量的軟件。但是現在的軟件開發面臨著許多問題:(1)對軟件開發成本和進度的預計經常很不精確。(2)顧客常對“已完畢的”軟件系統不滿意。(3)軟件產品的質量往往靠不住。(4)軟件經常很難維護。(5)軟件經常缺少適宜的文檔資料。(6)軟件開發生產率提高的速度,遠遠跟不上計算機應用快速普及進一步的趨勢。(7)軟件成本在計算機系統總成本中所占的比例逐年上升。3.軟件開發的基本過程:(1)可行性研究,做初步的需求分析工作,決定項目可行與否(2)軟件需求分析,軟件工程師必須理解軟件的信息領域,以及需求的功效、行為、性能和接口。系統需求和軟件需求均需文檔化,并與顧客一起復審。并提交需求分析報告。(3)設計,涉及概要設計和具體設計,軟件設計是一種多環節的過程,重要是對軟件的數據構造、軟件體系構造、界面表達及過程細節進行設計。設計過程將需求轉換為軟件表達,在編碼之前能夠評定其質量,全部設計均要文檔化,它是軟件配備的重要構成部分,經復審后提交對應的概要設計和具體設計報告。(4)編碼,把設計轉化為機器可執行的程序。提交源程序清單。(5)測試,提交測試報告。(6)維護,提交維護報告。4、簡述軟件工程的七條基本原理。用分階段的生命的生命周期計劃嚴格管理;堅持進行階段評審;實施嚴格的產品控制;采用當代程序設計技術;成果應能清晰地審查;開發小組的人員應當少而精;承認不停改善軟件工程實

溫馨提示

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

評論

0/150

提交評論