(事例) Zynga のゲーム開発ツール

MorganFace.png*本ブログは ATLASSIAN blogs を翻訳したものです。本文中の日時などは投稿当時のものですのでご了承ください。
*原文 : 2010 年 3 月 29 日、Morgan Friberg 投稿 “(Case Study) Zynga On Game Development Tools

zynga-logo-cmyk_TM.jpg
設立: 2007 年
本社: カリフォルニア州サンフランシスコ
業界: ゲーム開発
主力製品: ソーシャルゲーム (Facebook, MySpace)
従業員数: 750 名以上
使用ツール: JIRA, GreenHopper, FishEye, (Crucible も間もなく)

私たちは、サンフランシスコで開催されたゲームデベロッパーカンファレンス 2010 に参加した一環として、インタビューに参加することに興味があるかどうかを知るために、600近くのゲーム開発顧客にコンタクトしました。Zynga がアトラシアンのツールを使用していることを知り、私たちは喜びました。彼らがケーススタディの作成に乗り気であること、そして私たちのサンフランシスコオフィスから歩いていけるところに彼らのオフィスがあることを知り、私たちはさらに嬉しく思いました!

2007年に設立されたZyngaは、ソーシャルゲームの分野で、最も成功しているゲーム開発会社の一つです。2009年12月に1億8000万ドル (約 162 億円) を調達し、Zyngaは、真剣な投資家やベンチャーキャピタリストの注目を集めている革新的なビジネスモデルを築いていることは明らかです。今日では、FacebookやMySpace、iPhone上で非常に人気のある彼らのゲームを見つけることができるでしょう。Inside Facebook ブログによると、2010年2月、Zygnaは FarmVille、Cafe World、Texas Holdem Poker、Mafia Wars、FishVille、そして Petville により Facebookで最も人気のある 10 のゲームのうち、6つを占めました。合計して、これら6つのゲームは209,490,021 のアクティブユーザーを抱えています!

Zynga の QA マネージャーである Micah Figone 氏は、アトラシアンのバグトラッキングアジャイルプロジェクト管理perforce 統合、そしてピアコードレビューツールの使用について1時間ほど座って、親切に話してくれました。また、一般的な、ゲーム開発についてのおしゃべりもしました。Micah は “いろいろな形式で、それを認識しているかどうかに関わらず、全員が” Zynga においてアトラシアンのツールを使用しており、彼らの広く人気のあるゲームを作るために、どのようにそれらを使用しているかについて説明してくれました。

FarmVille Logo
Cafe World Logo
Mafia Wars Logo

インタビュー

それでは、自己紹介をお願いできますか?
私の名前は Micah Figone で、ZyngaのサンフランシスコでQAマネージャーをしています。それは永遠のように思えますが、私はZyngaで1年6ヵ月働いています。私の部門では、会社全体の QA を担当しています。私のチームは、自動化から、通常のブラックボックステスター、セキュリティテスターまで、機能により異なります。

何のプログラミング言語を使用して開発を行っていますか?
Mafia Wars や Vampire などのゲームはすべてPHPベースです。それから、FarmVille、Cafe、YoVille、Poker、すべて Flashです。それらは、本当に2つのスペースに分けられます:PHPと Flash です。

どのゲームがアトラシアンのツールを使用して開発されていますか?
それらすべてです。あなたが遊ぶことができるすべてのゲームは、アトラシアンのツールと少なからず関わりがあります。

アトラシアンのツール

どのアトラシアンのツールを、現在使用していて、どのようにそれらをZyngaに導入したのですか?
現在、私たちはもちろんGreenHopperと共にJIRAを使用しており、FishEye も使用しており、まもなく Crucible も使用する予定です。ウェブベースのコードレビューツールは素晴らしく、’やあ、君の机の横へ椅子を動かさせてくれ’ などと言う必要がありません。誰もがレビューを行うことができるので、机の周りに20人も集めて群衆を作る必要はありません。それが私の絶対にしたかったことです。また、Confluenceを評価しているところです。

