東北農(nóng)業(yè)大學(xué)網(wǎng)絡(luò)教育學(xué)院軟件工程作業(yè)題模板_第1頁
東北農(nóng)業(yè)大學(xué)網(wǎng)絡(luò)教育學(xué)院軟件工程作業(yè)題模板_第2頁
東北農(nóng)業(yè)大學(xué)網(wǎng)絡(luò)教育學(xué)院軟件工程作業(yè)題模板_第3頁
東北農(nóng)業(yè)大學(xué)網(wǎng)絡(luò)教育學(xué)院軟件工程作業(yè)題模板_第4頁
東北農(nóng)業(yè)大學(xué)網(wǎng)絡(luò)教育學(xué)院軟件工程作業(yè)題模板_第5頁
已閱讀5頁,還剩30頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

資料內(nèi)容僅供您學(xué)習(xí)參考,如有不當(dāng)或者侵權(quán),請聯(lián)系改正或者刪除。東北農(nóng)業(yè)大學(xué)網(wǎng)絡(luò)教育學(xué)院軟件工程作業(yè)題(一)填空題(共20分每題2分)1.軟件危機(jī)具有下列表現(xiàn)()I、對軟件開發(fā)成本估計(jì)不準(zhǔn)確=2\*ROMANII、軟件產(chǎn)品的質(zhì)量往往不可靠III、軟件常常不可維護(hù)IV、軟件成本逐年上升A.I、=2\*ROMANII和IIIB.I、III和IVC.=2\*ROMANII、III和IVD.以上都正確2.系統(tǒng)定義明確之后,應(yīng)對系統(tǒng)的可行性進(jìn)行研究??尚行匝芯繎?yīng)包括()。A.軟件環(huán)境可行性、技術(shù)可行性、經(jīng)濟(jì)可行性、社會可行性B.經(jīng)濟(jì)可行性、技術(shù)可行性、操作可行性C.經(jīng)濟(jì)可行性、社會可行性、系統(tǒng)可行性D.經(jīng)濟(jì)可行性、實(shí)用性、社會可行性3.在進(jìn)行軟件測試時(shí),首先應(yīng)當(dāng)進(jìn)行(),然后再進(jìn)行集成測試,最后再進(jìn)行有效性測試。A.單元測試B.集成測試C.確認(rèn)測試D.組合測試4.結(jié)構(gòu)化程序設(shè)計(jì)思想的核心是要求程序只由順序、循環(huán)和()三種結(jié)構(gòu)組成。A.選擇B.單入口C.單出口D.有規(guī)則GOTO5.劃分模塊時(shí),一個(gè)模塊的()。A.作用范圍應(yīng)在其控制范圍之外B.作用范圍應(yīng)在其控制范圍之內(nèi)C.作用范圍與其控制范圍互不包容D.作用范圍與其控制范圍不受限制6.()分批地逐步向用戶提交產(chǎn)品,每次提交一個(gè)滿足用戶需求子集的可運(yùn)行的產(chǎn)品。A.增量模型B.噴泉模型C.原型模型D.螺旋模型7.在對數(shù)據(jù)流的分析中,主要是找到中心變換,這是從()導(dǎo)出結(jié)構(gòu)圖的關(guān)鍵。A.?dāng)?shù)據(jù)結(jié)構(gòu)B.實(shí)體關(guān)系C.E-R圖D.?dāng)?shù)據(jù)流圖8.測試的關(guān)鍵問題是()

A.如何組織對軟件的評審B.如何驗(yàn)證程序的正確性

