軟件缺陷-課程課件_第1頁
軟件缺陷-課程課件_第2頁
軟件缺陷-課程課件_第3頁
軟件缺陷-課程課件_第4頁
軟件缺陷-課程課件_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第第3 3章章 軟件軟件缺陷缺陷本節(jié)教學(xué)目標(biāo)及重點本節(jié)教學(xué)目標(biāo)及重點教學(xué)目標(biāo)教學(xué)目標(biāo)掌握軟件缺陷及其管理有關(guān)的基本概念掌握軟件缺陷分析及統(tǒng)計的方法掌握軟件缺陷報告撰寫的要求了解alm缺陷管理功能重點重點軟件缺陷及其管理軟件缺陷分析及統(tǒng)計軟件缺陷報告撰寫2本章安排本章安排3.1 軟件缺陷3.2 軟件缺陷報告3.3 軟件缺陷管理3.4 軟件缺陷度量、分析與統(tǒng)計33.1 軟件缺陷軟件缺陷3.1.1 3.1.1 軟件缺陷的定義軟件缺陷的定義軟件錯誤或軟件缺陷是軟件產(chǎn)品的固有成分,是軟件“生來具有”的特征軟件錯誤或軟件缺陷是軟件產(chǎn)品的固有成分,是軟件“生來具有”的特征軟件缺陷包括檢測缺陷和殘留缺陷軟件缺

2、陷包括檢測缺陷和殘留缺陷錯誤錯誤軟件失效軟件失效軟件錯誤軟件錯誤軟件故障軟件故障add your text in hereadd your text in here一般符合下列5個規(guī)則之一,就是軟件缺陷 軟件未實現(xiàn)產(chǎn)品說明書要求的功能 軟件出現(xiàn)了產(chǎn)品說明書指明不應(yīng)該出現(xiàn)的錯誤 軟件實現(xiàn)了產(chǎn)品說明書未提到的功能 軟件未實現(xiàn)產(chǎn)品說明書雖未明確提及但應(yīng)該實現(xiàn)的目標(biāo) 軟件難以理解、不易使用、運行緩慢或者從測試員的角度看最終用戶會認(rèn)為不好3.1.1 3.1.1 軟件缺陷的定義軟件缺陷的定義調(diào)查研究表明:大多數(shù)軟件缺陷并不是由于編碼造成的,導(dǎo)致大多數(shù)軟件缺陷產(chǎn)生的最大的原因是需求分析階段,其次是在軟件設(shè)計

3、階段。3.1.2 3.1.2 軟件軟件缺陷產(chǎn)生的原因缺陷產(chǎn)生的原因典型的缺陷類型典型的缺陷類型 需求解釋有錯誤、用戶定義錯了需求、需求記錄錯誤; 設(shè)計說明有誤; 編碼說明有誤、程序代碼有誤、數(shù)據(jù)輸入有誤; 測試錯誤、問題修改不正確; 正確的結(jié)果是由于其它的缺陷產(chǎn)生的。3.1.3 3.1.3 軟件軟件缺陷缺陷類型類型3.2 軟件軟件缺陷報告缺陷報告缺陷缺陷報告是軟件測試過程中最重要的文檔報告是軟件測試過程中最重要的文檔 是缺陷被修正的唯一方法 記錄了缺陷發(fā)生的環(huán)境,如各種資源的配置情況,缺陷的再現(xiàn)步驟以及缺陷性質(zhì)的說明 記錄著缺陷的處理過程和狀態(tài) 缺陷的處理進(jìn)程從一定角度反映了測試的進(jìn)程和被測軟

4、件的質(zhì)量狀況以及改善過程3.2 3.2 軟件缺陷報告軟件缺陷報告在軟件測試過程中,每發(fā)現(xiàn)一個軟件錯誤在軟件測試過程中,每發(fā)現(xiàn)一個軟件錯誤都要記錄該錯誤的特征和復(fù)現(xiàn)步驟等信息都要記錄該錯誤的特征和復(fù)現(xiàn)步驟等信息,以,以便分析、處理和管理測試發(fā)現(xiàn)的軟件錯誤便分析、處理和管理測試發(fā)現(xiàn)的軟件錯誤 通常要采用軟件缺陷數(shù)據(jù)庫 將每一個發(fā)現(xiàn)的錯誤輸入到軟件缺陷數(shù)據(jù)庫中 軟件缺陷數(shù)據(jù)庫的每一條記錄稱為一個軟件缺陷報告缺陷的生命周期缺陷的生命周期 缺陷從開始提出到最后解決,并通過復(fù)查的過程 在這個過程中缺陷報告的狀態(tài)不斷發(fā)生著變化,記錄著缺陷的處理進(jìn)程3.2 3.2 軟件缺陷報告軟件缺陷報告報告缺陷的基本原則報

