版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
今天你努力了嗎?我自信我成功!2011年03月全國計(jì)算機(jī)等級考試公共基礎(chǔ)第三部分
軟件工程第三部分軟件工程05年4月:6/2(選擇/填空)05年9月:6/206年4月:4/206年9月:4/407年4月:4/407年9月:4/408年4月:4/608年9月:4/4近幾年出題情況第三部分軟件工程考點(diǎn)1:軟件定義與軟件特點(diǎn)考點(diǎn)2:軟件危機(jī)與軟件工程考點(diǎn)3:軟件工程過程與軟件生命周期考點(diǎn)4:軟件工程的目標(biāo)與原則考點(diǎn)5:軟件開發(fā)工具與軟件開發(fā)環(huán)境考點(diǎn)6:可行性研究考點(diǎn)7:需求分析與需求分析方法考點(diǎn)8:結(jié)構(gòu)化分析方法考點(diǎn)9:結(jié)構(gòu)化分析常用工具考點(diǎn)10:結(jié)構(gòu)化方法開發(fā)過程第三部分軟件工程考點(diǎn)11:軟件需求規(guī)格說明書考點(diǎn)12:軟件設(shè)計(jì)的概念考點(diǎn)13:概要設(shè)計(jì)任務(wù)考點(diǎn)14:詳細(xì)設(shè)計(jì)考點(diǎn)15:軟件測試的目的和準(zhǔn)則考點(diǎn)16:軟件測試技術(shù)與方法考點(diǎn)17:軟件測試的實(shí)施考點(diǎn)18:軟件調(diào)試的基本概念考點(diǎn)19:軟件調(diào)試的方法第三部分軟件工程考點(diǎn)1:軟件定義與軟件特點(diǎn)1)軟件定義:軟件是與計(jì)算機(jī)操作相關(guān)的計(jì)算機(jī)程序、規(guī)程、規(guī)則,已經(jīng)可以有的文件、文檔及數(shù)據(jù)。2)軟件三要素:程序、數(shù)據(jù)和文檔第三部分軟件工程3)軟件的特點(diǎn):軟件是一種邏輯實(shí)體,具有抽象性軟件沒有明顯的制作過程軟件在運(yùn)行使用期間不存在磨損、老化問題軟件的開發(fā)、運(yùn)行對計(jì)算機(jī)系統(tǒng)具有依賴性,這導(dǎo)致了軟件的移植性軟件復(fù)雜性高,成本昂貴軟件開發(fā)涉及諸多的社會(huì)因素第三部分軟件工程4)軟件分類:按功能可分為:應(yīng)用軟件系統(tǒng)軟件支撐軟件三大類5)軟件的作用軟件是用戶與硬件之間的接口,是計(jì)算機(jī)系統(tǒng)的指揮者,是計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)設(shè)計(jì)的重要依據(jù)。第三部分軟件工程考點(diǎn)2:軟件危機(jī)與軟件工程軟件危機(jī)的含義:軟件危機(jī)泛指在計(jì)算機(jī)軟件的開發(fā)和維護(hù)中所遇到的一系列嚴(yán)重問題。軟件危機(jī)的表現(xiàn):軟件需求的增長得不到滿足軟件開發(fā)的成本和進(jìn)度無法控制軟件質(zhì)量難以保證軟件不可維護(hù)或維護(hù)程度非常低軟件的成本不斷提高軟件開發(fā)生產(chǎn)率的提高跟不上硬件的發(fā)展和應(yīng)用需要的增長第三部分軟件工程軟件危機(jī)產(chǎn)生的原因:宏觀方面是由于軟件日益深入生活的各個(gè)層面,對軟件需求的增長速度大大超過了技術(shù)進(jìn)步所能帶來的軟件生產(chǎn)率的提高。而就每一項(xiàng)具體的工程任務(wù)來看,軟件危機(jī)許多困難來源于軟件工程所面臨的任務(wù)和其他工程之間的差異以及軟件和其他產(chǎn)品的不同。第三部分軟件工程4)軟件工程的定義軟件工程是應(yīng)用于計(jì)算機(jī)軟件的定義、開發(fā)和維護(hù)的一整套方法、工具、文檔、實(shí)踐標(biāo)準(zhǔn)和工序。軟件工程三要素:方法、工具和過程。軟件工程的核心思想是把軟件當(dāng)作一個(gè)工程產(chǎn)品來處理。第三部分軟件工程考點(diǎn)3:軟件工程過程與軟件生命周期軟件工程過程定義:軟件工程過程是把輸入轉(zhuǎn)化為輸出的一組相關(guān)的資源和活動(dòng)。內(nèi)涵:軟件工程過程是指為獲得軟件產(chǎn)品,在軟件工具支持下由軟件工程師完成的一系列軟件過程活動(dòng)。從軟件開發(fā)的觀點(diǎn)來看,它就是使用適當(dāng)?shù)馁Y源,為開發(fā)軟件進(jìn)行的一組開發(fā)活動(dòng),在過程結(jié)束時(shí)將輸入轉(zhuǎn)化為輸出。軟件工程過程包含的基本活動(dòng):軟件規(guī)格說明、軟件開發(fā)、軟件確認(rèn)和軟件演進(jìn)。第三部分軟件工程軟件生命周期定義:軟件生命周期就是軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的全過程。三個(gè)階段:軟件生命周期包括軟件定義、軟件開發(fā)及軟件維護(hù)三個(gè)階段。主要活動(dòng)階段:可行性研究與計(jì)劃制定、需求分析、軟件設(shè)計(jì)、軟件實(shí)現(xiàn)、軟件測試、運(yùn)行和維護(hù)。第三部分軟件工程考點(diǎn)4:軟件工程的目標(biāo)與原則1)軟件工程的目標(biāo)在給定成本、進(jìn)度的前提下,開發(fā)出具有時(shí)效性,可理解性、可維護(hù)性、可重用性、可適應(yīng)性、可移植性、可追蹤性和可互操作性全滿足用戶需求的產(chǎn)品。第三部分軟件工程2)軟件工程原則軟件工程原則包括:抽象、信息隱蔽、模塊化、局部化、確定性、一致性、完備性和可驗(yàn)證性。第三部分軟件工程考點(diǎn)5:軟件開發(fā)工具與軟件開發(fā)環(huán)境1)軟件開發(fā)工具軟件工具的開發(fā)是從單項(xiàng)工具的開發(fā)逐步向集成工具發(fā)展的,軟件工具為軟件工程的方法提供了自動(dòng)的或半自動(dòng)的軟件支撐環(huán)境。2)軟件開發(fā)環(huán)境軟件開發(fā)環(huán)境是全面支持軟件開發(fā)過程的軟件工具集合。計(jì)算機(jī)輔助軟件工程(CASE)是當(dāng)前軟件開發(fā)環(huán)境中富有特色的研究工作和發(fā)展方向。第三部分軟件工程考點(diǎn)6:可行性研究可行研究的目的是用最小的代價(jià)在盡可能短的時(shí)間內(nèi)確定問題是否能夠解決。經(jīng)濟(jì)可行性研究技術(shù)可行性研究法律可行性研究開發(fā)方案的選擇性研究第三部分軟件工程考點(diǎn)7:需求分析與需求分析方法1)需求分析軟件需求分析是發(fā)現(xiàn)需求、求精、建模和定義需求的過程。需求分析階段的工作是需求獲取、需求分析、編寫需求規(guī)格說明書和需求評審。2)需求分析方法:需求分析有結(jié)構(gòu)化分析方法和面向?qū)ο蠓治龇椒▋煞N。第三部分軟件工程考點(diǎn)8:結(jié)構(gòu)化分析方法結(jié)構(gòu)化分析方法是結(jié)構(gòu)化程序設(shè)計(jì)理論在軟件需求分析階段的運(yùn)用。結(jié)構(gòu)化分析方法的步驟如下:通過對用戶的調(diào)查,以軟件的需求為線索,獲得當(dāng)前系統(tǒng)的具體模型去掉具體模型中的非本質(zhì)因素,抽象出當(dāng)前系統(tǒng)的邏輯模型根據(jù)計(jì)算機(jī)的特點(diǎn)分析當(dāng)前系統(tǒng)與目標(biāo)系統(tǒng)的差別,建立目標(biāo)系統(tǒng)的邏輯模型完善目標(biāo)系統(tǒng)并補(bǔ)充細(xì)節(jié),寫出目標(biāo)系統(tǒng)的軟件需求規(guī)格說明評審直到確認(rèn)完全符合用戶對軟件的需求第三部分軟件工程考點(diǎn)9:結(jié)構(gòu)化分析常用工具數(shù)據(jù)流圖(DFD):它以圖形方式描繪數(shù)據(jù)在系統(tǒng)中流動(dòng)和處理的過程,它只反映系統(tǒng)必須完成的邏輯功能,所以是一種功能模型。數(shù)據(jù)字典(DD)判定樹判定表第三部分軟件工程考點(diǎn)9:結(jié)構(gòu)化分析常用工具數(shù)據(jù)流圖的元素說明符號(hào)名稱作用箭頭數(shù)據(jù)流。沿箭頭方向偉送數(shù)據(jù)的通道圓或橢圓加工。輸入數(shù)據(jù)經(jīng)加工變換產(chǎn)生輸出雙杠存儲(chǔ)文件。表示處理過程中存放各種數(shù)據(jù)文件方框源和潭。表示系統(tǒng)和環(huán)境的接口第三部分軟件工程考點(diǎn)9:結(jié)構(gòu)化分析常用工具其中最重要的工具是數(shù)據(jù)流圖。數(shù)據(jù)流圖中的主要圖形元素有加工、數(shù)據(jù)流、存儲(chǔ)文件以及源和潭。建立數(shù)據(jù)流圖的步驟是:由外向里:先畫系統(tǒng)的輸入和輸出,然后畫系統(tǒng)內(nèi)部。自頂向下:順序完成頂層、中間層、底層數(shù)據(jù)流圖逐層分解。數(shù)據(jù)流圖的構(gòu)造要遵循如下一些規(guī)則:數(shù)據(jù)流的一致性:數(shù)據(jù)流圖中的數(shù)據(jù)要守恒,數(shù)據(jù)存儲(chǔ)文件的使用要有寫入也要的讀出。父圖、子圖關(guān)系與平衡規(guī)則:子圖個(gè)數(shù)不大于父圖中的處理個(gè)數(shù)。所有子圖輸入、輸出和父圖中相應(yīng)的輸入、輸出數(shù)據(jù)流必須一致。第三部分軟件工程考點(diǎn)10:結(jié)構(gòu)化方法開發(fā)過程1)計(jì)劃期問題定義確定軟件系統(tǒng)的主要功能。2)開發(fā)期需求分析總體設(shè)計(jì)詳細(xì)設(shè)計(jì)編碼測試3)運(yùn)行期運(yùn)行期的主要任務(wù)是軟件維護(hù)第三部分軟件工程考點(diǎn)11:軟件需求規(guī)格說明書作用:便于用戶、開發(fā)人員進(jìn)行理解和交流。反映出用戶問題的結(jié)構(gòu),可以作為軟件開發(fā)工作的基礎(chǔ)的依據(jù)。作為確認(rèn)測試和驗(yàn)收的依據(jù)。軟件需求規(guī)格說明書有以下幾個(gè)方面內(nèi)容:概述數(shù)據(jù)描述功能描述性能描述參考文獻(xiàn)附錄第三部分軟件工程軟件需求規(guī)格說明書的特點(diǎn):正確性無歧異性完整性一致性可理解性可修改性可追蹤性等特點(diǎn)。第三部分軟件工程考點(diǎn)12:軟件設(shè)計(jì)的概念1)軟件設(shè)計(jì)的重要性和地位
軟件設(shè)計(jì)階段是軟件開發(fā)中形成質(zhì)量的關(guān)鍵環(huán)節(jié)。軟件設(shè)計(jì)是開發(fā)階段最重要的步驟,是將需求準(zhǔn)確的轉(zhuǎn)化為完整的軟件產(chǎn)品或系統(tǒng)唯一途徑。軟件設(shè)計(jì)作出的決策,最終影響軟件實(shí)現(xiàn)的成敗。軟件設(shè)計(jì)是軟件工程和軟件維護(hù)的基礎(chǔ)。第三部分軟件工程2)軟件設(shè)計(jì)的內(nèi)容從技術(shù)觀點(diǎn)看,軟件設(shè)計(jì)包括結(jié)構(gòu)設(shè)計(jì)、數(shù)據(jù)設(shè)計(jì)、接口設(shè)計(jì)和過程設(shè)計(jì)。從工程管理角度看,軟件設(shè)計(jì)包括概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)。概要設(shè)計(jì)的任務(wù)是將軟件需求轉(zhuǎn)化為軟件體系結(jié)構(gòu)、確定系統(tǒng)級接口、全局?jǐn)?shù)據(jù)結(jié)構(gòu)或數(shù)據(jù)庫模式。詳細(xì)設(shè)計(jì)的任務(wù)是確立每個(gè)模塊的實(shí)現(xiàn)和局部數(shù)據(jù)結(jié)構(gòu),用適當(dāng)方法表示算法和數(shù)據(jù)結(jié)構(gòu)的細(xì)節(jié)。第三部分軟件工程3)軟件設(shè)計(jì)的基本原理軟件設(shè)計(jì)的基本原理就是抽象、模塊化、信息隱蔽和模塊獨(dú)立性。其中度量模塊獨(dú)立性的兩個(gè)定性的標(biāo)準(zhǔn)是模塊內(nèi)部的內(nèi)聚性和模塊間的耦合性。模塊的內(nèi)聚性是指一個(gè)模塊內(nèi)部各個(gè)元素之間彼此結(jié)合的緊密程度的度量。模塊的耦合性是模塊間互相連接的緊密程序的度量。提高模塊的獨(dú)立性要高內(nèi)聚低耦合第三部分軟件工程內(nèi)聚有如下種類,它們之間的內(nèi)聚性由強(qiáng)到弱排列為:
(1)功能內(nèi)聚
功能內(nèi)聚又稱函數(shù)內(nèi)聚,其模塊所包含的元素用以完成一個(gè)(僅一個(gè))與問題有關(guān)的任務(wù)。雖然功能模塊有些很簡單,有些又很復(fù)雜,而且它們在結(jié)構(gòu)圖中的位置也不同,但不管模塊如何復(fù)雜,只要能把它歸結(jié)為一個(gè)面向問題的功能,則它就是功能內(nèi)聚的。這種類型的模塊內(nèi)聚度最高,與其他模塊的糯合度也最弱。(2)序列內(nèi)聚
在一個(gè)模塊內(nèi)的各組成部分中,如果前一個(gè)處理產(chǎn)生的輸出數(shù)據(jù)是下一個(gè)動(dòng)作的輸入數(shù)據(jù),則該模塊稱為序列內(nèi)聚的。這種內(nèi)聚雖然不如功能內(nèi)聚好,但也是一種較好的內(nèi)聚方式。第三部分軟件工程(3)通信內(nèi)聚
通信內(nèi)聚的模塊是一些使用相同輸入或輸出數(shù)據(jù)的動(dòng)作的結(jié)合。例如,某一模塊中涉及有關(guān)書的信息:書名、定價(jià)、作者、出版社、出版日期等,這些信息都是相關(guān)的,涉及到共同的輸入數(shù)據(jù)——書,因此,完成這些動(dòng)作的模塊是通信內(nèi)聚的。通信內(nèi)聚和序列內(nèi)聚看上去較為相似,但前者內(nèi)部的執(zhí)行順序并不重要,而后者的執(zhí)行順序是重要。(4)過程內(nèi)聚
過程內(nèi)聚模塊內(nèi)各組成部分的處理動(dòng)作各不相同,彼此之間也沒有什么關(guān)系,但它們是受同一控制流的支配以決定它們的執(zhí)行順序。這種模塊的內(nèi)部結(jié)構(gòu)通常是由程序流程圖中強(qiáng)調(diào)的執(zhí)行順序、方法或運(yùn)行效率直接演變過來的。過程內(nèi)聚是具有高內(nèi)聚度、易于修改的模塊與具有中等內(nèi)聚度、不易修改的模塊之間的分界。第三部分軟件工程(5)時(shí)間內(nèi)聚
時(shí)間內(nèi)聚又稱瞬間內(nèi)聚,其內(nèi)部所有動(dòng)作都是與時(shí)間相關(guān)的。例如,初始化模塊就是典型的時(shí)間內(nèi)聚模塊。時(shí)間內(nèi)聚與過程內(nèi)聚有類似之處,它們都是從程序流程圖演變而來。其區(qū)別在于,時(shí)間內(nèi)聚模塊內(nèi)的各個(gè)處理動(dòng)作的執(zhí)行順序并不重要,而過程內(nèi)聚模塊卻恰恰相反。(6)邏輯內(nèi)聚
一個(gè)模塊內(nèi)各個(gè)組成部分的處理動(dòng)作在邏輯上是有關(guān)的,但在功能上彼此不同或無關(guān),這種模塊稱為邏輯內(nèi)聚的模塊。例如,一個(gè)模塊將各種邏輯輸入和邏輯輸出操作都集中起來而形成的模塊就是典型的邏輯內(nèi)聚的模塊。顯然,邏輯內(nèi)聚的模塊內(nèi)聚度低,與其他模塊之間的連接十分復(fù)雜,難以維護(hù)和修改。第三部分軟件工程(7)偶然內(nèi)聚
偶然內(nèi)聚模塊內(nèi)部的動(dòng)作相互沒有關(guān)系,其內(nèi)聚度為零。上級模塊調(diào)用這類模塊時(shí)必須發(fā)出明確的特別信號(hào),以告訴它應(yīng)該做什么,也就是說,必須清楚該模塊的內(nèi)部情況。
第三部分軟件工程模塊間的耦合有以下幾種,它們由強(qiáng)到弱排列為:(1)內(nèi)容耦合
如果一個(gè)模塊以任何方式涉及到另一個(gè)模塊的內(nèi)部情況,則這兩個(gè)模塊之間的耦合稱為內(nèi)容耦合。這種耦合方式應(yīng)設(shè)法避免。
(2)公用耦合
當(dāng)兩個(gè)模塊涉及到相同的數(shù)據(jù)區(qū)時(shí),這兩個(gè)模塊之間就稱為公用耦合。在實(shí)際應(yīng)用中,應(yīng)盡量避免這種形式的耦合,這是因?yàn)楣脜^(qū)中的數(shù)據(jù)為多個(gè)模塊所共用,缺乏保護(hù),很有可能遭到破壞,從而會(huì)引起有關(guān)模塊的出錯(cuò),并且給維護(hù)和修改帶來困難。第三部分軟件工程(3)外部耦合外部耦合中一組模塊都訪問同一全局簡單變量。(4)控制耦合
如果一個(gè)模塊傳遞一組信息到另一個(gè)模塊,以控制那個(gè)模塊的內(nèi)部邏輯,則稱其為控制耦合。存在這種耦合的模塊,其上級模塊必須事先知道下級模塊的內(nèi)部邏輯才能做出決策,這就說明系統(tǒng)設(shè)計(jì)得不好,必須重新進(jìn)行設(shè)計(jì)和分解。第三部分軟件工程(5)標(biāo)記耦合或稱同構(gòu)耦合,是指兩個(gè)模塊使用相同的數(shù)據(jù)結(jié)構(gòu),當(dāng)一個(gè)模塊的數(shù)據(jù)結(jié)構(gòu)發(fā)生變化時(shí),另一個(gè)模塊的數(shù)據(jù)結(jié)構(gòu)也要相應(yīng)發(fā)生變化。這種耦合使本應(yīng)無關(guān)的模塊產(chǎn)生了相互依賴性,并在某些模塊中包含了不需要的數(shù)據(jù),給查錯(cuò)帶來困難。(6)數(shù)據(jù)藕合如果兩個(gè)模塊之間用參數(shù)進(jìn)行通信,其中每個(gè)參數(shù)都是一個(gè)數(shù)據(jù)元素,則這種耦合稱為數(shù)據(jù)耦合。一般來說,兩個(gè)模塊之間總有一定的通信,數(shù)據(jù)通信聯(lián)系是不可避免的,因此,只要這種耦合數(shù)量盡量少,就不會(huì)有多大害處。
第三部分軟件工程(7)非直接耦合若兩個(gè)模塊沒有直接關(guān)系,它們之間的聯(lián)系完全通過主模塊的控制和調(diào)用來實(shí)現(xiàn)的,則稱這兩個(gè)模塊為非直接耦合。第三部分軟件工程考點(diǎn)13:概要設(shè)計(jì)概要設(shè)計(jì)聯(lián)合體的任務(wù)是將軟件需求轉(zhuǎn)化為軟件體系結(jié)構(gòu)、確定系統(tǒng)級接口、全局?jǐn)?shù)據(jù)結(jié)構(gòu)或數(shù)據(jù)庫模式。1)主要步驟如下:設(shè)計(jì)軟件系統(tǒng)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)及數(shù)據(jù)庫設(shè)計(jì)編寫概要設(shè)計(jì)文檔概要設(shè)計(jì)文檔評審第三部分軟件工程2)軟件結(jié)構(gòu)設(shè)計(jì)工具-結(jié)構(gòu)圖(SC)
經(jīng)常使用的結(jié)構(gòu)圖有四種模塊類型:傳入模塊類型、輸出模塊類型、變換模塊類型和協(xié)調(diào)模塊類型。第三部分軟件工程3)面向數(shù)據(jù)流的設(shè)計(jì)方法
典型的數(shù)據(jù)流類型有兩種:變換型和事務(wù)型。變換型是指信息沿輸入通路進(jìn)入系統(tǒng),同時(shí)由外部形式變換成內(nèi)部形式,進(jìn)入系統(tǒng)的信息通過變換,經(jīng)過加工處理后再通過輸出通路變換成外部形式離開軟件系統(tǒng)。事務(wù)型在很多軟件應(yīng)用中,存在某種作業(yè)數(shù)據(jù)流,它可以引發(fā)一個(gè)或多個(gè)處理,這些處理能夠完成作業(yè)要求的功能,這種數(shù)據(jù)流稱為事務(wù)型。第三部分軟件工程考點(diǎn)14:詳細(xì)設(shè)計(jì)
詳細(xì)設(shè)計(jì)的任務(wù):為軟件結(jié)構(gòu)圖中的每一個(gè)模塊確定實(shí)現(xiàn)算法和局部數(shù)據(jù)結(jié)構(gòu),用某種選定的表達(dá)工具表示算法和數(shù)據(jù)結(jié)構(gòu)的細(xì)節(jié)。過程設(shè)計(jì)的工具:過程設(shè)計(jì)的常用工具有程序流程圖、N-S圖、PAD圖(問題分析圖)和PDU(過程設(shè)計(jì))第三部分軟件工程考點(diǎn)15:軟件測試的目的和準(zhǔn)則1、軟件測試的目的軟件測試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過程。一個(gè)好的測試用例能發(fā)現(xiàn)至今尚未發(fā)現(xiàn)的錯(cuò)誤。一個(gè)成功的測試是發(fā)現(xiàn)了至今尚未發(fā)現(xiàn)的錯(cuò)誤。第三部分軟件工程2、軟件測試的準(zhǔn)則所有測試都應(yīng)追溯到需求嚴(yán)格執(zhí)行測試計(jì)劃、排除測試的隨意性充分注意測試中的群集現(xiàn)象
程序員應(yīng)避免檢查自己和程序窮舉測試不可能妥善保存測試計(jì)劃、測試用例、出錯(cuò)統(tǒng)計(jì)和最終分析報(bào)告第三部分軟件工程考點(diǎn)16:軟件測試技術(shù)與方法軟件測試從是否要執(zhí)行被測試軟件的角度可以分為靜態(tài)測試和動(dòng)態(tài)測試。
靜態(tài)測試:靜態(tài)測試包括代碼檢查、靜態(tài)結(jié)構(gòu)分析、代碼質(zhì)量度量等。動(dòng)態(tài)測試:動(dòng)態(tài)測試是基于計(jì)算機(jī)的測試,是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過程。第三部分軟件工程
軟件測試按照功能劃分可以分為白盒測試和黑盒測試方法。白盒測試:白盒測試是根據(jù)軟件產(chǎn)品的內(nèi)部工作過程,檢查內(nèi)部成分,以確認(rèn)每種內(nèi)部操作符合設(shè)計(jì)規(guī)范要求。白盒測試的基本原則:(一)保證所測模塊中每一獨(dú)立路徑至少執(zhí)行一次;(二)保證所測模塊所有判斷的每一分支至少執(zhí)行一次;(三)保證所測模塊每一循環(huán)都在邊界條件下和一般條件下至少各執(zhí)行一次;(四)驗(yàn)證所有內(nèi)部數(shù)據(jù)結(jié)構(gòu)的有效性。第三部分軟件工程
白盒測試的主要方法:(一)邏輯覆蓋測試:邏輯覆蓋是泛指一系列以程序內(nèi)部的邏輯結(jié)構(gòu)為基礎(chǔ)的測試用例設(shè)計(jì)技術(shù)。邏輯覆蓋測試方法有語句覆蓋、路徑覆蓋、判定覆蓋、條件覆蓋以及判斷-條件覆蓋。(二)基本路徑測試:基本路徑測試的思想和步驟是,根據(jù)軟件過程性描述中的控制流程確定程序的環(huán)路復(fù)雜性度量,用此度量定義基本路徑集合,并由此導(dǎo)出一組測試用例對每一條獨(dú)立路徑測試。第三部分軟件工程黑盒測試
:黑盒測試是對軟件已經(jīng)實(shí)現(xiàn)的功能是否滿足需求進(jìn)行測試和驗(yàn)證。黑盒測試的方法:(一)等價(jià)類劃分法:將程序的所有可能的輸入數(shù)據(jù)劃分成若干部分(即若干等價(jià)類),然后從每個(gè)等價(jià)類中選取數(shù)據(jù)作為測試用例。(二)邊界值分析法:邊界分析法是對各種輸入、輸出范圍的邊界情況設(shè)計(jì)測試用例的方法。(三)錯(cuò)誤推測法:靠經(jīng)驗(yàn)和直覺推測程序中可能存在的各種錯(cuò)誤,從而有針對性地編寫檢查這些錯(cuò)誤的例子的方法。第三部分軟件工程考點(diǎn)17:軟件測試的實(shí)施①單元測試:單元測試是對軟件設(shè)計(jì)的最小單位――模塊進(jìn)行正確性檢驗(yàn)的測試。主要目的是發(fā)現(xiàn)各模塊內(nèi)部可能存在的各種錯(cuò)誤。
②集成測試:集成測試是把模塊在按照設(shè)計(jì)要求組裝起來的同時(shí)進(jìn)行測試,主要目的是發(fā)現(xiàn)與接口有關(guān)的錯(cuò)誤。
③確認(rèn)測試
:確認(rèn)測試的任務(wù)是驗(yàn)證軟件的功能和性能及其他特性是否滿足了需求規(guī)格說明中確定的各種需求,以及軟件配置是否完全、正確。④系統(tǒng)測試
:系統(tǒng)測試是將通過測試確認(rèn)的軟件,作為整個(gè)基于計(jì)算機(jī)系統(tǒng)的一個(gè)元素,與計(jì)算機(jī)硬件、外設(shè)、支持軟件、數(shù)據(jù)和人員等其他系統(tǒng)元素組合在一起,在實(shí)際運(yùn)行環(huán)境下對計(jì)算機(jī)系統(tǒng)進(jìn)行一系列的集成測試和確認(rèn)測試。第三部分軟件工程考點(diǎn)18:軟件調(diào)試的步驟原則方法①程序調(diào)試的基本步驟:錯(cuò)誤定位修改設(shè)計(jì)和代碼進(jìn)行回歸測試,防止引進(jìn)新的錯(cuò)誤第三部分軟件工程考點(diǎn)18:軟件調(diào)試的步驟原則方法②程序調(diào)試的原則
確定錯(cuò)誤的性質(zhì)和位置時(shí)應(yīng)該注意的事項(xiàng)有:分析思考與錯(cuò)誤征兆相關(guān)的信息避開死胡同只把調(diào)試工具當(dāng)作輔助手段來用避免用試探法,最多只能把它當(dāng)作最后手段第三部分軟件工程考點(diǎn)18:軟件調(diào)試的步驟原則方法②程序調(diào)試的原則修改錯(cuò)誤時(shí)應(yīng)遵循如下原則:在出現(xiàn)錯(cuò)誤的地方,還可能有別的錯(cuò)誤不應(yīng)只修改了錯(cuò)誤的征兆或表現(xiàn)而沒有修改錯(cuò)誤本身注意修正一個(gè)錯(cuò)誤的同時(shí)有可能會(huì)引入新的錯(cuò)誤修改錯(cuò)誤的過程將迫使人們暫時(shí)回到程序設(shè)計(jì)階段修改源代碼程序,不要改變目標(biāo)代碼第三部分軟件工程軟件調(diào)試的方法強(qiáng)行排錯(cuò)法、回溯法和原因排除法。第三部分軟件工程下列關(guān)于軟件的特點(diǎn)的描述正確的是A)軟件的生產(chǎn)和硬件一樣有明顯的制作過程B)軟件和硬件一樣也有磨損、老化的問題C)軟件的開發(fā)成本比硬件開發(fā)要低廉D)軟件的開發(fā)、運(yùn)行對計(jì)算機(jī)系統(tǒng)具有依賴性經(jīng)典習(xí)題習(xí)題演練經(jīng)典習(xí)題習(xí)題演練答案D第三部分軟件工程下面哪一項(xiàng)不是軟件危機(jī)的表現(xiàn)?A)軟件的質(zhì)量難以保證B)軟件設(shè)計(jì)的技術(shù)水平無法達(dá)到用戶要求C)軟件開發(fā)成本不斷提高且不可控制D)軟件開發(fā)生產(chǎn)率的提高趕不上硬件的發(fā)展和需求的增長答案B第三部分軟件工程下面不屬于軟件工程的三個(gè)要素的是
A)工具B)過程
C)方法 D)環(huán)境在軟件生命周期中,能準(zhǔn)確地確定軟件系統(tǒng)必須做什么和必須具備那些功能的階段是
A)概要設(shè)計(jì) B)詳細(xì)設(shè)計(jì)
C)可行性分析D)需求分析 答案DD第三部分軟件工程
軟件需求分析階段的工作,可以分為四個(gè)方面:需求獲取,需求分析,編寫需求規(guī)格說明書,以及
A)階段性報(bào)告 B)需求評審
C)總結(jié) D)都不正確 答案B第三部分軟件工程
數(shù)據(jù)流圖用于抽象描述一個(gè)軟件的邏輯模型,數(shù)據(jù)流圖由一些特定的圖符構(gòu)成。下列圖符名標(biāo)識(shí)的圖符不屬于數(shù)據(jù)流圖合法圖符的是
A)控制流 B)加工
C)數(shù)據(jù)存儲(chǔ) D)源和潭 答案A第三部分軟件工程在很多軟件應(yīng)用中,存在某種作業(yè)數(shù)據(jù)流,它可以引發(fā)一個(gè)或多個(gè)處理,這些處理能夠完成該作業(yè)要求的功能,這種數(shù)據(jù)流叫做 A)變換型數(shù)據(jù)流 B)事務(wù)型數(shù)據(jù)流 C)控制型數(shù)據(jù)流 D)功能型數(shù)據(jù)流下列工具為需求分析常用工具的是A)PADB)PFDC)N-S D)DFD答案BD第三部分軟件工程下面不屬于軟件設(shè)計(jì)原則的是 A)抽象 B)模塊化 C)自底上向D)信息隱蔽程序流程圖中的箭頭代表的是 A)數(shù)據(jù)流 B)控制流 C)調(diào)用關(guān)系 D)組成關(guān)系 答案AB第三部分軟件工程在結(jié)構(gòu)化方法中,軟件功能分解屬于下列軟件開發(fā)中的階段是 A)詳細(xì)設(shè)計(jì) B)需求分析 C)總體設(shè)計(jì) D)編程測試 在優(yōu)秀的軟件設(shè)計(jì)中為了提高模塊的獨(dú)立性,應(yīng)該盡量做到 A)高內(nèi)聚,低耦合B)高內(nèi)聚,高耦合C)低內(nèi)聚,高耦合D)低內(nèi)聚,低耦合 答案CA第三部分軟件工程下列幾種內(nèi)聚類型中內(nèi)聚性最強(qiáng)的是
A)邏輯內(nèi)聚 B)時(shí)間內(nèi)聚
C)功能內(nèi)聚 D)過程內(nèi)聚下面哪一項(xiàng)內(nèi)容不是軟件設(shè)計(jì)包括的? A)軟件結(jié)構(gòu)設(shè)計(jì) B)過程設(shè)計(jì)
C)接口設(shè)計(jì)D)數(shù)據(jù)流設(shè)計(jì)答案CD第三部分軟件工程下列敘述中,正確的是
A)軟件就是程序清單
B)軟件就是存放在計(jì)算機(jī)中的文件
C)軟件應(yīng)包括程序清單以及運(yùn)行結(jié)果
D)軟件包括程序和文檔下列敘述中,正確的是()。A)軟件維護(hù)是指修復(fù)程序中被破壞的指令
B)軟件一旦交付使用就不需要再進(jìn)行維護(hù)C)
軟件交付使用后還需要進(jìn)行維護(hù)D)軟件交付使用后其生命周期就結(jié)束
答案DC第三部分軟件工程下列敘述中,正確的是()。A)軟件測試的目的是證明程序是否正確B)軟件測試目的是盡可能多地發(fā)現(xiàn)程序中的錯(cuò)誤C)軟件測試的目的是使程序運(yùn)行結(jié)果正確D)軟件測試
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版汽車抵押貸款合同借款人借款用途變更通知合同3篇
- 二零二五年度城市軌道交通內(nèi)部承包合同6篇
- 二零二五版企業(yè)日常經(jīng)營客戶關(guān)系管理與維護(hù)合同2篇
- 二零二五年酒店員工入股與酒店服務(wù)體驗(yàn)優(yōu)化合同3篇
- 二零二五年度廁所革命專項(xiàng)基金使用管理合同3篇
- 二零二五年度新能源風(fēng)能發(fā)電設(shè)備研發(fā)制造合同2篇
- 二零二五版企業(yè)法人借款合同擔(dān)保協(xié)議3篇
- 2025版大清包勞務(wù)合同范本:二零二五年度文化活動(dòng)組織執(zhí)行合同3篇
- 二零二五年海底光纜線路鋪設(shè)及安全保障合同3篇
- 2025年度祠堂宗教活動(dòng)組織與承包合同2篇
- 抖音直播帶貨協(xié)議書模板
- 2024義務(wù)教育體育與健康課程標(biāo)準(zhǔn)(2022年版)必考題庫及答案
- 工業(yè)機(jī)器人控制器:FANUC R-30iB:機(jī)器人實(shí)時(shí)監(jiān)控與數(shù)據(jù)采集技術(shù)教程
- 墓地銷售計(jì)劃及方案設(shè)計(jì)書
- 新加坡留學(xué)完整版本
- 勞務(wù)服務(wù)合作協(xié)議書范本
- 優(yōu)佳學(xué)案七年級上冊歷史
- 中醫(yī)五臟心完整版本
- 智能音箱方案
- 鋁箔行業(yè)海外分析
- 京東商城物流配送現(xiàn)狀及對策分析
評論
0/150
提交評論