軟件工程形成性考核冊全部答案_第1頁
軟件工程形成性考核冊全部答案_第2頁
軟件工程形成性考核冊全部答案_第3頁
軟件工程形成性考核冊全部答案_第4頁
軟件工程形成性考核冊全部答案_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 09軟件工程一、選擇題:1. 開發(fā)軟件所需高成本和產(chǎn)品的低質(zhì)量之間有著尖銳的矛盾,這種現(xiàn)象稱做(C)。A.軟件工程  B.軟件周期 C.軟件危機 D.軟件產(chǎn)生2. 瀑布模型本質(zhì)上是一種(A )模型。A.線性順序  B.順序迭代  C.線性迭代  D.早期產(chǎn)品3. 瀑布模型存在的問題是(B )。A用戶容易參與開發(fā) B缺乏靈活性C用戶與開發(fā)者易溝通 D適用可變需求4. 螺旋模型是一種將瀑布模型和(A)結(jié)合起來的軟件開發(fā)模型。A增量模型  B專家系統(tǒng)  C噴泉模型  D變換模型5. 原型化方法是用戶和設(shè)計者之間執(zhí)行的一種交互構(gòu)成

2、,適用于(A)系統(tǒng)。A需求不確定性高的 B需求確定的 C管理信息 D實時6. 下列有關(guān)軟件工程的標準,屬于國際標準的是(D)A.GB B.DIN C.ISO D.IEEE7. 結(jié)構(gòu)化方法是一種基于(D)的方法。A.數(shù)據(jù)結(jié)構(gòu) B.程序結(jié)構(gòu) C.算法 D.數(shù)據(jù)流8. 軟件可行性研究實質(zhì)上是要進行一次(A)需求分析、設(shè)計過程。A、簡化、壓縮的  B、詳細的 C、徹底的 D、深入的9. 可行性研究的目的是(D)A、分析開發(fā)系統(tǒng)的必要性 B、確定系統(tǒng)建設(shè)的方案C、分析系統(tǒng)風險  D、確定是否值得開發(fā)系統(tǒng)10. 設(shè)年利率為i,現(xiàn)存入p元,不計復利,n年后可得錢數(shù)為(C)。A、P

3、5;(1+i*n)  B、P×(i+1)*n  C、p×(1+i)n  D、p×(i+n)11. 可行性研究是在(A)之前A、系統(tǒng)開發(fā) B、測試 C、試運行 D、集成測試12.可行性研究需要的時間長短取決于系統(tǒng)的規(guī)模,一般來說,可行性研究的成本只是預期總成本的(C)。A、1% B、20% C、8% D、50%13.我國正式頒布實施的(B)對計算機病毒的定義具有法律性、權(quán)威性。A計算機軟件保護條例B中華人民共和國計算機信息系統(tǒng)安全保護條例C中華人民共和國著作權(quán)法D計算機病毒防治管理辦法14. 效率是一個性能要求,因此應當在以下(B)階段

4、規(guī)定A、可行性分析B、需求分析C、概要設(shè)計D、詳細設(shè)計15. 需求規(guī)格說明書的作用不包括(D)A、軟件驗收的依據(jù) B、用戶與開發(fā)人員對軟件要做什么的共同理解C、軟件可行性研究的依據(jù) D、軟件設(shè)計的依據(jù)16. 數(shù)據(jù)字典是用來定義(D)中的各個成份的具體含義的。A、程序流程圖B、功能結(jié)構(gòu)圖 C、系統(tǒng)結(jié)構(gòu)圖D、數(shù)據(jù)流程圖17. 數(shù)據(jù)流程圖是(A)方法中用于表示系統(tǒng)邏輯模型的一種圖形工具。A、SA  B、SD  C、SP  D、SC18. DFD中的每個加工至少有(A)。A、一個輸入流或一個輸出流 B、一個輸入流和一個輸出流C、一個輸入流  D、一個輸出流19.

5、 需求分析階段的關(guān)鍵任務是確定(D)A、軟件開發(fā)方法 B、軟件開發(fā)工具C、軟件開發(fā)費D、軟件系統(tǒng)的功能20. 在SD方法中全面指導模塊劃分的最重要的原則是(D)。A、程序模塊化B、模塊高內(nèi)聚C、模塊低耦合D、模塊獨立性21. 在模塊的3種基本屬性中,反映模塊內(nèi)部特性的是(C)。A、接口 B、功能  C、邏輯 D、狀態(tài)22. 模塊的耦合性可以按照耦合程度的高低進行排序,以下哪一項符合從低到高的正確次序(D)。A、數(shù)據(jù)結(jié)構(gòu)耦合,公共耦合,控制耦合,內(nèi)容耦合B、數(shù)據(jù)耦合,控制耦合,數(shù)據(jù)結(jié)構(gòu)耦合,公共耦合C、無直接耦合,數(shù)據(jù)結(jié)構(gòu)耦合,內(nèi)容耦合,控制耦合D、無直接耦合,數(shù)據(jù)耦合,控制耦合,內(nèi)容

6、耦合23. PDL是描述處理過程(C)A、做什么B、為什么做 C、怎么做D、對誰做24. (D)工具在軟件詳細設(shè)計過程中不采用。A、判定表 B、IPO圖  C、PDL D、DFD圖25. 為高質(zhì)量地開發(fā)軟件項目,在軟件結(jié)構(gòu)設(shè)計時,必須遵循(A)原則。A.信息隱蔽B、質(zhì)量控制 C、程序優(yōu)化D、數(shù)據(jù)共享26. 當一個模塊直接使用另一個模塊的內(nèi)部數(shù)據(jù),這種模塊之間的耦合為(D)A、數(shù)據(jù)耦合B、公共耦合C、標記耦合D、內(nèi)容耦合27. 詳細設(shè)計與概要設(shè)計銜接的圖形工具是(B)。A、DFD圖 B、SC圖 C、PAD圖 D、程序流程圖28. 下列幾種類型中,耦合性最弱的是(D)。A、內(nèi)容型B、控制

7、型C、公共型D、數(shù)據(jù)型29. 軟件結(jié)構(gòu)使用的圖形工具,一般采用(C)圖。A、DFD B、PAD  C、SC  D、ER30. 在七種偶合中,最低偶合是(D)。A、內(nèi)容偶合B、公共偶合C、數(shù)據(jù)偶合D、非直接偶合二、簡答題1. 什么是軟件工程?軟件工程的目標是什么?  答:軟件工程是將系統(tǒng)化的、規(guī)范的、可度量的方法應用于軟件的開發(fā)、運行和維護過程,即將工程化應用于軟件開發(fā)和管理之中,對中所選方法的研究。合理預算開發(fā)成本,付出較低的開發(fā)費用。實現(xiàn)預期的軟件功能,達到較好的軟件性能,滿足用戶的需求。提高軟件的可維護性,降低維護費用。提高軟件開發(fā)生產(chǎn)率,及時交付使用2.指出

