サイトアイコン TestRail Blog

分散QAチームのマネジメント

Chris Faraglia著

今日の仕事環境では、いたるところでリモートチームやハイブリッドチームが取り入れられているだけでなく、一般的になっています。これは、QAチームにとってはどんな意味を持つのでしょうか?QAは分散された作業環境に適していますが、分散QAチームを管理する場合に特に考慮すべき事項があります。

この記事の内容:

「分散型QAチーム 」の定義

リモートワークの性質が進化していることを背景に、組織はさまざまなモデルやアプローチを採用しています。この記事の理解を容易にし、改善に役立てるため、分散型ワークモデルの定義として4つのタイプを示します。

1.ハイブリッド分散型ワークモデル

このアプローチでは、チームはオンプレミスで働くメンバーとリモートで働くメンバーの両方で構成され、複数のタイムゾーンや場所にまたがっています(たとえばオンプレミスのメンバーはニューヨークに、リモートのメンバーはリスボンにいるなど)。

2.リモート分散型ワークモデル

このモデルでは、チームのメンバー全員がフルリモートで仕事をし、複数のタイムゾーンや場所に分散しています。

3.ハイブリッド集中型ワークモデル

このモデルでは、チームにはオンプレミスとリモートのメンバーが混じっており、同じタイムゾーンまたは地域内にいます。

4.リモート集中型ワークモデル

このモデルでは、チームはフルリモートのメンバーで構成され、全員が同じタイムゾーンまたは地域内にいます。

さまざまなハイブリッドワークおよびリモートワークのモデルを定義し、理解することは、チームを作りあげ、 タックマンモデルでのチーム開発の段階 (形成期、混乱期、統一期、機能期)を進んでいく上で不可欠です。また、各モデルに特有の課題や改善の機会について有益な洞察も得られます。

共通の課題

リモートチームおよびハイブリッドチームの構造を明確に理解したところで、これらのモデルに共通する課題をいくつか挙げます。

規制対象業界に共通する課題 

さらに、 規制対象業界で働くチームは、他にも特有の課題に直面します。規制対象業界とは、政府の厳しい規制によって管理される業界であり、教育や金融サービスなどが該当します。ここでは、リーダーとチームメンバーが考慮するべき個々の課題の概要を説明します。

コミュニケーションを最大化するための戦略

ハイブリッドチームやフルリモートチームには多くの利点がありますが、効果的なコミュニケーションが難しい場合もあります。コミュニケーションを通じてチームのパフォーマンスを高めるために注力するべき重要な領域として、「ワーキングアグリーメント」の確立や、「シフトレフト」の考え方を採用することなどがあります。

ワーキングアグリーメント

ワーキングアグリーメントとは、チームの総意に基づく一連の「ルール」であり、チームメンバー全員が同意し遵守する必要があります。このルールは、スプリントのレトロスペクティブミーティング(アジャイルチームの場合)や根本原因分析セッションで繰り返し参照され、動的な「生きた文書」として扱われます。

ワーキングアグリーメントの条項が扱う内容として、管理やソフトウェア開発ライフサイクル(SDLC)に関するトピックまで含めることができます。これには、キャパシティプランニング、チームメンバーの役割と責任の明確化、リリース承認のワークフローなどの側面が含まれます。

次の例では、ワーキングアグリーメントは、管理(キャパシティプランニング)と SDLC(リリースワークフロー)の両方の側面にまたがる問題に対処しています。 

ワーキングアグリーメントの例

スプリントのレトロスペクティブミーティングでの例

合意事項1: キャパシティプランニング

根本原因分析セッションでの例

合意事項 2:リリースワークフロー

管理的な側面と SDLC の側面の両方にまたがる事項に対処することで、チームは、ソフトウェア開発プラクティスだけでなく、チームの有効性に影響を与えるより広範な組織的・管理的なプロセスについても足並みを揃えることができます。

「完了 」の定義

現在、ソフトウェア開発チームの大半がなんらかの形式の アジャイル方法論を採用しているため、「完了基準」に関して共通の考え方を確立することが、分散チームにとってより重要になっています。

「完了基準」の概念はチームによって異なることがあります。Leading Agileは、完了(DoD)を「ソフトウェア製品が満たすべきすべての条件または受け入れ基準が満たされ、ユーザー、顧客、チーム、または消費システムによって受け入れ可能な状態になった時点」と定義しています。

「完了基準」の例

以下に、ソフトウェア開発におけるさまざまなタスクの「完了基準」の例を示します。

ユーザーストーリーの実装:

バグ修正:

機能開発:

「完了」の定義について共通の認識を持つことで、分散されたチームメンバーが作業項目の完了に関して設定された基準に沿っていることを担保できます。チームメンバーは、明確化が必要な状況が発生した場合、ワーキングアグリーメントを活用し、支障なく業務を継続することができます。

分散チームのプロセス強化

ソフトウェア開発チーム内で特定のプロセスを定義し、実装することは、品質とアウトプットに大きく影響します。分散チームで運用する場合、これらの要因はプラスにもマイナスにも拡大する可能性があります。ここでは、分散チームの有効性と効率性に大きな影響を与える重要なプロセスをいくつか紹介します。

1.テストケースのレビュープロセス

QAチームメンバーだけでなく、テスター、QAエンジニア、利害関係者を含むすべての人が参加し、負債ではなく「維持価値のあるテスト資産」とみなされる高品質のテストを確実に作成することに取り組むべきです。チームは、テストの種類(単体、統合、機能、手動など)にかかわらず、体系化されたレビュープロセスに従うべきです。

