軟件質量與測試_第1頁
軟件質量與測試_第2頁
軟件質量與測試_第3頁
已閱讀5頁,還剩49頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、軟件質量與測試目錄第一篇軟件質量第1章軟件質量概述第2章軟件質量和配置管理第3章軟件質量標準第4章軟件全面質量管理 第5章軟件評審第二篇軟件測試第6章軟件測試技術第7章白盒測試第8章黑盒測試第9章集成測試第10章系統(tǒng)測試第1章軟件測試自動化第12章軟件測試管理第一篇軟件質量1. 1軟件開發(fā)過程1. 1. 1計算機軟件1. 1. 2軟件開發(fā)過程1. 1. 3軟件開發(fā)過程模型1 2軟件質量1 2. 1軟件質量概述IEEE (Institute of Electrical and Electronics Engineers,電氣 和電子工程師協(xié)會)中關于軟件質量的定義是:系統(tǒng)、部件 或者過程滿足規(guī)定

2、需求的程度;系統(tǒng)、部件或者過程滿足客 戶或者用戶需求或期望的程度。1979年 Fisher和Light將軟件質量定義為:表征計算機系統(tǒng)卓 越程度的所有屬性的集合。1982年他們將軟件質量定義修改 為:軟件產品滿足明確需求一組屬性的集合。ANSI(American National Standards Institute,美國國家標準 學會)在1983年給軟件質量下的定義是:與軟件產品滿足規(guī) 定的和隱含的需求能力有關的特征和特性的全體。1994年國際標準化組織ISO8042將軟件質量定義為:反映實 體滿足明確的和隱含的需求的能力和特性的總和。ISO / IEC912將軟件質量定義為:它集合了軟件

3、產品需達到指定 人員和指定要求的總和,指定的要求一般包括了對軟件的性能、 軟件的兼容性、軟件的主體功能等各個方面的描述和定義說明。 軟件質量的優(yōu)劣決定了其軟件產品是否滿足用戶的需求。衡量 軟件質量好壞的標準通常是交付的軟件產品的缺陷數(shù)量的多少。 對軟件產品的質量影響的因素包括人、技術和過程,這些因素 同樣也決定了生產效率的高低。GB/T125O4-1990寸軟件質量定義是:軟件質量是指軟件產品中能 滿足給定需求的各種特性的總和。這些特性稱為質量特性,包 括:功能度、可靠性、易用性、時間經濟性、可維護性和移植 性等。GB/T11457-2006寸軟件質量定義是:1)軟件產品中能滿足給定需求的性質

4、和特性的總體。2)軟件具有所期望的各種屬性的組合程度。3)顧客和用戶覺得軟件滿足其綜合期望的程度。4)確定軟件在使用中將滿足顧客期望要求的程度。1. 2. 2軟件質量保證SQAIEEE中對軟件質量保證的定義是:質量保證是有計 劃和系統(tǒng)性的活動,它對部件和產品滿足確定的技 術需求提供足夠的信心。1. 2. 3軟件質量模型1. McCall質量模型磯性質量特性質量子特性適合性正確性 石擇作性依從性 安全性/易分樁性上二穩(wěn)定性可絡護性金二一易變更性7適應住可移稱悻度量度 螢 宙 用 戶 自A決舄測試性 為安蕉性致性 易替擁性一-一成熱性門靠林=一?;.錯忖恢復性 扇理解性 可月性V二:易學習性7-易

5、操作件 _一闕聞特性 敢率-|資再特性1. 3軟件缺陷1. 3. 1軟件缺陷簡介1. 3. 2軟件缺陷產生的原因1. 3. 3軟件缺陷的嚴重性和優(yōu)先級1. 3. 4軟件缺陷構成1. 3. 5軟件缺陷的預防和修復第2章軟件質量度量和配置管理2. 1軟件質量度量2. 1. 1軟件質量度量概述2. 1. 2軟件質量度量過程中常見的問題軟件質量度量模型第2章軟件質量度量和配置管理2. 2軟件配置管理2. 2. 1軟件配置管理的概述2. 2. 2配置管理的主要內容3. 1軟件質量標準概述3. 1. 1國際標準3. 1. 2國家標準3. 1. 3行業(yè)標準3. 1. 4企業(yè)標準3. 1. 5其他標準3. 2

