《軟件工程基礎(chǔ)》PPT課件.ppt

上傳人:sh****n 文檔編號(hào):14245178 上傳時(shí)間:2020-07-14 格式:PPT 頁數(shù):42 大?。?96KB
收藏 版權(quán)申訴 舉報(bào) 下載
《軟件工程基礎(chǔ)》PPT課件.ppt_第1頁
第1頁 / 共42頁
《軟件工程基礎(chǔ)》PPT課件.ppt_第2頁
第2頁 / 共42頁
《軟件工程基礎(chǔ)》PPT課件.ppt_第3頁
第3頁 / 共42頁

下載文檔到電腦,查找使用更方便

9.9 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《《軟件工程基礎(chǔ)》PPT課件.ppt》由會(huì)員分享,可在線閱讀,更多相關(guān)《《軟件工程基礎(chǔ)》PPT課件.ppt(42頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、第三章 軟件工程基礎(chǔ),主要內(nèi)容,3.1 軟件工程基本概念 3.2 結(jié)構(gòu)化分析方法 3.3 結(jié)構(gòu)化設(shè)計(jì)方法 3.4 軟件測(cè)試 3.5 程序的調(diào)試,3.1 軟件工程基本概念,3.1.1 軟件定義與特點(diǎn),區(qū)分兩組容易混淆名詞:,程序:軟件的組成部分。 軟件:包括程序、數(shù)據(jù)和相關(guān)文檔的完整組合。,,,程序設(shè)計(jì):只是軟件開發(fā)過程中的必要環(huán)節(jié)。 軟件開發(fā):還包括需求分析、概要和詳細(xì)設(shè)計(jì)、軟件測(cè)試、運(yùn)行和維護(hù)等多個(gè)環(huán)節(jié)。,定義:是指包括程序、數(shù)據(jù)以及相關(guān)文檔的完整組合。 國(guó)標(biāo)定義:與計(jì)算機(jī)系統(tǒng)的操作有關(guān)的計(jì)算機(jī)程序、規(guī)程、規(guī)則以及可能有的文件、文檔及數(shù)據(jù)。,組成:,分類:系統(tǒng)軟件、應(yīng)用軟件和支撐軟件(或工具

2、軟件)。,,(1)機(jī)器可執(zhí)行的程序和數(shù)據(jù) (2)機(jī)器不可執(zhí)行的,與軟件開發(fā)、運(yùn)行、維護(hù)和使用等有關(guān)的文檔。,特點(diǎn):,具有抽象性(不是物理實(shí)體); 沒有明顯制作過程; 在運(yùn)行、使用期不存在磨損和老化問題; 軟件開發(fā)、運(yùn)行對(duì)計(jì)算機(jī)系統(tǒng)具有依賴性; 軟件復(fù)雜性高、成本昂貴; 軟件開發(fā)涉及諸多社會(huì)因素。,軟件危機(jī),,3.1.2 軟件危機(jī)與軟件工程,定義:泛指在計(jì)算機(jī)軟件的開發(fā)和維護(hù)過程中所遇到的一系列嚴(yán)重問題。 作用:為了消除軟件危機(jī),逐步形成了軟件工程概念,開辟了工程學(xué)新興領(lǐng)域-軟件工程學(xué)。,軟件工程,國(guó)標(biāo)定義:軟件工程是應(yīng)用于計(jì)算機(jī)軟件的定義、開發(fā)和維護(hù)的一整套方法、工具、文檔、實(shí)踐標(biāo)準(zhǔn)和工序。,

3、三要素:,,(1) 方法:完成軟件工程項(xiàng)目的技術(shù)手段。 (2) 工具:支持軟件的開發(fā)、管理和文檔生成。 (3) 過程:支持軟件開發(fā)的各個(gè)環(huán)節(jié)的控制、管理。,,定義:軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用的過程稱為軟件生命周期。,3.1.3 軟件生命周期,三個(gè)階段:,(1)可行性研究與計(jì)劃制定:確定開發(fā)目標(biāo)和總的要求,給出功能、可靠性等可能方案,制定實(shí)施計(jì)劃。 (2)需求分析:對(duì)軟件需求進(jìn)行分析并給出詳細(xì)定義,編寫軟件規(guī)格說明書及初步的用戶手冊(cè),提交評(píng)審。,(3)軟件設(shè)計(jì):概要設(shè)計(jì)和詳細(xì)設(shè)計(jì),給出軟件的結(jié)構(gòu)、模塊和功能的劃分等。編寫概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)說明書和測(cè)試計(jì)劃初稿。 (4) 軟件實(shí)現(xiàn):源

