小さく始めるQAチームの立ち上げと体制構築

はじめに
これからQAチーム(テストチーム)を作りたい!けど、どうやって作ればいいの?
この記事をご覧になっている方はおそらくそんなお悩みをお持ちかと思います。
本記事では、これからQAチームを作る方に向けて、最短2〜4週間で“最小構成”のQAチームを立ち上げ、リリース品質と開発速度を同時に底上げする方法を弊社の経験を元にまとめました。
この記事を参考に、一緒にQAチームを構築していきましょう!
QAチームとは
QA(Quality Assurance)チームは、製品・サービスの品質を“仕組み”で担保する専門チームです。
単にテストを実行するだけでなく、テスト設計・欠陥管理・品質KPIの可視化・リリース判定までを担い、開発と並走して品質を作り込みます。
- 役割の例
- QAリーダー:方針・優先度決定、体制/プロセスの運用、品質ゲート管理
- QAエンジニア:テスト設計・自動化・データ/ログ解析、レビュー
- テスター:探索的/回帰テストの実行、証跡作成
- 開発/PM:要件合意、修正対応、品質レビューへの参加
ただ、最小でQAチームを構築する上ではまずはテストをするだけでもいいと思います。
QAチーム体制構築経緯
弊社でQAチーム立ち上げしようときっかけは以下の2つです。
①エンジニアの工数削減
QAチームがない時代は、エンジニアがテストも行っていました。
しかし、開発もしなければいけない、顧客からの修正リクエストの嵐、テストをする暇もない。
そんな状態で、エンジニアの残業が常態化していました。
しかしテストチームができてからはエンジニアは開発に集中することができ、負担が大きく軽減されました。
これが何よりもQAチームを作った一番のメリットといっても過言ではありません。
もちろんQAチームができても完全にエンジニアはテストをしなくて良くなるかというとそんなことはありませんが、重要な部分はやる必要がありますが、細かいテストをやってくれるだけでも負担軽減は大きいです。
また、第三者目線でテストを行ってくれるため、開発者では築けなかったバグを見つけてくれます。
②リリース直後の重大バグが継続して発生
当時はリリース判定も甘く、リリース後になって重大なバグが起こっていました。
修正からさらにデグレーションが起こり、またエラー解消に追われる状態でした。
修正コストを考えると数十万円の損失となり、またお客様の信頼も下がってしまいます。
リリース前にしっかりテストを行うことはコスト削減の面でもとても大きいです。
QAチームメリット
そもそもQAチームを立ち上げるメリットは何でしょうか?
弊社で感じる主なメリットは以下です。
エンジニアが開発に集中できる
基本テストは1回では終わらず、修正や仕様変更などに伴い、何度も同じテストを行う必要があり、想像以上に工数を取れらます。それをQAチームが行うことによって、エンジニアは開発や修正対応に時間を割くことができるようになります。
テスト観点をもとにテストを行うためバグが発見しやすい
テストは過去の経験のノウハウを集めたテスト観点という確認すべき要所をもとに実行されます。
そのため、テスト部隊は時間の経過とともにバグが出やすい箇所を知ったうえでテストを行うため、ある程度同じようなバグは洗い出すことができます。
開発コストを大きく下げることができる
QAチームのお陰でテストを確実に遂行できるようになるため、リリース後の重大なバグを減らすことができます。
システム開発はリリースをしてからが勝負。しかし、テストを甘く見ている開発現場ではリリース後に重大なバグが発見され、その修正対応にエンジニアの稼働が取られます。最悪の場合、損害賠償で数十〜数百万円の支払いが発生する可能性もあります。リリース前のテストというのは絶対に省いていはいけないものなのです。
また、テストは言ってしまえばエンジニアでなくても行うことができます。
営業でも、アルバイトの方でもできてしまうため、単価の高いエンジニアを使う必要がなくその分コストを抑えられます。
QAチーム構築の流れ
さて、ここからが本題になります。
ここから最小限でのQAチームの構築方法をお伝えします。
テストチーム構築プロジェクトの立ち上げ
まずやるべきはQAチーム構築のプロジェクトを立ち上げることです。
そこでやるべきは範囲・期限・定例を最初に定義します。
- 範囲:まずはテストチームが最小限で行える業務内容を定義します。広げると決めることが多くなり時間がかかるため、まずは最小限に抑えておきます。
- 期間:例)1ヶ月でテストチームの構築を行う、などゴールを決めておきましょう。
- 定例の決定:例)金曜日の15-16時など定例を設定しておきましょう。
プロジェクト責任者とプロジェクトメンバーの選任
小さく始めるほど意思決定の速さが価値です。
QAリーダー=責任者を1名置き、次を握らせます。
- 何を・いつ・どこまでテストするか(優先度とスコープ)
- ツール選定(課題管理・テスト管理)
- タスクの割り振り
やることが多いため、フォローメンバーもいるといいでしょう(実際のテスターなど)。
テスト観点の洗い出し
QAチームを立ち上げるにあたり、テストで見るべき箇所を整理しておく必要があります。
テスト初心者が入った場合でもノウハウを共有することができ安定した品質を実現できます。
こちらは開発経験のあるエンジニアも巻き込んで洗い出しましょう。

テストフローの整理
次にテストフローを検討します。
テストフローは大きく「依頼→理解→操作→質問→報告」で構成されます。

- 依頼:エンジニアがどのようにしてQAチームにテストを依頼するか。スケジュール管理方法なども決める。
- 理解:テストを行う上でシステムを理解する必要があります。どのようにQAチームに説明するかを決めます。
- 操作:確認環境を利用して、テスターが実際にテストを行います。どのように進めるか、バグを発見したときはどのようにまとめるかを決めます。
- 質問:テストをしている中でわからない箇所が出てきます。その際、エンジニアとどのようにやり取りを行うかを決めます。
- 報告:テストが終わったあと、エンジニアに報告する方法を決めます。
テスト項目書やバグ報告書のフォーマット作成
フローが決まったらそれに必要なテンプレートを最小限の項目で作成します。
テスト依頼フォーム、テスト項目書、バグ報告書、Slackチャンネルの作成、テストルールドキュメントなど
QAチームの組織の立ち位置(組織図)

QAチームが組織上どこの立ち位置にあるかを明確にしておきます。
テストメンバーの選任及び採用
最初はテストマネージャーを専任します。マネージャーはテスターをまとめられる方が適任でしょう。
マネージャーはエンジニア兼用でも問題ありません。
一方、テスターはなるべく開発エンジニア以外のテスト専任が望ましいです。
結局開発のエンジニアは開発に追われているため、テストをする余裕がありません。
業務をテストのみにすることによっていつでもしっかりとテストを行える体制となります。
しかし、そんなに急に人員を調達できないということもあるでしょう。そんなときは外部のテスト代行業者に依頼するのも一手です。弊社ではソフトウェアテスト代行サービスを運営しています。貴社テスターの代行からテストチームの立ち上げもサポート可能です。ぜひお気軽にご相談ください。
まとめ
QAチームは「テストを回す仕組み」で品質を担保する専門組織です。
エンジニアは開発に集中でき、第三者視点で不具合を早期発見し、リリース後の重大バグとコストを削減できます。
まずは小さく始めて安定した品質を提供体制を構築していきましょう。