6、軟件能力成熟度模型CMM3. 2. 1 CMM的含義二十世紀三十年代,經濟學家 Walter Shewart提出了產品 質量的分層控制原理。CMM (Capability Maturity Modelfor Software )即軟件能力成熟度模型,CMM的研究始于1986年1月,為了滿足美國聯(lián)邦政府評估軟件供應商能力 的要求,美國卡內基 梅隆大學軟件工程研究院(SEI )展 開研究,以探索一種保證軟件產品質量、縮短開發(fā)周期 和提高工作效率的軟件工程模式與標準規(guī)范。3. 2. 2 CMM的五個級別級別1初始級。描述了不成熟,或者說是未定義過程的組織, 沒有為軟件開發(fā)和維護提供一個穩(wěn)定的環(huán)境。項

7、目成功具有偶 然性。級別2:可重復級。需要解決需求管理,軟件項目計劃,軟件項 目跟蹤和監(jiān)控,軟件子合同管理,軟件質量保證,軟件配置管 理等過程區(qū)域。級別3:已定義級。需要解決組織級過程焦點,組織級過程定義, 培訓大綱,集成軟件管理,軟件產品工程,組間協(xié)調,同行評 審等過程區(qū)域。級別4 :已管理級。需要解決定量過程管理,軟件質量管理等過 程區(qū)域。企業(yè)為軟件產品和軟件過程制定了量化的質量目標。級別5:優(yōu)化級。需要解決缺陷預防,技術更新管理,過程更改 管理等過程區(qū)域。企業(yè)以防止錯誤為目標,在過程實施之前想 辦法發(fā)現(xiàn)過程中的優(yōu)點和缺點。3. 2. 3國內軟件企業(yè)參與實施 CMM3. 3能力成熟度整合模

8、型CMMI3. 3. 1 CMM的含義CMMI的主要原則:1 強調高層管理者的支持。過程改進往往也是由高層管理者認 識和提出的,大力度的、一致的支持是過程改進的關鍵。2 仔細確定改進目標,首先應該對給定時間內的所能完成的改 進目標進行正確的估計和定義并制定計劃。選擇能夠達至G的目 標和能夠看到對組織的效益。3 選擇最佳實踐,應該基于組織現(xiàn)有的軟件活動和過程財富, 參考其他標準模型,取其精華去其糟粕,得到新的實踐活動模 型。4過程改進要與組織的商務目標一致,與發(fā)展戰(zhàn)略緊密結合。3. 3. 2 CMMI的基本內容3. 3. 3 CMM與CMMI的區(qū)別3. 4 ISO9000軟件質量標準3. 4.

9、1 ISO9OO0勺主要內容3. 4. 2 IS09000和CMM/CMMI 的關系3.5.1IEE質量標準3.5.2SPICE3.5.3ISO/IEC第4章 軟件全面質量管理4.1軟件全面質量管理概述4. 1. 1質量管理和全面質量管理質量管理是指在質量方面指揮和控制組織的協(xié)調的活動。質量 管理,通常包括制定質量方針和質量目標以及質量策劃、質量 控制、質量保證和質量改進。全面質量管理(Total Quality Ma nageme nt,TQM), 20 世紀 50年代以來,隨著生產力的迅速發(fā)展和科學技術的日新月異丄 人們對產品的質量從注重產品的一般性能發(fā)展為注重產品的耐 用性、可靠性、安全

10、性、維修性和經濟性等。在生產技術和企 業(yè)管理中要求運用系統(tǒng)的觀點來研究質量問題。在管理理論上 也有新的發(fā)展,突出重視人的因素,強調依靠企業(yè)全體人員的 努力來保證質量此外,還有“保護消費者利益”運動的興起, 企業(yè)之間市場競爭越來越激烈。4. 1. 2軟件全面質量管理的含義全面質量管理由于適應科技、經濟、社會的發(fā)展趨 勢,得到了迅速發(fā)展,在實踐運用中取得了豐碩成果。 全面質量管理強調系統(tǒng)、集成、統(tǒng)一和全員、全面、全 過程的觀點。其核心思想是,企業(yè)的一切活動都圍繞著 質量來進行,同時強調最佳經濟和客戶滿意的約束條 件。軟件全面質量管理是在使企業(yè)利潤最大化的水平上, 并充分滿足用戶明確或隱含要求的條件