8、瀑布模型中下列任務的順序:驗收測試,項目計劃,單元測試,需求評審,成本估計,概要設(shè)計,詳細設(shè)計,系統(tǒng)測試,設(shè)計評審,編碼,需求規(guī)格說明書。答:項目計劃,成本估計,需求規(guī)格說明書,需求評審,概要設(shè)計,詳細設(shè)計,設(shè)計評審,編碼,單元測試,系統(tǒng)測試,驗收測試3. 可行性研究報告的主要內(nèi)容是什么?答:可行性研究主要包括以下幾個部分:  (1)概述(2)技術(shù)可行性(3)項目成熟程度(4)市場需求情況和風險分析(5)投資估算及資金籌措(6)經(jīng)濟與社會效益(7)綜合實力和產(chǎn)業(yè)基礎(chǔ)(8)項目實施進度計劃(9)其它尚需要說明的必要的方面(10)結(jié)論  4. 什么是需求分析?需求分析階段的基本

9、任務是什么?  答:所謂"需求分析",是指對要解決的問題進行詳細的分析,弄清楚問題的要求,包括需要輸入什么數(shù)據(jù),要得到什么結(jié)果,最后應輸出什么??梢哉f,“需求分析”就是確定要計算機“做什么”。  任務:確定軟件項目的目標和范圍。調(diào)查使用者的要求,分析軟件必須做什么,編寫需求規(guī)格說明書等它相關(guān)文檔,并進行必要的需求審查。除此之外,還包括需求變更控制,需求風險控制,需求版本控制等對需求的管理工作5. 什么是結(jié)構(gòu)化分析方法?該方法使用什么描述工具?  答:結(jié)構(gòu)化的分析方法是面向數(shù)據(jù)流的方法,因此,此方法研究的核心是數(shù)據(jù)的組成和數(shù)據(jù)流向和對數(shù)據(jù)的加工處

10、理。結(jié)構(gòu)化分析方法用抽象模型的概念,按照軟件內(nèi)部數(shù)據(jù)傳遞、變換的關(guān)系,自頂向下逐層分解,直至找到滿足功能要求的所有可實現(xiàn)的軟件元素為止  描述工具:1系統(tǒng)流程圖 2 數(shù)據(jù)流程圖3數(shù)據(jù)字典4 IPO圖 5層次方框圖6實體關(guān)系圖7狀態(tài)變遷圖6. 結(jié)構(gòu)化分析方法通過哪些步驟來實現(xiàn)?答:1)確定系統(tǒng)的功能要求2)確定系統(tǒng)的數(shù)據(jù)要求3)確定系統(tǒng)的操作要求和界面要求4)確定系統(tǒng)的性能要求5)確定系統(tǒng)的運行要求6)獲得當前系統(tǒng)的物理模型7)抽象出當前系統(tǒng)的邏輯模型8)建立目標系統(tǒng)的邏輯模型。9)修正開發(fā)計劃10)如果需要則開發(fā)系統(tǒng)原型7. 什么是數(shù)據(jù)流圖?其作用是什么?其中的基本符號各表示什么含義

11、?答:數(shù)據(jù)流圖:簡稱DFD,就是采用圖形方式來表達系統(tǒng)的邏輯功能、數(shù)據(jù)在系統(tǒng)內(nèi)部的邏輯流向和邏輯變換過程,是結(jié)構(gòu)化系統(tǒng)分析方法的主要表達工具及用于表示軟件模型的一種圖示方法。  數(shù)據(jù)流圖的基本符號的意思:1.矩形表示數(shù)據(jù)的外部實體;2.圓角的矩形表示變換數(shù)據(jù)的處理邏輯;3.少右面的邊矩形表示數(shù)據(jù)的存儲;4.箭頭表示數(shù)據(jù)流。8. 什么是數(shù)據(jù)字典?其作用是什么?它有哪些條目?答:數(shù)據(jù)字典,主要用來描述數(shù)據(jù)流程圖中的數(shù)據(jù)流、數(shù)據(jù)存儲、處理過程和和數(shù)據(jù)源點/終點。作用:數(shù)據(jù)流程圖描述了系統(tǒng)的邏輯結(jié)構(gòu),其中的四個基本圖形元素的含義無法在數(shù)據(jù)流程圖中詳細說明,因此數(shù)據(jù)流程圖需要與其他工具配合使用

12、,數(shù)據(jù)字典就是這樣的工具之一。包括的條目:數(shù)據(jù)流詞條數(shù)據(jù)元素詞條數(shù)據(jù)存儲詞條數(shù)據(jù)加工處理詞條數(shù)據(jù)源點及終點詞條9. 什么是概要設(shè)計?有哪些基本任務?答:概要設(shè)計:根據(jù)用戶的需求先確定軟件系統(tǒng)的總體結(jié)構(gòu)和總的設(shè)計原則基本的任務:設(shè)想供選擇的方案。推薦最佳方案。功能分解,確定軟件結(jié)構(gòu)。設(shè)計軟件結(jié)構(gòu)。制定測試計劃。數(shù)據(jù)設(shè)計。書寫文檔。包括總體設(shè)計規(guī)格說明書。用戶手冊。測試計劃。設(shè)計審查和復審。10. 詳細設(shè)計的基本任務是什么?有那幾種描述方法?答:詳細設(shè)計階段的任務是要為編寫程序代碼設(shè)計“圖紙”,由程序員按“圖紙”用某種高級程序設(shè)計語言編寫程序代碼。主要方法有設(shè)計程序流程圖,表格設(shè)計符號以及過程設(shè)計

13、語言。11. 什么是變換流?什么是事物流?答:變換型數(shù)據(jù)流可以劃分為明顯的三部分:邏輯輸入,中心變換,邏輯輸出事務流的特點是數(shù)據(jù)沿某個輸入路徑流動,該路徑將外部信息轉(zhuǎn)換成事務,其中發(fā)射出多條事務處理路徑的中心處理被稱為中心事務12.模塊的內(nèi)聚有哪幾種?模塊間的耦合有哪幾種?答:內(nèi)聚分為七種類型:巧合內(nèi)聚一個模塊執(zhí)行多個完全互不相關(guān)的動作,那么這個模塊就有巧合內(nèi)聚邏輯內(nèi)聚當一個模塊執(zhí)行一系列相關(guān)的動作時,稱其有邏輯內(nèi)聚。時間性內(nèi)聚當一個模塊內(nèi)的多個任務是與時間有關(guān)時,這個模塊具有時間性內(nèi)聚。過程內(nèi)聚模塊執(zhí)行的若干動作之間有順序關(guān)系。通信內(nèi)聚模塊執(zhí)行的若干動作之間有順序關(guān)系,并且所有動作是在相同的