4、程序編碼,把軟件設(shè)計(jì)轉(zhuǎn)換成計(jì)算機(jī)可以接受的程序代碼。編寫用戶手冊(cè)、操作手冊(cè)和單元測(cè)試計(jì)劃。 (5)軟件測(cè)試:設(shè)計(jì)測(cè)試用例,檢驗(yàn)軟件各個(gè)組成部分。編寫測(cè)試分析報(bào)告。,軟件運(yùn)行 (6) 軟件投入運(yùn)行,維護(hù)(進(jìn)行擴(kuò)充和刪改)。 和維護(hù),3.1.4 軟件工程的目標(biāo)與原則,基本目標(biāo):較低開發(fā)成本達(dá)到要求軟件功能,取得較好性能;軟件易于移植,維護(hù)費(fèi)用低;按時(shí)完成開發(fā),及時(shí)交付使用。,原則:抽象、信息隱蔽、模塊化、局部化、確定性、一致性、完備性和可驗(yàn)證性。(見后),3.1.5 軟件開發(fā)工具與軟件開發(fā)環(huán)境,軟件開發(fā)工具:是用于幫助軟件開發(fā)人員開發(fā)和維護(hù)軟件的一類特殊軟件,它可以大大提高軟件開發(fā)的效率。,軟件開

5、發(fā)環(huán)境:是全面支持軟件開發(fā)全過程的軟件工具集合。這些軟件工具按照一定的方法或模式組合起來,支持軟件生命周期內(nèi)的各個(gè)階段和各項(xiàng)任務(wù)的完成。,CASE:計(jì)算機(jī)輔助軟件工程,3.2 結(jié)構(gòu)化分析方法,3.2.1 需求分析與需求分析方法,1.需求分析:,,軟件需求:指用戶對(duì)目標(biāo)軟件系統(tǒng)在功能、行為、性能、設(shè)計(jì)約束等方面的期望。,需求分析定義:開發(fā)人員準(zhǔn)確理解用戶的要求,調(diào)查分析,將用戶非正形的需求陳述轉(zhuǎn)化為完整的需求定義,再轉(zhuǎn)換到相應(yīng)的需求格式說明的過程。,任務(wù):發(fā)現(xiàn)需求(用戶需要軟件做什么)、求精、建模和定義需求的過程。,需求分析階段的工作(四方面):,2.需求分析方法:結(jié)構(gòu)化分析方法和面向?qū)ο蟮姆治?/p>

6、方法,(1)需求獲取:目的是確定系統(tǒng)各方面需求。與用戶交流、溝通全面地提煉出系統(tǒng)的功能性與非功能性需求。 (2)需求分析:對(duì)獲取的需求分析和綜合,給出系統(tǒng)解決方案和邏輯模型。 (3)編寫需求規(guī)格說明書:為用戶、設(shè)計(jì)人員的交流提供方便,還可作為控制軟件開發(fā)進(jìn)程的依據(jù)。 (4)需求評(píng)審:復(fù)審需求分析階段的工作,驗(yàn)證需求文檔的一致性、可行性等。,3.2.2 結(jié)構(gòu)化分析方法,定義:結(jié)構(gòu)化分析是使用數(shù)據(jù)流圖(DFD)、數(shù)據(jù)字典(DD)、結(jié)構(gòu)化英語、判定表和判定樹等工具,建立一種新的、稱為結(jié)構(gòu)化規(guī)格說明的目標(biāo)文檔?!?實(shí)質(zhì):面向數(shù)據(jù)流,以數(shù)據(jù)流圖和數(shù)據(jù)字典為主要工具,建立系統(tǒng)的邏輯模型。,主要步驟(四步

7、): (1) 獲取當(dāng)前系統(tǒng)的具體模型 (2) 抽象出當(dāng)前系統(tǒng)的邏輯模型 (3) 建立目標(biāo)系統(tǒng)的邏輯模型 (4) 編寫目標(biāo)系統(tǒng)的軟件需求規(guī)格說明,常用工具:、數(shù)據(jù)字典、判定表和判定樹 。,1.數(shù)據(jù)流圖(DFDData Flow Diagram ),作用:以圖形的方式描述數(shù)據(jù)在系統(tǒng)中流動(dòng)和處理的過程,使用DFD為系統(tǒng)建立邏輯模型。,基本符號(hào)(四種):,步驟(三步):,(1)由外向里:先畫系統(tǒng)輸入/輸出,再畫系統(tǒng)的內(nèi)部。 (2)自頂向下:順序完成頂層、中間層、底層數(shù)據(jù)流圖。 (3)逐層分解。,先建立頂層 數(shù)據(jù)流圖,,包含:相關(guān)外部實(shí)體及它們與軟件中間的數(shù)據(jù)流 作用:描述軟件作用范圍、總體功能、輸入/

