軟件工程期末考試參考試題_第1頁
軟件工程期末考試參考試題_第2頁
軟件工程期末考試參考試題_第3頁
軟件工程期末考試參考試題_第4頁
軟件工程期末考試參考試題_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

軟件工程期末考試參考試題軟件工程期末考試參考試題軟件工程期末考試參考試題xxx公司軟件工程期末考試參考試題文件編號:文件日期:修訂次數(shù):第1.0次更改批準審核制定方案設計,管理制度軟件工程期末考試參考試題一、填空題1、軟件生存周期一般可分為問題定義、可行性研究、需求分析、設計編碼、測試、運行與維護階段。2、按軟件的功能進行劃分,軟件可以劃分為系統(tǒng)軟件、支撐軟件和應用軟件。3、可行性研究主要集中在以下四個方面經(jīng)濟可行性、技術可行性、法律可行性和抉擇。4、用戶界面的可使用性是用戶界面設計最重要的也是最基本的目標。5、常見的軟件概要設計方法有3大類:以數(shù)據(jù)流圖為基礎構造模塊結構的結構化設計方(SD),以數(shù)據(jù)結構為基礎構造模塊的Jackson方法,以對象、類、繼承和通信為基礎的面向對象設計方法(OOD)。6、數(shù)據(jù)流圖和數(shù)據(jù)字典共同構成系統(tǒng)的邏輯模型。7、軟件測試的方法有分析方法和非分析方法(即黑盒法)。8、單元測試一般以白盒測試為主,黑盒測試為輔。9、成本估計方法主要有自底向上估計、自頂向下估計和算法模型估計三種類型。10.文檔(document)—一種數(shù)據(jù)媒體和其上所記錄的(數(shù)據(jù))。11機器語言、匯編語言:依賴于機器,面向(機器)12.軟件有效性(efficiency),指軟件系統(tǒng)的時間和(空間)效率。13.軟件定義過程可通過軟件系統(tǒng)的(可行性研究)和需求分析兩個階段來完成。14.軟件定義的基本任務是確定軟件系統(tǒng)的工程(需求),也就是要搞清“做什么”。15.為了使用戶需求逐步精細化、完全化、一致化,通常采用(需求建模技術)。16.一個軟件的深度是指其控制的(層數(shù))。17.以詳細設計說明書為輸入,將該輸入用某種程序設計語言翻譯成計算機可以理解并最終可運行的代碼的過程叫(編碼)過程。18.軟件維護是軟件生命周期的(最后)一個階段19.軟件工程由(方法)、工具和過程三部分組成,稱軟件工程的三要素。20.基于計算機系統(tǒng)的軟件要素中的軟部件由程序、數(shù)據(jù)和(文檔)組成。21.數(shù)據(jù)流圖就是用來刻畫數(shù)據(jù)流和轉換的信息系統(tǒng)建模技術。它用簡單的圖形記號分別表示數(shù)據(jù)流、轉換、(數(shù)據(jù)源)以及外部實體。22.被繼承的類我們稱之為基類(父類),在基類的基礎上新建立的類我們稱之為派生類子類。23.流程圖也稱為程序框圖是最常用的一種表示法,它有順序、分支和(循環(huán))三個基本控制構件。24.機器語言和匯編語言,也稱為(低級)語言。25.軟件測試是執(zhí)行程序發(fā)現(xiàn)并排除程序中潛伏的(錯誤)的過程。26.軟件可維護性,是指軟件產(chǎn)品交付使用后,在實現(xiàn)改正潛伏的錯誤、改進性能等屬性、適應環(huán)境變化等方面工作的(難易)程度。27.軟件可理解性,指系統(tǒng)具有清晰的結構,能直接反映問題的(需求)。28在實體-關系圖簡稱E-R圖中,數(shù)據(jù)對象實體用長方形、關系用(菱形)、屬性用橢圓表示。29.建立數(shù)據(jù)流模型要遵循的原則包括:每個加工至少應有一個輸入數(shù)據(jù)流以反映被處理數(shù)據(jù)的來源和一個(輸出)數(shù)據(jù)流來反映加工的結果30.從工程管理的角度軟件設計可分為概要設計和(詳細)設計兩大步驟。31.通過向用戶提供視覺和聽覺上的反饋,保持用戶與界面間的雙向通信,是提高界面可(交互)性的措施之一。32.程序設計語言的可靠性是指程序設計語言本身不出錯或對錯誤的(糾正)能力。33.對發(fā)現(xiàn)錯誤較多的程序模塊,應進行(重點)測試。34.測試用例中,不僅要選擇合理的輸入數(shù)據(jù),還要選擇(不合理)的輸入數(shù)據(jù)。二、單項選擇題下列哪個階段不屬于軟件生存周期的三大階段(C)。A、計劃階段B、開發(fā)階段C、編碼階段D、維護階段需求分析是(A)。