14、數(shù)據(jù)上執(zhí)行。信息內(nèi)聚一個模塊中執(zhí)行一系列動作,每個動作都有自己的入口點和處理代碼,所有的動作都作用在相同的數(shù)據(jù)結(jié)構(gòu)上,這樣的模塊叫做信息內(nèi)聚。功能性內(nèi)聚一個模塊中各個部分都是完成某一具體功能必不可少的組成部分耦合分為七類:內(nèi)容耦合如果一個模塊直接參考另一個模塊的內(nèi)容,則這兩個模塊是內(nèi)容耦合。公共耦合如果多個模塊都訪問同一個公共數(shù)據(jù)環(huán)境,則稱它們是公共耦合。外部耦合如果兩個模塊都訪問同一個全局簡單變量而不是同一全局數(shù)據(jù)結(jié)構(gòu),而且,不是通過參數(shù)表傳遞該全局變量的信息,則這兩個模塊屬于外部耦合。控制耦合如果模塊A向模塊B傳遞一個控制信息,則稱這兩個模塊是控制耦合的數(shù)據(jù)結(jié)構(gòu)耦合當一個模塊調(diào)用另一個模塊

15、時傳遞了整個數(shù)據(jù)結(jié)構(gòu),這兩個模塊之間具有數(shù)據(jù)結(jié)構(gòu)耦合。數(shù)據(jù)耦合如果兩個模塊傳遞的是數(shù)據(jù)項,則這兩個模塊是數(shù)據(jù)耦合。非直接耦合如果兩個模塊之間沒有直接關(guān)系,它們之間的聯(lián)系完全通過主模塊的控制和調(diào)用來實現(xiàn)的,這就是非直接耦合。三、應用題  1某旅館的電話服務如下:可以撥分機號和外線號碼。分機號是從7201至7299。外線號碼先撥9,然后是市話號碼或長話號碼。長話號碼是以區(qū)號和市話號碼組成。區(qū)號是從100到300中任意的數(shù)字串。市話號碼是以局號和分局號組成。局號可以是455,466,888,552中任意一個號碼。分局號是任意長度為4的數(shù)字串。寫出在數(shù)據(jù)字典中,電話號碼的數(shù)據(jù)條目的定義(即組

16、成)。  名稱     簡稱                 類型  長度 取值范圍分機號     Extension_Number     字符  4    7201.7299外線市話號 Addition_Internumber 字符  9

17、0;   9+455|466|888|552+4數(shù)字4外線長話號 Addition_Extennumber 字符 12    9+100|101|102|.|298|299|300+455|466|888|552+4數(shù)字42下面是旅客訂飛機票的需求描述,試畫出分層的數(shù)據(jù)流程圖。顧客將訂票單交給預訂系統(tǒng):(1)如果是不合法訂票單,則輸出無效訂票信息;(2)對合法訂票單的預付款登錄到一個記賬文件中;(3)系統(tǒng)有航班目錄文件,根據(jù)填寫的旅行時間和目的地為顧客安排航班;(4)在獲得正確航班信息和確認已交了部分預付款時發(fā)出取票單,并記錄到取票單文件中。顧

18、客在指定日期內(nèi)用取票單換取機票:(1)系統(tǒng)根據(jù)取票單文件對取票單進行有效性檢查,無效的輸出無效取票信息;(2)持有有效取票單的顧客在補交了剩余款后將獲得機票;(3)記賬文件將被更新,機票以及顧客信息將被登錄到機票文件。訂單中有訂票日期、旅行日期、時間要求(上午、下午、晚上)、出發(fā)地、目的地、顧客姓名、身份證號、聯(lián)系電話。3一個簡化的圖書館信息管理系統(tǒng)有以下功能:(1)借書:輸入讀者借書證,系統(tǒng)檢查借書證是否有效;查閱借書文件,檢查該讀者所借圖書是否超過10本,若已達10本,顯示信息“已經(jīng)超出借書數(shù)量”,拒借;未達10本,辦理借書(檢查庫存、修改庫存信息并將讀者借書信息登入借書記錄)(2)還書:

19、輸入書號和讀者號,從借書記錄中讀出與讀者有關(guān)的記錄,查閱所借日期,如果超過3個月,作罰款處理。否則,修改庫存信息與借書記錄。(3)查詢:可通過借書記錄、庫存信息查詢讀者情況、圖書借閱情況及庫存情況,打印各種統(tǒng)計表。請就以上系統(tǒng)功能畫出分層的DFD圖,并建立重要條目的數(shù)據(jù)字典。數(shù)據(jù)字典:元素名稱   名稱       類型      說 明IPO1      還書處理    處理 

20、;     根據(jù)書號做還書處理,違規(guī)做處罰IPO2      有效性檢查  處理      檢查讀者號,圖書號的有效性IPO3      借書處理    處理      按讀者號,圖書號進行借書處理IPO4      查詢    

21、    處理      管理員對一些基本信息進行查詢IPO5      打印報表    處理      打印查詢到的信息IPO6      處罰管理    處理      根據(jù)規(guī)則對延期給予相應的處罰IPO7    &#

22、160; 數(shù)量檢查    處理      對讀者借出的數(shù)量是否符合規(guī)定進行檢查DS001     讀者信息    數(shù)據(jù)存儲  讀者信息錄入,修改,刪除,保存DS002     庫存信息    數(shù)據(jù)存儲  圖書的基本的情況以及所有圖書的整體情況DS003     錯還信息    數(shù)據(jù)存儲&#

23、160; 存儲借還書信息,系統(tǒng)自動處理,不能人工錄入DS004     處罰信息    數(shù)據(jù)存儲  存儲延期的處罰信息軟件工程作業(yè)2(第57章) 一、選擇題3 1. 從本質(zhì)上說,面向?qū)ο笫恰跋取贝_定(A)后確定執(zhí)行的動作。 A.動作的主體 B.屬性 C.關(guān)系 D.方法 2. (B)是對象的靜態(tài)特征。 A.方法 B.屬性 C.關(guān)系 D.操作3. 對象的(D)使對象的動態(tài)特征 A.特征 B.屬性 C.關(guān)系 D.操作 4. 屬于某個類的一個具體對象稱為

24、該類的(A)。 A.實例 B.虛擬 C.繼承 D.多態(tài)5. UML是(A)。A 一種可視化的建模語言 B 是一種可視化的程序設(shè)計語言 C 是一種過程 D 是一種方法6. 封裝的的作用是(A)。A.復用 B.對象 C.實例 D.方法7.面向?qū)ο蠓治龅暮诵脑谟诮ⅲ˙)模型。 A. 建立正確的模型 B. 識別問題域?qū)ο?C.識別對象之間的關(guān)系 D.上面所有8.面向?qū)ο蠓治鲞^程中建立的模型有(D )。 A. 數(shù)據(jù)模型、功能模型、活動模型B.對象模型、功能模型、測試模型C. 屬性模型、功能模型、對象模型D. 對象模型、功能模型、動態(tài)模型9. 下列的(C)不是分析建模的目的。 A.