C.如何采用綜合策略D.如何選擇測試用例9.模塊(),則說明模塊的獨(dú)立性越強(qiáng)。A.耦合越強(qiáng)B.扇入數(shù)越高C.耦合越弱D.扇入數(shù)越低10.使用白盒測試方法時(shí),確定測試數(shù)據(jù)應(yīng)根據(jù)()和指定的覆蓋標(biāo)準(zhǔn).A.程序的內(nèi)部邏輯B.程序的復(fù)雜程度C.使用說明書D.程序的功能二、判斷下列敘述的正確性,將結(jié)果(√正確,×錯(cuò)誤)填入()中,并改正錯(cuò)誤的說法。(本大題共5小題,每小題3分,共15分)1.()在軟件的開發(fā)過程中,工作量最大的一個(gè)階段就是編寫程序。2.()當(dāng)驗(yàn)收測試經(jīng)過,軟件開發(fā)就完成了。3.()好的測試用例應(yīng)能證明軟件是正確的。4.()在程序調(diào)試時(shí),找出錯(cuò)誤的位置和性質(zhì)比改正該錯(cuò)誤更難。5.()模塊獨(dú)立要求高耦合低內(nèi)聚。三、簡答題(每題8分,共40分)1.結(jié)構(gòu)化程序設(shè)計(jì)的思想是什么?2.一個(gè)程序能夠既正確又不可靠嗎?請加以解釋。3.軟件測試包括哪些類型的測試?這些測試之間的區(qū)別是什么?4.可行性研究的目的是什么?5.根據(jù)瀑布模型為下列任務(wù)排序。驗(yàn)收測試、項(xiàng)目計(jì)劃、單元測試、需求復(fù)審、成本估計(jì)、總體設(shè)計(jì)、設(shè)計(jì)復(fù)審、市場調(diào)研、詳細(xì)設(shè)計(jì)、系統(tǒng)測試、實(shí)現(xiàn)、編制需求規(guī)格說明書。四、應(yīng)用題(共25分)1、已知有一段程序的含義如下,首先輸入任意三個(gè)數(shù)A,B,C;如果(A>1)AND(B=0)則C=C/A,否則(A=2)OR(C>1)則C=C+1;1)請畫出流程圖并轉(zhuǎn)化為程序圖(5分)2)設(shè)計(jì)判定條件覆蓋和路徑覆蓋的測試用例。(10分)2、.某廠對部分職工重新分配工作的政策是:年齡在20歲以下者,初中文化程度脫產(chǎn)學(xué)習(xí),高中文化程度當(dāng)電工;年齡在20歲至40歲之間者,中學(xué)文化程度男性當(dāng)鉗工,女性當(dāng)車工,大學(xué)文化程度都當(dāng)技術(shù)員;年齡在40歲以上者,中學(xué)文化程度當(dāng)材料員,大學(xué)文化程度當(dāng)技術(shù)員。請用判定表或判定樹描述上述問題。(10分)軟件工程作業(yè)題(二)填空題(共20分每空2分)1.產(chǎn)生軟件危機(jī)的原因可能有()I、用戶需求描述不精確、不準(zhǔn)確=2\*ROMANII、對大型軟件項(xiàng)目的開發(fā)缺乏有力的組織與管理III、缺乏有力的方法學(xué)和工具的支持IV、軟件產(chǎn)品的特殊性和人類智力的局限性A.I和=2\*ROMANIIB.I、=2\*ROMANII和IVC.=2\*ROMANII、III和IVD.以上都正確2.軟件測試的目的是()A.評價(jià)軟件的質(zhì)量B.發(fā)現(xiàn)軟件的錯(cuò)誤C.找出軟件中的所有錯(cuò)誤D.證明軟件是正確的3.研究開發(fā)所需要的成本和資源是屬于可行性研究中的()研究的一方面。A.技術(shù)可行性B.經(jīng)濟(jì)可行性C.社會可行性D.法律可行性4.模塊()定義為受該模塊內(nèi)一個(gè)判斷影響的所有模塊集合。A.控制域B.作用域C.寬度D.接口5.數(shù)據(jù)字典是軟件需求分析階段的最重要工具之一,其最基本的功能是()A.?dāng)?shù)據(jù)庫設(shè)計(jì)B.?dāng)?shù)據(jù)通信C.?dāng)?shù)據(jù)定義D.?dāng)?shù)據(jù)維護(hù)6.確認(rèn)測試是對軟件進(jìn)行()測試。A.可靠性B.有效性C.可維護(hù)性D.可用性7.通信內(nèi)聚、邏輯內(nèi)聚、順序內(nèi)聚和時(shí)間內(nèi)聚的內(nèi)聚性從高到低順序是()A.通信、邏輯、順序、時(shí)間B.通信、時(shí)間、順序、邏輯C.順序、通信、時(shí)間、邏輯D.順序、通信、邏輯、時(shí)間8.程序的三種基本控制結(jié)構(gòu)的共同特點(diǎn)是()。A.只能用來描述簡單程序B.不能嵌套使用C.單入口,單出口D.僅用于自動控制系統(tǒng)9.設(shè)年利率為i,若不計(jì)復(fù)利,n年后可得錢數(shù)為F,則這些錢現(xiàn)在的價(jià)值是()A.F*(1+i*n)B.(1+n*i)/FC.F/(1+n*i)D.F/(1+n/i)10.當(dāng)一個(gè)模塊直接使用另一個(gè)模塊的內(nèi)部數(shù)據(jù),這種模塊之間的耦合為()A.?dāng)?shù)據(jù)耦合B.公共耦合C.標(biāo)記耦合D.內(nèi)容耦合二、判斷下列敘述的正確性,將結(jié)果(√正確,×錯(cuò)誤)填入()中,并改正錯(cuò)誤的說法。(本大題共5小題,每小題3分,共15分)1.()用黑盒法測試時(shí),測試用例是根據(jù)程序內(nèi)部邏輯設(shè)計(jì)的。2.()完成測試作業(yè)后,為了縮短源程序的長度應(yīng)刪除程序中的注解。3.()軟件維護(hù)就是改正軟件中的錯(cuò)誤。4.()實(shí)體--關(guān)系圖中的數(shù)據(jù)對象之間的關(guān)系也可能有屬性。5.()測試是為了驗(yàn)證軟件已正確地實(shí)現(xiàn)了用戶的要求。三、簡答題(每題8分,共40分)1.DFD和DD的主要作用是什么?兩者的關(guān)系?

2.自頂向下和由底向上設(shè)計(jì)的含義以及主要區(qū)別是什么?3.模塊間的耦合性有哪幾種?4.當(dāng)沿著螺旋模型的過程流路徑向外移時(shí),你認(rèn)為正在開發(fā)或維護(hù)的軟件發(fā)生了什么變化?5.說明控制域和作用域規(guī)則及相互關(guān)系,舉例說明。四、應(yīng)用題(共25分)根據(jù)下列條件使用邊界值分析法設(shè)計(jì)測試用例。(15分)某一8位微機(jī),其八進(jìn)制常數(shù)定義為:以零開頭的數(shù)是八進(jìn)制整數(shù),其值的范圍-177~177。如05,0127,-0652、移動通信公司為促進(jìn)業(yè)務(wù)的發(fā)展發(fā)行優(yōu)惠卡,具體規(guī)則如下:(10分)從未發(fā)生過話費(fèi)拖欠,每月通話費(fèi)300元以上可獲金卡,每月通話費(fèi)150元以上可獲銀卡,每月通話費(fèi)低于150元以上可獲普通卡;發(fā)生過話費(fèi)拖欠的,能在規(guī)定時(shí)間內(nèi)補(bǔ)清欠款,每月通話費(fèi)300元以上可獲銀卡,每月通話費(fèi)150元以上可獲普通卡;發(fā)生過拖欠話費(fèi),并未能在規(guī)定時(shí)間內(nèi)補(bǔ)清欠款,不能獲得優(yōu)惠卡。請用判定表描述上述問題的加工邏輯。軟件工程作業(yè)題(三)填空題(共20分每題2分)1.為了克服軟件危機(jī),人們提出了用()的原理來設(shè)計(jì)軟件,這就是軟件工程誕生的基礎(chǔ)。A.數(shù)學(xué)B.軟件學(xué)C.運(yùn)籌學(xué)D.工程學(xué)2.具有風(fēng)險(xiǎn)分析的軟件生存周期模型是()A.瀑布模型 B.噴泉模型C.螺旋模型 D.增量模型3.隨著軟硬件環(huán)境變化而修改軟件的過程是()A.校正性維護(hù) B.適應(yīng)性維護(hù)C.完善性維護(hù) D.預(yù)防性維護(hù)4.?dāng)?shù)據(jù)耦合、公共耦合、特征耦合、控制耦合的耦合性從低到高的順序是()A.數(shù)據(jù)、公共、特征、控制 B.數(shù)據(jù)、特征、控制、公共C.控制、數(shù)據(jù)、特征、公共 D.控制、數(shù)據(jù)、公共、特征5.軟件需求分析的主要任務(wù)是準(zhǔn)確地定義出要開發(fā)的軟件系統(tǒng)是()A.如何做 B.怎么做C.做什么 D.對誰做 6.瀑布模型的關(guān)鍵不足在于()A.過于簡單B.不能適應(yīng)需求的動態(tài)變更C.過于靈活D.各個(gè)階段需要進(jìn)行評審7.檢查軟件產(chǎn)品是否符合需求定義的過程稱為()。

