軟件質(zhì)量和測試概述(PPT36頁).ppt_第1頁
軟件質(zhì)量和測試概述(PPT36頁).ppt_第2頁
軟件質(zhì)量和測試概述(PPT36頁).ppt_第3頁
軟件質(zhì)量和測試概述(PPT36頁).ppt_第4頁
軟件質(zhì)量和測試概述(PPT36頁).ppt_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第1章 軟件質(zhì)量和測試概述,內(nèi)容提要,1.1軟件特征與軟件工程 1.1.1軟件分類 1.1.2層次化軟件工程 1.1.3軟件范型的轉(zhuǎn)變 1.1.4現(xiàn)代軟件開發(fā) 1.2軟件質(zhì)量 1.2.1質(zhì)量概念 1.2.2質(zhì)量運(yùn)動 1.2.3軟件質(zhì)量概念 1.2.4軟件質(zhì)量評價(jià)體系與標(biāo)準(zhǔn) 1.3軟件測試與可靠性概述 1.3.1軟件測試的意義 1.3.2軟件測試的定義 1.3.3軟件測試方法 1.3.4軟件測試自動化 1.3.5軟件缺陷的修復(fù)費(fèi)用 1.4 軟件質(zhì)量保證與測試人才的特點(diǎn) 1.4.1現(xiàn)代軟件研發(fā)對軟件人才的需求 1.4.2優(yōu)秀的軟件測試員應(yīng)具備的素質(zhì) 1.5小結(jié),1.1軟件特征與軟件工程,要理解軟件

2、的含義并全面地理解軟件工程,我們首先要明確軟件的特征,并據(jù)此知道軟件與人類建造的其它事物之間的區(qū)別。 IEEE定義對軟件的定義如下: 軟件是計(jì)算機(jī)程序、規(guī)程以及可能的相關(guān)文檔和運(yùn)行計(jì)算機(jī)系統(tǒng)需要的數(shù)據(jù)。軟件包含計(jì)算機(jī)程序、規(guī)程、文檔和軟件系統(tǒng)運(yùn)行所必需的數(shù)據(jù)四個(gè)部分。,軟件具有與硬件完全不同的特征,軟件是開發(fā)產(chǎn)生的,而不是用傳統(tǒng)方法制造。 軟件不會像硬件一樣有磨損。 很多軟件不能通過已有構(gòu)件組裝,只能自己定義。,硬件、軟件失效曲線圖,1.1.1軟件分類,當(dāng)前的計(jì)算機(jī)軟件分為七個(gè)大類,使得軟件工程正面臨持續(xù)的挑戰(zhàn): 系統(tǒng)軟件 應(yīng)用軟件 Web應(yīng)用軟件 工程和科學(xué)軟件 嵌入式軟件 產(chǎn)品線軟件 人工

3、智能軟件,新的挑戰(zhàn)也逐漸顯現(xiàn)出來,普適計(jì)算 網(wǎng)絡(luò)資源 開源軟件 新經(jīng)濟(jì),1.1.2層次化軟件工程,Fritz Bauer在NATO(北大西洋公約組織)會議上給出的定義仍是我們進(jìn)一步展開討論的基礎(chǔ): 軟件工程:是為了經(jīng)濟(jì)地獲得可靠的和能在實(shí)際機(jī)器上高效運(yùn)行的軟件而建立和使用的好的工程原則。 美國電氣和電子工程師協(xié)會(Institute of Electrical and Electronics Engineers,IEEE)給出了一個(gè)更加綜合的定義: 軟件工程:(1)將系統(tǒng)化的、規(guī)范的、可度量的方法應(yīng)用于軟件的開發(fā)、運(yùn)行和維護(hù)的過程,即將工程化應(yīng)用于軟件中。(2)(1)中所述方法的研究。,軟件過