5、告缺陷的基本原則盡快報告缺陷有效描述缺陷 短?。褐唤忉屖聦嵑脱菔?、描述缺陷必需的細(xì)節(jié) 單一:每一個報告中針對一個缺陷 步驟清晰:要清楚地描述出缺陷的發(fā)生場景,包括前置條件和操作的詳細(xì)步驟 使用it業(yè)界慣用的表達(dá)術(shù)語和表達(dá)方式 明確指明錯誤類型報告缺陷時不做任何評價確保缺陷可以重現(xiàn)3.2 3.2 軟件缺陷軟件缺陷報告報告correct(準(zhǔn)確準(zhǔn)確)consistent(一致一致)complete(完整完整)concise(簡潔簡潔)clear(清晰清晰)每個組成部分的描述每個組成部分的描述準(zhǔn)確,不會引起誤解準(zhǔn)確,不會引起誤解每個組成部分的描述清晰,每個組成部分的描述清晰,易于理解易于理解只包含必不

6、可少的信息,只包含必不可少的信息,不包括任何多余的內(nèi)容不包括任何多余的內(nèi)容包含復(fù)現(xiàn)該缺陷的完整包含復(fù)現(xiàn)該缺陷的完整步驟和其他本質(zhì)信息步驟和其他本質(zhì)信息12345按照一致的格式書寫全部按照一致的格式書寫全部缺陷報告缺陷報告為書寫更好的缺陷報告為書寫更好的缺陷報告,需要遵守,需要遵守“5c5c”準(zhǔn)則準(zhǔn)則3.2.1 3.2.1 軟件缺陷軟件缺陷報告的編寫原則報告的編寫原則缺陷缺陷報告的讀者對象報告的讀者對象 直接讀者是軟件開發(fā)人員和質(zhì)量管理人員,來自市場和技術(shù)支持等部門的人也可能需要查看缺陷情況 讀者最希望獲得的信息包括:易于搜索軟件缺陷報告中的缺陷報告的軟件缺陷進(jìn)行了必要的隔離,報告的缺陷信息更具

7、體、準(zhǔn)確軟件開發(fā)人員希望獲得缺陷的本質(zhì)特征和復(fù)現(xiàn)步驟市場和技術(shù)支持等部門希望獲得缺陷類型分布以及對市場和用戶的影響程度3.2.1 3.2.1 軟件缺陷軟件缺陷報告的編寫原則報告的編寫原則缺陷缺陷報告的組織結(jié)構(gòu)報告的組織結(jié)構(gòu)缺陷的標(biāo)題與簡單描述缺陷的基本信息,包括: 測試軟件名稱、版本號、缺陷或錯誤類型、可重復(fù)性、測試平臺、平臺語言、缺陷或錯誤范圍、嚴(yán)重程度及優(yōu)先級 要求填寫完整、準(zhǔn)確復(fù)現(xiàn)缺陷的操作步驟 描述該缺陷或錯誤出現(xiàn)的操作順序,要求完整、簡潔、準(zhǔn)確。對命令、系統(tǒng)變量、選項要用大寫字母,對控件名稱等加雙引號缺陷的實際結(jié)果描述、期望的正確結(jié)果描述注釋文字和截取的缺陷圖像 對缺陷或錯誤的附加描