A.確認(rèn)測試B.集成測試C.驗(yàn)收測試D.驗(yàn)證測試8.軟件復(fù)審時(shí),其主要的復(fù)審對象是()。A.文檔B.程序C.?dāng)?shù)據(jù)D.軟件配置項(xiàng)9.軟件生存周期中時(shí)間最長的階段是()A.需求分析階段 B.概要設(shè)計(jì)階段C.詳細(xì)設(shè)計(jì)階段 D.維護(hù)階段10.在考察系統(tǒng)的一些涉及時(shí)序和改變的狀態(tài)時(shí),要用動態(tài)模型來表示。動態(tài)模型著重于系統(tǒng)的控制邏輯,它包括兩個(gè)圖:一個(gè)是事件追蹤圖,另一個(gè)是()。A.狀態(tài)圖B.?dāng)?shù)據(jù)流圖C.系統(tǒng)結(jié)構(gòu)圖D.時(shí)序圖二、判斷下列敘述的正確性,將結(jié)果(√正確,×錯(cuò)誤)填入()中,并改正錯(cuò)誤的說法。(本大題共5小題,每小題2分,共10分)(1)()一般況來,模塊的內(nèi)聚程度越高,它們之間的耦合程度也就越高。(2)()程序測試不但能證明錯(cuò)誤的存在,也能證明錯(cuò)誤的不存在。(3)()維護(hù)是生存周期中花錢最多,延續(xù)時(shí)間最長的活動。(4)()在軟件開發(fā)的過程中,若能推遲暴露其中的錯(cuò)誤,則為修復(fù)和改正錯(cuò)誤所花費(fèi)的代價(jià)就會降低。(5)()螺旋模型是在瀑布模型和增量模型的基礎(chǔ)上增加了風(fēng)險(xiǎn)分析活動。三、簡答題(每題8分,共40分)1、請說明軟件文檔的作用?軟件開發(fā)項(xiàng)目生存期各階段都包含哪些文檔。2、快速原型模型有幾種?各有何特點(diǎn)?3、解釋深度、寬度、扇出、扇入對軟件的影響。4、

簡述漸增式測試方法與非漸增式測試方法的優(yōu)劣。5、

軟件的可維護(hù)性與哪些因素有關(guān)?在軟件開發(fā)過程中應(yīng)采取哪些措施才能提高軟件產(chǎn)品的可維護(hù)性?四、應(yīng)用題(共30分)1、具體問題(如:輸入A,B,C三個(gè)數(shù)要求輸出其中最小者),畫出程序流程圖,并計(jì)算其復(fù)雜度。(15分)2.某公司為本科以上學(xué)歷的人重新分配工作,分配原則如下:如果年齡不滿18歲,學(xué)歷是本科,男性要求報(bào)考研究生,女性則擔(dān)任行政工作;如果年齡滿18歲不滿50歲,學(xué)歷本科,不分男女,任中層領(lǐng)導(dǎo)職務(wù),學(xué)歷是碩士不分男女,任課題組組長;如果年齡滿50歲,學(xué)歷本科,男性任科研人員,女性則擔(dān)任資料員,學(xué)歷是碩士不分男女,任課題組組長。要求:畫出判定表或判定樹。(15分)軟件工程作業(yè)題(四)填空題(共20分每題2分)1.軟件危機(jī)是指()。A.軟件遭到破壞B.軟件開發(fā)和維護(hù)過程中遇到的問題C.軟件維護(hù)出現(xiàn)困難D.軟件不能正常運(yùn)行系列問題2.軟件的復(fù)雜性是(),它引起人員通信困難、開發(fā)費(fèi)用超支、開發(fā)時(shí)間超時(shí)等問題。A.固有的B.人為的C.可消除的D.不可降低的3.()是將系統(tǒng)化的、規(guī)范的、可定量的方法應(yīng)用于軟件的開發(fā)、運(yùn)行和維護(hù)的過程,它包括方法、工具和過程三個(gè)要素。A.軟件過程B.軟件測試C.軟件生存周期D.軟件工程4.在瀑布模型中,將軟件劃分為若干個(gè)時(shí)期,軟件項(xiàng)目的可行性研究一般歸屬于()。A.維護(hù)時(shí)期B.計(jì)劃時(shí)期C.運(yùn)行時(shí)期D.開發(fā)時(shí)期5.面向?qū)ο蠓治鍪菍ο到y(tǒng)進(jìn)行()的一種方法。A.需求建模B.程序設(shè)計(jì)C.設(shè)計(jì)評審D.測試驗(yàn)收6.軟件詳細(xì)設(shè)計(jì)階段的任務(wù)是()。A.算法設(shè)計(jì)B.功能設(shè)計(jì)C.調(diào)用關(guān)系設(shè)計(jì)D.輸入/輸出設(shè)計(jì)7.在下述哪一種測試中,測試人員必須接觸到源程序()。Ⅰ功能測試Ⅱ結(jié)構(gòu)測試A.均不需B.只有ⅠC.只有ⅡD.Ⅰ和Ⅱ8.結(jié)構(gòu)化方法是一種()的軟件開發(fā)方法。A.面向用戶B.面向數(shù)據(jù)結(jié)構(gòu)C.面向?qū)ο驞.面向數(shù)據(jù)流9.()是把對象的屬性和操作結(jié)合在一起,構(gòu)成一個(gè)獨(dú)立的對象,其內(nèi)部信息對外界是隱蔽的,外界只能經(jīng)過有限的接口與對象發(fā)生聯(lián)系。A.多態(tài)性B.繼承C.封裝D.消息10.在各種不同的軟件需求中,功能需求描述了用戶使用產(chǎn)品必須要完成的任務(wù),能夠在用例模型或方案腳本中予以說明,()是從各個(gè)角度對系統(tǒng)的約束和限制,反映了應(yīng)用對軟件系統(tǒng)質(zhì)量和特性的額外要求。A.業(yè)務(wù)需求B.功能要求C.非功能需求D.用戶需求二、判斷下列敘述的正確性,將結(jié)果(√正確,×錯(cuò)誤)填入()中,并改正錯(cuò)誤的說法。(本大題共5小題,每小題3分,共15分)1.()在需求分析中,分析員要從用戶那里解決的最重要的問題是明確軟件做什么。2.()數(shù)據(jù)字典是對數(shù)據(jù)流圖中的數(shù)據(jù)流,加工、數(shù)據(jù)存儲、數(shù)據(jù)的源和終點(diǎn)進(jìn)行詳細(xì)定義。3.()軟件技術(shù)復(fù)審是由用戶和測試人員實(shí)施的一種質(zhì)量保證活動。4.()模型是對現(xiàn)實(shí)的簡化,建模是為了更好地理解所開發(fā)的系統(tǒng)。5.()模塊化,信息隱藏,抽象和逐步求精的軟件設(shè)計(jì)原則有助于得到高內(nèi)聚,低耦合度的軟件產(chǎn)品。三、簡答題(每題8分,共40分)1.軟件工程的基本目標(biāo)是什么?2.原型化方法主要用于解決什么問題?試說明這種方法的主要優(yōu)缺點(diǎn)。3.什么是樁模塊?什么是驅(qū)動模塊?二種漸增式集成測試如何組裝模塊?4.試說明"軟件生存周期"的概念。5.采用黑盒技術(shù)設(shè)計(jì)測試用例有哪幾種方法?這些方法各有什么特點(diǎn)?四、應(yīng)用題(共25分)1.下面是一段插入排序的程序,將R[k+1]插入到R[1…k]的適當(dāng)位置。