1年半前に働き始めた時、別のバグデータベースを使用していました。すぐに私は全員をJIRAに移行させました。他の製品については、すでにここで使われていました。それらは頻繁には使用されていませんでした、JIRA と FishEye を統合し、情報を表面化させたり、’やあ、デベロッパーの皆さん見てごらん、君たちのコミットを見ることができますよ – ただ、課題番号を入力すると、それは自動リンクを生成します’ と言うまでは。

つまり、あなたはJIRAのエバンジェリストですね?
そうです!私は前に他の企業でそれを使用していたし、同様に他の製品も使用していましたが、私にとってJIRAは、もっとも簡単で、最も使いやすい直感的なインターフェイスなのです。私たちは、JIRAを4.0にアップグレードしてブーリアン検索を使用することを楽しみにしています。高度な検索は重要です。すべての開発チームは自分のプロジェクトがあります。いくつかの開発チームは複数のプロジェクトを持っています。

何人ぐらいの人が、会社全体で当社の製品を使用していると推測しますか?
いろいろな形式があったり、認識しているかどうかを別にすれば、全員が使用しています。ここにいる皆が、共有サービスチームからネットーワーク最適化チーム、QA、そして開発チーム自身からの、ITへの要求、人事採用、設備への要求などであろうと、使用しています。

GreenHopperの使用についてコメントを頂けますか?
一部の人々が他の部門よりも多くGreenHopperを使用しています。ある人々はタスク管理のために使用しています。それはただクリックするだけで良い直感的なインターフェイスを提供しているので、GreenHopperは素晴らしいと思います。’ドラッグ、ドラッグ、ドラッグ’ という感じでそれはとても速いのです。

アトラシアンの製品は試作工程と製品化工程においてどのように使用されていますか?
それは全て社内で行われています。試作工程のゲームは、確実にツールの範囲外です。より完成に近づくと、私たちは excel シートを入手し、JIRAにインポートします。その後は、誰もがJIRAを使用します。ここでは試作工程はとても短いので、それは一種の楽しみのようなものです。

すべてのチームが同じリズムでイテレーションを行っていますか?
いえ、それは各チームにより異なります。私たちは特定のユーザーグループに、新しいフィーチャーを使用させ、それから、そのフィーチャーを他で反復させます。

タイムトラッキングについてコメントを頂けますか?
それはたくさんのことに使用できるので、私は人々に使用させようと努力しています。それは、どのように役立つのかを開発チームに見せるということです。しかし、私たちはとても速く進むので、それは不適合である感じです。いくつかのゲームのチームがそれを試してみましたが、一部はそれを続け、一部は使用頻度が落ちています。私は、バーンダウンチャートと’これがあなたの予測です’ と言う事が好きですが、それは大きなマイルストーンだけに上手くいきます。それはより複雑で大きなフィーチャーにとって便利なものです。そのレベルでのプロジェクトの計画は非常に重要です。

人々はあなたが期待していなかった方法で製品を使用していますか?
私が期待していなかった方法ではありませんが、期待していなかったカスタマイズを時々見かけます。時々私は、’なぜあなたはそれをするのですか?’ と質問します。QAとして、私はすべてに目を見張りたいのです。時には人々は、さまざまなワークフローを欲しがったり、異なる方法でバグをクローズしたいと思います。私は “OK、やってみましょう’ と言うでしょう。

いずれかの方法で製品をカスタマイズしましたか?(画面/フィールド/ワークフロー)
私たちのすべてのゲームは、同じ画面を使用しています。もし私のフィールドの設定画面を見ると、それがいくつあるのか私は教えられないでしょう。一部のチームは、異なるタスクに対して、異なるフィールドを欲しいと思っています。同じことがワークフローにも言えます – フィーチャーにおける異なる課題タイプごとに異なるワークフローが必要で、異なるフィールドのセットを欲しいと思うでしょう。 

もし他のゲーム開発会社がアトラシアンのツールの使用を検討しているとしたら、あなたは何と言いますか?
それは彼らが必要なものです!私が思うに、他の製品でも学んでみるととても強力であるかもしれません。しかし、JIRAは素晴らしいです。なぜなら、1)使い方を学ぶのに多くの時間がかからない、2)JIRAは他のものと同じぐらいの強力さを提供するが、JIRA は学習曲線が不要、そして 3)検索したい場合それが簡単、であるからです。あいまい検索と相対検索、そしてブーリアン検索、どれもあまり学習の心配をする必要はありません。