8、述,一般包括缺陷或錯誤現(xiàn)象的圖像,包括其他建議或注釋文字3.2.1 3.2.1 軟件缺陷軟件缺陷報告的編寫原則報告的編寫原則衡量衡量優(yōu)秀的優(yōu)秀的bug reportbug report的質(zhì)量指標(biāo)應(yīng)該包括如下:的質(zhì)量指標(biāo)應(yīng)該包括如下:對管理層來說,是清晰明了的,特別是在概要這一級對于開發(fā)部門是有用的,主要是給出能夠讓開發(fā)人員高效地調(diào)試問題的相關(guān)信息可以很快的將bug從“opened”狀態(tài)轉(zhuǎn)變成“closed”狀態(tài),減少為得到更多的信息從開發(fā)人員打回的差的bug report并導(dǎo)致測試人員返工的時間3.2.1 3.2.1 軟件缺陷軟件缺陷報告的編寫原則報告的編寫原則缺陷報告的主要缺陷報告的主要要素

9、要素1 1)可追蹤信息)可追蹤信息缺陷缺陷idid(唯一的缺陷id,可以根據(jù)該id追蹤缺陷)2 2)缺陷基本信息)缺陷基本信息編號編號編號編號1缺陷id8缺陷類型2缺陷標(biāo)題(摘要)9嚴(yán)重性3報告人10優(yōu)先級4報告日期11詳細(xì)描述5程序名稱12重現(xiàn)步驟6版本號13預(yù)期結(jié)果7環(huán)境配置14實際結(jié)果3.2.2 3.2.2 軟件缺陷描述軟件缺陷描述3 3)附加信息)附加信息- -必要必要的附件的附件對于某些文字很難表達(dá)清楚的缺陷,使用圖片等附件是必要的3.2.2 3.2.2 軟件缺陷描述軟件缺陷描述缺陷的屬性缺陷的屬性缺陷標(biāo)識缺陷標(biāo)識(identifier)(identifier) 缺陷標(biāo)識是標(biāo)記某個缺

10、陷的一組符號。每個缺陷必須有一個唯一的標(biāo)識缺陷類型缺陷類型 (type)(type) 缺陷類型是根據(jù)缺陷的自然屬性劃分的缺陷種類。缺陷嚴(yán)重程缺陷嚴(yán)重程(severity)(severity) 缺陷嚴(yán)重程度是指因缺陷引起的失效對軟件產(chǎn)品的影響程度。缺陷優(yōu)先級缺陷優(yōu)先級(priority)(priority) 缺陷的優(yōu)先級指缺陷必須被修復(fù)的緊急程度。缺陷狀態(tài)缺陷狀態(tài)(status)(status) 缺陷狀態(tài)指缺陷通過一個跟蹤修復(fù)過程的進(jìn)展情況。缺陷缺陷根源根源(root cause)(root cause) 缺陷根源指發(fā)生錯誤的根本因素。3.2.2 3.2.2 軟件缺陷描述軟件缺陷描述缺陷的嚴(yán)重缺

11、陷的嚴(yán)重程度程度 軟件測試錯誤的嚴(yán)重程度criticalcriticalhighhighmiddlemiddlelowlowotherother3.2.2 3.2.2 軟件缺陷描述軟件缺陷描述缺陷的解決缺陷的解決優(yōu)先級優(yōu)先級highhighmiddlemiddlelowlow確定缺陷解決或修復(fù)的優(yōu)先順序3.2.2 3.2.2 軟件缺陷描述軟件缺陷描述3.3 軟件軟件缺陷缺陷管理管理缺陷生命周期缺陷生命周期- -缺陷狀態(tài)缺陷狀態(tài)初始化new待修正open修正fixed關(guān)閉closed測試人員測試人員開發(fā)人員開發(fā)人員再修正reopen拒絕reject項目經(jīng)理項目經(jīng)理評審委員會評審委員會待修正ope

12、n待修正open關(guān)閉closed3.3 3.3 軟件軟件缺陷管理缺陷管理缺陷管理基本流程缺陷管理基本流程: :初始化測試人員提交new項目經(jīng)理分配open開發(fā)人員修正fixed測試人員驗證closed3.3 3.3 軟件軟件缺陷管理缺陷管理缺陷管理基本流程缺陷管理基本流程: :初始化測試人員提交new項目經(jīng)理分配open開發(fā)人員修正reject評審委員會評審?fù)ㄟ^closed3.3 3.3 軟件軟件缺陷管理缺陷管理缺陷管理基本流程缺陷管理基本流程: :newopenfixedclosed測試人員測試人員開發(fā)人員開發(fā)人員確確認(rèn)認(rèn)缺缺陷陷已經(jīng)修復(fù)已經(jīng)修復(fù)確確認(rèn)認(rèn)修修復(fù)復(fù)發(fā)現(xiàn)錯誤,提交錯誤記錄確認(rèn)錯誤