主な検討項目は以下の通りです。

画像: TestRail Enterprise のテスト ケースのレビューおよび承認プロセスにおいて、ユーザーはテストケースがアプリケーションを正確に定義し、組織の標準に適合していることを確認するために、協調的なレビューおよび承認プロセスを設定できます。

2.「環境の所有宣言(Environment Claim)」の定義

多くのチームは、開発中の機能の迅速な開発、テスト、および受け入れを促進するために、テスト対象製品またはシステムの複数の環境を利用しています。チームが分散されていたり、プロセスが十分に確立されていない場合には、環境が「いつ、何を、どのように」デプロイされ、更新されたかを確認する際に混乱が生じ、生産性が低下する可能性があります。

「環境の所有宣言(Environment Claim) 」コンセプトの活用

チームの環境のバージョンと目的を 「主張(クレーム)」または追跡するというコンセプトを採用することで、開発およびマイルストーンのプロモーションプロセスを通じて、チームメンバーが環境を活用できるようになります。ここでは、チームの環境管理をよりよくサポートするためのプロセスの例をいくつか紹介します。

画像: TestRail Enterprise では、固有のカスタムテストケースフィールドを作成および運用し、リリース前にコードをプロモートする際に、テスト環境全体でどのテストケースが実行されたかをタグ付けして追跡します。

3.QA技術的負債の可視性を高める

開発チーム内のコラボレーションは、ソフトウェアエンジニアとQA/テスト担当の間だけで行われるものではありません。分散チームは、インフラやテストに関する技術的負債を可視化することで効果を得られる場合があります。ここでは、プロダクトオーナー、ステークホルダー、QAの間で技術的負債の可視性を高めるためにチームが注目すべきプラクティスを紹介します。

画像: TestRail Enterprise のカスタムフィールドは、自動テストの候補を追跡するのに役立つ機能を提供します。カスタムフィールドとチームのアジャイル作業管理ツールやトラッカーツールとの連携を確立することで、テストプロセスの可視性を高めることができます。

4.継続的改善の重視

分散チームで作業したり、チームを管理したりする場合、全員が自分のパフォーマンスを評価し、改善する機会を持てる環境を整えることがより重要になります。

「1on1」ミーティングの実施

分散チームを管理するリーダーにとって、個人の課題や成果を可視化することは、一元的なチームと比較して困難な場合があります。「1on1」形式の定期的なチームミーティングを実施することは、非常に効果的です。ミーティングでは次のようなトピックを扱います。

画像: TestRailでは、包括的なプロジェクトレポートを生成し、テストカバレッジを追跡し、要件、テスト、欠陥の間のトレーサビリティを確保できます。また、多数のDevOpsツールからのテスト結果をレポートし、効率的な分析を行うこともできます。

チームの「スキル向上(アップスキリング)」

QAチームのメンバーは、職務上求められることがますます多くなるため、一般的に「スキル向上(アップスキリング)」と呼ばれる継続的な学習への意欲を維持することが極めて重要になります。分散チームを監督するリーダーは、継続的な能力開発を確実にするために、新しいスキル、テストツール、テストプロセスの習得を重視して時間を割くべきです。

その際、2つの重要な点を考慮する必要があります。

  1. スプリント計画における優先順位付け: チームのスプリント計画の中で自己学習とトレーニングの時間を割り当て、スプリント全体の不可欠な一部とします。
  2. 測定可能な目標: LeetCodeチャレンジTestRailアカデミーのように、認定、コース修了、スキルベースの評価などの目標を取り入れ、測定可能なトレーニング目標を確立します。これにより、継続的な学習に対する具体的かつ目標志向のアプローチが実現できます。
画像: TestRail Academyでは、定期的に更新される無料のマルチメディアコースを提供しており、ベストプラクティスを学んだり、製品機能をマスターしたり、チームを大規模にトレーニングしたりすることができます。

分散QAチームを管理することや、その中で働くことは、チームの潜在能力を最大限に引き出す適切な手段を講じなければ、困難なものになりかねません。この記事のヒントと戦略を実行することで、分散チーム内のコミュニケーションとコラボレーションが大幅に向上します。

キーポイント

分散チームの管理についてより詳しく知りたい場合、このウェビナー「Strategies for managing distributed QA teams」では、規制の厳しい業界を含むあらゆるセクターに適用できるハイブリッドおよびリモートQAモデルの強化に関する洞察を得ることができます。


Chris Faragliaは、TestRailのソリューションアーキテクト兼テスト推進者です。原子力発電およびヘルスケアITの領域において、15年以上にわたってエンタープライズソフトウェアの開発、統合、テストに従事してきました。また、米国、中央ヨーロッパ、南西アジアに分散するテストチームを管理し、連携してきた経験があります。

(この記事は、開発元Gurock社の Blog 「Managing Distributed QA Teams」2024年3月14日の翻訳記事です。)

関連する製品

テスト管理ツール TestRail

テストケースの管理やテスト結果の記録、チームでの情報共有など、Excelを使ったテスト管理の業務に限界を感じていませんか?TestRailはシンプルで使いやすいUIを提供し、テストにかかるさまざまな管理コストの削減に貢献します。

■ TestRailの特長 ■

日本国内では、テスト管理にExcelを使っていたお客さまからの乗り換えが多く、Web上で完結するテスト管理を実現されています。

TestRail でテスト管理のお悩みを解決しませんか?

モバイルバージョンを終了