8、輸出等,舉例:,2.數(shù)據(jù)字典(DDData Dictionary ),定義:是所有與系統(tǒng)相關(guān)的數(shù)據(jù)元素的一個(gè)有組織的列表,以及精確、嚴(yán)格的詳細(xì)定義。,作用:對(duì)DFD中出現(xiàn)的被命名的圖形元素的確切解釋。數(shù)據(jù)字典與DFD共同構(gòu)成了系統(tǒng)的邏輯模型。,定義數(shù)據(jù)的基本符號(hào):,舉例:(見教材P ),3.判定樹,描述方法:分清哪些是判定的條件,哪些是判定的結(jié)論,并找出判定條件之間的從屬關(guān)系、并列關(guān)系、選擇關(guān)系,根據(jù)它們構(gòu)造判定樹。,優(yōu)點(diǎn):更加直觀,易于理解和使用。,舉例:“檢查取款單”的判定樹 (見教材圖3.3 ),,4.判定表,使用條件:當(dāng)數(shù)據(jù)流圖中的加工要依賴于多個(gè)邏輯條件的取值時(shí)(該加工的一組動(dòng)作是由

9、于某一組條件取值的組合而引發(fā)的),使用判定表描述比較適宜。,組成(四部分): (1) 基本條件,各種可能的條件 (2) 條件項(xiàng),各種可能的條件組 (3) 基本動(dòng)作,所有的操作 (4) 動(dòng)作項(xiàng),對(duì)應(yīng)的條件組合下所選的操作,舉例: “檢查取款單”的判定表,3.2.3 軟件需求規(guī)格說明書,定義:是需求分析階段的最后成果,軟件開發(fā)的重要文檔之一。它對(duì)所開發(fā)的軟件的功能、性能、用戶界面及運(yùn)行環(huán)境等進(jìn)行詳細(xì)說明。,作用:便于用戶與開發(fā)人員交流;作為軟件開發(fā)的依據(jù);作為測(cè)試和驗(yàn)收的依據(jù)。,內(nèi)容:制定出完整的信息描述、詳細(xì)的功能說明、恰當(dāng)?shù)臋z驗(yàn)標(biāo)準(zhǔn)以及其他有關(guān)數(shù)據(jù)。(具體內(nèi)容見教材P17),特點(diǎn):正確而無歧義

10、性,簡(jiǎn)明易懂,可修改性,可驗(yàn)證性等。,3.3 結(jié)構(gòu)化設(shè)計(jì)方法,3.3.1 軟件設(shè)計(jì)過程及原則,1.軟件設(shè)計(jì)基礎(chǔ)知識(shí),定義:軟件設(shè)計(jì)是把軟件需求轉(zhuǎn)換為軟件的具體設(shè)計(jì)方案,即模塊結(jié)構(gòu)的過程。確定系統(tǒng)的物理模型。,內(nèi)容:,,從技術(shù)觀點(diǎn):包括軟件結(jié)構(gòu)設(shè)計(jì)、數(shù)據(jù)設(shè)計(jì)、接口設(shè)計(jì)、過程設(shè)計(jì)。,從工程管理角度:,,概要設(shè)計(jì):確定軟件系統(tǒng)結(jié)構(gòu),模塊劃分。 詳細(xì)設(shè)計(jì):確立每個(gè)模塊的實(shí)現(xiàn)算法和局部數(shù)據(jù)結(jié)構(gòu)。,一般過程:是一個(gè)迭代過程,先進(jìn)行高層次結(jié)構(gòu)設(shè)計(jì);再進(jìn)行低層次過程設(shè)計(jì);穿插數(shù)據(jù)設(shè)計(jì)和接口設(shè)計(jì)。,2.軟件設(shè)計(jì)基本原則,(1)抽象:抽出事物的本質(zhì)特性而不考慮其他細(xì)節(jié)。考慮模塊劃分解決方案時(shí),可定多個(gè)抽象級(jí)別。

