一昔前までは開発者が開発、全てのテストを行うといったプロジェクトが割と多かったですが、ここ最近ではQAチームといったテストを専属で行うチームがプロジェクト内に独立して存在することが多くなってきています(現に私のプロジェクトでもQAチームを導入しています)。
本記事では、テスト専属チームをプロジェクト内に独立させることによるメリットとデメリットを私の経験とJSTQB本を参考にまとめてみます。
メリット
- 独立したテスト専属チームなので、アサインされたメンバーのバグ抽出に対する動機付けが明確になり、大きな効果が期待できる
- 開発者とは別のバイアスを持っているため(開発者の先入観や確証バイアスを持っていないため)、種類の異なる様々なバグが抽出可能となる
- 特に専門性を持ったテスト担当者が行うテストは、一般的な開発者が行うテストよりもバグ抽出率が高い
デメリット
- 開発チームとの協力関係が希薄になりがち。特に開発者からのフィードバック、開発者へのフィードバックが遅延しがちになる
※テストチームの独立性が高ければ高いほど、開発チームからの情報の入手が困難になることがある - 開発チームとの対立関係になりがち
※QAチームの障害チケットや指摘に対して感情が入ることがあります - 開発担当者の品質に対する意識が低下しがちになる(品質はQAチームが担保してくれしまあいっか、となりがち)
※実は私もこの現象に陥ったことが何度もあります - テストチームはボトルネックに見られがちで、最終的な責任を問われたりすることがある
まとめ
独立したテストチームが良い、悪い、の話ではありません。上記のデメリットを強く意識しながら、開発チーム、テストチームが互いに高い品質のソフトウェア・システムをリリースする、といったように同じゴールを見据えて協力し合いながらプロジェクトを進めることが大事です。参画したプロジェクトにQAチームがあったら、是非とも上記を忘れずに開発業務を楽しんでもらえたらと思います。