25、定義可驗證的軟件需求B. 描述客戶需求 C.開發(fā)一個簡單的問題解決方案 D. 建立軟件設(shè)計的基礎(chǔ) 10. 下列的( C)不屬于面向?qū)ο蠓治瞿P?。A.用例圖 B.類圖 C.實體關(guān)系圖 D.順序圖 11.(A)用于描述系統(tǒng)中概念層次的對象。 A.分析類 B. 界面類 C.實體類 D.控制類12.在基于用例的面向?qū)ο蠓治鲞^程中,定義交互行為的關(guān)鍵在于通過描述分析類實例之間的(A)將用例的職責分配到分析類中。 A. 消息傳遞B.關(guān)聯(lián)關(guān)系 C 繼承關(guān)系 D 上下文關(guān)系13.用例的實現(xiàn)細節(jié)不會在(B)描述。A. 用例說明 B.用例圖 C.活動圖 D.順序圖14.用例的職責通常分配給(D

26、)的對象。A. 發(fā)送消息 B.接收消息 C.發(fā)送和接收雙方 D.分析類15.組織機構(gòu)圖是(C)。A. UML的一個最新圖 B.類圖的一種 C.用于識別角色的輔助圖 D.用例圖的一種16.在圖書館系統(tǒng)中,假如已經(jīng)構(gòu)造了一個一般借書者類,后來發(fā)現(xiàn)圖書館的學生和教師在借書中有不同要求。請問在面向?qū)ο笤O(shè)計中用(B)方法可以方便地設(shè)計這兩個類? A.信息隱藏 B.繼承 C.動態(tài)聯(lián)編 D.代碼復制 18框架是一組可用于不同應用的(A)集合 A.類 B.對象 C.模塊 D.代碼 19下面(D)選項不能描述子系統(tǒng)之間的關(guān)系。 A.請求服務關(guān)系 B.繼承關(guān)系 C.依賴關(guān)系

27、D.數(shù)據(jù)關(guān)系 20每個子系統(tǒng)的接口上定義了若干(B),體現(xiàn)了子系統(tǒng)的功能。 A. 說明 B.操作 C.屬性 D.關(guān)系 21通常將具有共性的非功能要求設(shè)計在(B),以減少重新開發(fā)的工作量。 A. 接口層 B.中間層 C.最低層 D.最高層22.每個用例至少應該有一個(C),它通常沒有屬性而只有方法,只是起協(xié)調(diào)和控制作用。 A. 接口類 B.實體類 C.控制類 D.界面類 23.類有三種類型即(A)。A. 邊界類、實體類、控制類 B.實體類、數(shù)據(jù)類、界面類C. 控制類、實體類、數(shù)據(jù)類 D.界面類、控制類、公共類24.下面那個選項不是正確的

28、面向?qū)ο笤O(shè)計思想。(C) A.對接口進行設(shè)計 B.發(fā)現(xiàn)變化并且封裝它C.先繼承后組合 D.先組合后繼承25.定義類的屬性類型時盡量使用已有的類型,太多的自定義類型會降低系統(tǒng)的(A)指標。A.可維護性 B.安全性 C.開發(fā)效率 D.可移植性二、簡答題1. 舉例說明類和對象的關(guān)系。答:學生可作為一個類-學生類,每個學生就是這個學生類的一個實例,例如,學生張三就是學生類的一個實例。2. 面向?qū)ο蠓治龅年P(guān)鍵步驟有哪些?應建立哪幾個模型?答:關(guān)鍵步驟有識別問題域的對象并分析它們相互之間的關(guān)系,建立簡潔、精確、可理解的正確模型;應建立的模型有功能模型,對象模型,動態(tài)模型。3. 什么是實體類、邊界

29、類和控制類?為什么將分析類劃分成這三種類型?答:(1)實體類保存要存入永久存儲體的信息。實體類通常在事件流或交互圖中,是對用戶最有意義的類。  邊界類位于系統(tǒng)與外界的交界處,包括所有的窗體、報表、系統(tǒng)硬件接口、與其他系統(tǒng)的接口??刂祁愗撠焻f(xié)調(diào)其他類的工作。每個用例中至少應該有一個控制類,它控制用況中的事件順序。(2)分為三種類型是因為它們各自的功能不同。界面類描述系統(tǒng)與角色之間的接口。 控制類在分析模型內(nèi)表示協(xié)調(diào)、順序、事務處理以及控制其他對象的類。 實體類為需要長久保存的信息進行建模的類。4. UML中有哪幾類個視圖,它們的作用分別是什么?答:(1)用例視圖.用

30、例視圖用于描述系統(tǒng)的功能集。它是從系統(tǒng)外部以用戶角度,對系統(tǒng)做的抽象表示。用例視圖所描述的系統(tǒng)功能依靠于外部用戶或另一個系統(tǒng)觸發(fā)激活,為用戶或另一個系統(tǒng)提供服務,實現(xiàn)與用戶或另一個系統(tǒng)之間的交互。用例視圖中可以包含若干個用例,用例表示系統(tǒng)能夠提供的功能,用例視圖是其他視圖的核心和基礎(chǔ)。其他視圖的構(gòu)造依賴于用例視圖中所描述的內(nèi)容,因為系統(tǒng)的最終目標是實現(xiàn)用例視圖中描述的功能,同時附帶一些非功能性的特性,因此用例視圖影響著所有其他的視圖。(2)邏輯視圖.如果說用例視圖描述系統(tǒng)“做什么”,那么邏輯視圖就是描述“怎么做”。系統(tǒng)的靜態(tài)結(jié)構(gòu)描述類、對象和它們之間的關(guān)系,反映的是系統(tǒng)靜態(tài)特征或結(jié)構(gòu)組成。(3

31、)組件視圖.組件視圖用來描述系統(tǒng)實現(xiàn)的結(jié)構(gòu)和行為特征,反映系統(tǒng)各組成元素之間的關(guān)系。組件視圖由組件圖實現(xiàn),主要供開發(fā)者和管理者使用。(4)并發(fā)視圖.并發(fā)視圖用來描述系統(tǒng)的動態(tài)和行為特征。并發(fā)視圖將任務劃分為進程或線程形式,通過任務劃分引入并發(fā)機制,可以高效地使用資源、并行執(zhí)行和處理異步事件。除了劃分系統(tǒng)為并發(fā)執(zhí)行的進程或線程外,并發(fā)視圖還必須處理通信和同步問題。(5)配置視圖.配置視圖體現(xiàn)了系統(tǒng)的實現(xiàn)環(huán)境,反映系統(tǒng)的物理架構(gòu)。配置視圖還包括一個映射,該映射顯示在物理架構(gòu)中組件是怎樣分配的。 5. 順序圖在分析階段的作用?. 答:順序圖描述了一組交互對象間的交互方式,它表示完

32、成某項行為的對象和這些對象之間傳遞消息的時間順序6.活動圖在分析階段的作用? 答:活動圖反映系統(tǒng)中從一個活動到另一個活動的流程,強調(diào)對象間的控制流程。活動圖特別適合描述工作流和并行處理過程。具體地說活動圖可以描述一個操作過程中需要完成的活動;描述一個對象內(nèi)部的工作;描述如何執(zhí)行一組相關(guān)的動作,以及這些動作如何影響它們周圍的對象;說明一個業(yè)務活動中角色、工作流、組織和對象是如何工作的。7.比較結(jié)構(gòu)化設(shè)計和面向?qū)ο笤O(shè)計區(qū)別?答:結(jié)構(gòu)化設(shè)計:系統(tǒng)被劃分成多個模塊,這些模塊被組織成一個樹型結(jié)構(gòu)。根就是主模塊,葉子是最低級的功能模塊。這棵樹也表示調(diào)用結(jié)構(gòu):每個模塊都調(diào)用自己的直接下級模塊,并被