R[0]=R[k+1];

j=k;

while(R[j]>R[0])

{

R[j+1]=R[j];

j--;

}

R[j+1]=R[0];

(1)畫出程序流程圖,轉(zhuǎn)換為流圖,求環(huán)路復(fù)雜度(8分)(2)用路徑覆蓋方法為它設(shè)計(jì)足夠的測試用例(while循環(huán)次數(shù)為0、1、2次)。(7分)2.某校的課酬計(jì)算機(jī)方案為:基本課酬為每節(jié)課10元。班級人數(shù)超過60人,增加基本課酬的10%。班級人數(shù)超過80人,增加基本課酬的20%。如果教師為副教授,增加基本課酬的10%。如果教師為教授,增加基本課酬的20%。如果教師為助教,不增加課酬。如果教師為見習(xí)助教,減少基本課酬的10%。用判定表,表示上述計(jì)算方案。(10分)軟件工程作業(yè)題(五)一填空題(共20分每空2分)1、TURBOPASCAL是()軟件。

A、系統(tǒng)軟件B、人工智能C、事務(wù)軟件D、應(yīng)用軟件2、選擇結(jié)構(gòu)的復(fù)雜性比順序結(jié)構(gòu)的復(fù)雜性要()。

A、小B、大C、相等D、無法比較3、在數(shù)據(jù)流圖中,○(橢圓)代表()。

A、源點(diǎn)B、終點(diǎn)C、加工D、模塊4、模塊內(nèi)聚度越高,說明模塊內(nèi)各成分彼此結(jié)合的程度越()。

A、松散B、緊密C、無法判斷D、相等5、軟件維護(hù)是軟件生命周期中的固有階段,一般認(rèn)為,各種不同的軟件維護(hù)中以()維護(hù)所占的維護(hù)量最小。

A、糾錯(cuò)性維護(hù)B、完善性維護(hù)C、預(yù)防性維護(hù)D、文檔維護(hù)6、軟件需求分析是保證軟件質(zhì)量的重要步驟,它的實(shí)施應(yīng)該是在()。

A、編碼階段B、軟件開發(fā)全過程C、軟件定義階段D、軟件設(shè)計(jì)階段7、軟件測試方法中,黑盒、白盒測試法是常見的方法,其中白盒測試主要用于測試()。

A、結(jié)構(gòu)合理性B、軟件外部功能C、程序正確性D、程序內(nèi)部邏輯8、進(jìn)行需求分析可使用多種工具,但()是不適用的。A、數(shù)據(jù)流圖B、PAD圖C、判定表D、數(shù)據(jù)詞典9、若有一個(gè)計(jì)算類型的程序,它的輸入量只有一個(gè)X,其范圍是[-1.0,1.0],現(xiàn)從輸入的角度考慮一組測試用例:-1.001,-1.0,1.0,1.001。設(shè)計(jì)這組測試用例的方法是()

A、條件覆蓋法B、等價(jià)分類法C、邊界值分析法D、錯(cuò)誤推測法10、軟件文檔是軟件工程實(shí)施中的重要成分它不但是軟件開發(fā)各階段的重要依據(jù),而且與影響軟件的()。