11、下,進行軟件的 規(guī)劃、分析、設計、實施和維護活動,把研發(fā)團隊的質 量控制和質量設計活動構成為一體的一種有效管理體 系。4. 2軟件全面質量管理的步驟和評審本節(jié)主要討論的軟件全面質量管理的分為事前質量管理、事中 質量管理和事后質量管理。軟件全面質量管理中的評審工作由 對軟件項目計劃書進行評審、對需求分析說明書進行評審、對 概要設計說明書進行評審、對總體設計進行評審和測試評審五 個部分組成。4. 2. 1軟件全面質量管理的步驟1 事前質量管理2. 事中質量管理3. 事后質量管理4. 2. 2軟件全面質量管理中的評審4. 3軟件全面質量管理中的團隊和質量控制 軟件開發(fā)已經是一個團隊工程項目,任何在軟

12、件全 面質量管理中進行的團隊管理,以及軟件全面質量 管理中的質量管控是本節(jié)主要討論的內容。4. 3. 1軟件全面質量管理中的團隊4. 3. 2軟件全面質量管理中的質量控制第5章軟件評審5. 1軟件評審概述1994年 IEEE寸軟件評審下的定義是:軟件評審是一種對軟件元 素所作的正式的評審活動。其目的是檢驗軟件開發(fā)和軟件測試 各個階段的工作是否齊全、規(guī)范,各階段產品是否到達了規(guī)定 的技術要求和質量要求,以決定是否可以轉入下一階段的工作。 M.E. Fagan在軟件評審方面有突出的貢獻,他在總結大量的實 踐后得到的結論是,用人們熟悉的運行程序的測試方法只能發(fā) 現(xiàn)五分之一的故障,而認真的評審可以發(fā)現(xiàn)

13、五分之四的故障。Karl E. Wiegers (卡爾 威格)對軟件評審的闡述:不管你有沒 有發(fā)現(xiàn)它們,缺陷總存在,問題只是你最終發(fā)現(xiàn)它們時,需要 多少糾正成本,評審的投入把質量成本從昂貴的、后期返工轉 變?yōu)樵缙诘娜毕莅l(fā)現(xiàn)。5. 2軟件評審的主要內容5. 2. 1軟件評審目標5. 2. 2軟件評審過程5. 2. 3軟件評審原則5. 2. 4軟件評審的特點5. 3軟件評審的幾個階段5. 3. 1需求評審5. 3. 2概要設計評審5. 3. 3詳細設計評審5. 3. 4數(shù)據(jù)庫設計評審5. 3. 5測試評審5. 4避免進入評審誤區(qū)誤區(qū)一:評審參與者不了解評審過程誤區(qū)二:評審人員評論開發(fā)人員,而不是產

14、品 誤區(qū)三:評審沒有被安排進入項目計劃 誤區(qū)四:評審會議變成了問題解決方案討論會 誤區(qū)五:評審人員事先對評審材料沒有足夠了解 誤區(qū)六:評審人員關注于非實質性問題 誤區(qū)七:忽視細節(jié)5. 5軟件評審中的角色和職能第二篇軟件測試6 . 1軟件測試的必要性6 . 2軟件測試概述1. IEEE合軟件測試下的定義1983年IEEE (國際電子電氣工程師協(xié)會)提出的軟件工程標準術語中給軟 件測試下的定義是:使用人工或自動手段來運行或測定某個系統(tǒng)的過程, 其目的在于檢驗它是否滿足規(guī)定的需求或是弄清預期結果與實際結果之問 的差別。2. G. J. Myers給軟件測試下的定義G. J. Myers在其經典論著軟

15、件測試的藝術中對軟件測試提出如下觀點: 軟件測試是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程; 測試是為了證明程序有錯,而不是證明程序無錯; 一個好的測試用例在于他能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯誤; 一個成功的測試是發(fā)現(xiàn)了至今未發(fā)現(xiàn)的錯誤的測試。3. 從軟件質量保證的角度給軟件測試下的定義從軟件質量保證的角度看,軟件測試是一種重要的軟件質量保證活動,其 動機是通過一些經濟、有效的方法,捕捉軟件中的錯誤,從而達到保證軟 件內在質量的目的。6. 2.1軟件測試過程模型下面是幾種典型的軟件測試模型,有V模型、W模型 和X模型,這些模型從不同程度反應了軟件開發(fā)與測 試關系。6. 2. 2軟件測試用例6 . 2. 3軟件測試技

