2023年軟件工程形成性考核答案完整版_第1頁
2023年軟件工程形成性考核答案完整版_第2頁
2023年軟件工程形成性考核答案完整版_第3頁
2023年軟件工程形成性考核答案完整版_第4頁
2023年軟件工程形成性考核答案完整版_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

《軟件工程》形成性考核答案第一、二章一、填空題1.軟件工程學(xué)的內(nèi)容可涉及(理論)、結(jié)構(gòu)、(方法)、(工具)、環(huán)境、管理、規(guī)范等。2.軟件生存周期一般可分為問題定義、(可行性研究)、(需求分析)、設(shè)計、(編碼)、測試、運營與維護(hù)階段。3.可行性研究的目的是(用最小的代價在盡也許短的時間內(nèi)擬定問題是否可以解決)。4.系統(tǒng)流程圖是(描繪物理系統(tǒng))的傳統(tǒng)工具。5.在可行性研究中,(技術(shù)可行性)是系統(tǒng)開發(fā)過程中難度最大,最重要的一個環(huán)節(jié)。二、判斷題1.軟件工程采用的生存周期方法就是從時間角度對軟件的開發(fā)和維護(hù)這個復(fù)雜問題進(jìn)行分解,將軟件生存的時期分為若干階段。(√)2.螺旋模型是運用笛卡爾坐標(biāo)的四個象限上分別代表四個方面的活動來表達(dá)。(√)3.原型模型合用于嵌入式軟件。(╳)4.面向?qū)ο蠹夹g(shù)是構(gòu)件組裝模型的基礎(chǔ)。(√)5.在可行性研究中最難決斷和最關(guān)鍵的問題是經(jīng)濟(jì)可行性。(╳)6.系統(tǒng)流程圖表達(dá)的是部件的信息流程,還表達(dá)對信息進(jìn)行加工解決的控制過程。(╳)7.自底向上成本估計不是從整體開始,而是從任務(wù)單元開始。(√)三、單項選擇題1.下列哪個階段不是軟件生存期三個階段中的內(nèi)容(C)。A.計劃階段B.開發(fā)階段C.編碼階段D.維護(hù)階段2.下列關(guān)于瀑布模型的描述對的的是(C)。A.瀑布模型的核心是按照軟件開發(fā)的時間順序?qū)栴}簡化。B.瀑布模型具有良好的靈活性。C.瀑布模型采用結(jié)構(gòu)化的分析與設(shè)計方法,將邏輯實現(xiàn)與物理實現(xiàn)分開。D.運用瀑布模型,假如發(fā)現(xiàn)問題修改的代價很低。四、簡答題1.軟件的定義與特點。參考答案:軟件是計算機(jī)系統(tǒng)中與硬件互相依存的另一部分,它是涉及程序,數(shù)據(jù)結(jié)構(gòu)及其相關(guān)文檔的完整集合。它涉及三個方面的內(nèi)容:⑴程序:在運營時,能提供所希望的功能和性能的指令集。⑵數(shù)據(jù)結(jié)構(gòu):使程序可以對的運營的數(shù)據(jù)結(jié)構(gòu)。⑶文檔:描述程序研制過程、方法及使用的圖文材料。軟件產(chǎn)品具有以下一些特性:①軟件是一種邏輯實體,而不是具體的物理實體,因而它具有抽象性。②軟件是通過人們的智力活動,把知識與技術(shù)轉(zhuǎn)化成信息的一種產(chǎn)品,是在研制、開發(fā)中被發(fā)明出來的。③在軟件的運營和使用期間,沒有硬件那樣的機(jī)械磨損、老化問題。④軟件的開發(fā)和運營經(jīng)常受到計算機(jī)系統(tǒng)的限制,對計算機(jī)系統(tǒng)有著不同限度的依賴性。⑤軟件的開發(fā)至今尚未完全擺脫手工的開發(fā)方式。⑥軟件的開發(fā)費用越來越高,成本相稱昂貴。也可概括為:⑴抽象性:邏輯實體,可記錄,但看不到。⑵可復(fù)制性:與開發(fā)成本相比,復(fù)制成本很低。⑶無折舊。⑷受硬件制約。⑸未完全擺脫手工工藝。⑹開發(fā)費用高。2.什么是軟件工程。參考答案:軟件工程是指導(dǎo)計算機(jī)軟件開發(fā)和維護(hù)的工程學(xué)科。它采用工程的概念、原理、技術(shù)和方法來開發(fā)與維護(hù)軟件,把通過時間考驗而證明對的的管理技術(shù)和當(dāng)前可以得到的最佳的技術(shù)方法結(jié)合起來開發(fā)和維護(hù)軟件。軟件工程是從管理和技術(shù)兩個方面研究如何運用工程學(xué)的基本原理和方法來更好地開發(fā)和維護(hù)計算機(jī)軟件的一門學(xué)科。3.什么是軟件生存周期。參考答案:一個軟件從定義到開發(fā)、使用和維護(hù),直到最終被棄用,要經(jīng)歷一個漫長的時期,通常把軟件經(jīng)歷的這個漫長的時期稱為生存周期。軟件生存周期一般可分為以下階段:問題定義需求分析與可行性研究設(shè)計編碼測試運營與維護(hù)軟件生存期也可以分為三個大的階段:計劃階段。開發(fā)階段和維護(hù)階段。4.什么是軟件危機(jī),軟件危機(jī)有哪幾種表現(xiàn)?參考答案:答:軟件開發(fā)和維護(hù)的過程中所碰到的一系列嚴(yán)重的問題。具體表現(xiàn)在:(1)產(chǎn)品不能符合用戶的實際需求;(2)軟件開發(fā)的效率較低;(3)軟件產(chǎn)品的質(zhì)量差;(4)軟件開發(fā)成本和進(jìn)度的估算不準(zhǔn)確;(5)軟件可維護(hù)性差;(6)軟件開發(fā)文檔資料不完整;(7)軟件的價格昂貴;5.簡述可行性研究的任務(wù)。參考答案:可行性研究的目的:就是用最小的代價在盡也許短的時間內(nèi)擬定問題是否可以解決,是否有必要去解決??尚行匝芯康哪康牟皇墙鉀Q問題,而是擬定問題是否值得去解決。研究在當(dāng)前的具體條件下,開發(fā)新系統(tǒng)是否具有必要的資源和其它條件。可行性研究是要進(jìn)行一次壓縮簡化了的系統(tǒng)分析和設(shè)計的過程,也就是說在較高層次上以較抽象的方式進(jìn)行設(shè)計的過程。6.簡述可行性研究的環(huán)節(jié)。參考答案:1.復(fù)查系統(tǒng)規(guī)模和目的2.研究目前正在使用的系統(tǒng)3.導(dǎo)出新系統(tǒng)的高層邏輯模型4.重新定義問題5.導(dǎo)出和評價供選擇的方案6.推薦一個方案并說明理由7.推薦行動方針8.書寫計劃任務(wù)書9.提交審查7.簡述系統(tǒng)流程圖的作用。參考答案:1.制作系統(tǒng)流程圖的過程是系統(tǒng)分析員全面了解系統(tǒng)業(yè)務(wù)解決概況的過程,它是系統(tǒng)分析員作進(jìn)一步分析的依據(jù)。2.系統(tǒng)流程圖是系統(tǒng)分析員、管理人員、業(yè)務(wù)操作人員互相交流的工具。3.系統(tǒng)分析員可直接在系統(tǒng)流程圖上擬出可以實現(xiàn)計算機(jī)解決的部分。4.可運用系統(tǒng)流程圖來分析業(yè)務(wù)流程的合理性?!盾浖こ獭沸纬尚钥己舜鸢傅谌⑺恼乱?、填空題需求分析的基本任務(wù)是準(zhǔn)確的回答(系統(tǒng)必須做什么)。需求分析階段研究的對象是軟件項目的(用戶規(guī)定)。結(jié)構(gòu)化分析方法就是(面向數(shù)據(jù)流)自頂向下逐步求精進(jìn)行需求分析的方法。需求分析的目的之一就是把數(shù)據(jù)流和數(shù)據(jù)存儲定義到(元素級)。數(shù)據(jù)流圖的基本符號涉及(數(shù)據(jù)輸入的源點和數(shù)據(jù)輸出的匯點)、(加工)、(數(shù)據(jù)流)、(數(shù)據(jù)存儲文獻(xiàn))。數(shù)據(jù)流圖和(數(shù)據(jù)字典)共同構(gòu)成系統(tǒng)的邏輯模型。數(shù)據(jù)字典的內(nèi)容涉及六項:(數(shù)據(jù)流)、(數(shù)據(jù)項)、(數(shù)據(jù)結(jié)構(gòu))、數(shù)據(jù)存儲、解決邏輯、外部實體。在需求分析階段常用的圖形工具有(層次方框圖)、(Warnier圖)、(IPO圖)。需求分析應(yīng)交付的重要文檔是(需求規(guī)格說明書)。概要設(shè)計過程中要先進(jìn)行系統(tǒng)設(shè)計、(復(fù)審系記錄劃)與(需求分析),擬定系統(tǒng)具體的實行方案;然后進(jìn)行(結(jié)構(gòu)設(shè)計),擬定軟件結(jié)構(gòu)。層次結(jié)構(gòu)的上一層是下一層的(抽象),下一層是上一層的(求精)。模塊獨立的概念是(模塊化)、(抽象)、(信息隱蔽)和局部化概念的直接結(jié)果。模塊耦合的強(qiáng)弱取決于(模塊間接口的復(fù)雜限度)、(調(diào)用模塊的方式)和通過接口的信息。設(shè)計出軟件的初步結(jié)構(gòu)以后,應(yīng)當(dāng)進(jìn)一步分解或合并模塊,力求減少(耦合)提高(內(nèi)聚)。在一段程序中,將多次出現(xiàn)的一組語句設(shè)計為一個子程序,供多個部分調(diào)用,這種情況出現(xiàn)的內(nèi)聚稱為(偶爾內(nèi)聚)。一個模塊直接調(diào)用的模塊數(shù)目稱為模塊的(扇出),一個模塊被多少上級模塊直接調(diào)用稱為模塊的(扇入)。JSD是一種典型的(面向數(shù)據(jù)結(jié)構(gòu))的分析設(shè)計方法。Jackson圖除了可以表達(dá)(程序結(jié)構(gòu)外)外,還可以表達(dá)數(shù)據(jù)結(jié)構(gòu)。對于下列偽碼,畫出改善的Jackson圖()AseqBCDAendAADCBDCB二、判斷題在軟件開發(fā)中,采用原型系統(tǒng)策略的重要困難是時間問題。(╳)數(shù)據(jù)流圖從數(shù)據(jù)傳遞和加工的角度,以圖形的方式描述數(shù)據(jù)流從輸入到輸出的傳輸變換過程。(√)模塊越多,開發(fā)成本越小。(╳)耦合是指一個模塊內(nèi)各個元素彼此結(jié)合的緊密限度。(╳)內(nèi)聚是指一個軟件結(jié)構(gòu)內(nèi)各個模塊之間互連限度的度量。(╳)在軟件設(shè)計中應(yīng)當(dāng)盡量設(shè)計緊密耦合的系統(tǒng)。(╳)控制耦合往往可以通過度解由數(shù)據(jù)耦合來代替。(√)內(nèi)容耦合又稱為病態(tài)耦合,在很多高級程序設(shè)計語言中不允許出現(xiàn)任何形式的內(nèi)容耦合。(√)對于DFD圖的劃分,重要依賴設(shè)計人員的經(jīng)驗,一切都應(yīng)根據(jù)設(shè)計人員的經(jīng)驗擬定。(╳)一筆交易、一個動作、甚至操作人員按一個按鈕都可以看做是一次事物。(√)假如一個模塊內(nèi)的解決元素是彼此相關(guān)的,并且以一個特定的順序執(zhí)行,則這種內(nèi)聚稱為時間內(nèi)聚。(╳)概要設(shè)計階段完畢的重要文檔是概要設(shè)計說明書。(√)三、多項選擇題需求分析階段結(jié)束后,應(yīng)交出的文檔中應(yīng)當(dāng)涉及(ABC)。數(shù)據(jù)流圖數(shù)據(jù)字典簡明的算法描述項目的經(jīng)費預(yù)算關(guān)于數(shù)據(jù)流圖對的的描述是(ACD)。數(shù)據(jù)流圖是結(jié)構(gòu)化系統(tǒng)分析的重要工具。在數(shù)據(jù)流圖中,*號標(biāo)記相鄰的數(shù)據(jù)流只取其一。加工是以數(shù)據(jù)結(jié)構(gòu)或數(shù)據(jù)內(nèi)容作為加工對象的。數(shù)據(jù)流圖的主圖中必須涉及所有四種基本元素。關(guān)于數(shù)據(jù)字典對的的描述是(ABCD)。數(shù)據(jù)字典最重要的用途是作為分析階段的工具。實現(xiàn)數(shù)據(jù)字典三種常見的方法有全人工過程、全自動過程、混合過程。數(shù)據(jù)字典應(yīng)當(dāng)容易更新和修改??梢圆捎每ㄆ问綍鴮憯?shù)據(jù)字典。(ABCD)可以作為模塊。過程子程序函數(shù)宏下列關(guān)于模塊的描述,對的的是(ABCD)。具有獨立的模塊軟件比較容易開發(fā)出來。獨立的模塊比較容易測試和維護(hù)。模塊的獨立限度可以通過內(nèi)聚和耦合標(biāo)定。獨立的模塊可以完畢一個相對獨立的特定子功能。耦合的強(qiáng)弱取決于(ABC)。模塊間接口的復(fù)雜限度。調(diào)用模塊的方式。通過接口的信息。模塊內(nèi)部各個元素彼此之間的緊密結(jié)合限度。在公共環(huán)境耦合中,公共環(huán)境可以是(ABCD)。全程變量。共享的通信區(qū)。內(nèi)存的公共覆蓋區(qū)。存儲介質(zhì)上的文獻(xiàn)。下列(AD)屬于內(nèi)容耦合。一個模塊有多個入口。兩個模塊彼此之間只通過傳遞參數(shù)互換信息。兩個模塊之間存在全程變量,并通過全程變量傳遞信息。兩個模塊有部分代碼重疊。在軟件設(shè)計中,(CD)耦合應(yīng)盡量避免??刂茢?shù)據(jù)內(nèi)容標(biāo)記四、簡答題需求分析的任務(wù)是什么?參考答案:見書31頁如何建立目的系統(tǒng)的邏輯模型?參考答案:在理解當(dāng)前系統(tǒng)“如何做”的基礎(chǔ)上,抽取其“做什么”的本質(zhì)。在物理模型中有許多物理因素,但隨著分析工作的進(jìn)一步,有些非本質(zhì)因素就顯得不必要了,因而需要對物理模型進(jìn)行分析,區(qū)分本質(zhì)和非本質(zhì)因素,去掉那些非本質(zhì)因素就可獲得反映系統(tǒng)本質(zhì)的邏輯模型。做法是:⑴擬定目的系統(tǒng)與當(dāng)前系統(tǒng)的邏輯差別;⑵將變化部分看作是新的解決環(huán)節(jié),對功能圖及對象圖進(jìn)行調(diào)整;⑶由外及里對變化的部分進(jìn)行分析,推斷其結(jié)構(gòu),獲得目的系統(tǒng)的邏輯模型。什么是結(jié)構(gòu)化分析?“結(jié)構(gòu)化”體現(xiàn)在哪里?參考答案:結(jié)構(gòu)化分析方法是面向數(shù)據(jù)流進(jìn)行需求分析的方法。結(jié)構(gòu)化分析方法使用數(shù)據(jù)流圖DFD與數(shù)據(jù)字典DD來描述,面向數(shù)據(jù)流問題的需求分析適合于數(shù)據(jù)解決類型軟件的需求描述。其核心思想是分解化簡問題,將物理與邏輯表達(dá)分開,對系統(tǒng)進(jìn)行數(shù)據(jù)與邏輯的抽象。結(jié)構(gòu)化分析方法體現(xiàn)在用抽象模型的概念,按照軟件內(nèi)部數(shù)據(jù)傳遞、變換的關(guān)系,自頂向下逐層分解,直到找到滿足功能規(guī)定的所有可實現(xiàn)的軟件為止。需求說明書由哪些部分組成?各部分之間的關(guān)系是什么?參考答案:軟件需求說明書一般涉及如下內(nèi)容:1.引言部分編寫目的;項目背景(應(yīng)涉及:a.項目的委托單位、開發(fā)單位和主管部門;b.該軟件系統(tǒng)與其他系統(tǒng)的關(guān)系。);定義;(列出文檔中所用到的專門術(shù)語的定義和縮寫詞的原文。)參考資料。2.任務(wù)概述目的;運營環(huán)境;條件與限制。3.數(shù)據(jù)描述靜態(tài)數(shù)據(jù);動態(tài)數(shù)據(jù)(涉及輸入數(shù)據(jù)和輸出數(shù)據(jù));數(shù)據(jù)庫描述(給出使用數(shù)據(jù)庫的名稱和類型);數(shù)據(jù)詞典;數(shù)據(jù)采集。4.功能規(guī)定功能劃分;功能描述。5.性能需求數(shù)據(jù)精確度;時間特性(如響應(yīng)時間、更新解決時間、數(shù)據(jù)轉(zhuǎn)換與傳輸時間、運營時間等);適應(yīng)性(在操作方式、運營環(huán)境、與其他軟件的接口以及開發(fā)計劃等發(fā)生變化時,應(yīng)具有的適應(yīng)能力。)6.運營需求用戶界面(如屏幕格式、報表格式、菜單格式、輸入輸出時間等);硬件接口;軟件接口;故障解決。7.其他規(guī)定如可使用性、安全保密、可維護(hù)性、可移植性等。8.附錄為什么數(shù)據(jù)流圖要分層?參考答案:為了表達(dá)數(shù)據(jù)解決過程的數(shù)據(jù)加工情況,用一個數(shù)據(jù)流圖是不夠的。為表達(dá)稍為復(fù)雜的實際問題,需要按照問題的層次結(jié)構(gòu)進(jìn)行逐步分解,并以分層的數(shù)據(jù)流圖反映這種結(jié)構(gòu)關(guān)系。什么是加工邏輯?參考答案:加工邏輯就是解決邏輯,加工邏輯是對加工過程的抽象描述。加工邏輯的具體實現(xiàn)就是加工過程。加工邏輯是指用戶對這個加工的邏輯規(guī)定,即加工的輸入數(shù)據(jù)流與輸出數(shù)據(jù)流之間的邏輯關(guān)系。加工邏輯重要是說明加工做什么,而不是描述具體的加工過程,如采用哪些加工單元、如何控制執(zhí)行等實現(xiàn)細(xì)節(jié)。根據(jù)下列描述,畫出教材征訂系統(tǒng)的第一層數(shù)據(jù)流圖。學(xué)生入學(xué)后到教材科訂書,教材科根據(jù)教材庫存情況分析是否需要買書,如需購買,則向書店購買。各種資金往來通過學(xué)校的會計科辦理。參考答案:結(jié)構(gòu)化設(shè)計方法的基本思想是什么?它如何與SA方法相銜接?參考答案:結(jié)構(gòu)化設(shè)計方法的基本思想是SA是結(jié)構(gòu)化分析方法的簡稱。結(jié)構(gòu)化分析方法是面向數(shù)據(jù)流進(jìn)行需求分析的方法。其核心思想是分解化簡問題,將物理與邏輯表達(dá)分開,對系統(tǒng)進(jìn)行數(shù)據(jù)與邏輯的抽象。結(jié)構(gòu)化分析方法體現(xiàn)在用抽象模型的概念,按照軟件內(nèi)部數(shù)據(jù)傳遞、變換的關(guān)系,自頂向下逐層分解,直到找到滿足功能規(guī)定的所有可實現(xiàn)的軟件為止。結(jié)構(gòu)化設(shè)計是在結(jié)構(gòu)化分析的基礎(chǔ)上完畢的。結(jié)構(gòu)化設(shè)計屬于面向數(shù)據(jù)流的設(shè)計方法。在需求分析階段,通過SA方法,解決了一個關(guān)鍵問題:信息流。數(shù)據(jù)流是軟件開發(fā)人員考慮問題的出發(fā)點和基礎(chǔ)。數(shù)據(jù)流從系統(tǒng)的輸入端向輸出端流動,要經(jīng)歷一系列的變換或解決。用來表現(xiàn)這個過程的數(shù)據(jù)流圖(DFD):事實上就是軟件系統(tǒng)的邏輯模型。結(jié)構(gòu)化設(shè)計要解決的任務(wù),就是在上述需求分析的基礎(chǔ)上,將DFD圖映射為軟件系統(tǒng)的結(jié)構(gòu)。換句話說,這類設(shè)計方法允許把用DFD圖表達(dá)的系統(tǒng)邏輯模型方便地轉(zhuǎn)換成對于軟件結(jié)構(gòu)的初始設(shè)計描述。結(jié)構(gòu)化設(shè)計方法的基本思想是將系統(tǒng)劃提成一些獨立的功能模塊,這些模塊按照一定的組織層次構(gòu)造起來形成軟件結(jié)構(gòu),通過自頂向下逐步細(xì)化的方法將用數(shù)據(jù)流圖表達(dá)的信息轉(zhuǎn)換成程序結(jié)構(gòu)的設(shè)計描述。從結(jié)構(gòu)化分析到結(jié)構(gòu)化設(shè)計工具的轉(zhuǎn)變:結(jié)構(gòu)化分析結(jié)果結(jié)構(gòu)化設(shè)計結(jié)果數(shù)據(jù)流圖初始結(jié)構(gòu)圖生存周期字典的數(shù)據(jù)部分設(shè)計數(shù)據(jù)字典偽碼+實現(xiàn)方面?zhèn)未a實體關(guān)系圖+數(shù)據(jù)庫性數(shù)據(jù)庫設(shè)計事務(wù)框圖分層/細(xì)化事務(wù)模型什么是模塊、模塊化?參考答案:模塊是數(shù)據(jù)說明、可執(zhí)行語句等程序?qū)ο蟮募希K可以單獨被命名的并且可通過名字來訪問,例如,過程、函數(shù)、子程序、宏等等都可作為模塊。模塊化就是把程序劃提成若干個模塊,每個模塊具有一個子功能,把這些模塊集總起來組成一個整體,可以完畢指定的功能,實現(xiàn)問題的規(guī)定。模塊化設(shè)計這一概念取消。說明并比較概要設(shè)計說明書與需求分析說明書的內(nèi)容。參考答案:P54P98(1)兩個說明書都涉及引言,內(nèi)容基本相同;(2)任務(wù)概述部分概要設(shè)計說明比需求說明增長了需求概述;(3)需求說明重要通過靜態(tài)、動態(tài)數(shù)據(jù),數(shù)據(jù)庫描述,數(shù)據(jù)字典和數(shù)據(jù)采集等內(nèi)容進(jìn)行數(shù)據(jù)描述;(4)需求說明中的重要部分是功能規(guī)定、性能規(guī)定、運營需求以及其他規(guī)定,它的目的是全面地、精確地描述了系統(tǒng)要“做什么”。需求說明書中還也許涉及數(shù)據(jù)流圖、數(shù)據(jù)字典、IPO圖等描述的系統(tǒng)邏輯模型。(5)概要設(shè)計說明則對系統(tǒng)的總體結(jié)構(gòu)、各個接口、數(shù)據(jù)結(jié)構(gòu)、運營、犯錯、安全、維護(hù)進(jìn)行具體設(shè)計,它的目的是描述系統(tǒng)“如何做”,往往包含了各模塊的解決說明和接口說明以及系統(tǒng)結(jié)構(gòu)圖。(6)概要設(shè)計說明是建立在需求說明的基礎(chǔ)上的。用Jackson圖表達(dá)下圖所示的二維表格:學(xué)生名冊表頭姓名表頭性別年齡學(xué)號……表體表體該學(xué)生名冊由表頭和表體兩部分組成。其中表頭又順序涉及表名和字段名。表體可由任意行組成,每行涉及學(xué)生的姓名、性別、年齡和學(xué)號。參考答案:學(xué)生名冊學(xué)生名冊行*學(xué)號年齡性別姓名字段名表名表體表頭行*學(xué)號年齡性別姓名字段名表名表體表頭指出下列數(shù)據(jù)流圖中存在的問題。OF3.2FB2OF3.2FB2PB3.1PB3.1QD3.3D1QD3.3D13.4CE33.4CE3EE父圖子圖參考答案:1、父圖沒有輸入數(shù)據(jù)流;2、子圖的輸入數(shù)據(jù)流應(yīng)當(dāng)是C,而不是B;3、子圖的輸出數(shù)據(jù)流應(yīng)當(dāng)只有D和E,而不應(yīng)有F。《軟件工程》形成性考核答案第五、六章一、填空題具體設(shè)計的工具有(圖形工具)、表格工具和語言工具。為使用流程圖描述結(jié)構(gòu)華程序,限制流程圖有五種基本的控制結(jié)構(gòu)(順序型)、(選擇型)、(while型循環(huán))、until循環(huán)、多情況型選擇。HIPO圖是由一組(IPO)圖和一張(HC)圖組成。IPO圖由(輸入)、解決和(輸出)三個框組成。這個圖的特點是可以直觀的顯示三者之間的關(guān)系。面向?qū)ο蠹夹g(shù)是一整套關(guān)于如何看待(軟件系統(tǒng))和(現(xiàn)實世界)的關(guān)系,以什么觀點來研究問題并進(jìn)行分析求解,以及如何進(jìn)行系統(tǒng)構(gòu)造的軟件方法學(xué)。面向?qū)ο蠓椒ㄊ且环N運用(對象)、(類)、(封裝)、(聚合)、消息傳送、多態(tài)性等概念來構(gòu)造系統(tǒng)的軟件開發(fā)方法。面向?qū)ο蟮能浖こ谭椒ㄊ敲嫦驅(qū)ο蠓椒ㄔ冢ㄜ浖こ?領(lǐng)域的全面應(yīng)用。UML的定義涉及(UML語義)和(UML表達(dá)法)兩個部分。二、判斷題具體設(shè)計是在概要設(shè)計之后進(jìn)行的。它運用概要設(shè)計的結(jié)果,對系統(tǒng)中的每個模塊給出足夠的過程性描述。(√)程序設(shè)計語言中應(yīng)絕對嚴(yán)禁使用GOTO語句。(╳)PAD圖在設(shè)立了五種基本的控制結(jié)構(gòu)后,還允許遞歸調(diào)用。(√)UML設(shè)定的目的之一是運用面向?qū)ο蟾拍顏順?gòu)造系統(tǒng)模型。(√)類是關(guān)于對象性質(zhì)的描述,由方法和數(shù)據(jù)集成。(√)三、簡答題具體設(shè)計的任務(wù)是什么?參考答案:1.為每個模塊擬定采用的算法,選擇某種適當(dāng)?shù)墓ぞ弑磉_(dá)算法的過程,寫出模塊的具體過程性描述;2.擬定每一模塊使用的數(shù)據(jù)結(jié)構(gòu);3.?dāng)M定模塊接口的細(xì)節(jié),涉及對系統(tǒng)外部的接口和用戶界面,對系統(tǒng)內(nèi)部其它模塊的接口,以及模塊輸入數(shù)據(jù)、輸出數(shù)據(jù)及局部數(shù)據(jù)的所有細(xì)節(jié)。4.要為每一個模塊設(shè)計出一組測試用例,以便在編碼階段對模塊代碼(即程序)進(jìn)行預(yù)定的測試,模塊的測試用例是軟件測試計劃的重要組成部分,通常應(yīng)涉及輸入數(shù)據(jù),盼望輸出等內(nèi)容。根據(jù)偽碼畫出N-S圖。STARTIFATHEN BLOCK B C?ENDBLOCKENDIFSTOP根據(jù)偽碼畫出N-S圖。STARTIFATHENX1DOUNTILBELSEX2YENDIFZSTOP參考答案:ATFATFX2X1UNTILBX2X1UNTILBYYZZ根據(jù)偽碼畫出PAD圖。STARTSWITCHPCASE1:A;break;CASE2:B;break;CASE3:C;break;Default;STOP參考答案:?=1A=1AP=2BP=2B=3C=3C簡述什么是“對象”,什么是“類”。參考答案:人們要進(jìn)行研究的任何事物均可看作對象,例如具體的事物、抽象的規(guī)則、計劃和事件。類的定義是具有相同屬性和服務(wù)的一組對象的集合,它為屬于該類的所有對象提供了統(tǒng)一的抽象描述,其內(nèi)部涉及屬性和服務(wù)兩個重要部分。(類是具有相同屬性、操作、關(guān)系的對象集合的總稱。)UML的內(nèi)容涉及哪些部分?參考答案:標(biāo)準(zhǔn)建模語言UML的重要內(nèi)容可以由下列五類圖來定義.①用例圖。②是靜態(tài)圖。③行為圖。④交互圖。⑤實現(xiàn)圖?!盾浖こ獭沸纬尚钥己舜鸢浮谄?、八、九章一、填空題1.軟件=(程序)+(文檔)。2.程序的效率是指程序的執(zhí)行速度和(程序占用的存儲空間)。3.軟件測試的方法有(分析方法)和(非分析方法)又稱黑盒法。4.實現(xiàn)容錯的重要手段是(冗余)和(防錯程序設(shè)計)。5.軟件測試的配置重要涉及(測試計劃)、(測試用例)和測試程序等。6.軟件測試的環(huán)節(jié)重要涉及(單元測試)、集成測試、確認(rèn)測試和(系統(tǒng)測試)。二、判斷題1.獨立編譯是指將一個大程序的不同程序單元分別編譯,然后重新連接整個程序段。(√)2.為保證程序的安全,必須做到程序中沒有任何錯誤存在,即容錯。(╳)3.假如把軟件開發(fā)所需的資源畫成一個金字塔,人是最基本的資源。(√)4.軟件測試只對軟件的編碼進(jìn)行查錯和糾錯工作,不需對軟件計劃和軟件設(shè)計進(jìn)行查錯。(╳)5.軟件測試的目的是為了證明一個軟件的設(shè)計沒有錯誤,只有沒有任何錯誤的軟件才干使用。(╳)6.在進(jìn)行軟件測試之前,一方面應(yīng)當(dāng)假設(shè)軟件是沒有錯誤的。(╳)7.軟件測試中,應(yīng)當(dāng)盡量窮盡所有的數(shù)據(jù),以便保證測試的質(zhì)量。(╳)8.鑒定覆蓋不一定包含條件覆蓋,條件覆蓋也不一定包含鑒定覆蓋,鑒定/條件覆蓋是同時滿足這兩種覆蓋標(biāo)準(zhǔn)的邏輯覆蓋。(√)三、多項選擇題1.程序設(shè)計語言的特點涉及(ABCD)。A.名字說明B.類型說明C.初始化D.循環(huán)和分支控制結(jié)構(gòu)2.編碼風(fēng)格涉及(ABCD)。A.源程序文檔化B.數(shù)據(jù)說明方法C.語句結(jié)構(gòu)D.輸入/輸出方法3.被動式防錯的檢查項目涉及(BD)。A.周期性的進(jìn)行標(biāo)志檢查B.表達(dá)式中是否有分母為0的情況C.周期性的進(jìn)行鏈表連接情況的檢查D.棧的深度是否對的4.軟件測試重要涉及(ABC)方面的差錯和糾錯。A.軟件計劃B.軟件設(shè)計C.軟件編碼D.軟件價格5.軟件維護(hù)的環(huán)節(jié)重要涉及(ABC)。A.分析和理解程序B.修改程序C.重新驗證程序D.維護(hù)組織四、簡答題1.什么是編碼風(fēng)格?為什么要強(qiáng)調(diào)編碼風(fēng)格?參考答案:編碼風(fēng)格又稱程序設(shè)計風(fēng)格或編程風(fēng)格。編碼的目的從強(qiáng)調(diào)效率轉(zhuǎn)變?yōu)閺?qiáng)調(diào)清楚。良好的編碼風(fēng)格能在一定限度上填補語言存在的缺陷,而假如不注意風(fēng)格就很難寫出高質(zhì)量的程序。特別當(dāng)多個程序員合作編寫一個很大的程序時,需要強(qiáng)調(diào)良好而一致的編碼風(fēng)格,以便互相通訊,減少因不協(xié)調(diào)而引起的問題。總之,良好的編碼風(fēng)格有助于編寫出可靠而又容易維護(hù)的程序,編碼的風(fēng)格在很大限度上決定著程序的質(zhì)量。2.編碼風(fēng)格有哪幾個方面的問題?分別需要注意什么?參考答案:編碼風(fēng)格涉及四個方面,即源程序文檔化,數(shù)據(jù)說明的方法,語句結(jié)構(gòu)和輸入/輸出方法。源程序文檔化重要涉及選擇標(biāo)記符(變量和標(biāo)號)的名字、安排注釋以及程序的視覺組織等。在編寫程序時,要注意數(shù)據(jù)說明的風(fēng)格。為了數(shù)據(jù)說明便于理解和維護(hù),必須注意下述幾點。1.?dāng)?shù)據(jù)說明的順序應(yīng)規(guī)范。進(jìn)而有助于測試,排錯和維護(hù)。2.說明的先后順序固定。例如,按常量說明、簡樸變量類型說明、數(shù)組說明、公用數(shù)據(jù)塊說明、所有的文獻(xiàn)說明的順序說明。在類型說明中還可進(jìn)一步規(guī)定。例如,可按如下順序排列:整型量說明、實型量說明、字符量說明、邏輯量說明。3.當(dāng)用一個語句說明多個變量名時,應(yīng)當(dāng)對這些變量按字母的順序排列。4.對于復(fù)雜數(shù)據(jù)結(jié)構(gòu),應(yīng)運用注釋說明實現(xiàn)這個數(shù)據(jù)結(jié)構(gòu)的特點。在設(shè)計階段擬定軟件的邏輯結(jié)構(gòu),但編碼階段的任務(wù)是構(gòu)造單個語句。構(gòu)造的語句要簡樸、直接,不要為了提高效率而使語句更為復(fù)雜。1.使用標(biāo)準(zhǔn)的控制結(jié)構(gòu)2.盡也許使用庫函數(shù)3.一方面應(yīng)當(dāng)考慮可讀性4.注意GOTO語句的使用5.其他須注意的問題(1)避免使用ELSEGOTO和ELSERETURN結(jié)構(gòu)。(2)避免過多的循環(huán)嵌套和條件嵌套;(3)數(shù)據(jù)結(jié)構(gòu)要有助于程序的簡化。(4)要模塊化,使模塊功能盡也許單一化,模塊間的耦合可以清楚可見。(5)對遞歸定義的數(shù)據(jù)結(jié)構(gòu)盡量使用遞歸過程。(6)不要修補不好的程序,要重新編寫,也不要一味地追求代碼的復(fù)用,要重新組織。(7)運用信息隱蔽,保證每一個模塊的獨立性。(8)對太大的程序,要分塊編寫、測試,然后再集成。(9)注意計算機(jī)浮點數(shù)運算的特點。尾數(shù)位數(shù)一定,則浮點數(shù)的精度受到限制。(10)避免不恰本地追求程序效率,在改善效率前,要作出有關(guān)效率的定量估計。(11)保證所有變量在使用前都進(jìn)行初始化。(12)遵循國家標(biāo)準(zhǔn)。輸入/輸出信息是與用戶的使用直接相關(guān)的。輸入/輸出的方式和格式應(yīng)當(dāng)盡量作到對用戶和諧,盡也許方便用戶的使用。一定要避免因設(shè)計不妥給用戶帶來的麻煩。這就規(guī)定,源程序的輸入/輸出風(fēng)格必須滿足人體工程學(xué)的需要和系統(tǒng)能否為用戶接受。因此,在軟件需求分析階段和設(shè)計階段,就應(yīng)基本擬定輸入/輸出的風(fēng)格。3.比較下列兩段語句,從編碼風(fēng)格的角度分析其優(yōu)、劣。程序段一:ifa>bthenifx>ythenb=yelsea=xendifelsea=bendif程序段二:/position_xisthepositionxofobject;position_yisthepositionyofobject;/ifa>bthena=belseifposition_x>position_ythenb=position_yelsea=position_xendifendif參考答案:第二段程序優(yōu)于第一段。注釋起到提醒的作用,利于程序閱讀者對程序段全貌的理解縮進(jìn)格式清楚的顯示程序中邏輯判斷的結(jié)構(gòu)。變量命名方式表白變量的含義。4.軟件的質(zhì)量反映在哪些方面?參考答案:軟件質(zhì)量反映了以下三方面的問題。1.軟件需求是度量軟件質(zhì)量的基礎(chǔ),不符合需求的軟件就不具有質(zhì)量。2.在各種標(biāo)準(zhǔn)中定義了一些開發(fā)準(zhǔn)則,用來指導(dǎo)軟件人員用工程化的方法來開發(fā)軟件。假如不遵守這些開發(fā)準(zhǔn)則,軟件質(zhì)量就得不到保證。3.往往會有一些隱含的需求沒有明確地提出來。例如,軟件應(yīng)具有良好的可維護(hù)性。假如軟件只滿足那些精擬定義了的需求而沒有滿足這些隱含的需求,軟件質(zhì)量也不能保證。5.什么是黑盒測試法?什么是白盒測試法?參考答案:黑盒測試法把程序當(dāng)作一個黑盒子,完全不考慮程序的內(nèi)部結(jié)構(gòu)和解決過程。黑盒測試是在程序接口進(jìn)行的測試,它只檢查程

溫馨提示

  • 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

提交評論