軟件質(zhì)量和測試的背景課件_第1頁
軟件質(zhì)量和測試的背景課件_第2頁
軟件質(zhì)量和測試的背景課件_第3頁
軟件質(zhì)量和測試的背景課件_第4頁
軟件質(zhì)量和測試的背景課件_第5頁
已閱讀5頁,還剩55頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第1章軟件質(zhì)量和測試的背景1第1章軟件質(zhì)量和測試的背景1內(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ì)量運動 1.2.3 軟件質(zhì)量概念 1.2.4 軟件質(zhì)量評價體系與標(biāo)準(zhǔn) 1.3 軟件測試與可靠性概述 1.3.1 軟件測試的意義 1.3.2 軟件測試的定義 1.3.3 軟件測試方法 1.3.4 軟件測試自動化 1.3.5 軟件缺陷的修復(fù)費用 1.4 軟件質(zhì)量保證與測試人才的特點 1.4.1 現(xiàn)代軟件研發(fā)對軟件人才的需求 1.4.2 優(yōu)秀的軟件測試員應(yīng)具備的素質(zhì) 1.5 小結(jié) 2內(nèi)容提要1.1 軟件特征與軟件工程 21.1 軟件特征與軟件工程要理解軟件的含義并全面地理解軟件工程,我們首先要明確軟件的特征,并據(jù)此知道軟件與人類建造的其它事物之間的區(qū)別。IEEE定義對軟件的定義如下:軟件是計算機程序、規(guī)程以及可能的相關(guān)文檔和運行計算機系統(tǒng)需要的數(shù)據(jù)。軟件包含計算機程序、規(guī)程、文檔和軟件系統(tǒng)運行所必需的數(shù)據(jù)四個部分。31.1 軟件特征與軟件工程要理解軟件的含義并全面地理解軟件工軟件具有與硬件完全不同的特征軟件是開發(fā)產(chǎn)生的,而不是用傳統(tǒng)方法制造。軟件不會像硬件一樣有磨損。很多軟件不能通過已有構(gòu)件組裝,只能自己定義。4軟件具有與硬件完全不同的特征軟件是開發(fā)產(chǎn)生的,而不是用傳統(tǒng)方硬件、軟件失效曲線圖5硬件、軟件失效曲線圖51.1.1 軟件分類當(dāng)前的計算機軟件分為七個大類,使得軟件工程正面臨持續(xù)的挑戰(zhàn):系統(tǒng)軟件應(yīng)用軟件Web應(yīng)用軟件工程和科學(xué)軟件嵌入式軟件產(chǎn)品線軟件人工智能軟件61.1.1 軟件分類當(dāng)前的計算機軟件分為七個大類,使得軟件工新的挑戰(zhàn)也逐漸顯現(xiàn)出來普適計算網(wǎng)絡(luò)資源開源軟件新經(jīng)濟7新的挑戰(zhàn)也逐漸顯現(xiàn)出來普適計算71.1.2 層次化軟件工程FritzBauer在NATO(北大西洋公約組織)會議上給出的定義仍是我們進一步展開討論的基礎(chǔ):軟件工程:是為了經(jīng)濟地獲得可靠的和能在實際機器上高效運行的軟件而建立和使用的好的工程原則。美國電氣和電子工程師協(xié)會(InstituteofElectricalandElectronicsEngineers,IEEE)給出了一個更加綜合的定義:軟件工程:(1)將系統(tǒng)化的、規(guī)范的、可度量的方法應(yīng)用于軟件的開發(fā)、運行和維護的過程,即將工程化應(yīng)用于軟件中。(2)(1)中所述方法的研究。81.1.2 層次化軟件工程FritzBauer在NATO(軟件過程、軟件方法和軟件工具9軟件過程、軟件方法和軟件工具9軟件工程的視圖拋開要工程化的實體,我們必須先回答下列問題:要解決的問題是什么?要用于解決該問題的實體具有什么特點?如何實現(xiàn)該實體?其解決方案是怎樣的?如何建造該實體?采用什么方法去發(fā)現(xiàn)該實體設(shè)計和建造過程中產(chǎn)生的錯誤?當(dāng)該實體的用戶要求修改、適應(yīng)和增強時,如何支持這些活動?10軟件工程的視圖拋開要工程化的實體,我們必須先回答下列問題:三個階段我們可以把與軟件工程相關(guān)的工作分為三個階段,其中的每個階段能夠回答上述的一個或多個問題:定義階段針對“做什么”開發(fā)階段針對“如何做”維護階段針對“改變”11三個階段我們可以把與軟件工程相關(guān)的工作分為三個階段,其中的每補充說明還有很多保護性活動用來補充說明在軟件工程的一般視圖中的各個階段和相關(guān)步驟,這些典型的貫穿于整個軟件過程中的活動包括:軟件項目追蹤和控制正式的技術(shù)復(fù)審軟件質(zhì)量保證軟件配置管理文檔的準(zhǔn)備和產(chǎn)生可復(fù)用管理測試風(fēng)險管理12補充說明還有很多保護性活動用來補充說明在軟件工程的一般視圖中1.1.3 軟件范型的轉(zhuǎn)變131.1.3 軟件范型的轉(zhuǎn)變131.1.4 現(xiàn)代軟件開發(fā)傳統(tǒng)軟件開發(fā)和現(xiàn)代軟件開發(fā)軟件團隊與軟件開發(fā)人員的培養(yǎng)141.1.4 現(xiàn)代軟件開發(fā)傳統(tǒng)軟件開發(fā)和現(xiàn)代軟件開發(fā)141.2 軟件質(zhì)量有些軟件開發(fā)者仍然相信軟件質(zhì)量是在編碼之后才應(yīng)該開始擔(dān)心的事情。這是荒謬的,因為軟件質(zhì)量保證(SoftwareQualityAssurance,SQA)是一種應(yīng)用于整個軟件過程的保護性活動,它包括:一種質(zhì)量管理方法,有效的軟件工程技術(shù)(方法和工具)在整個軟件過程中采用的正式技術(shù)復(fù)審一種多層次的測試策略對軟件文檔及其修改的控制保證軟件遵從軟件開發(fā)標(biāo)準(zhǔn)的規(guī)程度量和報告機制151.2 軟件質(zhì)量有些軟件開發(fā)者仍然相信軟件質(zhì)量是在編碼之后才1.2.1 質(zhì)量概念我們應(yīng)從以下幾個方面考慮軟件質(zhì)量:軟件結(jié)構(gòu)方面功能與性能方面開發(fā)標(biāo)準(zhǔn)與文檔方面161.2.1 質(zhì)量概念我們應(yīng)從以下幾個方面考慮軟件質(zhì)量:161.2.2 質(zhì)量運動全面質(zhì)量管理通常都包括以下4個步驟:第1步是指一個連續(xù)的過程改進系統(tǒng),其目標(biāo)在于開發(fā)一個看的見的、可重復(fù)的和可度量的軟件過程。第2步只第1步完成之后才可啟動。這一步將檢查影響過程的其它因素,并優(yōu)化這些因素對過程的影響。例如,軟件過程可能受到高層職員流動的影響,而該影響則是公司內(nèi)部不斷重組而引起的。一個穩(wěn)定的公司組織會對軟件質(zhì)量的提高帶來很大的幫助,所以第2步可以幫助管理者對公司重組方式提出建議。前面兩個步驟關(guān)注的是過程,第3步(或稱為“第五感覺”)則關(guān)注軟件產(chǎn)品的用戶,它是通過檢查用戶使用產(chǎn)品的方式,而導(dǎo)致產(chǎn)品本身的改進和潛在地改進產(chǎn)品的生產(chǎn)過程。第4步將管理者的注意從當(dāng)前的產(chǎn)品上移開并拓寬。作為一個面向商業(yè)的步驟,該步驟通過觀察產(chǎn)品的市場用途,來尋找產(chǎn)品在相關(guān)領(lǐng)域中的發(fā)展機會。在軟件領(lǐng)域,第4步可以被視為一種發(fā)現(xiàn)有利可圖的新產(chǎn)品,或視作尋找當(dāng)前計算機系統(tǒng)的副產(chǎn)品用途的努力。171.2.2 質(zhì)量運動全面質(zhì)量管理通常都包括以下4個步驟:171.2.3 軟件質(zhì)量概念I(lǐng)EEE關(guān)于軟件質(zhì)量的定義:軟件質(zhì)量是系統(tǒng)、部件或者過程滿足規(guī)定需求的程度。系統(tǒng)、部件或者過程滿足顧客或者用戶需要或期望的程度。該定義相對客觀,強調(diào)了產(chǎn)品(或服務(wù))和客戶/社會需求的一致性。ANSI關(guān)于軟件質(zhì)量的定義:按照ANSI(AmericanNationalStandardsInstitute,美國國家標(biāo)準(zhǔn)學(xué)會)在1983年的標(biāo)準(zhǔn)陳述,軟件質(zhì)量定義為“與軟件產(chǎn)品滿足規(guī)定的和隱含的需求的能力有關(guān)的特征和特性的全體”。具體包括軟件產(chǎn)品中能滿足用戶給定需求的全部特性的集合,軟件具有所期望的各種屬性組合的程度,用戶主觀得出的軟件是否滿足其綜合期望的程度,決定所用軟件在使用中將滿足其綜合期望程度的軟件合成特性。181.2.3 軟件質(zhì)量概念I(lǐng)EEE關(guān)于軟件質(zhì)量的定義:軟件質(zhì)量6個主要特征我們把各類軟件綜合起來看,可以列出下列6個主要特征:功能性:軟件實現(xiàn)的功能達到要求的和隱含的用戶需求以及設(shè)計規(guī)范的程度,可靠性:軟件在指定條件和特定時間段內(nèi)維持性能的能力程度,易使用性:用戶使用該軟件所付出的學(xué)習(xí)精力,效率:在指定條件下,軟件功能與所占用資源之間的比值,可維護性:當(dāng)發(fā)現(xiàn)錯誤、運行環(huán)境改變或客戶需求改變時,程序能修改的容易程度,可移植性:將軟件從一種環(huán)境移入另一種環(huán)境的容易程度。196個主要特征我們把各類軟件綜合起來看,可以列出下列6個主要特1.2.4 軟件質(zhì)量評價體系與標(biāo)準(zhǔn)IEEE給出軟件質(zhì)量保證的定義,軟件質(zhì)量保證(SQA)是:一種有計劃的,系統(tǒng)化的行動模式,它是為項目或者產(chǎn)品符合己有技術(shù)需求提供充分信任所必需的。設(shè)計用來評價開發(fā)或者制造產(chǎn)品的過程的一組活動,與質(zhì)量控制有區(qū)別。201.2.4 軟件質(zhì)量評價體系與標(biāo)準(zhǔn)IEEE給出軟件質(zhì)量保證的1.3 軟件測試與可靠性概述1.3.1 軟件測試的意義迪斯尼獅子王缺陷英特爾浮點除法缺陷人造隕石坑缺陷程序員的千年蟲問題Windows的輸入法漏洞愛國者導(dǎo)彈缺陷211.3 軟件測試與可靠性概述1.3.1 軟件測試的意義211.3.2 軟件測試的定義1983年,IEEE在提出的軟件測試文檔標(biāo)準(zhǔn)(IEEEStandardForSoftwareTestDocument),即IEEE829-1983中對軟件測試進行了準(zhǔn)確的定義:軟件測試是使用人工或自動手段來運行或測定某個系統(tǒng)的過程,檢驗它是否滿足規(guī)定的需求或者弄清預(yù)期結(jié)果與實際結(jié)果之間的差別。IEEE在1990年頒布的軟件工程標(biāo)準(zhǔn)術(shù)語集中沿用了這一概念,該概念非常明確的提出了軟件測試以檢驗是否滿足需求為目標(biāo)。其次,G.J.Myers在其經(jīng)典論著《軟件測試的藝術(shù)》中對軟件測試提出如下觀點:測試是程序的執(zhí)行過程,目的在于發(fā)現(xiàn)錯誤,一個好的測試用例可以發(fā)現(xiàn)至今尚未發(fā)現(xiàn)的錯誤,一個成功的測試能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯誤。221.3.2 軟件測試的定義1983年,IEEE在提出的軟件測1.3.3 軟件測試方法1.靜態(tài)方法和動態(tài)方法2.黑盒測試、白盒測試和灰盒測試3.基于軟件開發(fā)階段的測試方法需求測試單元測試集成測試性能測試壓力測試容量測試配置測試回歸測試安裝測試安全性測試231.3.3 軟件測試方法1.靜態(tài)方法和動態(tài)方法231.3.4 軟件測試自動化白盒測試工具功能測試工具負(fù)載壓力測試工具測試管理工具241.3.4 軟件測試自動化白盒測試工具241.3.5 軟件缺陷的修復(fù)費用251.3.5 軟件缺陷的修復(fù)費用251.4 軟件質(zhì)量保證與測試人才的特點1.4.1 現(xiàn)代軟件研發(fā)對軟件人才的需求傳統(tǒng)軟件人才的特點創(chuàng)新軟件人才的特點敢冒風(fēng)險敢冒風(fēng)險有雄心壯志有雄心壯志能學(xué)習(xí),適應(yīng)新環(huán)境能學(xué)習(xí),適應(yīng)新環(huán)境實事求是的作風(fēng)創(chuàng)新精神有克服困難的毅力如果對問題有興趣,則有熱情、有主動性扎實的理論基礎(chǔ),尤其是數(shù)學(xué)獨立從事研究的能力很強的編程能力題目想的遠、做的深講紀(jì)律、講服從對什么事都有主見對許多事情都沒有主見,即使有想法也不敢說直截了當(dāng)?shù)販贤ㄉ踔僚u和爭論261.4 軟件質(zhì)量保證與測試人才的特點1.4.1 現(xiàn)代軟件研發(fā)研發(fā)方法的差別創(chuàng)新研發(fā)方法非創(chuàng)新研發(fā)方法想著做事情坐著想事情經(jīng)過科學(xué)手段、大量的數(shù)據(jù)、可重復(fù)的深入研究膚淺的、無用的、無法擴張的簡單結(jié)果研究、理解、借用別人的結(jié)果不看別人的研究,或只抄襲別人的研究成果經(jīng)過親自的設(shè)計工程原型,證實對用戶有用理論的、沒用的紙上談兵承認(rèn)失敗,從頭開始不承認(rèn)失敗,永無止境地延續(xù)研究27研發(fā)方法的差別創(chuàng)新研發(fā)方法非創(chuàng)新研發(fā)方法想著做事情坐著想事現(xiàn)代軟件研發(fā)對軟件人才提出的要求專業(yè)基礎(chǔ)和創(chuàng)新能力具備主人翁精神良好的團隊精神從錯誤中學(xué)習(xí)的能力28現(xiàn)代軟件研發(fā)對軟件人才提出的要求專業(yè)基礎(chǔ)和創(chuàng)新能力281.4.2 優(yōu)秀的軟件測試員應(yīng)具備的素質(zhì)軟件測試員是探索者:軟件測試員不會害怕進入陌生環(huán)境,他們喜歡拿到新的軟件,安裝在自己的機器上并觀看結(jié)果。軟件測試員是故障排除員:軟件測試員善于發(fā)現(xiàn)問題的癥結(jié),他們喜歡解謎。軟件測試員不放過蛛絲馬跡:軟件測試員總在不停地嘗試。他們可能會碰到轉(zhuǎn)瞬即逝或者難以證實的軟件缺陷,當(dāng)然,他們不會當(dāng)作視偶然而輕易放過,而會想盡一切可能去發(fā)現(xiàn)它們。軟件測試員具有創(chuàng)造性:這是對測試是顯而易見的。軟件測試員的工作是要想出富有創(chuàng)意審視超常的手段來尋找缺陷。軟件測試員是追求完美者:軟件測試員力求完美,但是當(dāng)知道某些無法企及時,他們不去苛求,而是盡力接近目標(biāo)。軟件測試員判斷準(zhǔn)確:軟件測試員要判斷測試內(nèi)容、測試時間、以及看到的問題是否是真正的缺陷。軟件測試員注重策略和外交:軟件測試員常常帶來的壞消息。他們必須告訴程序員,你的程序很糟糕。好的軟件測試員知道以怎樣的策略來溝通這些問題,他們也能夠和有時不夠冷靜的程序員合作。軟件測試員善于說服:軟件測試員找出的缺陷有時會被認(rèn)為不重要且不用修復(fù)。這時測試員要善于清晰地表達自己的觀點,說明軟件缺陷為何需要修復(fù),并且推進缺陷的修復(fù)。291.4.2 優(yōu)秀的軟件測試員應(yīng)具備的素質(zhì)軟件測試員是探索者:1.5 小結(jié)從上面討論的結(jié)果可知,軟件質(zhì)量保證是建立一套有計劃,有系統(tǒng)的方法,來向管理層保證擬定出的標(biāo)準(zhǔn)、步驟、實踐和方法能夠正確地被所有項目所采用。軟件質(zhì)量保證的目的是使軟件過程對于管理人員來說是可見的。它通過對軟件產(chǎn)品和活動進行評審和審計來驗證軟件是合乎標(biāo)準(zhǔn)的。軟件質(zhì)量保證組在項目開始時就一起參與建立計劃、標(biāo)準(zhǔn)和過程。這些將使軟件項目滿足機構(gòu)方針的要求。軟件測試是軟件質(zhì)量保證的重要手段之一,它就是利用測試工具按照測試方案和流程對產(chǎn)品進行功能和性能測試,甚至根據(jù)需要編寫不同的測試工具,設(shè)計和維護測試系統(tǒng),對測試方案可能出現(xiàn)的問題進行分析和評估。執(zhí)行測試用例后,需要跟蹤故障,以確保開發(fā)的產(chǎn)品適合需求。301.5 小結(jié)從上面討論的結(jié)果可知,軟件質(zhì)量保證是建立一套有計第1章軟件質(zhì)量和測試的背景31第1章軟件質(zhì)量和測試的背景1內(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ì)量運動 1.2.3 軟件質(zhì)量概念 1.2.4 軟件質(zhì)量評價體系與標(biāo)準(zhǔn) 1.3 軟件測試與可靠性概述 1.3.1 軟件測試的意義 1.3.2 軟件測試的定義 1.3.3 軟件測試方法 1.3.4 軟件測試自動化 1.3.5 軟件缺陷的修復(fù)費用 1.4 軟件質(zhì)量保證與測試人才的特點 1.4.1 現(xiàn)代軟件研發(fā)對軟件人才的需求 1.4.2 優(yōu)秀的軟件測試員應(yīng)具備的素質(zhì) 1.5 小結(jié) 32內(nèi)容提要1.1 軟件特征與軟件工程 21.1 軟件特征與軟件工程要理解軟件的含義并全面地理解軟件工程,我們首先要明確軟件的特征,并據(jù)此知道軟件與人類建造的其它事物之間的區(qū)別。IEEE定義對軟件的定義如下:軟件是計算機程序、規(guī)程以及可能的相關(guān)文檔和運行計算機系統(tǒng)需要的數(shù)據(jù)。軟件包含計算機程序、規(guī)程、文檔和軟件系統(tǒng)運行所必需的數(shù)據(jù)四個部分。331.1 軟件特征與軟件工程要理解軟件的含義并全面地理解軟件工軟件具有與硬件完全不同的特征軟件是開發(fā)產(chǎn)生的,而不是用傳統(tǒng)方法制造。軟件不會像硬件一樣有磨損。很多軟件不能通過已有構(gòu)件組裝,只能自己定義。34軟件具有與硬件完全不同的特征軟件是開發(fā)產(chǎn)生的,而不是用傳統(tǒng)方硬件、軟件失效曲線圖35硬件、軟件失效曲線圖51.1.1 軟件分類當(dāng)前的計算機軟件分為七個大類,使得軟件工程正面臨持續(xù)的挑戰(zhàn):系統(tǒng)軟件應(yīng)用軟件Web應(yīng)用軟件工程和科學(xué)軟件嵌入式軟件產(chǎn)品線軟件人工智能軟件361.1.1 軟件分類當(dāng)前的計算機軟件分為七個大類,使得軟件工新的挑戰(zhàn)也逐漸顯現(xiàn)出來普適計算網(wǎng)絡(luò)資源開源軟件新經(jīng)濟37新的挑戰(zhàn)也逐漸顯現(xiàn)出來普適計算71.1.2 層次化軟件工程FritzBauer在NATO(北大西洋公約組織)會議上給出的定義仍是我們進一步展開討論的基礎(chǔ):軟件工程:是為了經(jīng)濟地獲得可靠的和能在實際機器上高效運行的軟件而建立和使用的好的工程原則。美國電氣和電子工程師協(xié)會(InstituteofElectricalandElectronicsEngineers,IEEE)給出了一個更加綜合的定義:軟件工程:(1)將系統(tǒng)化的、規(guī)范的、可度量的方法應(yīng)用于軟件的開發(fā)、運行和維護的過程,即將工程化應(yīng)用于軟件中。(2)(1)中所述方法的研究。381.1.2 層次化軟件工程FritzBauer在NATO(軟件過程、軟件方法和軟件工具39軟件過程、軟件方法和軟件工具9軟件工程的視圖拋開要工程化的實體,我們必須先回答下列問題:要解決的問題是什么?要用于解決該問題的實體具有什么特點?如何實現(xiàn)該實體?其解決方案是怎樣的?如何建造該實體?采用什么方法去發(fā)現(xiàn)該實體設(shè)計和建造過程中產(chǎn)生的錯誤?當(dāng)該實體的用戶要求修改、適應(yīng)和增強時,如何支持這些活動?40軟件工程的視圖拋開要工程化的實體,我們必須先回答下列問題:三個階段我們可以把與軟件工程相關(guān)的工作分為三個階段,其中的每個階段能夠回答上述的一個或多個問題:定義階段針對“做什么”開發(fā)階段針對“如何做”維護階段針對“改變”41三個階段我們可以把與軟件工程相關(guān)的工作分為三個階段,其中的每補充說明還有很多保護性活動用來補充說明在軟件工程的一般視圖中的各個階段和相關(guān)步驟,這些典型的貫穿于整個軟件過程中的活動包括:軟件項目追蹤和控制正式的技術(shù)復(fù)審軟件質(zhì)量保證軟件配置管理文檔的準(zhǔn)備和產(chǎn)生可復(fù)用管理測試風(fēng)險管理42補充說明還有很多保護性活動用來補充說明在軟件工程的一般視圖中1.1.3 軟件范型的轉(zhuǎn)變431.1.3 軟件范型的轉(zhuǎn)變131.1.4 現(xiàn)代軟件開發(fā)傳統(tǒng)軟件開發(fā)和現(xiàn)代軟件開發(fā)軟件團隊與軟件開發(fā)人員的培養(yǎng)441.1.4 現(xiàn)代軟件開發(fā)傳統(tǒng)軟件開發(fā)和現(xiàn)代軟件開發(fā)141.2 軟件質(zhì)量有些軟件開發(fā)者仍然相信軟件質(zhì)量是在編碼之后才應(yīng)該開始擔(dān)心的事情。這是荒謬的,因為軟件質(zhì)量保證(SoftwareQualityAssurance,SQA)是一種應(yīng)用于整個軟件過程的保護性活動,它包括:一種質(zhì)量管理方法,有效的軟件工程技術(shù)(方法和工具)在整個軟件過程中采用的正式技術(shù)復(fù)審一種多層次的測試策略對軟件文檔及其修改的控制保證軟件遵從軟件開發(fā)標(biāo)準(zhǔn)的規(guī)程度量和報告機制451.2 軟件質(zhì)量有些軟件開發(fā)者仍然相信軟件質(zhì)量是在編碼之后才1.2.1 質(zhì)量概念我們應(yīng)從以下幾個方面考慮軟件質(zhì)量:軟件結(jié)構(gòu)方面功能與性能方面開發(fā)標(biāo)準(zhǔn)與文檔方面461.2.1 質(zhì)量概念我們應(yīng)從以下幾個方面考慮軟件質(zhì)量:161.2.2 質(zhì)量運動全面質(zhì)量管理通常都包括以下4個步驟:第1步是指一個連續(xù)的過程改進系統(tǒng),其目標(biāo)在于開發(fā)一個看的見的、可重復(fù)的和可度量的軟件過程。第2步只第1步完成之后才可啟動。這一步將檢查影響過程的其它因素,并優(yōu)化這些因素對過程的影響。例如,軟件過程可能受到高層職員流動的影響,而該影響則是公司內(nèi)部不斷重組而引起的。一個穩(wěn)定的公司組織會對軟件質(zhì)量的提高帶來很大的幫助,所以第2步可以幫助管理者對公司重組方式提出建議。前面兩個步驟關(guān)注的是過程,第3步(或稱為“第五感覺”)則關(guān)注軟件產(chǎn)品的用戶,它是通過檢查用戶使用產(chǎn)品的方式,而導(dǎo)致產(chǎn)品本身的改進和潛在地改進產(chǎn)品的生產(chǎn)過程。第4步將管理者的注意從當(dāng)前的產(chǎn)品上移開并拓寬。作為一個面向商業(yè)的步驟,該步驟通過觀察產(chǎn)品的市場用途,來尋找產(chǎn)品在相關(guān)領(lǐng)域中的發(fā)展機會。在軟件領(lǐng)域,第4步可以被視為一種發(fā)現(xiàn)有利可圖的新產(chǎn)品,或視作尋找當(dāng)前計算機系統(tǒng)的副產(chǎn)品用途的努力。471.2.2 質(zhì)量運動全面質(zhì)量管理通常都包括以下4個步驟:171.2.3 軟件質(zhì)量概念I(lǐng)EEE關(guān)于軟件質(zhì)量的定義:軟件質(zhì)量是系統(tǒng)、部件或者過程滿足規(guī)定需求的程度。系統(tǒng)、部件或者過程滿足顧客或者用戶需要或期望的程度。該定義相對客觀,強調(diào)了產(chǎn)品(或服務(wù))和客戶/社會需求的一致性。ANSI關(guān)于軟件質(zhì)量的定義:按照ANSI(AmericanNationalStandardsInstitute,美國國家標(biāo)準(zhǔn)學(xué)會)在1983年的標(biāo)準(zhǔn)陳述,軟件質(zhì)量定義為“與軟件產(chǎn)品滿足規(guī)定的和隱含的需求的能力有關(guān)的特征和特性的全體”。具體包括軟件產(chǎn)品中能滿足用戶給定需求的全部特性的集合,軟件具有所期望的各種屬性組合的程度,用戶主觀得出的軟件是否滿足其綜合期望的程度,決定所用軟件在使用中將滿足其綜合期望程度的軟件合成特性。481.2.3 軟件質(zhì)量概念I(lǐng)EEE關(guān)于軟件質(zhì)量的定義:軟件質(zhì)量6個主要特征我們把各類軟件綜合起來看,可以列出下列6個主要特征:功能性:軟件實現(xiàn)的功能達到要求的和隱含的用戶需求以及設(shè)計規(guī)范的程度,可靠性:軟件在指定條件和特定時間段內(nèi)維持性能的能力程度,易使用性:用戶使用該軟件所付出的學(xué)習(xí)精力,效率:在指定條件下,軟件功能與所占用資源之間的比值,可維護性:當(dāng)發(fā)現(xiàn)錯誤、運行環(huán)境改變或客戶需求改變時,程序能修改的容易程度,可移植性:將軟件從一種環(huán)境移入另一種環(huán)境的容易程度。496個主要特征我們把各類軟件綜合起來看,可以列出下列6個主要特1.2.4 軟件質(zhì)量評價體系與標(biāo)準(zhǔn)IEEE給出軟件質(zhì)量保證的定義,軟件質(zhì)量保證(SQA)是:一種有計劃的,系統(tǒng)化的行動模式,它是為項目或者產(chǎn)品符合己有技術(shù)需求提供充分信任所必需的。設(shè)計用來評價開發(fā)或者制造產(chǎn)品的過程的一組活動,與質(zhì)量控制有區(qū)別。501.2.4 軟件質(zhì)量評價體系與標(biāo)準(zhǔn)IEEE給出軟件質(zhì)量保證的1.3 軟件測試與可靠性概述1.3.1 軟件測試的意義迪斯尼獅子王缺陷英特爾浮點除法缺陷人造隕石坑缺陷程序員的千年蟲問題Windows的輸入法漏洞愛國者導(dǎo)彈缺陷511.3 軟件測試與可靠性概述1.3.1 軟件測試的意義211.3.2 軟件測試的定義1983年,IEEE在提出的軟件測試文檔標(biāo)準(zhǔn)(IEEEStandardForSoftwareTestDocument),即IEEE829-1983中對軟件測試進行了準(zhǔn)確的定義:軟件測試是使用人工或自動手段來運行或測定某個系統(tǒng)的過程,檢驗它是否滿足規(guī)定的需求或者弄清預(yù)期結(jié)果與實際結(jié)果之間的差別。IEEE在1990年頒布的軟件工程標(biāo)準(zhǔn)術(shù)語集中沿用了這一概念,該概念非常明確的提出了軟件測試以檢驗是否滿足需求為目標(biāo)。其次,G.J.Myers在其經(jīng)典論著《軟件測試的藝術(shù)》中對軟件測試提出如下觀點:測試是程序的執(zhí)行過程,目的在于發(fā)現(xiàn)錯誤,一個好的測試用例可以發(fā)現(xiàn)至今尚未發(fā)現(xiàn)的錯誤,一個成功的測試能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯誤。521.3.2 軟件測試的定義1983年,IEEE在提出的軟件測1.3.3 軟件測試方法1.靜態(tài)方法和動態(tài)方法2.黑盒測試、白盒測試和灰盒測試3.基于軟件開發(fā)階段的測試方法需求測試單元測試集成測試性能測試壓力測試容量測試配置測試回歸測試安裝測試安全性測試531.3.3 軟件測試方法1.靜態(tài)方法和動態(tài)方法231.3.4 軟件測試自動化白盒測試工具功能測試工具負(fù)載壓力測試工具測試管理工具541.3.4 軟件測試自動化白盒測試工具241.3.5 軟件缺陷的修復(fù)費用551.3.5 軟件缺陷的修復(fù)費用251.4 軟件質(zhì)量保證與測試人才的特點1.4.1 現(xiàn)代軟件研發(fā)對軟件人才的需求傳統(tǒng)軟件人才的特點創(chuàng)新軟件人才的特點敢冒風(fēng)險敢冒風(fēng)險有雄心壯志有雄心壯志能學(xué)習(xí),適應(yīng)新環(huán)境能學(xué)習(xí),適應(yīng)新環(huán)境實事求是的作風(fēng)創(chuàng)新精神有克服困難的毅力如果對問題有興趣,則有熱情、有主動性扎實的理論基礎(chǔ),尤其是數(shù)學(xué)獨立從事研究的能力很強的編程能力題目想的遠、做的深講紀(jì)律、講服從對什么事都有主見對許多事情都沒有主見,即使有想法也不敢說直截了當(dāng)?shù)販贤ㄉ踔僚u和爭論561.4 軟件質(zhì)量保證與測試人才的特點1.4.1 現(xiàn)代軟件研發(fā)研發(fā)方法的差別創(chuàng)新研發(fā)方法非創(chuàng)新研發(fā)方法想著做事情坐著想事情經(jīng)過科學(xué)手段、大量的數(shù)據(jù)、可重復(fù)的深入研究膚淺的、無用的、無法擴張的簡單結(jié)果研究、理解、借用別

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論