33、自己的直接上級模塊調(diào)用。頂層模塊負責收集應用程序最重要的那些執(zhí)行策略,底層模塊實現(xiàn)處理細節(jié)。在這個體系結(jié)構(gòu)中越靠上層位置,概念的抽象層次就越高。但是,由于上層模塊需要調(diào)用下層模塊,所以這些上層模塊就依賴于下層模塊的處理細節(jié)。也就是說,當實現(xiàn)細節(jié)發(fā)生變化時,抽象也會受到影響;如果想復用某一個抽象的話,就必須把它依賴的細節(jié)都一起拖過去。面向?qū)ο笤O(shè)計:上層創(chuàng)建的抽象不依賴于任何細節(jié),而細節(jié)則高度依賴于上層的抽象。這種依賴關(guān)系的變化正是結(jié)構(gòu)化設(shè)計與面向?qū)ο笤O(shè)計的根本區(qū)別。 8.什么是框架,它與“設(shè)計”有什么關(guān)系? 答:框架是一組可用于不同應用的類的集合??蚣苤械念愅ǔJ且恍┏橄箢惒?/p>

34、且相互有聯(lián)系,可以通過繼承的方式使用這些類,當面向?qū)ο笤O(shè)計進行底層設(shè)計時,對每個類進行詳細設(shè)計,設(shè)計類的屬性和操作,優(yōu)化類之間的關(guān)系,就可以設(shè)計成框架來對類的設(shè)計進行構(gòu)架和優(yōu)化。9.系統(tǒng)的物理構(gòu)架中應該包括哪些信息?答:用UML的配置圖描述系統(tǒng)的物理構(gòu)架,然后將需求分析階段捕獲的系統(tǒng)功能分配到這些物理節(jié)點上。包括的信息為節(jié)點的拓撲結(jié)構(gòu)、硬件設(shè)備配置、通信路徑、各個節(jié)點上運行的系統(tǒng)軟件配置、應用軟件配置。 三、應用題  一個多媒體商店系統(tǒng)包含一個由媒體文件構(gòu)成的數(shù)據(jù)庫,有兩類媒體文件:圖像文件和聲音文件。每個媒體文件都有名稱和唯一的編碼,而且文件包含作者信息和格式信息,聲音文

35、件還包含聲音文件的時長(以秒為單位)和作者的信息。假設(shè)每個媒體文件可以由唯一的編碼所識別,系統(tǒng)要提供以下功能:1) 媒體庫中可以添加新的特別媒體文件。 2) 通過給定的文件編碼查找需要的媒體文件。3) 從媒體庫中刪除指定的媒體文件。 4) 給出媒體庫中媒體文件的數(shù)量??紤]類imageFile和audioFile應該具有哪些恰當?shù)膶傩院头椒?#160;答:imageFile類的屬性有:Name(文件名稱),Code(編碼),AuthorInfo(作者信息),F(xiàn)ormat(格式信息);audioFile類除了擁有以上屬性外還有屬性Time(文件時長); imageFi

36、le類的方法:Add(imageFile)(添加圖像文件),Delete(Code)(刪除文件),GetFile(Code)(查找文件),GetNumber()(返回媒體文件的數(shù)量);audioFile類的方法:Add(audioFile)(添加聲音文件),Delete(Code)(刪除文件),GetFile(Code)(查找文件),GetNumber()(返回媒體文件的數(shù)量)。 2.若把學生看成一個實體,它可以分成多個子實體,如小學生、中學生和大學生等。在面向?qū)ο蟮脑O(shè)計中,可以創(chuàng)建如下4個類:類Student、類Elementary Student、Middle Student;類Unive

37、rsity Student。試給出這4個類的屬性以及它們之間的關(guān)系。答:Student類為基類,其他三個類都是Student的子類。 Student類的屬性有:Name(姓名),Sex(性別),Age(年齡),Class(班級)。Elementary Student類的屬性有:IsTeamMember(是否是少先隊員),IsGoodStudent(是否是三好學生)。Middle Student類的屬性為:IsMember(是否是團員),Subject(文科理科)。University Student類的屬性為:IsPartyMember(是否黨員),Department(學院),Sp

38、ecialty(專業(yè))。三、應用題1.某學校領(lǐng)書的工作流程為:學生班長填寫領(lǐng)書單,班主任審查后簽名,然后班長拿領(lǐng)書單到書庫領(lǐng)書。書庫保管員審查領(lǐng)書單是否有班主任簽名,填寫是否正確等,不正確的領(lǐng)書單退回給班長;如果填寫正確則給予領(lǐng)書并修改庫存清單;當某書的庫存量低于臨界值時,登記需訂書的信息。每天下班前為采購部門提供一張訂書單。用活動圖來描述領(lǐng)書的過程。2.使用順序圖描述下面的情景,當用戶在自己的計算機上向網(wǎng)絡打印機發(fā)出一個打印任務時,他的計算機便向打印機服務器發(fā)送一條打印命令print(file),打印機服務器如果發(fā)現(xiàn)網(wǎng)絡打印機處于空閑狀態(tài),則向打印機發(fā)送打印命令print(file),否則向

39、打印隊列發(fā)送一條保存命令store(file)。3.某報社采用面向?qū)ο蠹夹g(shù)實現(xiàn)報刊征訂的計算機管理系統(tǒng),該系統(tǒng)基本需求如下:(1)報社發(fā)行多種刊物,每種刊物通過訂單來征訂,訂單中有代碼,名稱,訂期,單價,份數(shù)等項目,訂戶通過填寫訂單來訂閱報刊。(2)報社下屬多個發(fā)行站,每個站負責收集登陸訂單、打印收款憑證等事務。(3)報社負責分類并統(tǒng)計各個發(fā)行站送來的報刊訂閱信息。請就此需求建立對象模型。軟件工程作業(yè)3(第811章)一、 選擇題1. 結(jié)構(gòu)化語言是介于自然語言和形式語言之間的一種(D)。 A半形式語言B計算機語言 C低級語言 D高級語言2. 程序設(shè)計語言的技術(shù)特性不應包括(C)。