ゲーム開発

どのようなソフトウェア開発方法論をあなたのチームは使用していますか?(スクラム、XP、ウォーターフォール)
私たちは、ほとんどの部分にアジャイルを採用しています。それは間違いなく、ハイブリッドです:私は、本に引用されているように、誰もがアジャイルを使用できるとは考えていません。チームに合う方法を採用すべきです。しかし、チーム同士の間で、大部分において、彼らは皆、チーム独自のアジャイルを行っています。いくつかのチームはたくさん使用し、いくつかのチームはそれほど使用していません。GreenHopperを使用している様々なチームがあり、そして、一部のチームは使用していません。

そのアプローチの強みと弱みは何ですか?
弱みについての私のコメントですが;アジャイルから必要なものを使用することについて何か弱みがあるのかどうか、私は分かりません。開発においてとても迅速な人々にとって完全に合っているという事実にたくさんの強みがあり、また、柔軟性においても多くの強みがあります。反応することができるからです。もしウォーターフォールを使用している場合は、かなり以前から計画をする必要があり、何か変更が発生した場合どうするのでしょうか?設計ドキュメントとそれに関連するものを含む全てを変更する必要があります。QAとして、私は間違いなく設計ドキュメントを信じていますが、時々、本当に速く進み、後でそれらをアップデートする必要があります。つまり私が思う一番の強みは、間違いなく柔軟性です。

あなたの意見では、ゲーム開発にとって、ソフトウェア開発ツールはどのぐらい重要ですか?
それは非常に重要で、人々の生活を簡単にするためのツールを私は強く支持しています。これらのツールを通じて、情報を本当に表面化し、レポートを自動化し、そして閲覧して考えるために、統計情報を欲しい時にいつでも見られるダッシュボードを人々に提供できます。大画面テレビにそれらを表示し、自動更新で見られるようにし、行っていることの統計情報を見られるので、どのように仕事をしているのかを理解することができます。

ゲーム業界において、ソフトウェア開発はどのように変化していますか?
Zyngaはこの最前線にいます。通常、ゲームの開発サイクルは、新しいパッチをリリースするまでに数か月かかります。私たちはユーザーが言っていることに適応させて変化させるというアプローチを取っており;現実世界で物事をテストし、彼らのフィードバックを得ています。そこが、ゲーム開発が行われていると私が確実に考えている場所です。

ゲーム開発スペースにおけるイノベーションの推進についてコメントを頂けますか?
私は、ソーシャルネットワーキングゲームのスペースが、言わば新しい産業になると思います。私たちは、別のルールセットによって活動しています。これらのルールの強力さに、大規模なゲームスタジオが気づくのは単に時間の問題だと私は思います。私がここで仕事をする前に、MMO (訳注:Massively multiplayer online game) スペースから来ました。私は長い開発のサイクルに慣れています。私が最初にここに来たとき、’とても速く進めるけれど、それは持続可能なのか?’ というように思いました。それは全く持続可能で、しかし、非常に強力です。これは、他の人が行えるように、ユーザーとの交流に手を差し伸べます。MMOにおいて急速な開発を行うことはできません。今日のユーザーは、いつももっとたくさんのことを欲しがり、聞きたいと思っています。私たちが簡単に調整できることがあります。新しいフィーチャーをテストする時、みんながそれをしているわけではありません。

ここの文化は伝統的なゲーム会社と異なりますか?特にリリース日に関連して。
私はリリース日付近でストレスが減り、どのフィーチャーがリリースされるべきかを考えるときにもっとストレスを感じます。そこに優先度の高いアイテムがある場合は、間違いなく ‘神様、これを今やらなくては’ となります。2週間後にリリース日を予定している場合は、その2週間にストレスを感じます。

Zygnaの Micah Figone(QA)と Lisa Chan(PR)に大変感謝いたします!ありがとうございました