11、(2)模塊化:指解決一個(gè)復(fù)雜問題時(shí)自頂向下逐層把軟件系統(tǒng)劃分成若干模塊的過程。 (3)信息隱蔽:模塊內(nèi)包含的信息,不允許其他不需要這些信息的模塊訪問。即每個(gè)模塊的實(shí)現(xiàn)細(xì)節(jié)對(duì)其他模塊來說是隱蔽的。 (4)模塊獨(dú)立性:每個(gè)模塊只完成系統(tǒng)要求的獨(dú)立的子功能,并且與其他模塊的聯(lián)系最少且接口簡(jiǎn)單。,度量標(biāo)準(zhǔn),,耦合性:模塊間互相連接的緊密程度。 內(nèi)聚性:一個(gè)模塊內(nèi)部各個(gè)元素間彼此結(jié)合的緊密程度。,高內(nèi)聚 低耦合,3.3.2 結(jié)構(gòu)化設(shè)計(jì)方法,基本思想:將軟件設(shè)計(jì)成由相對(duì)獨(dú)立且具有單一功能的模塊組成的結(jié)構(gòu) 。,1.概要設(shè)計(jì)及結(jié)構(gòu)圖,基本任務(wù)(四點(diǎn)):,(1)設(shè)計(jì)軟件系統(tǒng)結(jié)構(gòu),,需求分析階段:已將系統(tǒng)分解成

12、層次結(jié)構(gòu)。 概要設(shè)計(jì)階段:進(jìn)一步劃分為模塊以及模塊的層次結(jié)構(gòu)。,(2)數(shù)據(jù)結(jié)構(gòu)及數(shù)據(jù)庫(kù)設(shè)計(jì):實(shí)現(xiàn)需求定義和規(guī)格說明過程中提出的數(shù)據(jù)對(duì)象的邏輯表示 。,(3)編寫概要設(shè)計(jì)文檔:包括概要設(shè)計(jì)說明書、數(shù)據(jù)庫(kù)設(shè)計(jì)說明書,集成測(cè)試計(jì)劃等。,(4)概要設(shè)計(jì)文檔評(píng)審,結(jié)構(gòu)圖,作用:軟件結(jié)構(gòu)設(shè)計(jì)工具。反映系統(tǒng)的功能實(shí)現(xiàn)以及模塊與模塊之間的聯(lián)系與通信,即反映了系統(tǒng)的總體結(jié)構(gòu)。,基本成分:模塊、數(shù)據(jù)和調(diào)用,基本圖符:,基本形式:,基本術(shù)語:,,深度:在多層次的結(jié)構(gòu)圖中,其模塊結(jié)構(gòu)的層次數(shù) (控制的層數(shù)) 寬度:同一層模塊的最大模塊數(shù)(控制跨度) 扇出:一個(gè)模塊直接調(diào)用的其他模塊數(shù)目 扇入:調(diào)用一個(gè)給定模塊的模

13、塊個(gè)數(shù)。 上級(jí)模塊,從屬模塊:上下兩層模塊a和b, a調(diào)用b。 a是上級(jí)模塊, b是從屬模塊。,2.數(shù)據(jù)流圖到結(jié)構(gòu)圖的變換,結(jié)構(gòu)化設(shè)計(jì)方法的任務(wù)就是把需求分析得到的數(shù)據(jù)流圖變換為結(jié)構(gòu)圖。,(1)數(shù)據(jù)流圖到結(jié)構(gòu)圖的變換, 交換型:信息沿輸入通路進(jìn)入系統(tǒng),同時(shí)由外部形式變換成內(nèi)部形式,進(jìn)入系統(tǒng)的信息通過變換中心,經(jīng)加工處理以后再沿輸出通路變換成外部形式離開軟件系統(tǒng)。,,變換型數(shù)據(jù)處理的工作過程分三步:取得數(shù)據(jù)、變換數(shù)據(jù)、輸出數(shù)據(jù)。,變換型系統(tǒng)結(jié)構(gòu)圖分三部分:輸入、中心變換、輸出。, 事務(wù)型:數(shù)據(jù)流的特點(diǎn)是接受一項(xiàng)事務(wù),根據(jù)事務(wù)處理的特點(diǎn)和性質(zhì),選擇分派一個(gè)適當(dāng)?shù)奶幚韱卧?(事務(wù)處理中心),

