QA和RD如何在早期就開始合作
有人說若是QA早一點開始加入專案, 應該可以幫助專案品質變好, 可以幫忙釐清需求, 可以縮短測試時間. 聽起來真的好處多多.
可是真的是這樣嗎? 我想以各位看倌多年的經驗, 應該會覺得不會這麼容易. 是的, 是不容易, 但是原因是什麼呢?
就我個人觀感第一個原因是mindset, 是的, 是mindset.
像我現在在run Agile, 如果大家對Agile有所認識, 應該知道Agile強調就是mindset的轉變, 如果心態沒有轉變成, 要因應變化而積極作調整, 那你在執行的任何practice都因而事倍功半, 最常見的就是便成mini waterfall. 因為我們只是把一個大的, 長的開發時程, 便成一個為期2 weeks 或4 weeks的小型專案. 事實上幫助會有限.
同樣的, 如果你認為QA早一點進去就會有幫助, 那同樣也是不切實際的. 因為這要work, 需要很多人的mindset都要改變, RD, QA, manager都要做修正.
在傳統開發流程時, 測試是最後一個階段, 因此QA養成一個習慣, 那就是需求要ready, design要ready, 程式要ready, 否則就無法開始. 因此不打破這個想法, QA早點進去是沒有用的, 因為他會認為這些東西都還沒有好, 他什麼事也不能作. 所以還是得等到design or code ready, QA才會開始動作.
所以QA需要轉換做事的想法, 不要再認為你只需要被動接受RD或是manager給你東西, 你需要真的積極加入, 自己去創造或是找出你要的東西. 也就是說早點跟manager討論需求, 和UI designer討論UI行為的運作, 和RD討論design的細節, error handling的細節等等. QA是可以領導或是驅動專案的進行, 而不是單純的被動接受者.
在開立測試個案時, 心態上也要和以前不同. 你的重點不是要去逮到RD的小辮子, 去衝高bug的數量. 你應該要做的是和RD一國, 一起去提昇軟體的品質. 也就是說事前就要和RD再三確認, 是否你開的這些case, RD已經加以考慮, 不管是細部功能的運作, 或是例外處理的部份, 都要一一確認清楚. 如果這些東西一開始都設計進去, 都考慮進去, 之後就不會
有冗長的bug fixing時間. 需知道有很多bug通常, 都是因為事前沒有人說要考慮或是要處理, 導致於最後要花更多時間去修復, 甚至還要在那邊討價還價. 若是這些事前能談清楚, 那將會節省之後很多時間的.
此外若是早點請RD review 過測試個案, 說不定可以知道有些測試個案可以不需要開立, 或是需要再加以補充. 像是有地方, 可能你開的case是在測到3 party或是別的team的code, 但是並沒有打到自己要測的部份, 像這些可能就可以不要測. 或者, 有時候因為QA對於實作細節不了解, 或是缺乏coding skill, 有些個案便會開不到, RD這時候的建議便可以幫助你補足你不夠的部份.
另外在設計測試自動化的時候, 更是需要和RD早點討論. 一方面可以讓他考慮testaability, 一方面你不會多走一些冤枉路. 有些QA因為怕麻煩RD, 獨立自行去開發測試程式, 或是來作performance test program, 結果事後卻被RD指出, 有容易做到的方法, 或是這樣的行為可能和受測軟體架構不同. 這時候啟不是很冤嗎?
當然啦, 一個巴掌是拍不響的, 同樣的RD的心態也要轉變. 在設計時不要認為QA聽不懂, 或是無法貢獻意見, 就不找他. 至少他加減聽的狀況下(註1), 當你不完整的文件出來後, 他也比較容易看的懂. 當然啦, 若是他也有coding的基礎, 便可以很快知道你內部運作的行為, 對於之後測試個案的開立, 或是bug trouble shooting, 會有很大的助益.
(註1: 之前有post篇 "招募SDET來當QA是必要的嗎? 正確的嗎?" (http://www.wretch.cc/blog/kojenchieh/13321073), QA你能加強這篇所說的能力, 否則RD看不起你, 你的工作也有可能被所謂的SDET所取代.)
另外當QA找RD作test case review時, RD也不要認為這跟你沒有什麼關係, 你需要好好看看這些scenario你是否都已經考慮到了, 你可以趁此機會和QA一起brainstorm, 找出是否需求面或是設計面上是否有考慮不足的地方, 我想這時候花時間, 讓之後你程式沒有bug,或是bug較少, 這不是件很划算的事情嗎?
最後, 當然是manager也要改變心態, 需知道前面這些事情要發生, 要開花結果, 都是需要時間. 若是你缺乏耐心, 覺得怎麼大家前面花的時間變長了, schedule怎麼delay了, 因此而責怪, 責罵, 那只會讓這件事情毀掉而已. 這時候你需要的就是穩住, 要信任大家, 也要讓大家信任你是願意要這改變發生.
看到這裡, 我想大家應該了解, 不是單純讓QA早點加入就好, mindset也是同時要做轉變的.管理, 讓大家能夠真正以起合作.
留言列表