軟件測試與質量保證的區別

1

爲什麼測試?

軟件系統無處不在

  • 網上購物

  • 銀行系統

  • 手機

  • 衛星通信系統

  • 汽車系統

軟件系統成爲我們生活中不可或缺的一部分,那麼因缺陷造成的各種後果也無處不在。

2

爲什麼會存在缺陷?

人的因素:

  • 人總是容易犯錯誤的

  • 開發人員的態度

  • 開發人員的經驗和技術不足

  • 溝通的問題

  • 需求變更頻繁

  • 管理上的缺失

  • 進度壓力大

其他因素:

  • 周圍環境的影響:電磁輻射等

  • 使用環境的影響:硬件系統的老化等

  • 軟件系統越來越複雜

缺陷相關術語

錯誤

  • 與錯誤相關的英語表示ERROR、ERRORNEOUS、MISTAKE等等;

  • 定義:人爲的生產不正確結果的行爲【與IEEE610一致】;

  • 人爲的原因導致一個不正確的結果。它可以是程序內部的錯誤,也可能是文檔內的錯誤;

故障/缺陷

  • 與故障/缺陷相關的英語表示爲FAULT、DEFFC、BUG等等;

  • 定義:可能會導致軟件組件或系統無法執行其定義的功能的瑕疵,例如:錯誤的語句或者變量定義;

失效/失敗

  • 與失效/失敗相關的英語表示爲FAILURE等等;

  • 定義:組件/系統與預期的交付、服務或結果存在變差【與Fenton一致】;

程序人員犯了一個“錯”,那麼錯誤在程序或軟件中就表現爲缺陷,運行帶有缺陷的軟件或者程序,就可能觀察到失效/失敗

3

軟件測試的角色

軟件測試的角色必不可少:

  • 軟件測試是軟件質量保證的一個重要環節;

  • 軟件測試可以降低軟件系統在運行環節中的使用風險;

  • 軟件或者產品通過軟件測試發現其中的缺陷,對缺陷修改可以提高軟件質量;

  • 軟件測試也可以爲了滿足合同或者法律法規的要求,或者滿足行業的標準;

  • 軟件測試可以爲項目相關干係人提供信息,幫助他們作出合理的決定;

  • 軟件測試得到的數據和度量,可以幫助進行測試過程和開發過程的改進;

  • 假如測試過程中沒有發現或者發現很少的缺陷,可以提高軟件系統的信心;

4

軟件測試和質量保證

不用意義:

  • 軟件測試:尋找缺陷的策略,關注工作產品;

  • 質量保證:預防缺陷的策略,關注過程的管理和控制;

不用目標:

質量保證

  • 通過監控軟件開發過程來保證產品質量;

  • 保證軟件和開發過程符合相應標準與規範;

  • 保證軟件產品、軟件過程中存在的問題得到處理,同時滿足評審和審計需要;

軟件測試:

  • 儘早、儘可能多地發現軟件系統中存在的缺陷及問題; 

不同的工作內容:

質量保證:

  • 建立質量保證活動實體

  • 制定質量保證計劃

  • 堅持各階段的評審和審計,跟蹤結果,並作相應處理;

  • 監控軟件產品質量

  • 採集質量保證活動數據

  • 度量質量保證活動

軟件測試:

  • 編寫測試計劃

  • 評審開發工作產品

  • 編寫和執行測試用例

  • 測試結果分析和總結

  • 測試數據收集和度量

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章