A、軟件開發(fā)工作的基礎

B、軟件生存周期的開始

C、由系統(tǒng)分析員單獨完成的

D、由用戶自己單獨完成的原型化方法是軟件開發(fā)中一類常用的方法,它與結構化方法相比較,更需要(B)。

A、明確的需求定義

B、完整的生命周期

C、較長的開發(fā)時間

D、熟練的開發(fā)人員軟件維護時,對測試階段未發(fā)現(xiàn)的錯誤進行測試、診斷、定位、糾錯,直至修改的回歸測試過程稱為(A)。

A、改正性維護

B、適應性維護

C、完善性維護

D、預防性維護一般說來,投入運行的軟件系統(tǒng)中有錯誤(A)。A、不是不可以理解的B、是不能容忍的C、是要求退貨的理由D、是必然的6、對在數(shù)據(jù)流圖中每一個命令的圖形元素均給以定義是(B)A、條目定義B、數(shù)據(jù)字典C、數(shù)據(jù)定義D、數(shù)據(jù)說明7、軟件的可行性研究中不包括(D)A、法律可行性B、技術可行性C、經(jīng)濟可行性D、政治可行性8、根據(jù)用戶在軟件使用過程中提出的建設性意見而進行的維護活動稱為(C)。A.糾錯性維護B.適應性維護C.改善性維護D.預防性維護9、人機界面的風格大致經(jīng)過了(B)代的演變。A.三B.四C.五D.六10、以下不屬于白盒測試技術的是(D)A.邏輯覆蓋B.基本路徑測試C.循環(huán)覆蓋測試D.等價類劃分11、為改正軟件系統(tǒng)中潛藏的錯誤而進行的維護活動稱為(A)。A.糾錯性維護B.適應性維護C.改善性維護D.預防性維護12、從事物的組成部件及每個部件的屬性、功能來認識事物。這種方法被稱為(A)的方法。A、面向對象B、面向數(shù)據(jù)C、面向過程D、面向屬性13、判定表由四部分組成:左上部列出(B)。A.條件組合與動作之間的對應關系B.所有條件C.所有可能的動作D.可能的條件組合14、面向對象的分析和設計(OOA&OOD)方法出現(xiàn)在20世紀(C)年代中期。A.50B.60C.70D.8015、耦合度也可以分為七級:其中最松散的耦合是(A)。A.非直接耦合B.數(shù)據(jù)耦合C.特征耦合D.控制耦合16、面向對象方法是將現(xiàn)實世界的事物以對象的方式(B)到計算機世界的方法。A.對應B.映射C.反映D.反射17、盒圖也稱為(D)或Chapin圖。這種表達方式取消了流程線,它強迫程序員以結構化方式思考和解決問題。A.流程圖B.框圖C.判定表D.N-S圖18、描述靜態(tài)數(shù)據(jù)結構的概念模式是(A)。A、E-R圖B、DFDC、結構圖D、框圖19、結構化程序設計理論認為,實現(xiàn)良好的程序結構要應用(A)的分析方法。A、自頂向下B、自底向上C、面向對象D、基于組件20、在結構化程序設計當中,不建議使用(D)。A、分支語句B、循環(huán)語句C、子程序調用語句D、轉向語句21、軟件生產(chǎn)過程中,需求信息由(D)給出。A、程序員B、項目管理者C、軟件分析設計人員D、軟件用戶22、在下列的基本成分中,哪個不是數(shù)據(jù)流程圖的基本成分(D)A、信息處理B、信息存儲C、外部實體D、系統(tǒng)狀態(tài)23、與設計測試數(shù)據(jù)無關的文檔是(D)。A、需求說明書B、設計說明書C、源程序D、項目開發(fā)設計三、多項選擇題(每小題2分,共10分)下面哪些測試屬于白盒測試(AE)。A、基本路徑測試B、等價類劃分C、邊界值分析D、錯誤推測E、邏輯覆蓋測試下列哪些選項是屬于內容耦合(ABC)。A、一個模塊直接訪問另一個模塊的內部數(shù)據(jù)B、一個模塊有多個入口C、一個模塊不通過正常入口轉到另一模塊內部D、一個模塊只有一個入口下列屬于度量效益方法的是(ABC)。A、貨幣的時間價值B、投資回收期C、收入D、投資回報率數(shù)據(jù)流圖是用于表示軟件模型的一種圖示方法,在下列可采用的繪制方法中,哪些是常采用的(ACD)。A、自頂向下B、自底向上C、分層繪制D、逐步求精軟件設計中一般將用到圖形工具,下列哪種些可用作設計的圖形工具(ACD)。