A、可理解性B、可維護(hù)性C、可擴(kuò)展性D、可移植性二、判斷下列敘述的正確性,將結(jié)果(√正確,×錯(cuò)誤)填入()中,并改正錯(cuò)誤的說法。(本大題共5小題,每小題3分,判斷1分,改正2分,共15分)1.()軟件需求規(guī)格說明書在軟件開發(fā)中具有重要的作用,是軟件可行性分析的依據(jù)。2.()盡可能推遲程序的邏輯實(shí)現(xiàn)是按照瀑布模型開發(fā)軟件的一條重要的指導(dǎo)思想。3.()模塊化程序設(shè)計(jì)中,模塊越小,模塊化的優(yōu)點(diǎn)越明顯。一般來說,模塊的大小都在10行以下。4.()為了加快軟件維護(hù)作業(yè)的進(jìn)度,應(yīng)盡可能增加維護(hù)人員的數(shù)目。5.()一般情況下,發(fā)現(xiàn)錯(cuò)誤多的程序模塊,殘留在模塊中的錯(cuò)誤也多。三、簡答題(每題8分,共40分)1、軟件復(fù)用的范圍不但僅涉及源程序代碼,請至少列出5種可能復(fù)用的軟件元素。2、白盒測試法有哪些覆蓋標(biāo)準(zhǔn)?試對她們的檢錯(cuò)能力進(jìn)行比較。3、調(diào)試的目的是什么?調(diào)試有哪些技術(shù)手段?4、軟件設(shè)計(jì)的基本原理包括哪些內(nèi)容?5、某學(xué)校需要開發(fā)一個(gè)學(xué)生成績管理系統(tǒng),教務(wù)人員能夠經(jīng)過該系統(tǒng)維護(hù)學(xué)生信息、課程信息和成績信息,學(xué)生能夠隨時(shí)查詢自己的成績單,該系統(tǒng)的實(shí)體關(guān)系圖如下所示:

請問圖中是否應(yīng)該增加"教務(wù)人員"?試說明理由。四、應(yīng)用題(共25分)(10分)某”調(diào)整工資”處理模塊接受一個(gè)”職稱”的變量,根據(jù)職稱的不同(助教,講師,副教授,教授)作不同的處理,其中若是助教還必須輸入工齡,只有工齡超過兩年才能調(diào)整工資。請用等價(jià)類劃分法設(shè)計(jì)測試用例。求一組數(shù)組中的最大數(shù),數(shù)組表示為A(n),n=1,2……n的自然數(shù)。(15分)請畫出程序流程圖(5分)請畫出該算法的N-S圖(5分)請用PAD圖來表示該算法(5分)東北農(nóng)業(yè)大學(xué)網(wǎng)絡(luò)教育學(xué)院軟件工程作業(yè)題參考答案作業(yè)題一參考答案一、1、D 2、B 3、A 4、A 5、B6、A 7、D 8、D 9、C 10、A二、1、×工作量最大為維護(hù)階段2、×當(dāng)驗(yàn)收測試經(jīng)過,軟件開發(fā)并沒有完成還應(yīng)該有維護(hù)。3、×好的測試用例不能證明軟件是正確的。4、√5、×模塊獨(dú)立要求高內(nèi)聚低耦合。三、1、自上而下(自頂向下),逐步求精2、軟件的功能正確并不代表軟件是可靠的。可靠性是指在一定的環(huán)境下,在給定的時(shí)間內(nèi)系統(tǒng)不發(fā)生故障的概率。由于無法對軟件進(jìn)行徹底的測試,因此即使軟件的某個(gè)功能是正確的,軟件中潛在的錯(cuò)誤也可能導(dǎo)致其不可靠,如""年問題就是如此。3、軟件測試包括單元測試、集成測試、確認(rèn)測試和系統(tǒng)測試等。單元測試集中于單個(gè)模塊的功能和結(jié)構(gòu)的檢驗(yàn);集成測試集中于模塊組合的功能和軟件結(jié)構(gòu)檢驗(yàn);確認(rèn)測試主要檢查軟件是否符合合同要求,包括需求規(guī)格說明、設(shè)計(jì)規(guī)格說明和用戶手冊等;系統(tǒng)測試集中檢驗(yàn)系統(tǒng)所有元素之間協(xié)作是否合適,整個(gè)系統(tǒng)的性能和功能是否達(dá)到。4、軟件可行性研究的目的是用最小的代價(jià)在盡可能短的時(shí)間內(nèi)確定該軟件項(xiàng)目是否值得去開發(fā)??尚行匝芯康哪康牟皇侨ラ_發(fā)一個(gè)軟件項(xiàng)目,而是研究這個(gè)項(xiàng)目是否值得開發(fā),其中的問題如何解決,主要包括時(shí)間、資金、技術(shù)等方面的內(nèi)容。5、市場調(diào)研項(xiàng)目計(jì)劃、成本故機(jī)、編制需求規(guī)格說明書(可同時(shí)進(jìn)行)需求復(fù)審總體設(shè)計(jì)詳細(xì)設(shè)計(jì)設(shè)計(jì)復(fù)審實(shí)現(xiàn)單元測試驗(yàn)收測試系統(tǒng)測試四、1、程序圖:112374586判定覆蓋a點(diǎn)A>1,A<=1,B=0,B<>0b點(diǎn)A=2,A<>2,X>1,X<=1ⅰA=2,B=0,X=4ⅱA=1,B=1,X=1路徑覆蓋:a點(diǎn)A>1,A<=1,B=0,B<>0b點(diǎn)A=2,A<>2,X>1,X<=1ⅰA=2,B=0,X=4ⅱA=1,B=1,X=12、男男女中學(xué)大學(xué)電工鉗工車工年齡小于20初中高中脫產(chǎn)學(xué)習(xí)電工年齡介于20--40年齡大于40中學(xué)大學(xué)材料員技術(shù)員作業(yè)二答案:選擇題1、D 2、B 3、B 4、B 5、C 6、B 7、C 8、C 9、C 10、D判斷題1、錯(cuò)誤;用黑盒法測試時(shí),測試用例是根據(jù)程序外部功能設(shè)計(jì)的。2、錯(cuò)誤;也不應(yīng)刪除注解3、錯(cuò)誤;軟件維護(hù)定義4、正確5、錯(cuò)誤;測試的目的是盡可能多地發(fā)現(xiàn)軟件中的錯(cuò)誤,其附帶的收獲才是驗(yàn)證該軟件已正確地實(shí)現(xiàn)了用戶的要求。簡答題1、DFD是軟件系統(tǒng)邏輯模型的一種圖形表示(Graphicrepresentation)。主要作用是指明系統(tǒng)中數(shù)據(jù)是如何流動和變換的,以及描述數(shù)據(jù)流進(jìn)行變換的功能,在DFD中出現(xiàn)的每個(gè)功能的描述則寫在加工說明(PSPEC)中,她們一起構(gòu)成軟件的功能模型數(shù)據(jù)字典是關(guān)于數(shù)據(jù)的信息的集合,也就是對數(shù)據(jù)流圖中包含的所有元素的定義的集合。數(shù)據(jù)流圖和數(shù)據(jù)字典共同構(gòu)成系統(tǒng)的邏輯模型,沒有數(shù)據(jù)字典數(shù)據(jù)流圖就不嚴(yán)格,然而沒有數(shù)據(jù)流圖數(shù)據(jù)字典也難于發(fā)揮作用。只有數(shù)據(jù)流圖和對數(shù)據(jù)流圖中每個(gè)元素的精確定義放在一起,才能共同構(gòu)成系統(tǒng)的規(guī)格說明。2、自頂向下是從頂層開始,逐步分解,直至系統(tǒng)所有模塊便于掌握。由底向上是首先設(shè)計(jì)系統(tǒng)的關(guān)鍵部分,然后讓系統(tǒng)的其它部分適應(yīng)它。區(qū)別:自頂向下易于修改和擴(kuò)展、整體測試較易經(jīng)過、需要進(jìn)行詳細(xì)的可行性論證。由底向上可能導(dǎo)致較大的重新設(shè)計(jì)、整體測試可能在模塊接口間發(fā)現(xiàn)不一致等問題、可行性的問題能夠較早的發(fā)現(xiàn)。3、非直接耦合、數(shù)據(jù)耦合、特征耦合、控制耦合、外部耦合、公共耦合、內(nèi)容耦合4、在使用螺旋模型開發(fā)軟件的過程中,從核心開始,螺旋的第一圈可能產(chǎn)生軟件的規(guī)格說明,接下來的螺旋可能用于開發(fā)一個(gè)原型,隨后是軟件的更完善的版本。經(jīng)過計(jì)劃區(qū)域的每一圈是為了調(diào)整項(xiàng)目計(jì)劃,基于從用戶評估得到的反饋,調(diào)整費(fèi)用和進(jìn)度。沿螺旋線自內(nèi)向外每旋轉(zhuǎn)一圈,便開發(fā)出一個(gè)更為完善的、新的軟件版本。5、一個(gè)模塊的控制域(ScopeofControl),等于模塊本身加上其下級模塊(即可供它調(diào)用的模塊)。一個(gè)模塊的作用域(ScopeofEffect),是受這個(gè)模塊中的判定所應(yīng)影響的模塊。本規(guī)則的含義:作用域不要超出控制域的范圍;(2)軟件系統(tǒng)的判定,其位置離受它控制的模塊越近越好應(yīng)用題1、輸入等價(jià)類測試用例說明測試數(shù)據(jù)八進(jìn)制整數(shù)5個(gè)數(shù)字字符有一個(gè)非數(shù)字字符沒有數(shù)字字符一個(gè)數(shù)字字符-后緊跟有非0數(shù)字-后有字符0124503d2-0-1324-c八進(jìn)制范圍在邊界上選取數(shù)據(jù)-177-1781771782、判定表如下:發(fā)卡的規(guī)則條件123456是否有拖欠無無無有有有拖欠是否還清是是否每月消費(fèi)額度>=300<300且>=150<150>=300<300且>=150發(fā)卡類型金卡銀卡普通卡銀卡普通卡無作業(yè)三答案:一選擇題DCBBCBAADA二判斷題(1).(×)改正:內(nèi)聚越高,耦合越低