13、信息確認(rèn)缺陷,修改缺陷狀態(tài)修復(fù)缺陷,提交修復(fù)記錄確認(rèn)修復(fù)信息,確認(rèn)修復(fù)結(jié)果缺陷已經(jīng)修復(fù),關(guān)閉缺陷流程3.3 3.3 軟件軟件缺陷管理缺陷管理 缺陷跟蹤管理是測試工作的一個重要部分缺陷跟蹤管理是測試工作的一個重要部分 測試的目的是為了盡早發(fā)現(xiàn)軟件系統(tǒng)中的缺陷 對缺陷進(jìn)行跟蹤管理,確保每個被發(fā)現(xiàn)的缺陷都能夠及時得到處理是測試工作的一項重要內(nèi)容 缺陷跟蹤管理的目標(biāo)缺陷跟蹤管理的目標(biāo) 確保每個被發(fā)現(xiàn)的缺陷都能夠被解決 收集缺陷數(shù)據(jù)并根據(jù)缺陷趨勢曲線識別測試過程的階段 收集缺陷數(shù)據(jù)并進(jìn)行數(shù)據(jù)分析,作為組織的過程財富3.3 3.3 軟件軟件缺陷管理缺陷管理收集收集缺陷缺陷必須首先收集缺陷數(shù)據(jù),然后才能了解

14、這些缺陷,并且找出如何預(yù)防它們,同時也能領(lǐng)會到如何更好地發(fā)現(xiàn),修復(fù)甚至預(yù)防仍在引入的缺陷可以按照以下步驟收集關(guān)于缺陷的數(shù)據(jù) 為測試和同行評審中發(fā)現(xiàn)的每一個缺陷做一個記錄 對每個缺陷要記錄足夠詳細(xì)的信息,以便以后能更好地了解這個缺陷 分析這些數(shù)據(jù)以找出哪些缺陷類型引起大部分的問題 設(shè)計出發(fā)現(xiàn)和修復(fù)這些缺陷的方法(缺陷排除)3.3 3.3 軟件軟件缺陷管理缺陷管理缺陷管理流程中的各種角色缺陷管理流程中的各種角色角色角色描述描述測試人員進(jìn)行測試的人員,缺陷的發(fā)現(xiàn)者項目經(jīng)理對整個項目負(fù)責(zé),對產(chǎn)品質(zhì)量負(fù)責(zé)的人員開發(fā)人員執(zhí)行開發(fā)任務(wù)的人員,完成 實際的設(shè)計和編碼工作評審委員會對缺陷進(jìn)行最終確認(rèn),在項目成員

15、對缺陷達(dá)不成一致意見時,行使仲裁權(quán)力角色角色測試測試人員人員項目項目經(jīng)理經(jīng)理開發(fā)開發(fā)人員人員評審評審委員委員會會3.3 3.3 軟件軟件缺陷管理缺陷管理缺陷所處的狀態(tài)缺陷所處的狀態(tài)狀態(tài)初始化待分配待修正待驗證待評審關(guān)閉3.3 3.3 軟件軟件缺陷管理缺陷管理缺陷管理的一般流程缺陷管理的一般流程: :3.3 3.3 軟件軟件缺陷管理缺陷管理軟件軟件缺陷流程管理的要點缺陷流程管理的要點 為了保證錯誤的正確性,需要: 有豐富測試經(jīng)驗的測試人員驗證和確認(rèn)發(fā)現(xiàn)的錯誤是否是真正的錯誤 缺陷復(fù)現(xiàn)步驟是否準(zhǔn)確、簡潔、可以重復(fù) 軟件錯誤的確認(rèn)并不總是輕而易舉的事情 由于對軟件設(shè)計具體要求的不了解,對測試報告的個

