測試管理:問題驅動的測試過程改進

過程改進

在開始正文以前咱們首先來作一次思惟推導。咱們來嘗試回答下面的問題:單元測試

反覆稱重可否幫你減肥?學習

這個答案顯然是:測試

測試工做自己並不能直接產出質量,就如使用體重計稱重並不能讓人減肥同樣。測試能夠被看作信息收集和評估過程,但反覆評估一件事物,並不能直接改善這件事物。優化

軟件測試能夠經過數據的收集,缺陷的彙報,用於促進產品質量的改進,質量風險的規避,然而質量最終的改進還要來自於研發過程自己。ui

實際上咱們認爲過程質量決定產品質量。那麼改進項目的過程質量,纔是推進產品質量提高的根本辦法。編碼

在軟件行業內,過程改進是許多企業,特別是大型企業很是關注的,咱們耳熟能詳的CMMi軟件成熟度模型,就旨在幫助企業提高自身的組織和過程成熟度。spa

測試過程改進

CMMI成熟度模型是關注質量的,實際上咱們談過程改進,但願達到的目標應該是成本,效率和質量的三方收益。設計

除了CMMi這種着眼於研發過程全局改進的模型,專一於測試過程的改進模型也有許多的應用場景。3d

經常使用的測試改進模型包括:blog

  • TMMi
  • TPI-Next
  • CTP
  • STEP

之因此在過程改進中,咱們傾向於使用模型,其實是秉承着「借鑑」的思想。直接使用業界先驅們成功經驗的總結,與本身的項目進行比對和匹配。

以上這些模型中,有一些模型多是比較重量型的,相似CMMi,會和企業成熟度認證結合起來,須要外部助推力來幫助達成。

不過也有一些是以小團隊甚至我的爲出發點也是能夠應用的,下面咱們就介紹其中的一種:TPI-Next。

TPI-Next測試改進模型

TPI模型將測試改進方向劃分爲三個區域:

  • 人員
  • 管理
  • 技術

在此基礎之上,繼續將他們劃分爲16個域,並用「受控級」、「高效級」和「優化級」定義其成熟度。

 

 

 

 

 

 

 

 

 

經過將自身項目特性與TPI-Next16個域的三級成熟度標準進行對比,咱們能夠很容易獲得自身項目測試的改進方向。

問題驅動過程改進

除了使用模型來幫助咱們進行過程改進,其實針對特定問題而改進特定過程是更經常使用的作法。使用這種方式的改進過程,可能會缺少系統性和結構性,可是倒是最貼近現實,可以最有效帶來直觀收益的。

固然這種問題驅動式的改進,也一樣能夠參照過程模型和改進模型,以便於找到改進方向。咱們來看幾個例子:

1. 產品總體質量問題

在測試活動中,咱們經常會趕上一些窘局,好比某系統的測試,爆出大量(遠超預期)缺陷。

咱們先來論斷一下,測試報出大量缺陷到底是不是一個問題?有的人可能會說,這不是問題,測試報出缺陷,這不是天經地義的嗎。

實際上咱們簡單來講,咱們對項目缺陷的預期數量實際是存在邊界的(CMMi3級標準,測試密度不該超過2.39%),測試的理想狀態應該是在邊界以內揭示問題。

缺陷數量超出邊際值會帶來顯而易見的風險:

  • 各方工做量增多
  • 項目週期被拉長
  • 缺陷揭示越多,隱藏缺陷也越多(冰山效應)

那麼經過過程改進,咱們如何解決這一問題呢?

咱們能夠從TPI模型中找出幾個關鍵域,用於改進這個問題:

 

 

 

  • 保證測試更早的介入,更早期的發現問題,而不是使問題堆積到執行階段。不少狀況下,超量缺陷的現象所隱射的問題是研發方向的誤差,這些誤差頗有可能來自與編碼的前序階段,好比需求和設計。測試更早的介入這些階段能夠緩解相似風險。

 

 

 

  • 這個問題也應從測試組織方面思考。好比項目的測試過程是否具有足夠的層次性?若是項目只具有系統測試層級,那麼延申測試的層級,如單元測試、系統測試是應該被考慮引入以緩解項目缺陷壓力。
  • 另外一方面,在組織測試的過程當中,咱們是否考慮到了前序階段的支持,有無相應的方法和過程進行保證?測試准入標準和冒煙測試是否被用於衡量產品的可測性?

2. 測試時間壓力

測試團隊常常會面臨時間壓力,測試時間的爭奪是測試團隊夾在產品質量和市場壓力之間的反覆博弈過程。

如何改進這一現象呢?咱們一樣嘗試找出幾個改進的關鍵域:

 

 

 

  • 測試時間的保證很大程度要取決於干係人對於測試的認知和重視,因此咱們提取的第一個關鍵域就與之相關。測試團隊須要與干係人(好比項目經理)達成測試目標和範圍的一致,而且基於這個範圍投入相應的成本。成熟的測試團隊有必要經過溝通、培訓、宣講、協商等方式取得這一成果。

 

 

 

  • 經過更合理的測試組織,提高測試工做效率也是解決時間壓力的重要思路。

 

 

 

  • 另外一個關鍵域是估計與計劃。任務估計與計劃不僅僅是後續工做實行的指導,也是對預期任務時間取得各方一致的有效手段。

以上是兩個問題驅動的過程改進的例子,咱們能夠觸類旁通,經過對於相應問題的分析,對應標準的解決辦法來逐步實現測試過程的改進。

過程改進流程

最後,過程改進實際上是一個很是大的課題,從事過程改進的人員一般具有很是高的團隊地位(想要改變什麼事情一般都沒有那麼容易)。

過程改進也必須遵循IDEAL模型:

  • Initiating 啓動
  • Diagnosing 診斷
  • Establishing 制定計劃
  • Acting 實施
  • Learning 學習(經驗總結)

 

 

 

最重要的是,取得利益干係人的支持,是過程改進得以推進的必備條件。

相關文章
相關標籤/搜索