どんな作業パイプラインでも、時間が重大な要素を占めているのは周知の事実ですが、ゲームやソフトウェア開発における品質保証では特に時間が問題になります。どのプロジェクトにも必ず締め切りがあるので、プロジェクトマネージャーは綿密な計画を練り、その中に達成しなければならない複数のマイルストーンを設定します。関係者全員にこのスケジュールを遵守させることですべての締め切りを守り、プロジェクトの提出を成功させるため、時間を管理する必要があります。これはDLCでもゲーム本編でも変わりません。
顧客はプロジェクトの各段階で進捗状況を把握する必要がありますが、作業が行われているタイムゾーンと異なるタイムゾーンに顧客がいる場合、スケジュールの管理はより困難なものになります。大げさではなく、Sideが世界中に拠点を作る理由のひとつに、この問題への対応があります。品質保証のタイムゾーン内納品によって、どんな課題とメリットが生じるのか深掘りしてみましょう。
課題
上記のように、プロジェクトのマイルストーンを達成するには、顧客とのコミュニケーションが重要になります。顧客の標準的な勤務時間が仕事の行われる場所と大きく異なるタイムゾーンにある場合、当然タイムリーなコミュニケーションが難しくなります。これは関係者と情報を共有するときだけの問題ではありません。問題の根っこはもっと深いところにある場合があります。
適切で強固なQAを実現するためには、最新の作業用ビルドと、テストに必要なツールが欠かせません。Side Montrealで品質保証マネージャーを務めるDeanne Curtisはこう言います。「QAチームは、テストの指針として顧客に特定の文書を求めることがあります」「文章が手に入らず、疑問への答えも得られなければ、チームの作業が滞る可能性があります」
プロジェクトに取り組む際、顧客とのコラボレーションで、チーム同士が協力し、問題を解決ししたり、イノベーションがもたらされたりします。しかし、チーム同士のタイムゾーンが異なる不便な状態では、こうした協力関係の構築は難しくなるのです。そして、障害に対処するために臨時会議を開かなければならなくなり、それ自体がプロジェクトの時間とコストを増加させる要因となります。チームの絆を深めることは、プロジェクトを遂行する上で価値あるツールになりますが、そのためには実際に会って交流する必要があるのです。しかし、実際の勤務時間が合わなければ、それは非常に難しく、時には不可能な場合もあります。
メリット
両者が同じタイムゾーンにいることでコミュニケーションが取りやすくなり、必要に応じてシフトの変更をカバーするために、勤務時間を重ねられます。必要なときに双方からの援助がすぐに得られ、直ちに実行に移すことが可能です。テストチームには、適切な文書とトレーニングが迅速に提供されるほか、コミュニケーションの齟齬を避けるために会議にも参加できます。顧客のニーズが変化した場合、テストはすぐに変更され、関連する欠陥の数が減り、生産性を向上させることができます。障害の発生は避けられないものですから、タイムゾーン内チームには常に最新の情報が提供されます。顧客、ベンダー、開発チーム、QAチームがそれぞれの努力を調和させ、最適な効率を達成できるのです。
シナリオ
ここでは、タイムゾーンが異なるチームが参加するプロジェクトの例を挙げて、こうした要素がどのように問題解決に役立ったか見てみましょう。
最初に取り上げるプロジェクトでは、顧客が求める内容は明確に共有され、社内チームによって顧客のツールに関するトレーニングも行われました。開発チームは組み込み型でしたが、リーダーは置かれず、チームは顧客が最適なソリューションと見なしたアジャイル手法に従いました。また顧客からは週に一度、フィードバックがありました。
タイムゾーンが異なるにもかかわらず、作業に当たるチームは顧客のコアタイムに連絡を取り合うことを選択しました。そしてカンバンボードやエピックなどを使ってタスクが設定されました。このプロジェクトは成功し、現在顧客には、内部チームの顧客サイドのためにプロジェクトを進行するSideのPMやリーダーが用意されています。Sideチームは、LiveOps、プレイヤーサポート、自動化、そして日々のプロジェクトの基準を引き継ぎました。チームの総数は、もともとの5人から拡大して25人になっています。現在、顧客担当のチームが5つのプロジェクトを堅調に進行させています。
顧客は24時間体制で、モントリオールとインドの2つのチームで対応することを望んでいました。 2つのチームはまったく別のシフトで働いていたため、一緒に仕事をすることはありませんでした。インドとモントリオールのチームは、フィードバックやタスクなどのやり取りのため、社内のチームが勤務を開始するのを待たなければならず、顧客側とのコミュニケーションに遅れが生じてしまいました。 それによって、コミュニケーションの齟齬、障害によるテストの遅れ、タスクの不明確さ、チームが機能しないといった問題が発生しました。
Sideは、インドチームを2つのシフトに分け、第1シフトとモントリオールシフトの時間が重なるように働くことを提案しました。チームは、社内チームやSideチームと日々スクラムを組んで励むことに専心します。Sideチームは、チーム間、そして顧客に引継ぎを行いました。これにより、顧客から質問への回答をもらい、タスクを更新してもらえるようになりました。
顧客から毎週フィードバックがあり、社内とSide側の両方のチームが強化され、団結していることを実感しました。モントリオールチームは、シフトの開始と終了をチームの中で分けました。これは非常に上手くいったため、チームはこのプロセスを続けています。
インドとモントリオールのチームがシフトを分けたことで、チーム間のコミュニケーションがクリアになり、より迅速で効率的なテスト工程を実現することが可能になりました。これによって開発チームは、提出に向けた障害や重大な問題を迅速に修正・対処できるようになり、全体としてビルドの回数を減らすことができました。加えて、各チームがコンスタントにコミュニケーションを取り、タスクやテストを共有・確認することで、テストが重複することがなくなりました。
QAマネージャーは、プロジェクトの開始前に顧客とニーズについての話をしました。その際QAマネージャーは、担当のチームリーダーとニーズについて議論し、可能な解決策を導き出しました。顧客とチームリーダーの合意の下で、1チームが顧客と同じ時間にシフトを開始し、別の1チームがその2時間後に開始して、開発チームの1セクションに合わせました。
各チームは、社内外の関係者から求めているものを明確に示された状態で、密接に意思疎通を図りながらプロジェクトをスタートしました。開発チームとのコミュニケーションとタスクの割り当てにより、テスト結果の迅速化と重複した問題の削減を実現しました。 また、ビルドによるエラーが減り、提出目標日を早めることができました。
複数のタイムゾーンをまたいで仕事をするメリット
タイムゾーンをまたいで仕事をするのはデメリットしかないように思われるかもしれませんが、顧客によってはメリットとなる場合もあります。Side BucharestのQAマネージャーであるAdrian Danalacheは、「プレイヤーが常にゲームサーバーにアクセスしているようなライブゲームでは、特にタイムラインやビルドの提出が厳しい場合、24時間体制のサービスが必要です」と述べています。「関係する地域にサポートチームを設置することが、この事態に対処する最善の方法です。チーム同士が定期的に引き継ぎを行い、お互いの意思疎通を明確にすることが必要なのです。チーム同士が最低でも1〜2時間は一緒の時間に働いてコミュニケーションを取り、重要な問題を明確化したり、検証を求めたりできるようにするのが理想です」
このような24時間体制のサポートは、テストサイクルの高速化、回帰時間の短縮、新しいビルドの生産やホットフィックスにも有益です。しかし、一般的には、プロジェクトの開始時に解決策が決まっていない限り、複数のタイムゾーンで仕事をするとメリットよりも障害の方が多くなります。Sideでは、グローバルスタジオの展開を進めており、プレイヤーが存在するすべての地域で手厚い顧客サポートを提供することで、タイムゾーン関連の問題を改善しています。