14、然后給出結(jié)果。,例圖:,例圖:,,(2)面向數(shù)據(jù)流設(shè)計(jì)方法的實(shí)施要點(diǎn)與設(shè)計(jì)過程,分析確認(rèn)數(shù)據(jù)流圖的類型,區(qū)分是事務(wù)型還是變換型。,說明數(shù)據(jù)流的邊界,將數(shù)據(jù)流圖映射為程序結(jié)構(gòu)圖,,事務(wù)流:區(qū)分事務(wù)中心和數(shù)據(jù)接收通路,映射成事務(wù)結(jié)構(gòu) 變換流:區(qū)分輸出和輸入分支,映射成變換結(jié)構(gòu),對(duì)產(chǎn)生的結(jié)構(gòu)細(xì)化和求精,3.詳細(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ì)工具:,,圖形工具:程序流程圖、N-S圖、問題分析圖(PAD圖) 表格工具:判定表 語言工具: PDL(偽碼語言),(1) 程序流程圖:由一些描述不同種類操作

15、的帶有文字說明的圖框和流程線構(gòu)成。,,優(yōu)點(diǎn):直觀清晰,易于掌握 缺點(diǎn):隨意轉(zhuǎn)移控制,且不易表示結(jié)構(gòu),(2) N-S圖:去掉流程線,全部算法寫在一個(gè)矩形框內(nèi)。,(3) PAD圖:用結(jié)構(gòu)化程序設(shè)計(jì)思想表現(xiàn)程序邏輯結(jié)構(gòu),描述軟件詳細(xì)設(shè)計(jì)。,,結(jié)構(gòu)清晰、結(jié)構(gòu)化程度高;易于閱讀。 最左端縱線是程序主干線,每增加一層向右擴(kuò)展一條縱線(縱線數(shù)等于程序?qū)哟螖?shù))。 程序執(zhí)行:從最左端主干線上端點(diǎn)起,自上而下,從左向右執(zhí)行。終止于最左端主干線。,(4) PDL圖:過程設(shè)計(jì)語言,也稱結(jié)構(gòu)化英語或偽碼。采用英語詞匯和結(jié)構(gòu)化程序設(shè)計(jì)語言的語法。,3.4 軟件測(cè)試,3.4.1 軟件測(cè)試的目的與準(zhǔn)則,1.目的:是為了發(fā)現(xiàn)錯(cuò)

16、誤而執(zhí)行程序的過程。,2.準(zhǔn)則(六點(diǎn)):,(1)所有測(cè)試都應(yīng)追溯到需求:最嚴(yán)重的錯(cuò)誤為程序無法滿足用戶需求。 (2)嚴(yán)格執(zhí)行測(cè)試計(jì)劃,排除測(cè)試的隨意性。 (3)注意測(cè)試中的群集現(xiàn)象,程序中存在錯(cuò)誤的概率與該程序中已發(fā)現(xiàn)的錯(cuò)誤數(shù)成正比,應(yīng)集中對(duì)付那些錯(cuò)誤群集的程序。 (4)程序員應(yīng)避免檢查自己的程序。 (5)窮舉測(cè)試不現(xiàn)實(shí)(窮舉測(cè)試是指把程序所有可能的執(zhí)行路徑都進(jìn)行檢查的測(cè)試)。 (6)妥善保存測(cè)試計(jì)劃、測(cè)試用例、和最終分析報(bào)告等。,3.4.2 軟件測(cè)試方法,研究?jī)?nèi)容:如何用最少的測(cè)試用例集合來測(cè)試出程序中更多的潛在錯(cuò)誤。,關(guān)鍵技術(shù):如何進(jìn)行徹底的測(cè)試,如何設(shè)計(jì)測(cè)試用例等。,分類:,1.靜態(tài)測(cè)試