40、60;A、數(shù)據(jù)結(jié)構(gòu)的描述性B、抽象類型的描述性 C、數(shù)據(jù)庫的易操作性D、軟件的可移植性3. 程序的三種基本控制結(jié)構(gòu)是(B)。 A過程、子程序和分程序 B順序、選擇和重復 C遞歸、堆棧和隊列 D調(diào)用、返回和轉(zhuǎn)移 4. 結(jié)構(gòu)化程序設(shè)計主要強調(diào)的是(D)。A程序的規(guī)模B程序的效率 C程序設(shè)計語言的先進性 D程序易讀性5. 下列關(guān)于功能性注釋不正確的說法是(B)。A.功能性注釋嵌在源程序中,用于說明程序段或語句的功能以及數(shù)據(jù)的狀態(tài)B.注釋用來說明程序段,需要在每一行都要加注釋C.可使用空行或縮進,以便很容易區(qū)分注釋和程序D.修改程序也應修改注釋6. 下列關(guān)于效率

41、的說法不正確的是(D)。A.效率是一個性能要求,其目標應該在需求分析時給出B.提高程序效率的根本途徑在于選擇良好的設(shè)計方法,數(shù)據(jù)結(jié)構(gòu)與算法C.效率主要指處理機時間和存儲器容量兩個方面D.程序的效率與程序的簡單性無關(guān)7. 結(jié)構(gòu)化維護與非結(jié)構(gòu)化維護的主要區(qū)別在于(B)A.軟件是否結(jié)構(gòu)化 B.軟件配置是否完整 C.程序的完整性 D.文檔的完整性8.關(guān)于JAVA語言下列說法不正確的是(B)。A.跨平臺的 B.動態(tài)指針 C.解釋型的 D.面向?qū)ο蟮?. 使用白盒測試方法時,確定測試數(shù)據(jù)應根據(jù)(A)和指定的覆蓋標準。A程序內(nèi)部邏輯 B程序復雜結(jié)構(gòu) C使用說明書 D程序的功能10. 確認測試主要涉及的文檔是

42、(A)。A、需求規(guī)格說明書B、概要設(shè)計說明書C、詳細設(shè)計說明書D、源程序11. 測試的關(guān)鍵問題是(D)。A.如何組織對軟件的評審 B.如何驗證程序的正確性 C.如何采用綜合策略 D.如何選擇測試用例12. 黑盒測試在設(shè)計測試用例時,主要研究(A)。A.需求規(guī)格說明 B.詳細設(shè)計說明 C.項目開發(fā)計劃 D.概要設(shè)計說明與詳細設(shè)計說明13. 下面哪些測試屬于黑盒測試(B)。A、路徑測試B、等價類劃分 C、條件判斷 D、循環(huán)測試14. 在下述哪一種測試中,測試人員必須接觸到源程序(B)。A、功能測試 B、結(jié)構(gòu)測試C、功能測試和結(jié)構(gòu)測試 D、性能測試15. 檢查軟件產(chǎn)品是否符合需求定義的過程

43、稱為(D)。 A、確認測試B、集成測試C、驗收測試D、驗證測試16. 軟件測試方法中,黑盒、白盒測試法是常用的方法,其中白盒測試主要用于測試(D)。A、 結(jié)構(gòu)合理性B、軟件外部功能C、程序正確性D、程序內(nèi)部邏輯17. 軟件維護中,因修改交互輸入的順序,沒有正確的記錄而引起的錯誤是(A)產(chǎn)生的副作用。A、文檔B、數(shù)據(jù) C、編碼D、設(shè)計18. 以下屬于軟件維護階段文檔的是(C)。 A、軟件需求說明B、操作手冊C、軟件問題報告D、測試分析報告19. 產(chǎn)生軟件維護的副作用,是指(C)。A、開發(fā)時的錯誤 B、隱含的錯誤 C、因修改軟件而造成的錯誤 D、運行時誤操作20. 維護中,因誤

44、刪除一個標識符而引起的錯誤是(C)副作用。A、文檔 B、數(shù)據(jù) C、編碼 D、設(shè)計 21. 可維護性的特性中,相互促進的(A)。 A、可理解性和可測試性B、效率和可移植性 C、效率和可修改性 D、效率和結(jié)構(gòu)好22. 軟件維護的困難主要原因是(C)A、費用低 B、人員少 C、開發(fā)方法的缺陷 D、用戶不配合23. 軟件維護費用高的主要原因是(C)。 A、人員少B、人員多C、生產(chǎn)率低D、生產(chǎn)率高24. 為了適應軟硬件環(huán)境變化而修改軟件的過程是(C)。 A、校正性維護 B、完善性維護 C、適應性維護D、預防性維護 25. 可維護性的特性中,相互

45、矛盾的是(B)A.可理解性與可測試性 B.效率與可修改性 C.可修改性和可理解性 D.可理解性與可讀性26. 各種不同的軟件維護中,以(C)維護所占的維護量最小。A、 糾錯性維護B、代碼維護C、預防性維護D、文檔維護 27. 在變更控制中,(B)可以用來確保由不同用戶所執(zhí)行的并發(fā)變更。A異步控制B同步控制C存取控制D基線控制 28. 變更控制是一項最重要的軟件配置任務,其中“檢出”和(A)處理實現(xiàn)了兩個重要的變更控制要素,即存取控制和同步控制。A登入B管理C填寫變更要求D審查29. 用圖表示軟件項目進度安排,下列說法中正確的是(B) A.能夠反映多個任務之間的復雜

46、關(guān)系 B.能夠直觀表示任務之間相互依賴制約關(guān)系 C.能夠表示哪些任務是關(guān)鍵任務 D.能夠表示子任務之間的并行和串行關(guān)系30. 基線可作為軟件生存期中各開發(fā)階段的一個檢查點。當采用的基線發(fā)生錯誤時,可以返回到最近和最恰當?shù)模–)上A.配置項B.程序C.基線D.過程 二、 簡答題 1. 為建立良好的編程風格應遵循什么原則?答:1)節(jié)簡化 不使用不必要的變量和函數(shù) 避免變量重名,變量重名可導致很難被發(fā)現(xiàn)的錯誤。盡量減小代碼量。盡量減少代碼的執(zhí)行時間,提高執(zhí)行效率。 避免功能冗余的模塊。盡量不使用全局變量。2)模塊化 確保物理和邏輯功能密切相關(guān)。限定一

47、個模塊完成一個獨立的功能,提高模塊的內(nèi)聚度。檢查代碼的重復率,重復多的代碼,要抽出來作為一個單獨的模塊。3)簡單化 采用直接了當?shù)乃惴?,避免使用技巧性高和難懂的代碼。使用簡單的數(shù)據(jù)結(jié)構(gòu),避免使用多維數(shù)組、指針和復雜的表。注意對象命名的一致性。以手工的方式簡化算術(shù)和邏輯表達式。4)結(jié)構(gòu)化 按標準化的次序說明數(shù)據(jù);按字母順序說明對象名;使用讀者明了的結(jié)構(gòu)化程序部件;采用直截了當?shù)乃惴?;根?jù)應用背景排列程序各個部分;不隨意為效率而犧牲程序的清晰度和可讀性;讓機器多做煩瑣的工作,如重復、庫函數(shù);用公共函數(shù)調(diào)用代替重復出現(xiàn)的表達式;避免循環(huán)、分支的嵌套層數(shù)過高;單入口單出口。5)文檔化 有效、適當?shù)厥褂?/p>