A、結構圖B、實體聯(lián)系圖C、IPO圖

D、層次圖四、判斷題。1、在進行總體設計時應加強模塊間的聯(lián)系。(×)2、系統(tǒng)結構圖是精確表達程序結構的圖形表示法。因此,有時也可以將系統(tǒng)結構圖當作系統(tǒng)流程圖使用。(×)3、用黑盒法測試時,測試用例是根據(jù)程序內部邏輯設計的。(×)4、在程序調試時,找出錯誤的位置和性質比改正該錯誤更難。(√)5、以對象、類、繼承和通信為基礎的面向對象設計方法(OOD)也是常見的軟件概要設計方法之一。(√)6、如果通過軟件測試沒有發(fā)現(xiàn)錯誤,則說明軟件是正確的。(×)7、快速原型模型可以有效地適應用戶需求的動態(tài)變化。(√)8、模塊化,信息隱藏,抽象和逐步求精的軟件設計原則有助于得到高內聚,低耦合度的軟件產(chǎn)品。(√)9、集成測試主要由用戶來完成。(×)10、軟件危機完全是由于硬件問題引起的。(×)11.缺乏有力的方法學的指導和有效的開發(fā)工具的支持,這往往是產(chǎn)生軟件危機的原因之一。(√)12.一個好的開發(fā)人員應具備的素質和能力不包括具有良好的書面和口頭表達能力。(×)13.在用戶需求分析時觀察用戶手工操作過程不是為了模擬手工操作過程,而是為了獲取第一手資料,并從中提取出有價值的需求。(√)14.快速原型技術適用于軟件產(chǎn)品要求大量的用戶交互、或產(chǎn)生大量的可視輸出、或設計一些復雜的算法等場合。(√)15.流程圖也稱為程序(框圖)是最常用的一種表示法。(√)16.面向數(shù)據(jù)設計方法一般都包括下列任務:確定數(shù)據(jù)結構特征;用順序、選擇和重復三種基本形式表示數(shù)據(jù)等步驟。(√)17.理想的人機界面應針對具有典型個性的特定的一類用戶設計。(√)18.數(shù)據(jù)輸入的一般準則中包括盡量(增加)用戶輸入的動作。(×)19.用窮舉測試是較現(xiàn)實的測試方法。(×)20、編碼時應盡可能使用全局變量(×)21、重視程序結構的設計,能使程序具有較好的層次結構(√)22、程序中的注解越少越好(×)23.糾錯性維護是改正運行期間發(fā)現(xiàn)的潛伏錯誤。(√)24.軟件可移植性(portability),是指軟件從一個計算機系統(tǒng)或(環(huán)境)移植到另一個上去的難易程度。(√)25.軟件復雜性不能反映出軟件的可理解性、模塊化、簡單性等屬性。(×)26.當程序內的分支數(shù)和循環(huán)數(shù)增加時,V(G)值將隨之增加,即程序的復雜性增大。(√)27.一般來說,設計軟件時應盡量使用數(shù)據(jù)耦合,減少控制耦合,限制外部環(huán)境耦合和公共數(shù)據(jù)耦合,杜絕內容耦合。(√)28.設計用戶界面只需要計算機科學的理論和知識,而不一定需要認知心理學以及人-機工程學、語言學等學科的知識。(×)29.第四代語言(4GL)還局限在某些領域內,如數(shù)據(jù)庫查詢語言。(√)30.不同程序設計語言在程序的效率上的差異不大。(×)31.編碼的依據(jù)是詳細設計說明書。(√)32.程序文檔應該包括代碼的功能、代碼的完成者等內容。(√)33.軟件項目定義部分由制定軟件項目開發(fā)計劃、需求分析2個階段組成。(√)34.預防性維護是修改軟件,以適應軟硬件環(huán)境的變化。(×)35.開發(fā)大型軟件易產(chǎn)生疏漏和錯誤,往往是產(chǎn)生軟件危機的原因之一。(√)36.據(jù)統(tǒng)計,軟件維護人員為了分析和理解原軟件系統(tǒng)所花費的工作量約占整個維護工作量的60%以下。(×)37.數(shù)據(jù)流圖中各構成元素的名稱不一定必須具有明確的含義以代表對應元素的內容或功能。(×)38.軟件設計也可看作將需求規(guī)格說明逐步轉換為軟件源代碼的過程。(√)39.最高耦合度是數(shù)據(jù)耦合。(×)40.人機界面(Human-ComputerInterface,簡稱HCI)又稱人-機接口或用戶界面。(√)41.在同一用戶界面中,所有的菜單選擇、命令輸入、數(shù)據(jù)顯示和其他功能應采用不同的形式和風格。(×)42.判定覆蓋必然滿足語句覆蓋。(√)43.為提高可交互性一般對大多數(shù)操作動作應允許用戶恢復。同時應盡量減少用戶記憶的信息量。(√)44.編程中應采用統(tǒng)一的標準和約定,降低程序的復雜性。(√)45.軟件在使用過程中維護不十分復雜。(×)46.軟件可重用性(reusability),是指軟部件可以在多種場合使用的程度。(√)47.缺乏有力的方法學的指導和有效的開發(fā)工具的支持,這往往是產(chǎn)生軟件危機的原因之一。(√)48.快速原型技術的適用于軟件產(chǎn)品要求大量的用戶交互、或產(chǎn)生大量的可視輸出、或設計一些復雜的算法等場合。(√)49.流程圖也稱為程序框圖是最常用的一種表示法。(√)50.面向數(shù)據(jù)設計方法一般都包括下列任務:確定數(shù)據(jù)結構特征;用順序、選擇和重復三種基本形式表示數(shù)據(jù)等步驟。(√)51、在軟件維護過程中改善性維護是為適應環(huán)境的變化而修改軟件的活動。(×)52.螺旋模型是在瀑布模型和增量模型的基礎上增加了風險分析活動。(√)53.數(shù)據(jù)字典是對數(shù)據(jù)流圖中的數(shù)據(jù)流,加工、數(shù)據(jù)存儲、數(shù)據(jù)的源和終點進行詳細定義。(×)語言編譯器是一個CASE工具。(√)55.軟件是指用程序設計語言(如PASCAL,C,VISUALBASIC等)編寫的程序,軟件開發(fā)實際上就是編寫程序代碼。(×)56.軟件模塊之間的耦合性越弱越好。(√)57.數(shù)據(jù)庫設計說明書是一個軟件配置項(√)58.在面向對象的軟件開發(fā)方法中,每個類都存在其相應的對象,類是對象的實例,對象是生成類的模板。(×)59.過程描述語言可以用于描述軟件的系統(tǒng)結構。(×)60.快速原型模型可以有效地適應用戶需求的動態(tài)變化。(√)61.模塊化,信息隱藏,抽象和逐步求精的軟件設計原則有助于得到高內聚,低耦合度的軟件產(chǎn)品。(√)62.可行性研究進一步研究問題分析階段所確定的問題是否有可行的解。(√)63.并發(fā)系統(tǒng)中遇到的一個主要問題是定時問題。(√)64.面向對象建模得到的模型包含系統(tǒng)的3個要素,即靜態(tài)結構、交互次序和數(shù)據(jù)變換。(√)65.軟件重用是提高軟件開發(fā)生產(chǎn)率和目標系統(tǒng)質量的重要途徑。(√)66.判定覆蓋不一定包含條件覆蓋,條件覆蓋也不一定包含判定覆蓋。(√)67.PowerDesigner是一個CASE工具。(√)68.在進行需求分析時需同時考慮維護問題。(×)69.UML是一種面向對象的分析設計方法,即OOA/OOD方法。(×)70.在面向對象的軟件開發(fā)方法中,每個類都存在其相應的對象,對象是類的實例,類是生成對象的模板。(√)五、簡答題1、什么是軟件危機為什么會產(chǎn)生軟件危機答:軟件危機是指軟件在開發(fā)和維護過程時所遇到的一系列問題。主要包含二方面的問題:一是如何開發(fā)軟件以滿足社會對軟件日益增長的需求,二是如何維護數(shù)量不斷增長的已有軟件。產(chǎn)生軟件危機的原因:一方面與軟件本身的特點有關,另一方面和軟件開發(fā)與維護的方法不正確有關。2、耦合性有哪幾種類型其耦合度的順序如何耦合性低耦合性低高非直接耦合數(shù)據(jù)耦合特征耦合控制耦合外部耦合公共耦合內容耦合模塊獨立性強模塊獨立性強弱其中,1、2、3屬于弱耦合,4屬于中度耦合,5、6屬于較強耦合、7屬于強耦合。非直接耦合數(shù)據(jù)耦合特征耦合控制耦合外部耦合公共耦合內容耦合內聚性內聚性低高偶然內聚邏輯內聚時間內聚通信內聚順序內聚功能內聚偶然內聚模塊獨立性模塊獨立性弱強其中,1、2、3屬于低內聚,4屬于中內聚,5、6屬于高內聚。 3、簡述需求分析工作可以分成哪四個方面軟件需求分析的有哪三個基本原則答:需求分析階段分成四個方面:對問題的識別、分析與綜合、制定規(guī)格說明和評審。三個基本原則:①必須能夠表達和理解問題的數(shù)據(jù)域和功能域;②必須按自頂向下、逐步分解的方式對問題進行分解和不斷細化;③要給出系統(tǒng)的邏輯視圖和物理視圖。4、什么是黑盒測試法?