17、與動(dòng)態(tài)測(cè)試(是否需要執(zhí)行被測(cè)軟件),(1)靜態(tài)測(cè)試:包括代碼檢查、靜態(tài)結(jié)構(gòu)分析、代碼質(zhì)量度量等。可以由人工進(jìn)行或軟件工具自動(dòng)進(jìn)行。,(2)動(dòng)態(tài)測(cè)試:設(shè)計(jì)一批測(cè)試用例,利用它們?nèi)ミ\(yùn)行程序,以發(fā)現(xiàn)程序錯(cuò)誤的過程。,測(cè)試用例:為測(cè)試設(shè)計(jì)的數(shù)據(jù)。由測(cè)試輸入數(shù)據(jù)和與之對(duì)應(yīng)的預(yù)期輸出結(jié)果組成。 格式 (輸入值集) , (輸出值集) ,,2.白盒測(cè)試與黑盒測(cè)試(按照功能劃分),(1)白盒測(cè)試:也叫結(jié)構(gòu)測(cè)試或邏輯驅(qū)動(dòng)測(cè)試,,在程序內(nèi)部進(jìn)行,完成軟件內(nèi)部操作的驗(yàn)證。 被測(cè)軟件看作一個(gè)透明的盒子,測(cè)試人員對(duì)程序內(nèi)部的邏輯結(jié)構(gòu)及處理過程完全了解 。,(2)黑盒測(cè)試:也叫功能測(cè)試或數(shù)據(jù)驅(qū)動(dòng)測(cè)試,,在軟件接口處進(jìn)行,完

18、成功能驗(yàn)證。 被測(cè)軟件看作一個(gè)不透明的黑盒子,完全不考慮程序內(nèi)部的邏輯結(jié)構(gòu)和內(nèi)部特性 。,3.白盒測(cè)試原則及測(cè)試用例,基本原則:保證所測(cè)模塊中每一獨(dú)立路徑至少執(zhí)行一次;保證所測(cè)模塊所有判斷的每一分支至少執(zhí)行一次;保證所測(cè)模塊每一循環(huán)都在邊界條件和一般條件下至少各執(zhí)行一次;驗(yàn)證所有內(nèi)部數(shù)據(jù)結(jié)構(gòu)的有效性。,局限性:是窮舉路徑測(cè)試,貫穿程序獨(dú)立路徑數(shù)是天文數(shù)字,即使每條路徑都經(jīng)過了測(cè)試,仍可能有未發(fā)現(xiàn)錯(cuò)誤。,主要方法:,(1)邏輯覆蓋測(cè)試,邏輯覆蓋:指以程序內(nèi)部的邏輯結(jié)構(gòu)為基礎(chǔ)的測(cè)試用例設(shè)計(jì) 技術(shù)。,邏輯表示:判斷、分支、條件等幾種表示方式。,語句覆蓋:選擇足夠多測(cè)試數(shù)據(jù),使程序中每個(gè)語句至

19、少執(zhí)行一次。,路徑覆蓋:選擇足夠多測(cè)試用例,使程序中所有可能的路徑都至少執(zhí)行次。,判定覆蓋:保證程序中每個(gè)判斷的每個(gè)取值分支(“真”或“假”)至少執(zhí)行一次。,判定覆蓋比語句覆蓋強(qiáng),但邏輯覆蓋程度仍不高。例如“x10”,只要一個(gè)條件為真,無論另一個(gè)條件是否錯(cuò)誤,判斷結(jié)果都為真,無法保證查出判斷條件中的錯(cuò)誤。,條件覆蓋:每個(gè)判斷的每個(gè)條件的可能取值至少執(zhí)行次。,判斷條件覆蓋:每個(gè)條件的所有可能取值至少執(zhí)行一次,同時(shí)每個(gè)判斷的所有可能取值分支至少執(zhí)行一次。,(2)基本路徑測(cè)試,思想和步驟:根據(jù)軟件過程性描述中的控制流程確定程序的環(huán)路復(fù)雜性度量,用此度量定義基本路徑集合。,環(huán)路復(fù)雜度=程序流程圖中的判