16、術方法6 . 2. 4軟件測試的復雜性與經濟性6. 3軟件測試過程單元測試醴單元測試單元測試模塊設計信息F的己軟件需求F的 認 確 己試 測件 tt已測系統(tǒng)測試驗收測試其它M統(tǒng)元素6. 4軟件測試的原則與誤區(qū)軟件測試是一項復雜的系統(tǒng)工程,在測試過程中一 定要遵守一些原則,同時避免陷入一些誤區(qū)。6 . 4. 1軟件測試的原則6 . 4. 2軟件測試的誤區(qū)6. 5軟件測試的發(fā)展軟件測試作為信息產業(yè)的重要分支在我國發(fā)展十分 迅速,并且業(yè)內對軟件測試的發(fā)展也有著樂觀和積 極的態(tài)度??梢赃@樣說,軟件測試職業(yè)前景也是非 常美好。6. 5. 1軟件測試的發(fā)展歷程6 . 5. 2我國軟件測試的發(fā)展歷程6. 5

17、. 3軟件測試外包6. 6軟件測試工作6. 6.1軟件測試工程師6 . 6. 2軟件測試工作特點第7章白盒測試7. 1白盒測試概述7. 1. 1白盒測試含義白盒測試(White Box Testing )又稱結構測試(Structural Test ing )、透明盒測試、邏輯驅動測試或基于代碼的測 試。白盒測試是一種測試用例設計方法,“盒子”指的 是被測試的軟件,“白盒”指的是盒子是可視的,你清 楚盒子內部的東西以及里面是如何運作的。白盒測試法 全面了解程序內部邏輯結構、對所有邏輯路徑進行測試。 在使用這種方法時,測試者必須檢查程序的內部結構, 從檢查程序的邏輯著手,得出測試數(shù)據(jù)。7. 1.

18、 2靜態(tài)測試的和動態(tài)測試7. 1. 3軟件測試與軟件調試的區(qū)別7. 2邏輯驅動覆蓋測試六種覆蓋標準:語句覆蓋、判定覆蓋、條件覆蓋、判定/條件覆蓋、條件組合覆蓋和路徑覆蓋發(fā)現(xiàn)錯誤的能力呈 由弱至強的變化。語句覆蓋每條語句至少執(zhí)行一次。判 定覆蓋每個判定的每個分支至少執(zhí)行一次。條件覆蓋每 個判定的每個條件應取到各種可能的值。判定/條件覆蓋同時滿足判定覆蓋和條件覆蓋。條件組合覆蓋每個判定 中各條件的每一種組合至少出現(xiàn)一次。路徑覆蓋使程序 中每一條可能的路徑至少執(zhí)行一次。7. 3其他幾種白盒測試7. 3. 1程序插裝測試7. 3. 2程序變異測試7. 3. 3循環(huán)測試7. 4代碼檢查代碼檢查(Code

19、 Inspection )的目的是確保代碼編程標準 有效的被執(zhí)行,提高代碼質量,減輕動態(tài)測試負擔,提 高代碼可重復使用,降低項目風險與經費增加程序的可 理解性,降低維護成本。代碼檢查是靜態(tài)測試的一種, 而靜態(tài)測試則是為動態(tài)測試做準備。7. 4. 1桌前檢查和代碼走查7. 4. 2代碼評審和同行評審7. 4. 3基于缺陷模式測試第8章黑盒測試& 1黑盒測試概述& 1. 1黑盒測試含義黑盒測試(Black Box Testing )也稱功能測試,它是通過 測試來檢測每個功能是否都能正常使用。在測試中,把 程序看作一個不能打開的黑盒子,在完全不考慮程序內 部結構和內部特性的情況下,在程序接口進行測試,它 只檢查程序功能是否按照需求規(guī)格說明書的規(guī)定正常使 用,程序是否能適當?shù)亟邮蛰斎霐?shù)據(jù)而產生正確的輸出 信息。黑盒測試著眼于程序外部結構,不考慮內部邏輯 結構,主要針對軟件界面和軟件功能進行

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論