(2).(×)改正:僅能證明錯(cuò)誤存在

(3).(√)

(4).(×)代價(jià)越高

(5).(√)三簡答題1、DFD是軟件系統(tǒng)邏輯模型的一種圖形表示(Graphicrepresentation)。主要作用是指明系統(tǒng)中數(shù)據(jù)是如何流動和變換的,以及描述數(shù)據(jù)流進(jìn)行變換的功能,在DFD中出現(xiàn)的每個(gè)功能的描述則寫在加工說明(PSPEC)中,她們一起構(gòu)成軟件的功能模型數(shù)據(jù)字典是關(guān)于數(shù)據(jù)的信息的集合,也就是對數(shù)據(jù)流圖中包含的所有元素的定義的集合。數(shù)據(jù)流圖和數(shù)據(jù)字典共同構(gòu)成系統(tǒng)的邏輯模型,沒有數(shù)據(jù)字典數(shù)據(jù)流圖就不嚴(yán)格,然而沒有數(shù)據(jù)流圖數(shù)據(jù)字典也難于發(fā)揮作用。只有數(shù)據(jù)流圖和對數(shù)據(jù)流圖中每個(gè)元素的精確定義放在一起,才能共同構(gòu)成系統(tǒng)的規(guī)格說明。2、根據(jù)原型的不同作用,有三類原型模型:⑴探索型原型。這種類型的原型模型是把原型用于開發(fā)的需求分析階段,目的是要弄清用戶的需求,確定所期望的特性,并探索各種方案的可行性。它主要針對開發(fā)目標(biāo)模糊,用戶與開發(fā)著對項(xiàng)目都缺乏經(jīng)驗(yàn)的情況,經(jīng)過對原型的開發(fā)來明確用戶的需求。⑵實(shí)驗(yàn)型原型。這種原型主要用于設(shè)計(jì)階段,考核實(shí)現(xiàn)方案是否合適,能否實(shí)現(xiàn),對于一個(gè)大型系統(tǒng),若對設(shè)計(jì)方案心中沒有把握時(shí),可經(jīng)過這種原型來證實(shí)設(shè)計(jì)方案的正確性。⑶演化型原型。這種原型主要用于及早向用戶提交一個(gè)原型系統(tǒng),該原型系統(tǒng)或者包含系統(tǒng)的框或者包含系統(tǒng)的主要功能。在得到用戶的認(rèn)可后,將原型系統(tǒng)不斷擴(kuò)充演變?yōu)樽罱K的軟件系統(tǒng),它將原型的思路擴(kuò)展到軟件開發(fā)的全過程。3、深度表示軟件結(jié)構(gòu)中控制的層數(shù),它往往能粗略地標(biāo)志一個(gè)系統(tǒng)的大小和復(fù)雜程度。寬度是軟件結(jié)構(gòu)內(nèi)同一個(gè)層次上的模塊總數(shù)的最大值。一般說來,寬度越大系統(tǒng)越復(fù)雜。對寬度影響最大的因素是模塊的扇出。扇出是一個(gè)模塊直接控制(調(diào)用)的模塊數(shù)目,扇出過大意味著模塊過分復(fù)雜,需要控制和協(xié)調(diào)過多的下級模塊;扇出過小(例如總是1)也不好。經(jīng)驗(yàn)表明,一個(gè)設(shè)計(jì)得好的典型系統(tǒng)的平均扇出一般是3或4(扇出的上限一般是5~9)。扇出太大一般是因?yàn)槿狈χ虚g層次,應(yīng)該適當(dāng)增加中間層次的控制模塊。扇出太小時(shí)能夠把下級模塊進(jìn)一步分解成若干個(gè)子功能模塊,或者合并到它的上級模塊中去。一個(gè)模塊的扇入表明有多少個(gè)上級模塊直接調(diào)用它,扇入越大則共享該模塊的上級模塊數(shù)目越多,這是有好處的,可是,不能違背模塊獨(dú)立原理單純追求高扇入。觀察大量軟件系統(tǒng)后發(fā)現(xiàn),設(shè)計(jì)得很好的軟件結(jié)構(gòu)一般頂層扇出比較高,中層扇出較少,底層扇入到公共的實(shí)用模塊中去(底層模塊有高扇入)。4、非漸增式測試一下子把所有模塊放在一起,并把龐大的程序作為一個(gè)整體來測試,測試者面正確情況十分復(fù)雜。測試時(shí)會遇到許許多多的錯(cuò)誤,改正錯(cuò)誤更是極端困難,因?yàn)樵邶嫶蟮某绦蛑邢胍\斷定位一個(gè)錯(cuò)誤是非常困難的。而且一旦改正一個(gè)錯(cuò)誤之后,馬上又會遇到新的錯(cuò)誤,這個(gè)過程將繼續(xù)下去,看起來仿佛永遠(yuǎn)也沒有盡頭。漸增式測試與”一步到位”的非漸增式測試相反,它把程序劃分成小段來構(gòu)造和測試,在這個(gè)過程中比較容易定位和改正錯(cuò)誤;對接口能夠進(jìn)行更徹底的測試;能夠使用系統(tǒng)化的測試方法。因此,當(dāng)前在進(jìn)行集成測試時(shí)普遍采用漸增式測試方法。5、維護(hù)就是在軟件交付使用后進(jìn)行的修改,修改之前必須理解待修改的對象,修改之后應(yīng)該進(jìn)行必要的測試,以保證所做的修改是正確的。如果是改正性維護(hù),還必須預(yù)先進(jìn)行調(diào)試以確定錯(cuò)誤的具體位置。因此,決定軟件可維護(hù)性的因素主要有下述5個(gè):1.可理解性2.可測試性3.可修改性4.可移植性5.可重用性四應(yīng)用題1、開始開始輸入a\b\ca<b?a<c?b<c?輸出a輸出c輸出b結(jié)束ynnyy復(fù)雜度為42、年齡XX<18X<1850>X≧1850>X≧18X≧50X≧50X≧50學(xué)歷本科本科本科碩士本科本科碩士性別男女男女報(bào)考研究生√行政工作√中層領(lǐng)導(dǎo)√課題組組長√√科研人員√資料員√作業(yè)四答案一、1、B 2、A 3、D 4、B 5、A6、A 7、C 8、D 9、C 10、C二、1、√2、×加工。3、×軟件技術(shù)復(fù)審是由用戶和測試人員實(shí)施的一種質(zhì)量保證活動。4、√5、√三、1.軟件工程旨在開發(fā)滿足用戶需要、及時(shí)交付、不超過預(yù)算和無故障的軟件,其主要目標(biāo)如下:

