在品質管理 Why How What中,提到團隊的每一個角色,都應該要有品質意識。在本篇,我們將探討品質工程師在產品開發中的任務。
我把產品開發大略分成三個階段,規劃、實作、測試,從這三個階段來探討品質工程師的任務。
規劃
這個階段指的是產品開發前期,設計師和產品經理在分析使用情境,制定產品規格,專案經理在規劃整體開發時程。
品質工程師在這個階段最重要的任務,就是確認有預留足夠的測試時程,
在規劃時程時,很常被忽略的就是測試時程,有時候專案經理會低估測試時程,或是認為不需要投入這麼多資源,最常見的是為了趕上線而壓縮測試時程。
品質工程師應該要制定測試計畫,規劃需要進行哪些測試,事先預留各種測試所需要的時間,尤其是一些比較耗時的系統層級測試,如效能測試、壓力測試... 等。不僅如此,也可能出現因為測試發現重大問題,需要延後產品上線時程的情況。這些測試階段的風險,都是測試計畫可以預先評估的。
制定測試計畫,確認測試時程
實作
這個時候 RD 已經開工了,開始做整體系統設計,並實作各種功能。這個階段也是影響品質最重要的環節,畢竟不寫出 bug 就沒有 bug。
品質工程師在這個階段,應該要了解系統設計,釐清測試的範疇。有一些團隊,會撰寫開發設計文件,甚至是召開會議來說明實作內容,接著,品質工程師再基於實作內容,制定測試案例。
除此之外,優秀的品質工程師,在了解設計之後,也許可以指出有風險的地方,甚至還能提出改善的方向。
了解實作內容,制定測試案例
測試
這通常是上線前最後一個階段,產品功能全部開發完成,進行最後的測試。
品質工程師在這個階段的任務最為重要,將先前的規劃付諸行動。
對測試技術的掌握,以及能否善用各種工具,都是執行測試的關鍵要素,這也是品質工程師的專業價值所在。另外,常聽到的自動化測試,通常也是品質工程師這個階段的任務。之後會對於這些測試相關的領域,做更進一步的探討。
測試完成後,通常會提出一個測試報告,來說明測試的結果,內容可能包含執行的測試案例數量、通過率、未修正的 bug ... 等。
執行測試,提出報告
其實,讓我們重新檢視品質工程師 (Quality Assurance Engineer) 這個職稱,就可以理解該角色的核心任務並不是測試,而是確保品質。
因此,身為一個品質工程師,除了測試之外,也應該關心其它環節,如產品開發是否遵照規範,專案執行流程是否正確,團隊是否有哪些地方的運作,會影響到品質,這些都是身為一個品質工程師應該多著墨的地方。
品質工程師的核心任務,是確保團隊落實品質管理。