4、程、軟件方法和軟件工具,軟件工程的視圖,拋開要工程化的實(shí)體,我們必須先回答下列問題: 要解決的問題是什么? 要用于解決該問題的實(shí)體具有什么特點(diǎn)? 如何實(shí)現(xiàn)該實(shí)體?其解決方案是怎樣的? 如何建造該實(shí)體? 采用什么方法去發(fā)現(xiàn)該實(shí)體設(shè)計(jì)和建造過程中產(chǎn)生的錯(cuò)誤? 當(dāng)該實(shí)體的用戶要求修改、適應(yīng)和增強(qiáng)時(shí),如何支持這些活動?,三個(gè)階段,我們可以把與軟件工程相關(guān)的工作分為三個(gè)階段,其中的每個(gè)階段能夠回答上述的一個(gè)或多個(gè)問題: 定義階段針對“做什么” 開發(fā)階段針對“如何做” 維護(hù)階段針對“改變”,補(bǔ)充說明,還有很多保護(hù)性活動用來補(bǔ)充說明在軟件工程的一般視圖中的各個(gè)階段和相關(guān)步驟,這些典型的貫穿于整個(gè)軟件過程中的

5、活動包括: 軟件項(xiàng)目追蹤和控制 正式的技術(shù)復(fù)審 軟件質(zhì)量保證 軟件配置管理 文檔的準(zhǔn)備和產(chǎn)生 可復(fù)用管理 測試 風(fēng)險(xiǎn)管理,1.1.3軟件范型的轉(zhuǎn)變,1.1.4現(xiàn)代軟件開發(fā),傳統(tǒng)軟件開發(fā)和現(xiàn)代軟件開發(fā) 軟件團(tuán)隊(duì)與軟件開發(fā)人員的培養(yǎng),1.2軟件質(zhì)量,有些軟件開發(fā)者仍然相信軟件質(zhì)量是在編碼之后才應(yīng)該開始擔(dān)心的事情。這是荒謬的,因?yàn)檐浖|(zhì)量保證(Software Quality Assurance,SQA)是一種應(yīng)用于整個(gè)軟件過程的保護(hù)性活動,它包括: 一種質(zhì)量管理方法, 有效的軟件工程技術(shù)(方法和工具) 在整個(gè)軟件過程中采用的正式技術(shù)復(fù)審 一種多層次的測試策略 對軟件文檔及其修改的控制 保證軟件遵從

6、軟件開發(fā)標(biāo)準(zhǔn)的規(guī)程 度量和報(bào)告機(jī)制,1.2.1質(zhì)量概念,我們應(yīng)從以下幾個(gè)方面考慮軟件質(zhì)量: 軟件結(jié)構(gòu)方面 功能與性能方面 開發(fā)標(biāo)準(zhǔn)與文檔方面,1.2.2質(zhì)量運(yùn)動,全面質(zhì)量管理通常都包括以下4個(gè)步驟: 第1步是指一個(gè)連續(xù)的過程改進(jìn)系統(tǒng),其目標(biāo)在于開發(fā)一個(gè)看的見的、可重復(fù)的和可度量的軟件過程。 第2步只第1步完成之后才可啟動。這一步將檢查影響過程的其它因素,并優(yōu)化這些因素對過程的影響。例如,軟件過程可能受到高層職員流動的影響,而該影響則是公司內(nèi)部不斷重組而引起的。一個(gè)穩(wěn)定的公司組織會對軟件質(zhì)量的提高帶來很大的幫助,所以第2步可以幫助管理者對公司重組方式提出建議。 前面兩個(gè)步驟關(guān)注的是過程,第3步(

7、或稱為“第五感覺”)則關(guān)注軟件產(chǎn)品的用戶,它是通過檢查用戶使用產(chǎn)品的方式,而導(dǎo)致產(chǎn)品本身的改進(jìn)和潛在地改進(jìn)產(chǎn)品的生產(chǎn)過程。 第4步將管理者的注意從當(dāng)前的產(chǎn)品上移開并拓寬。作為一個(gè)面向商業(yè)的步驟,該步驟通過觀察產(chǎn)品的市場用途,來尋找產(chǎn)品在相關(guān)領(lǐng)域中的發(fā)展機(jī)會。在軟件領(lǐng)域,第4步可以被視為一種發(fā)現(xiàn)有利可圖的新產(chǎn)品,或視作尋找當(dāng)前計(jì)算機(jī)系統(tǒng)的副產(chǎn)品用途的努力。,1.2.3軟件質(zhì)量概念,IEEE關(guān)于軟件質(zhì)量的定義:軟件質(zhì)量是 系統(tǒng)、部件或者過程滿足規(guī)定需求的程度。 系統(tǒng)、部件或者過程滿足顧客或者用戶需要或期望的程度。 該定義相對客觀,強(qiáng)調(diào)了產(chǎn)品(或服務(wù))和客戶/社會需求的一致性。 ANSI關(guān)于軟件質(zhì)量