(1)合理預(yù)算開發(fā)成本,付出較低的開發(fā)費(fèi)用;

(2)實(shí)現(xiàn)預(yù)期的軟件功能,達(dá)到較好的軟件性能,滿足用戶的需求;

(3)提高所開發(fā)軟件的可維護(hù)性,降低維護(hù)費(fèi)用;

(4)提高軟件開發(fā)生產(chǎn)率,及時(shí)交付使用。2.建立原型的主要原因是為了解決在產(chǎn)品開發(fā)的早期階段需求不確定的問題,用戶、經(jīng)理和其它非技術(shù)項(xiàng)目風(fēng)險(xiǎn)承擔(dān)者發(fā)現(xiàn)在確定和開發(fā)產(chǎn)品時(shí),原型能夠使她們的想象更具體化。原型在軟件開發(fā)過程中能夠起到以下主要作用:

(1)明確并完善需求原型作為一種需求工具,它初步實(shí)現(xiàn)所理解的系統(tǒng)的一部分。用戶對原型的評價(jià)能夠指出需求中的許多問題,在你開發(fā)真正產(chǎn)品之前,能夠最低的費(fèi)用來解決這些問題。

(2)探索設(shè)計(jì)選擇方案原型作為一種設(shè)計(jì)工具,用它能夠探索不同的用戶界面技術(shù),使系統(tǒng)達(dá)到最佳的可用性,而且能夠評價(jià)可能的技術(shù)方案。