48、注釋。協(xié)調(diào)使用程序塊注釋和程序行注釋。保持文檔和程序的同步。6)格式化 始終采用統(tǒng)一縮進規(guī)則;適當插入括號表明運算次序、排除二義性;有效地使用空格符以區(qū)別程序的不同意群。 2. 什么是軟件測試? 答:軟件測試從廣義上講,是指軟件產(chǎn)品生存周期內(nèi)所有的檢查、評審和確認活動。從狹義上講,軟件測試是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程?;蛘哒f,軟件測試是根據(jù)軟件開發(fā)各個階段的規(guī)格說明和程序內(nèi)部結(jié)構(gòu)而精心設(shè)計一批測試用例,用這些測試用例運行程序,以發(fā)現(xiàn)程序錯誤的過程。 3. 軟件測試的原則是什么? 答:軟件測試的原則有:1)應該把測試貫穿在整個開發(fā)過程之中。事實上,從需求

49、分析階段開始,每個階段結(jié)束之前都要進行階段審查,目的是盡早發(fā)現(xiàn)和糾正錯誤。2)每個測試用例都應該包括測試輸入數(shù)據(jù)和這組數(shù)據(jù)輸入作用下的預期輸出結(jié)果。在實際操作中可以列出一張表格,包括每個測試用例的編號、類型、輸入數(shù)據(jù)、預期輸出結(jié)果、實際輸出結(jié)果、出錯原因分析。3) 要對每個測試結(jié)果進行全面檢查,不要漏掉已經(jīng)出現(xiàn)的錯誤跡象。4)程序員應該盡量避免檢查自己編寫的代碼。測試工作需要嚴格的工作作風,程序員在測試自己編寫的代碼時往往會帶有一些傾向性,使得他們工作中常常出現(xiàn)一些疏漏。而且,程序員對設(shè)計規(guī)格說明書的理解錯誤而引入的錯誤更是難于發(fā)現(xiàn)。5)在設(shè)計測試用例時,應該包括有效的、期望的輸入情況,也要包

50、括無效的和不期望的輸入情況。既能夠驗證程序正常運行的合理輸入,也能夠驗證對異常情況處理的不合理輸入數(shù)據(jù)以及臨界數(shù)據(jù)。在測試程序時,人們常常過多地考慮合法的和期望的輸入條件,以檢查程序是否做了它應該做的事情,而忽視了不合法的和預想不到的輸入條件。事實上,用戶在使用系統(tǒng)時,輸入一些錯誤指令和參數(shù)是經(jīng)常發(fā)生的,如果軟件遇到這種情況不能做出適當?shù)姆磻?,給出相應的提示信息,就可能會誤導用戶,甚至造成嚴重損失。6)軟件中遺留的錯誤數(shù)量與已經(jīng)發(fā)現(xiàn)的錯誤數(shù)量成正比。根據(jù)這個規(guī)律,對測試中發(fā)現(xiàn)錯誤成堆的模塊更要仔細測試。例如,在某個著名的操作系統(tǒng)中,44%的錯誤僅與4%的模塊有關(guān)。7) 回歸測試的關(guān)聯(lián)性要特別引

51、起注意,修改一個錯誤而引起更多錯誤的現(xiàn)象并不少見。8)測試程序時不僅要檢查程序是否做了它應該做的事情,還要檢查它是否做了不該做的事情。例如,工資軟件中,軟件只完成在編職工的工資計算和輸出,不在編人員的工資是不進行計算和輸出的。如果軟件將不在編人員的工資信息也輸出顯然是不合適的。9)嚴格執(zhí)行測試計劃。在測試之前應該有明確的測試計劃,內(nèi)容包括:要測試的軟件功能和內(nèi)容、測試用例和預期結(jié)果、測試的進度安排、需要的工具和資源、測試控制方式和過程等。10)做好測試記錄,為統(tǒng)計和維護提供基礎(chǔ)數(shù)據(jù)。4. 請說明集成測試、系統(tǒng)測試和驗收測試有什么不同? 答:集成測試界于單元測試和系統(tǒng)測試之間,起到“橋

52、梁作用”,一般由開發(fā)小組采用白盒加黑盒的方式來測試,既驗證“設(shè)計”,又驗證“需求”。系統(tǒng)測試的粒度最大,一般由獨立測試小組采用黑盒方式來測試,主要測試系統(tǒng)是否符合“需求規(guī)格說明書”。驗收測試與系統(tǒng)測試相似,主要區(qū)別是測試人員不同,驗收測試由用戶執(zhí)行。5. 簡述單元測試的內(nèi)容。 答:單元測試的內(nèi)容有1)模塊接口測試:對通過被測模塊的數(shù)據(jù)流進行測試。為此,對模塊接口,包括參數(shù)表、調(diào)用子模塊的參數(shù)、全程數(shù)據(jù)、文件輸入/輸出操作都必須檢查。2)局部數(shù)據(jù)結(jié)構(gòu)測試:設(shè)計測試用例檢查數(shù)據(jù)類型說明、初始化、缺省值等方面的問題,還要查清全程數(shù)據(jù)對模塊的影響。3)路徑測試:選擇適當?shù)臏y試用例,對模塊中重

53、要的執(zhí)行路徑進行測試。對基本執(zhí)行路徑和循環(huán)進行測試可以發(fā)現(xiàn)大量路徑錯誤。4)錯誤處理測試:檢查模塊的錯誤處理功能是否包含有錯誤或缺陷。例如,是否拒絕不合理的輸入;出錯的描述是否難以理解、是否對錯誤定位有誤、是否出錯原因報告有誤、是否對錯誤條件的處理不正確;在對錯誤處理之前錯誤條件是否已經(jīng)引起系統(tǒng)的干預等。5)邊界測試:要特別注意數(shù)據(jù)流、控制流中剛好等于、大于或小于確定的比較值時出錯的可能性。對這些地方要仔細地選擇測試用例,認真加以測試。 此外,如果對模塊運行時間有要求的話,還要專門進行關(guān)鍵路徑測試,以確定最壞情況下和平均意義下影響模塊運行時間的因素。這類信息對進行性能評價是十分有用的

54、。6. 什么是白盒測試?它適應哪些測試?答:白盒測試也叫結(jié)構(gòu)測試,測試者需要了解被測程序的內(nèi)部結(jié)構(gòu)。白盒測試通常根據(jù)覆蓋準則設(shè)計測試用例,有語句覆蓋、判定覆蓋、條件覆蓋、判定/條件覆蓋和條件組合覆蓋。" 白盒測試適用與單元測試、集成測試、系統(tǒng)測試7. 非漸增式測試與漸增式測試有什么區(qū)別?漸增式測試如何組裝模塊?答:1)漸增式可以較早地發(fā)現(xiàn)模塊界面之間的錯誤,非漸增式則要到最后將所有模塊連接起來時才能發(fā)現(xiàn)此類錯誤。 2)非漸增式需要較多的人工3)漸增式有利于排錯。如果模塊界面間有錯,如果用非漸增式,這類錯誤到最后聯(lián)合測試時才能發(fā)現(xiàn),此時很難判斷錯誤發(fā)生在哪一部分,但如果用漸增

