成功する外部テストチームの管理術

この記事はDee Ann Pizzicaによるゲスト投稿です。

アウトソーシングされたテストチームとの協働は、大きな利益をもたらす可能性があります。いっぽう、委託先が海外でも国内でも、社外のチームの管理は大きな課題であることも心に留めておくべきです。社内のチームと仕事をする場合と同じように仕事をしてしまい、不測の事態に驚かされることがないようにしましょう。 

以下はアウトソーシングされたチームと前向きで効果的な作業体制を維持するためのヒントです。 

時差を考慮する

社外のテスターとのパートナーシップを選択する理由は、チームの能力拡大であるはずです。その一環として、チームの稼働状況と時差の効果を考慮します。

低価格を提示するチームが地球の反対側にいるかもしれないいっぽうで、それが作業スタイルにうまく適合するかを真剣に考える必要があります。勤務時間にミーティングを行うのに十分な重なりがありますか?双方のチームメンバーは早朝や夜遅くなど、柔軟にスケジュールを調整するつもりがありますか?

当然、自分にとって都合の良いスケジュールは相手とは正反対であるかもしれません。開発チームが寝ている時間に作業するテストチームがいることの利点は、開発とフィードバックの提供というサイクルで作業できることです。何もかもが問題なく動作し、テストビルドが安定していれば、すばらしくうまくいきます。ただし、問題があった場合は双方にとってストレスになります。誰かが通常の勤務時間を大幅に外れて作業することになるか、生産性が停滞するかのどちらかです。

遅延に備える

テストプロセスの遅延の原因になる問題は数多くあるため、融通をきかせ、スケジュールに余裕を持たせるのが重要です。

時計のように正確に作業を進める開発チームもあれば、頻繁に後戻りするチームもあります。チームのくせがどんなものであれ、計画されたテスト開始日にビルドが準備できていないという状況は必ず発生するはずです。だれもが柔軟であるほど、良い関係を保てる可能性が高くなります。

ときには、製品がテストできる状態でも、細かい点で不足があるケースも発生します。テストチームが特定のデータセットや最新版の指示書を要求していたり、フィーチャーフラグの有効化が必要な場合もあるかもしれません。ささいな条件でも、誤って設定されていれば、開発チームが修正を行うまでテスターは待ち状態になり、何時間も無駄になる可能性があります。

要件に関して誤解があれば、特にテストチームが新しい機能の作業を行う場合には、予期していなかった追加の時間がかかるかもしれません。

遅延に備えた時間を折り込むとともに、テストチームのスケジュールについて確認しましょう。多くのテスト会社は複数のクライアントを持っており、スケジュールの変更にも限度があります。

コミュニケーション戦略を立てる

初めに、できるだけ混乱を避けるため、テストチームとのコミュニケーションに使うツールとタイミングを決定します。E-mail、チャットツール、ドキュメントをどのように使うかを検討します。作業の複雑さや頻度によっては、毎日または毎週の電話会議を予定すると良いかもしれません。

やりとりには適切な関係者を含め、双方のチームが気軽に互いに連絡を取って疑問や懸念を共有できるようにします。コミュニケーションの計画について明確にするいっぽうで、改善の機会があれば、方針を転換して新しいものを試すこともためらわないようにしましょう。 

情報を共有する

遠隔地のチームと作業するのに慣れていても、アウトソーシングにはさらに周到な計画が必要です。共通の製品ドキュメント作成やテストケース管理のために共同で利用できるツールがありますが、そういったツールを使うべきです。ツールは情報を最新の状態に保っている場合にだけ有効です。 

機能、設計、デリバリー期日の変更など、製品に影響を与える事項はすべて、テストチームが期待に応え、品質情報をレポートできるかどうかにも影響を与えます。チームをスローダウンさせる可能性がある誤解を最小限にするため、新機能のデモやドキュメントのウォークスルーを検討しましょう。

期待を明確にする

双方にとって作業と期待値が明確であることは必須です。特に注意すべき領域がいくつかあります。

アウトソーシングされたチームを管理するうえで、請求と締め切りの2つは最も重要な要素です。請求に関して言えば、テストチームに時間単位で支払う場合は、コストを監視できるよう、定期的な作業時間のレポートを要求することを検討しましょう。あるいは、月間の予算が決まっている場合は、しきい値を設定し、特定の時間数を超えたらチームに通知するようにします。締め切りに関しては、いつまでに作業を終わらせる必要があるのか理解できるよう、スケジュールを明確にします。

テスト手法も重要な期待値です。製品の品質に関する意思決定を行うのに必要な情報を得ていると感じるために、どれほど系統だったテストを必要とするかを判断します。極端な例では、探索テストが得意なテストチームが望ましい場合もあるかもしれません。その場合、テストチームが自分たちでテストを作成し、設定されたリスクのしきい値と業務知識に基づいて優先順位を決められる権限を与えることを望むでしょう。いっぽうで、業務の背景によっては、アウトソーシングされたチームにあらかじめ決められたテストスクリプトのセットを実行するよう指示する場合もあるでしょう。スクリプトは、リリースごとに完了し、同じように実行する必要がある一連の回帰テストであるかもしれません。どんなニーズであれ、期待を明確にします。

テストケース管理ツールやレポートがあるなら、アウトソーシングされたチームもアクセスできるようにし、進捗や実施されたテストの成功/失敗に関する情報を把握します。理想的な環境では、テストが完了したかを検証するだけでなく、テストをレビューして調整することができます。問題が発生した場合も、どうしてバグが見逃されたか、また今後どうやって問題を防止するかのヒントを得られます。 

責任を引き受ける

製品を開発し、テストするのが誰であっても、あなたは品質に関する責任から逃れることはできません。製品に大きなバグが入り込んだとしましょう。オフショアのチームがテストでバグを見逃したのであれば、チームを非難したい誘惑に駆られるでしょう。テストチームを糾弾し、解雇することさえ可能かもしれませんが、スケープゴートを仕立てても製品の問題は直りません。最終的に、製品の品質に責任を持つのはあなたです。 

先を予想し、社外のテストチームとのパートナーシップで必要になる作業を把握しましょう。そうすれば、多くの組織が遭遇する、よくある問題を避けることができます。

他のテストの問題と同様に、アウトソーシングも万能の解決策ではありません。しかし、適切なチームを見つけられれば、適切なプロセスもあるかぎり、開発組織の強化になり、製品の品質が向上します。

Dee Ann Pizzicaは熱心で好奇心にあふれたソフトウェアテスターです。15年以上にわたって、さまざまな業界の顧客向けに、小規模からエンタープライズ規模まで、きわめて複雑なビジネスロジックを持つカスタムモバイルおよびWebアプリケーションをサポートしてきた経験があります。現在、Dee AnnはBRDのDirector of Engineeringとして勤務し、iOSおよびAndroid向け暗号通貨ウォレットに取り組む才能あるチームとコラボレートしています。

(この記事は、開発元Gurock社の Blog 「Successfully Managing Outsourced Test Teams」2021年7月22日の翻訳記事です。)

eBook 公開中

Paul Gerrard著 効果的なテスト管理12の秘密 (日本語)

テスト計画やテスト管理に役立つ12のトピックを解説します。

詳細はこちら