20、斷框個(gè)數(shù)+1,舉例:,程序復(fù)雜度為3 x=-10, y=-10 覆蓋路徑:A B F x=10, y=-10 覆蓋路徑: A C D F x=10, y=10 覆蓋路徑: A C E F,4.黑盒測(cè)試原則及測(cè)試用例,內(nèi)容:檢查程序功能是否能按照規(guī)格說明書的規(guī)定正常使用,程序是否能適當(dāng)?shù)亟邮蛰斎霐?shù)據(jù)產(chǎn)生正確的輸出信息,并保持外部信息完整性.,方法(四種):,(1)等價(jià)類劃分法,基本思想:將程序所有可能的輸入數(shù)據(jù)劃分成若干等價(jià)類,然后從每個(gè)等價(jià)類中選取數(shù)據(jù)作為測(cè)試用例。對(duì)每個(gè)等價(jià)類,各輸入數(shù)據(jù)對(duì)發(fā)現(xiàn)程序中錯(cuò)誤的幾率都是等效的,只需從每個(gè)等價(jià)類中選取一些有代表性的測(cè)試用例進(jìn)行測(cè)試。,實(shí)施步驟:,,

21、劃分等價(jià)類 根據(jù)等價(jià)類選取測(cè)試用例,等價(jià)類分類:,,有效等價(jià)類:合理、有意義的輸入數(shù)據(jù)構(gòu)成的集合。 無效等價(jià)類:不合理、無意義的輸入數(shù)據(jù)構(gòu)成的集合。,(2)邊界值法,基本思想:對(duì)各種輸入、輸出范圍的邊界情況設(shè)計(jì)測(cè)試用例的方法。針對(duì)各種邊界情況設(shè)計(jì)測(cè)試用例,可以查出更多的錯(cuò)誤。,(3)錯(cuò)誤推測(cè)法,基本思想:列舉出程序中所有可能有的錯(cuò)誤和容易發(fā)生錯(cuò)誤的特殊情況,根據(jù)它們選擇測(cè)試用例。需要豐富的經(jīng)驗(yàn)。,(4)因果圖法,基本思想:從功能說明書中找出因(輸入)和果(輸出),將功能說明書轉(zhuǎn)換成判定表,再為每種輸出條件的組合設(shè)計(jì)測(cè)試用例。,3.4.3 軟件測(cè)試的實(shí)施,四個(gè)步驟:?jiǎn)卧獪y(cè)試、集成測(cè)試、確認(rèn)測(cè)試和

22、系統(tǒng)測(cè)試,1.單元測(cè)試:,定義:對(duì)模塊(軟件設(shè)計(jì)最小單位)進(jìn)行正確性檢驗(yàn)的測(cè)試。,目的:發(fā)現(xiàn)各模塊內(nèi)部可能存在的各種錯(cuò)誤。,技術(shù):靜態(tài)分析和動(dòng)態(tài)測(cè)試,依據(jù):詳細(xì)設(shè)計(jì)說明書和源程序,說明:?jiǎn)蝹€(gè)模塊通常不是獨(dú)立的程序,不能運(yùn)行。必須在真實(shí)或模擬環(huán)境下進(jìn)行。模擬環(huán)境中為被測(cè)模塊設(shè)計(jì)和搭建驅(qū)動(dòng)模塊和樁模塊。,,,驅(qū)動(dòng)模塊:相當(dāng)于被測(cè)模塊的主程序。它接收測(cè)試數(shù)據(jù),并傳給被測(cè)模塊,輸出實(shí)際測(cè)試結(jié)果。 樁模塊:用于代替被測(cè)模塊調(diào)用的其他模塊,僅做少量的數(shù)據(jù)操作,不必將子模塊的所有功能帶入 。,2.集成測(cè)試:,定義:把模塊在按照設(shè)計(jì)要求組裝起來的同時(shí)進(jìn)行測(cè)試 。,目的:發(fā)現(xiàn)與接口有關(guān)的錯(cuò)誤,依據(jù):概要設(shè)計(jì)說明