16、別軟件錯誤,可能無法確認(rèn)是否屬于真正的軟件錯誤,本地化服務(wù)商需要與軟件供應(yīng)商交流并確認(rèn) 每次對錯誤的處理都要保留處理信息 包括處理者姓名,時間,處理方法,處理步驟,錯誤狀態(tài),處理注釋等3.3 3.3 軟件軟件缺陷管理缺陷管理 對錯誤的拒絕不能由程序員單方面決定 應(yīng)該由項目經(jīng)理,測試經(jīng)理和設(shè)計經(jīng)理共同決定 對錯誤延期處理不能由本地戶服務(wù)商決定 應(yīng)該由軟件供應(yīng)商決定 錯誤修復(fù)后必須由報告錯誤的測試人員驗證后,確認(rèn)已修復(fù),才能關(guān)閉3.3 3.3 軟件軟件缺陷管理缺陷管理3.4 軟件軟件缺陷度量、分析與統(tǒng)計缺陷度量、分析與統(tǒng)計在軟件開發(fā)過程中對缺陷度量與分析對于提高軟件開發(fā)和測試在軟件開發(fā)過程中對缺陷

17、度量與分析對于提高軟件開發(fā)和測試效率、預(yù)防效率、預(yù)防缺陷發(fā)生,保證軟件產(chǎn)品質(zhì)量有著十分重要的作用缺陷發(fā)生,保證軟件產(chǎn)品質(zhì)量有著十分重要的作用軟件缺陷度量軟件缺陷度量 缺陷度量是對項目過程中產(chǎn)生的缺陷數(shù)據(jù)進(jìn)行采集和量化,將分散的缺陷數(shù)據(jù)統(tǒng)一管理,使其有序而清晰 缺陷度量是軟件質(zhì)量度量的重要組成部分,它和軟件測試密切相關(guān) 軟件缺陷度量方法較多,從簡單的缺陷計數(shù)到嚴(yán)格的統(tǒng)計建模3.4.1 3.4.1 軟件缺陷度量軟件缺陷度量軟件缺陷度量的主要方法有:軟件缺陷度量的主要方法有: 缺陷密度(缺陷在規(guī)模上的分布)缺陷密度=已知缺陷的數(shù)量/產(chǎn)品規(guī)模 缺陷率(缺陷在時間上的分布)缺陷率=一定時間范圍內(nèi)的缺陷數(shù)

18、/錯誤幾率 缺陷清除率整體缺陷清除率=開發(fā)過程中發(fā)現(xiàn)的所有缺陷數(shù)/發(fā)現(xiàn)的總?cè)毕輸?shù)階段性缺陷清除率=開發(fā)階段清除的缺陷數(shù)/產(chǎn)品潛伏的缺陷總數(shù) 缺陷趨勢通常用缺陷趨勢圖來表示 缺陷發(fā)現(xiàn)率3.4.1 3.4.1 軟件缺陷度量軟件缺陷度量軟件缺陷分析軟件缺陷分析 將軟件開發(fā)各個階段產(chǎn)生的缺陷信息進(jìn)行分類和匯總統(tǒng)計,計算分析指標(biāo),編寫分析報告的活動 用來評估當(dāng)前軟件的可靠性,并且預(yù)測軟件產(chǎn)品可靠性變化,缺陷分析在軟件可靠性評估中占有相當(dāng)大的作用3.4.2 3.4.2 軟件缺陷分析軟件缺陷分析軟件缺陷分析軟件缺陷分析缺陷分析步驟缺陷分析步驟3.4.2 3.4.2 軟件缺陷分析軟件缺陷分析記錄缺陷缺陷分類缺陷預(yù)防分析編寫缺陷分析報告軟件軟件缺陷統(tǒng)計是軟件分析報告中的重要內(nèi)容之一缺陷統(tǒng)計是軟件分析報告中的重要內(nèi)容之一 從統(tǒng)計的角度出發(fā),可以對軟件過程的缺陷進(jìn)行度量軟件功能模塊缺陷分布、缺陷嚴(yán)重程度分布、缺陷類型分布、缺陷率分布、缺陷密度分析、缺陷趨勢分布、缺陷注入率/消除率等 統(tǒng)計的方式表格、散點圖、趨勢圖、因果圖、直方圖、條形圖、排列圖等3.4.3 3.

溫馨提示

  • 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

提交評論