軟件工程答案.doc_第1頁
軟件工程答案.doc_第2頁
軟件工程答案.doc_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

?軟件工程的基本原理:1.用分階段的生命周期計劃嚴(yán)格管理;2.堅持進(jìn)行階段評審;3.實行嚴(yán)格的產(chǎn)品控制;4.采用現(xiàn)代程序設(shè)計技術(shù);5.結(jié)果應(yīng)能清楚地審查;6.開發(fā)小組的人員應(yīng)該少而精;7.承認(rèn)不斷改進(jìn)軟件工程實踐的必要性。?什么是軟件危機:指在計算機軟件的開發(fā)和維護(hù)過程中所遇到的一系列嚴(yán)重的問題。?什么是軟件生命周期模型?試比較瀑布模型、快速原型模型、增量模型、螺旋模型的優(yōu)缺點,說明每種模型的使用范圍。軟件生命周期由軟件定義、軟件開發(fā)和運行維護(hù)3個時期組成,每個時期又進(jìn)一步劃分成若干個階段。生命周期模型規(guī)定了把生命周期劃分成哪些階段及各個階段的執(zhí)行順序,因此,也稱為過程模型。瀑布模型的優(yōu)點:1.可強迫開發(fā)人員采用規(guī)范的方法;2.嚴(yán)格規(guī)定了每個階段必須提交的文檔;3.要求每個階段交出的所有產(chǎn)品都必須經(jīng)過質(zhì)量保證小組的仔細(xì)驗證。 瀑布模型的缺點:1.在軟件開發(fā)初期,指明用戶全部需求是困難的;2.需求確定后,經(jīng)過一段時間才得到軟件最初版本;3.完全依賴規(guī)格說明,導(dǎo)致不能滿足用戶需求。適用中小型項目。 快速原型模型的優(yōu)點:1滿足用戶需求程度高;2用戶的參與面廣;3返工現(xiàn)象少 快速原型模型的優(yōu)點:不適用大型軟件的開發(fā)適用于小型項目。 增量模型的優(yōu)點:1短期內(nèi)可以交付滿足部分用戶需求的功能產(chǎn)品;2逐步增加功能可以讓用戶去適應(yīng)新產(chǎn)品;3開放式的軟件可維護(hù)性比較好;4開始第一構(gòu)件前,已經(jīng)完成需求說明。增量模型的缺點:1對現(xiàn)有產(chǎn)品功能造成破壞;2意義上的矛盾適用于中型軟件的開發(fā)螺旋模型的優(yōu)點:1集成了瀑布模型、快速原型模型、增量模型的優(yōu)點;2支持用戶需求動態(tài)變化;3需求分析與軟件實現(xiàn)緊密聯(lián)系相互依賴;4原型作為刑式的可執(zhí)行的需求規(guī)格說明,即利用用戶和開發(fā)人員共同理解,又可作為后續(xù)開發(fā)的基礎(chǔ);5為用戶參與決策提供方便;6提高目標(biāo)軟件的適應(yīng)能力;7降低風(fēng)險;8在大型軟件開發(fā)過程中充分發(fā)揮優(yōu)勢。螺旋模型的缺點:1迭代次數(shù)影響開發(fā)成本,延遲提價時間;2找不到關(guān)鍵改進(jìn)點,人才、物力、財力時間引起無謂消耗;3成于風(fēng)險分析,敗于風(fēng)險分析。適用于內(nèi)部開發(fā)的大規(guī)模軟件項目。?軟件生命周期每個階段的基本任務(wù):問題定義;可行性研究;需求分析;總體設(shè)計;詳細(xì)設(shè)計;編碼和單元測試;綜合測試;軟件維護(hù)。?在軟件開發(fā)的早期階段為什么要進(jìn)行可行性研究?應(yīng)該從哪些方面研究目標(biāo)系統(tǒng)的可行性?可行性研究的目的,就是用最小的代價在盡可能短的時間內(nèi)確定問題是否能夠解決。 技術(shù)可行性、經(jīng)濟(jì)可行性、操作可行性?從哪些方面驗證軟件需求的正確性?一致性,所有需求必須是一致的,任何需求不能和其他需求互相矛盾。 完整性,需求必須是完整的,規(guī)格說明書應(yīng)該包括用戶需要的每一個功能或性能。 現(xiàn)實性,指定的需求應(yīng)該是用現(xiàn)有的硬件技術(shù)和軟件技術(shù)基礎(chǔ)上可以實現(xiàn)的,對硬件技術(shù)的進(jìn)步可以做些預(yù)測,對軟件技術(shù)的進(jìn)步則很難做出預(yù)測,只能從現(xiàn)有技術(shù)水平出發(fā)判斷需求的現(xiàn)實性。 有效性,必須證明需求是正確有效的,確實能解決用戶面對的問題。?為什么模塊的獨立性很重要?1有效的模塊化的軟件比較容易開發(fā)出來;2獨立的模塊比較容易測試和維護(hù)3模塊獨立式好設(shè)計的關(guān)鍵,而設(shè)計又是決定軟件質(zhì)量的關(guān)鍵環(huán)節(jié)。?在進(jìn)行軟件結(jié)構(gòu)設(shè)計時的啟發(fā)原則?(1)改進(jìn)軟件結(jié)構(gòu)提高模塊獨立化(2)模塊規(guī)模應(yīng)該適中(3)深度、寬度、扇出和扇入都應(yīng)適當(dāng)(4)模塊的作用域應(yīng)該在控制域之內(nèi)(5)力爭降低模塊接口的復(fù)雜程度(6)設(shè)計單入口單出口的模塊(7)模塊功能應(yīng)該可以預(yù)測?內(nèi)聚和耦合從小到大排序?1耦合:數(shù)據(jù)耦合、控制耦合、特征耦合、公共環(huán)境耦合、內(nèi)容耦合 2內(nèi)聚:低內(nèi)聚(偶然內(nèi)聚、邏輯內(nèi)聚、時間內(nèi)聚)、中內(nèi)聚(過程內(nèi)聚、通信內(nèi)聚)、高內(nèi)聚(順序內(nèi)聚、功能內(nèi)聚)?我們在設(shè)計耦合式的設(shè)計原則?盡量使用數(shù)據(jù)耦合,少用控制耦合和特征耦合,限制公共環(huán)境耦合的范圍,完全不用內(nèi)耦合。?軟件測試準(zhǔn)則是什么?(1)所有測試都應(yīng)該能追溯到用戶需求;(2)應(yīng)該遠(yuǎn)在測試開始之前就制定出測試計劃;(3)把Pareto原理應(yīng)用到軟件測試中;(4)應(yīng)該從“小規(guī)模”測試開始,并逐步進(jìn)行“大規(guī)模”測試;(5)窮舉測試是不可能的;(6)為了達(dá)到最佳的測試效果,應(yīng)該由獨立的第三方從事測試工作。?黑盒測試、白盒測試的基本概念?(1)黑盒測試,如果已經(jīng)知道了產(chǎn)品應(yīng)該具有的功能,可以通過測試來檢驗是否每個功能都能正常使用。(2)白盒測試,如果知道產(chǎn)品的內(nèi)部工作過程,可以通過測試來檢驗產(chǎn)品內(nèi)部動作是否按照規(guī)格說明書的規(guī)定正常進(jìn)行。?大型的軟件測試分幾步進(jìn)行?答:模塊測試、子系統(tǒng)測試、系統(tǒng)測試、驗收測試、平行運行?非漸增式測試和漸增式測試優(yōu)缺點比較答:非漸增式測試一下子把所有模塊放在一起,并把龐大的程序作為一個整體來測試,測試者面對的情況十分復(fù)雜。測試時會遇到許許多多的錯誤,改正錯誤更是極端困難,因為在龐大的程序中想要診斷定位一個錯誤是非常困難的。而且一旦改正一個錯誤之后,馬上又會遇到新的錯誤,這個過程將繼續(xù)下去,看起來好像永遠(yuǎn)也沒有盡頭。 漸增式測試與“一步到位”的非漸增式測試相反,它把程序劃分成小段來構(gòu)造和測試,在這個過程中比較容易定位和改正錯誤;對接口可以進(jìn)行更徹底的測試;可以使用系統(tǒng)化的測試方法。因此,目前在進(jìn)行集成測試時普遍采用漸增式測試方法。?使用漸增式把模塊結(jié)合到程序中去時,有自頂向下和自底向上兩種集成策略。 自頂向下測試方法的主要優(yōu)點是不需要測試驅(qū)動程序,能夠在測試階段的早期實現(xiàn)并驗證系統(tǒng)的主要功能,而且能在早期發(fā)現(xiàn)上層模塊的接口錯誤。 自頂向下測試方法的主要缺點事需要存根程序,可能遇到與此相聯(lián)系的測試?yán)щy,低層關(guān)鍵模塊中的錯誤發(fā)現(xiàn)較晚,而且用這種方法在早期不能充分展開人力。自底向上測試方法的優(yōu)缺點與之相反。16 DFD和軟件結(jié)構(gòu)圖的區(qū)別?答:DFD是邏輯模型(由實際業(yè)務(wù)抽象而來,平面圖描述功能。 軟件結(jié)構(gòu)圖是物理模型(有DFD而來,立體圖描述模塊功能的分解。17什么是回歸測試?答:是指重新執(zhí)行已經(jīng)做過的測試的某個子集,以保證上述這些變化沒有帶來非預(yù)期的副作用,用于保證由于調(diào)試或其他原因引起的變化,不會導(dǎo)致非預(yù)期的軟件行為或額外錯誤的測試活動。18詳細(xì)設(shè)計階段的根本目標(biāo)和任務(wù)是什么?(1)為軟件結(jié)構(gòu)中的每一個模塊,使用的算法和模塊內(nèi)部的數(shù)據(jù)結(jié)構(gòu),并使用某種特定的表達(dá)工具給出清晰的描述。 (2)為每個程序設(shè)計“藍(lán)圖”,以后程序員將根據(jù)這個藍(lán)圖寫出實際的程序代碼。19什么是結(jié)構(gòu)程序設(shè)計?如果一個程序的代碼塊僅僅通過順序、選擇和循環(huán)這3種基本控制結(jié)構(gòu)進(jìn)行連接,并且每個代碼塊只有一個入口和一個出口,則稱這個程序是結(jié)構(gòu)化的。20計算環(huán)形復(fù)雜度的方法?(1)流圖中的區(qū)域等于環(huán)形復(fù)雜度。(2)流圖G的環(huán)形復(fù)雜度V(G)=E-N+2,其中,E是流圖中邊的條數(shù),N是結(jié)點數(shù)。(3)流圖G的環(huán)形復(fù)雜度V(G)=P+1,其中,P是流圖中判定結(jié)點的數(shù)目。21什么是測試?它的目標(biāo)是什么?(1)測試的正確定義是“為了

溫馨提示

  • 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

提交評論