8、的定義:按照ANSI(American National Standards Institute,美國國家標(biāo)準(zhǔn)學(xué)會)在1983年的標(biāo)準(zhǔn)陳述,軟件質(zhì)量定義為“與軟件產(chǎn)品滿足規(guī)定的和隱含的需求的能力有關(guān)的特征和特性的全體”。具體包括 軟件產(chǎn)品中能滿足用戶給定需求的全部特性的集合, 軟件具有所期望的各種屬性組合的程度, 用戶主觀得出的軟件是否滿足其綜合期望的程度, 決定所用軟件在使用中將滿足其綜合期望程度的軟件合成特性。,6個(gè)主要特征,我們把各類軟件綜合起來看,可以列出下列6個(gè)主要特征: 功能性:軟件實(shí)現(xiàn)的功能達(dá)到要求的和隱含的用戶需求以及設(shè)計(jì)規(guī)范的程度, 可靠性:軟件在指定條件和特定時(shí)間段內(nèi)維持性

9、能的能力程度, 易使用性:用戶使用該軟件所付出的學(xué)習(xí)精力, 效率:在指定條件下,軟件功能與所占用資源之間的比值, 可維護(hù)性:當(dāng)發(fā)現(xiàn)錯(cuò)誤、運(yùn)行環(huán)境改變或客戶需求改變時(shí),程序能修改的容易程度, 可移植性:將軟件從一種環(huán)境移入另一種環(huán)境的容易程度。,1.2.4軟件質(zhì)量評價(jià)體系與標(biāo)準(zhǔn),IEEE給出軟件質(zhì)量保證的定義,軟件質(zhì)量保證(SQA)是: 一種有計(jì)劃的,系統(tǒng)化的行動模式,它是為項(xiàng)目或者產(chǎn)品符合己有技術(shù)需求提供充分信任所必需的。 設(shè)計(jì)用來評價(jià)開發(fā)或者制造產(chǎn)品的過程的一組活動,與質(zhì)量控制有區(qū)別。,質(zhì)量保證與質(zhì)量控制的區(qū)別,QA是對人、對過程,致力于使管理者、顧客和其他相關(guān)方相信有能力滿足質(zhì)量要求,更多

10、的是體現(xiàn)在流程制度上; QC是對人事、對物,直接致力于滿足質(zhì)量要求,體現(xiàn)在質(zhì)量把關(guān)的具體工作過程中。,SQA活動,為項(xiàng)目準(zhǔn)備SQA計(jì)劃。 參與開發(fā)項(xiàng)目的軟件過程描述。 評審各項(xiàng)軟件工程活動,對其是否符合定義好的軟件過程進(jìn)行核實(shí)。 審計(jì)指定的軟件工作產(chǎn)品,對其是否符合事先定義好的需求進(jìn)行核實(shí)。 確保軟件工作及產(chǎn)品中的偏差已記錄在案,并根據(jù)預(yù)定的規(guī)程進(jìn)行處理。 記錄所有不符合的部分并報(bào)告給高級領(lǐng)導(dǎo)者。,SQA舉例,SQA實(shí)例,1.3軟件測試與可靠性概述,1.3.1軟件測試的意義 為什么要進(jìn)行軟件測試? 視頻 Bug故事 視頻 PIE模型 Bug-Grace Hopper deBug,1.3軟件測試

11、與可靠性概述,1.3.1軟件測試的意義 迪斯尼獅子王缺陷 英特爾浮點(diǎn)除法缺陷 人造隕石坑缺陷 程序員的千年蟲問題 Windows的輸入法漏洞 愛國者導(dǎo)彈缺陷,1.3.2軟件測試的定義,1983年,IEEE在提出的軟件測試文檔標(biāo)準(zhǔn)(IEEE Standard For Software Test Document),即IEEE 829-1983中對軟件測試進(jìn)行了準(zhǔn)確的定義: 軟件測試是使用人工或自動手段來運(yùn)行或測定某個(gè)系統(tǒng)的過程,檢驗(yàn)它是否滿足規(guī)定的需求或者弄清預(yù)期結(jié)果與實(shí)際結(jié)果之間的差別。 IEEE在1990年頒布的軟件工程標(biāo)準(zhǔn)術(shù)語集中沿用了這一概念,該概念非常明確的提出了軟件測試以檢驗(yàn)是否滿足