23、書,,采用方式(模塊組裝成程序):兩種,(1)非增量方式:也稱為一次性組裝方式。將測(cè)試好的每一個(gè)軟件單元一次組裝在一起再進(jìn)行整體測(cè)試。,(2)增量方式:測(cè)試好的模塊逐步組裝成較大系統(tǒng),邊連接邊測(cè)試,以發(fā)現(xiàn)連接過程中產(chǎn)生的問題。,自頂向下:從主控模塊開始,沿控制層次自頂向下逐個(gè)連接模塊,自低向上:從最低層、最基本的軟件單元開始測(cè)試。不需要樁模塊,但需要驅(qū)動(dòng)模塊。,混合增量:兩頭向中間逼近,“三明治”方法。,,3.確認(rèn)測(cè)試:,任務(wù):驗(yàn)證軟件的功能和性能及其他特性是否滿足了需求規(guī)格說明中確定的各種需求,以及軟件配置是否完全正確。,實(shí)施:先用黑盒測(cè)試,驗(yàn)證被測(cè)軟件是否滿足需求規(guī)格說明確認(rèn)的標(biāo)準(zhǔn)。再?gòu)?fù)審

24、保證軟件配置齊全。,4.系統(tǒng)測(cè)試:,定義:將通過測(cè)試確認(rèn)的軟件,作為整個(gè)基于計(jì)算機(jī)系統(tǒng)的一個(gè)元素,與計(jì)算機(jī)硬件、外設(shè)、人員等其他系統(tǒng)元素組合在一起,在實(shí)際運(yùn)行環(huán)境下對(duì)計(jì)算機(jī)系統(tǒng)進(jìn)行一系列的集成測(cè)試和確認(rèn)測(cè)試。,目的:是在真實(shí)的系統(tǒng)工作環(huán)境下檢驗(yàn)軟件是否能與系統(tǒng)正確連接,發(fā)現(xiàn)軟件與系統(tǒng)需求不一致的地方。,3.5 程序調(diào)試,任務(wù):診斷和改正程序中的錯(cuò)誤。,基本步驟:,,錯(cuò)誤定位 修改設(shè)計(jì)和代碼糾錯(cuò) 回歸測(cè)試:重復(fù)進(jìn)行某些有關(guān)測(cè)試,確認(rèn)該錯(cuò)誤是否被排除,以及是否引進(jìn)了新的錯(cuò)誤。,3.5.2 軟件調(diào)試方法,3.5.1 基本概念,分類:,,調(diào)試方法:,1.強(qiáng)行排錯(cuò)法:設(shè)置斷點(diǎn)和監(jiān)視表達(dá)式。程序執(zhí)行到某一

25、行時(shí),自動(dòng)停止運(yùn)行,保留各變量狀態(tài),方便檢查校對(duì)。,2.回朔法:一旦發(fā)現(xiàn)錯(cuò)誤,從最先發(fā)現(xiàn)“癥狀”的地方開始,沿程序的控制流程,逆向跟蹤源程序代碼,找到錯(cuò)誤根源。,3.原因排錯(cuò)法:,,(1)演繹法:從一般原理出發(fā)導(dǎo)出結(jié)論。設(shè)想及枚舉出所有可能出錯(cuò)的原因作為假設(shè)。用測(cè)試數(shù)據(jù)逐個(gè)排除不可能正確的假設(shè)。最后再驗(yàn)證余下的假設(shè)確定出錯(cuò)的原因。,(2)歸納法:從特殊推出一般。從一些線索(錯(cuò)誤征兆或等)著手,分析尋找潛在的原因,找出錯(cuò)誤。,(3)二分法:已知每個(gè)變量在程序中若干個(gè)關(guān)鍵點(diǎn)的正確值,用賦值語句等在某點(diǎn)附近給變量賦正確值,運(yùn)行程序檢查輸出。結(jié)果正確,錯(cuò)誤原因在前半部分:反之在后半部分。重復(fù)使用該方法,縮小出錯(cuò)范圍到容易診斷的程度為止。,需求分析,軟件設(shè)計(jì),方法 模型 設(shè)計(jì)工具,結(jié)構(gòu)化分析法,結(jié)構(gòu)化設(shè)計(jì)方法,,,建立邏輯模型 編寫需求規(guī)格說明書,建立物理模型,概要設(shè)計(jì) 詳細(xì)設(shè)計(jì),數(shù)據(jù)流圖,數(shù)據(jù)字典 判定表,判定樹,結(jié)構(gòu)圖(數(shù)據(jù)流圖轉(zhuǎn)換為結(jié)構(gòu)圖) 程序流程圖,N-S圖,PAD,PDL,總結(jié),

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!