答:黑盒測試法把程序看成一個黑盒子,完全不考慮程序的內部結構和處理過程,它只檢查程序功能是否能按照規(guī)格說明書的規(guī)定正常使用,程序是否能適當?shù)亟邮蛰斎霐?shù)據(jù),產(chǎn)生正確地輸出信息。5、什么是軟件生存周期?答:一個軟件從定義到開發(fā)、使用和維護,直到最終被廢棄,要經(jīng)歷一個漫長的時期,通常把軟件經(jīng)歷的這個漫長的時期稱為生存周期。軟件生存周期就是從提出軟件產(chǎn)品開始,直到軟件產(chǎn)品被淘汰的全過程。6、在需求分析階段,建立目標系統(tǒng)的邏輯模型的具體做法是什么?答:系統(tǒng)流程圖是描述物理系統(tǒng)的傳統(tǒng)工具。它的基本思想是用圖形符號以黑盒子形式描繪系統(tǒng)里的每個部件(程序、文件、數(shù)據(jù)庫、表格、人工過程等)。系統(tǒng)流程圖表達的是部件的信息流程,而不表示信息進行加工處理的控制過程。7、為什么數(shù)據(jù)流圖要分層?答:為了表達數(shù)據(jù)處理過程的數(shù)據(jù)加工情況,用一個數(shù)據(jù)流圖是不夠的。為表達稍微復雜的實際問題,需要按照問題的層次結構進行逐步分解,并以分層的數(shù)據(jù)流圖反映這種結構關系。8、軟件的質量反應為哪些方面的問題?答:軟件需求是度量軟件質量的基礎,不符合需求的軟件就不具備質量。在各種標準中定義了一些開發(fā)準則,用來指導軟件人員用工程化的方法來開發(fā)軟件。如果不遵這些開發(fā)準則,軟件質量就得不到保證。往往會有一些隱含的需求沒有明確地提出來。如果軟件只滿足那些精確定義了的需求而沒有滿足這些隱含的需求,軟件質量也不能保證。軟件質量是各種特性的復雜組合。它隨著應用的不同為不同,隨著用戶提出的質量要求不同而不同。9、軟件工程的基本原則有抽象、信息隱藏、模塊化和其他哪些內容(軟件工程必須遵循那些基本原則)答:1)抽象2)信息隱藏(2分)3)模塊化(2分)4)局部化5)一致性6)完全性7)可驗證性(2分)10、常用的軟件項目的估算方法主要有哪4種1)自頂向下的估算方法2)自底向上的估算方法3)差別估算法4)根據(jù)經(jīng)驗估算公式11、原型法模型一般適應哪些場合它適合于那些不能預先確切定義需求的軟件系統(tǒng)的開發(fā),更適合于那些項目組成員(包括分析員、設計員、程序員和用戶)不能很好交流或通信有困難的情況。12、簡答結構化程序設計的內容及基本要點。內容:是程序設計技術,它采用自頂向下逐步求精的設計方法和單入口單出口的控制構件。基本要點:(1)采用自頂向下,逐步求精的程序設計方法。(2)使用三種基本控制結構構造程序,分別是順序,選擇和循環(huán)(3)采用主程序員組的組織形式。(4)采用單入口單出口的模塊形式。13、瀑布模型一般適應哪些場合瀑布模型一般適用于功能、性能明確、完整、無重大變化的軟件系統(tǒng)的開發(fā)。例如操作系統(tǒng)、編譯系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng)等系統(tǒng)軟件的開發(fā)。應用有一定的局限性。14、軟件工程的目標是什么答:在給定成本、進度的前提下,開發(fā)出具有可修改性、有效性、可靠性、可理解性、可維護性、可重用性、可適應性、可移植性、可追蹤性和可互操作性并滿足用戶需求的軟件產(chǎn)品。15、螺旋模型的適應場合有哪些?答:適應場合:支持需求不明確、特別是大型軟件系統(tǒng)的開發(fā),并支持面向規(guī)格說明、面向過程、面向對象等多種軟件開發(fā)方法,是一種具有廣闊前景的模型。16、軟件開發(fā)風險分析實際上就是貫穿于軟件工程過程中的一系列風險管理步驟,它包括哪些主要內容?答:1)風險標識2)風險估算3)風險評價4)風險駕馭和監(jiān)控。17、軟件生存周期中的軟件開發(fā)過程由概要設計和其它哪幾個階段組成答:1)詳細設計2)實現(xiàn)3)組裝設計4)驗收測試18、實體—關系(Entity-Relation)圖簡稱E-R圖,是表示數(shù)據(jù)對象及其之間關系的圖形語言機制。19、需求評審標準(按照重要性的次序)包括哪些內容?答:1)正確性2)無歧義性3)完全性4)可驗證性5)一致性6)可理解性7)可修改性8)可追蹤性。20、計算機軟件——與計算機系統(tǒng)操作有關的程序、規(guī)程、規(guī)則及任何與之有關的文檔和數(shù)據(jù)。21、需求分析的任務是什么答:

溫馨提示

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

評論

0/150

提交評論