12、需求為目標(biāo)。 其次,G. J. Myers在其經(jīng)典論著軟件測試的藝術(shù)中對軟件測試提出如下觀點(diǎn): 測試是程序的執(zhí)行過程,目的在于發(fā)現(xiàn)錯(cuò)誤, 一個(gè)好的測試用例可以發(fā)現(xiàn)至今尚未發(fā)現(xiàn)的錯(cuò)誤, 一個(gè)成功的測試能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯(cuò)誤。,1.3.3軟件測試方法,1. 靜態(tài)方法和動態(tài)方法 2. 黑盒測試、白盒測試和灰盒測試 3. 基于軟件開發(fā)階段的測試方法 需求測試 單元測試 集成測試 性能測試 壓力測試 容量測試 配置測試 回歸測試 安裝測試 安全性測試,1.3.4軟件測試自動化,白盒測試工具 功能測試工具 負(fù)載壓力測試工具 測試管理工具,1.3.5軟件缺陷的修復(fù)費(fèi)用,1.4軟件質(zhì)量保證與測試人才的特點(diǎn),1

13、.4.1現(xiàn)代軟件研發(fā)對軟件人才的需求,研發(fā)方法的差別,現(xiàn)代軟件研發(fā)對軟件人才提出的要求,專業(yè)基礎(chǔ)和創(chuàng)新能力 具備主人翁精神 良好的團(tuán)隊(duì)精神 從錯(cuò)誤中學(xué)習(xí)的能力,1.4.2優(yōu)秀的軟件測試員應(yīng)具備的素質(zhì),軟件測試員是探索者: 軟件測試員不會害怕進(jìn)入陌生環(huán)境,他們喜歡拿到新的軟件,安裝在自己的機(jī)器上并觀看結(jié)果。 軟件測試員是故障排除員: 軟件測試員善于發(fā)現(xiàn)問題的癥結(jié),他們喜歡解謎。 軟件測試員不放過蛛絲馬跡: 軟件測試員總在不停地嘗試。他們可能會碰到轉(zhuǎn)瞬即逝或者難以證實(shí)的軟件缺陷,當(dāng)然,他們不會當(dāng)作視偶然而輕易放過,而會想盡一切可能去發(fā)現(xiàn)它們。 軟件測試員具有創(chuàng)造性: 這是對測試是顯而易見的。軟件測

14、試員的工作是要想出富有創(chuàng)意審視超常的手段來尋找缺陷。 軟件測試員是追求完美者: 軟件測試員力求完美,但是當(dāng)知道某些無法企及時(shí),他們不去苛求,而是盡力接近目標(biāo)。 軟件測試員判斷準(zhǔn)確: 軟件測試員要判斷測試內(nèi)容、測試時(shí)間、以及看到的問題是否是真正的缺陷。 軟件測試員注重策略和外交: 軟件測試員常常帶來的壞消息。他們必須告訴程序員,你的程序很糟糕。好的軟件測試員知道以怎樣的策略來溝通這些問題,他們也能夠和有時(shí)不夠冷靜的程序員合作。 軟件測試員善于說服: 軟件測試員找出的缺陷有時(shí)會被認(rèn)為不重要且不用修復(fù)。這時(shí)測試員要善于清晰地表達(dá)自己的觀點(diǎn),說明軟件缺陷為何需要修復(fù),并且推進(jìn)缺陷的修復(fù)。,測試人員和開發(fā)人員的交流,1.5小結(jié),從上面討論的結(jié)果可知,軟件質(zhì)量保證是建立一套有計(jì)劃,有系統(tǒng)的方法,來向管理層保證擬定出的標(biāo)準(zhǔn)、步驟、實(shí)踐和方法能夠正確地被所有項(xiàng)目所采用。軟件質(zhì)量保證的

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論