(3)發(fā)展為最終的產(chǎn)品原型作為一種構(gòu)造工具,是產(chǎn)品最初子集的完整功能實(shí)現(xiàn),經(jīng)過一系列小規(guī)模的開發(fā)循環(huán),你能夠完成整個(gè)產(chǎn)品的開發(fā)。3.在單元測試時(shí),需要為被測程序編制若干測試軟件,給它的上級模塊或下級模塊做替身。代替上級模塊的稱為測試驅(qū)動模塊(TestDriver),代替下級模塊的稱為測試樁模塊(TestStub)。(1)自頂向下組合。該方法只需編寫樁模塊,其步驟是從頂層模塊開始,沿被測程序的軟件結(jié)構(gòu)圖的控制路徑逐步向下測試,從而把各個(gè)模塊都結(jié)合起來,(2)自底向上結(jié)合。該方法僅需編寫驅(qū)動模塊。其步驟為:①把底層模塊組合成實(shí)現(xiàn)一個(gè)個(gè)特定子功能的簇。②為每一個(gè)簇編寫一個(gè)驅(qū)動模塊,以協(xié)調(diào)測試用例的輸入和測試結(jié)果的輸出。③對模塊簇進(jìn)行測試。④按軟件結(jié)構(gòu)圖依次向上擴(kuò)展,用實(shí)際模塊替換驅(qū)動模塊,形成一個(gè)個(gè)更大的簇。⑤重復(fù)②至④步,直至軟件系統(tǒng)全部測試完畢。4.軟件生存周期是指軟件產(chǎn)品從考慮其概念開始到該軟件產(chǎn)品交付使用,直至最終退役為止的整個(gè)過程,一般包括計(jì)劃、分析、設(shè)計(jì)、實(shí)現(xiàn)、測試、集成、交付、維護(hù)等階段。

(1)計(jì)劃階段:確定待開發(fā)系統(tǒng)的總體目標(biāo)和范圍,研究系統(tǒng)的可行性和可能的解決方案,對資源、成本及進(jìn)度進(jìn)行合理的估算。軟件計(jì)劃的主要內(nèi)容包括所采用的軟件生命周期模型、開發(fā)人員的組織、系統(tǒng)解決方案、管理的目標(biāo)與級別、所用的技術(shù)與工具,以及開發(fā)的進(jìn)度、預(yù)算和資源分配。

(2)分析階段:分析、整理和提煉所收集到的用戶需求,建立完整的分析模型,將其編寫成軟件需求規(guī)格說明和初步的用戶手冊。經(jīng)過評審需求規(guī)格說明,確保對用戶需求達(dá)到共同的理解與認(rèn)識。需求規(guī)格說明明確地描述了軟件的功能,列出軟件必須滿足的所有約束條件,并定義軟件的輸入和輸出接口。

(3)設(shè)計(jì)階段:設(shè)計(jì)階段的目標(biāo)是決定軟件怎么做,設(shè)計(jì)人員依據(jù)軟件需求規(guī)格說明文檔,確定軟件的體系結(jié)構(gòu),進(jìn)而確定每個(gè)模塊的實(shí)現(xiàn)算法、數(shù)據(jù)結(jié)構(gòu)和接口等,編寫設(shè)計(jì)說明書,并組織進(jìn)行設(shè)計(jì)評審。

(4)實(shí)現(xiàn)階段:實(shí)現(xiàn)階段是將所設(shè)計(jì)的各個(gè)模塊編寫成計(jì)算機(jī)可接受的程序代碼,與實(shí)現(xiàn)相關(guān)的文檔就是源程序以及合適的注釋。

(5)測試階段:在設(shè)計(jì)測試用例的基礎(chǔ)上,測試軟件的各個(gè)組成模塊。然后,將各個(gè)模塊集成起來,測試整個(gè)產(chǎn)品的功能和性能是否滿足已有的規(guī)格說明。

(6)維護(hù)階段:一旦產(chǎn)品已交付運(yùn)行之后,對產(chǎn)品所做的任何修改就是維護(hù)。維護(hù)是軟件過程的一個(gè)組成部分,應(yīng)當(dāng)在軟件的設(shè)計(jì)和實(shí)現(xiàn)階段充分考慮軟件的可維護(hù)性。維護(hù)階段需要測試是否正確地實(shí)現(xiàn)了所要求的修改,并保證在產(chǎn)品的修改過程中,沒有做其它無關(guān)的改動。

5.(1)等價(jià)類劃分。等價(jià)類劃分是將輸入數(shù)據(jù)域按有效的或無效的(也稱合理的或不合理的)劃分成若干個(gè)等價(jià)類,測試每個(gè)等價(jià)類的代表值就等于對該類其它值的測試。(2)邊界值分析。該方法是將測試邊界情況作為重點(diǎn)目標(biāo),選取正好等于,剛剛大于或剛剛小于邊界值的情況,根據(jù)這些情況選擇測試用例。(3)錯(cuò)誤推測。錯(cuò)誤推測法沒有確定的步驟,憑檢驗(yàn)進(jìn)行。它的基本思想是列出程序中可能發(fā)生錯(cuò)誤的情況,根據(jù)這些情況選擇測試用例。四、1、畫出該程序的流程圖:(15分)開始開始R[j]>R[0]?R[0]=R[k+1];j=k;R[j+1]=R[0]R[j+1]=R[j];j--;結(jié)束123YN環(huán)路復(fù)雜度為2;測試用例設(shè)計(jì)循環(huán)

次數(shù)輸入數(shù)據(jù)

預(yù)期結(jié)果覆蓋路徑j(luò)R[i-2]R[i-1]R[i]R[i+1]R[0]jR[i-2]R[i-1]R[i]R[i+1]約束路徑0i--122i--12<①③

i--111i--11=①③1i-1322i-1-123><①②③

i-2322i-1-123>=①②③2i13422i-21234>><①②②③

i23422i-22234>>=①②②③

2、(10分)123456789101112人數(shù)<=60TTTT人數(shù)>60TTTT人數(shù)>80TTTT教授TTT副教授TTT助教TTT見習(xí)TTT基本課酬金√√√√√√√√√√√√課酬增10%√√√課酬增20%√√√課酬減10%√√√作業(yè)五答案:一填空題(共20分每空2分,答錯(cuò)0分)1~5:DBCBA6~10:CDBCB二、判斷下列敘述的正確性,將結(jié)果(√正確,×錯(cuò)誤)填入()中,并改正錯(cuò)誤的說法。(本大題共

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論