55、式,這類錯誤就較容易定位,它通常與最新加上去的模塊有關(guān)。4)漸增式比較徹底。5)漸增式需要較多的機器時間。6)非漸增式方式,開始時允許幾個測試人員并行工作,對大型系統(tǒng)來說,是很有意義的。8. 采用黑盒技術(shù)設(shè)計測試用例有哪幾種方法?這些方法各有什么特點?答:黑盒測試設(shè)計測試用例的方法有1)等價類劃分法 特點是:a、測試的內(nèi)容相同  b、一個等價類中的某個測試可以發(fā)現(xiàn)缺陷,那么這個等價類的其他測試也能發(fā)現(xiàn)缺陷 c、一個等價類中的某個測試不能發(fā)現(xiàn)缺陷,那么這個等價類的其它測試也不能發(fā)現(xiàn)缺陷2)邊界值分析法 特點是:用邊界值分析時時常收獲較大,它是在等價類的邊界上選擇測試用例3)錯誤推測法&

56、#160; 特點是:沒有確定的步驟,很大程度上是憑借經(jīng)驗進行的 4)因果圖法 特點是:考慮輸入條件間的組合關(guān)系;考慮輸出條件對輸入條件的信賴關(guān)系;測試用例發(fā)現(xiàn)錯誤的效率高;能查出功能說明中的某些不一致或遺漏9. 白盒測試法有哪些覆蓋標準?試對它們的檢錯能力進行比較。答:白盒測試的覆蓋標準有:語句覆蓋->判定覆蓋->條件覆蓋->判定/條件覆蓋->條件組合覆蓋->路徑覆蓋 檢錯能力由弱到強10. 根據(jù)下面程序代碼,畫出程序流程圖,然后設(shè)計滿足條件/判定覆蓋、條件組合覆蓋的測試用例。 BEGIN  T:=0 IF ( X>=

57、80 AND Y>=80 )THEN T:=1ELSE IF ( X>=90 AND Y>=75 )  THEN T:=2ENDIF IF (X>=75 AND Y>=90) THEN 9 T:=3 ENDIF ENDIF RETURN 測試用例:條件/判定覆蓋:1 X=80 Y=80 2 X=90 Y=753 X=50 Y=50條件組合覆蓋:1 X=80 Y=802 X=80 Y=753 X=75 Y=8064 X=75 Y=755 X=90 Y=756 X=90 Y=707 X=80 Y=758 X=80 Y=709 X=75 Y

58、=9010 X=75 Y=9011 X=70 Y=9012 X=70 Y=85 11. 軟件的可維護性是軟件設(shè)計師最關(guān)注的性能,談談為了獲得軟件良好的可維護性,在設(shè)計時應該注意哪些問題?答:為獲得軟件的良好可維護性,在設(shè)計階段應該做一些變更實驗,檢查系統(tǒng)的可維護性、靈活性和可移植性,設(shè)計時應該將今后可能變更的內(nèi)容與其他部分分離開來,并且遵循高內(nèi)聚、低偶合的原則。 12. 在軟件文檔中,你認為哪些文檔對于軟件的維護最重要? 需求分析文檔、設(shè)計文檔、程序文檔對軟件維護很重要 13. 軟件維護時的源程序修改策略是什么?答:軟件維護時的源程序修改策略是:由于軟件

59、維護最終落實在修改源程序和文檔上。為了正確、有效地修改源程序,通常要先分析和理解源程序,然后才能修改源程序,最后重新測試和驗證源程序。14. 軟件項目計劃包括那些內(nèi)容? 答:軟件項目計劃的內(nèi)容包括:1.范圍。對該軟件項目的綜合描述,定義起所要做的工作以及性能限制,它包括: (1)項目目標。(2)主要功能。(3)性能限制。(4)系統(tǒng)接口。(5)特殊要求。(6)開發(fā)概述。2.資源。(1)人員資源。(2)硬件資源。(3)軟件資源。(4)其他。 3.進度安排。進度安排的好壞往往會影響整個項目的按期完成,因此這一環(huán)節(jié)是十分重要的。制定軟件進度與其他工程沒有很大的區(qū)別 ,其方法主要有:(1)工程

60、網(wǎng)絡圖。(2)Gantt圖。(3)任務資源表。(4)成本估算。(5)培訓計劃。15.什么是軟件配置管理?什么是基線? 答:配置管理能夠系統(tǒng)地處理變更,從而使得軟件系統(tǒng)可以隨時保持其完整性。配置管理又可成為變更控制,可以用來評估提出的變更請求,跟蹤變更,并保持系統(tǒng)在不同時間的狀態(tài)。軟件配置管理是一套規(guī)范、高效的軟件開發(fā)基礎(chǔ)結(jié)構(gòu)?;€是:已經(jīng)通過正式復審和批準的某規(guī)約或產(chǎn)品,它因此可以作為進一步開發(fā)的基礎(chǔ),并且只能通過正式的變化控制過程改變。  三、 應用題2.有的學生總是問老師“我應該掌握什么程序設(shè)計語言更好?”你認為該如何回答這個問題?答:首先必須掌握C語言,面向?qū)ο蟮某绦?/p>

61、設(shè)計語言,各有各的優(yōu)勢,看你想往哪方面用了,如果是服務器端的應用最好是java,跨平臺性好;如果是,一般的桌面應用,C#是較好的選擇;至于易上手程度,VB,Delphi等是上手比較快的;至于數(shù)據(jù)庫應用本人認為PB是最好的選擇,VB,Delphi也是比較好的選擇;當特別強調(diào)效率的時候VC是不二的選擇,其中VC最為復雜,也最為靈活,“偷懶的程序員用VB,聰明的程序員用Delphi,  真正的程序員用VC”如果想要設(shè)計一些系統(tǒng)級的核心程序,最好用VC,C語言也可,但是不如VC強大。無論什么語言,通一門即可,它們只是工具,設(shè)計模式和算法才是靈魂。3.編寫C語言程序,要求輸入一個學生的兩門課成

62、績(百分制),計算該生的總分并要求輸出成績等級A、B、C、D、E??偡衷?80分以上為A,160179分為B,140159分為C,120139分為D,120分以下為E。使用switch語句編寫,具體要求:  成績通過鍵盤輸入,輸入之前要有提示信息。若輸入的成績不是百分制成績,則給出錯誤提示信息,并且不再進行下面的等級評價;若輸入的成績是百分制成績,則計算總分,并根據(jù)要求評價等級。 答:#include <stdio.h>#include <conio.h> /*原型聲明*/ void input(int *,int*); int sum(int,int); void convert(int,char*); void degree(char,int);void main(void) /*定義變量*/  int nfst_course=-1,nsec_course=-1;  /*nfst_course第一

溫馨提示

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

評論

0/150

提交評論