やっとまめることができたCEDECのレポートを公開します。現地での参加は7、8年ぶりかな。以前は毎年さんができていたのですが、地方在住はいろいろと大変です。仕事の都合で初日のみの参加でした。
最初に参加したセッションは
「Keep on Moving – Process Agility at Bungie/動き続ける-Bungieにおけるプロセスアジャイル」
こちらのレポートが本当に長くなりました。他のレポートは短めになる予定なんですが。このセッションは本当に受けてよかった。内容が濃いだけでなく、付随して伝えたいことも目白押しです。
早速レポートします。
■プロセスアジャイルとは?
アジャイルという言葉ですが「俊敏」という意味です。サッカーとかやっているとアジリティという言葉をよく聞くのですが、語源的には同じになるのかな。
メッシなんかが人ごみから飛び出す能力を見て、「アジリティ」が高い、というような感じで使いますね。
あまり「アジャイル = 俊敏」というところはそんなに気にしていないかったのですが、このセッションを受けてゲーム開発を続けていくためには「チームを俊敏に変えていかないとダメである」、「それがアジャイルである」ということがよくわかりました。今の日本の開発の生産性の低さの原因がここにあると思いますね。
プロセスアジャイルということですが、基本 Bungieの チーム運営方法の紹介という感じですね。
■BungieとLinda Fane氏について
Bungieというのはアメリカのゲームスタジオです。
Haloの制作元。 Haloを出した後Microsoftの傘下に入ったのですが、その後再独立。 今Halo自体は Microsoftが権利を持っているようです。今はDestinyの制作をしています。
5億ドル(500億円)以上の開発費、リリース後半年ぐらいで5億ドルの売り上げを達成、という規模間が全然想像つかない感じですね。
このスタジオのシニアアジャイルチームリーダーであるLinda Fane氏の講演だったのですが、もともと何をやられてた方なんでしょうね。というところで調べてみましょう。
https://www.linkedin.com/in/lindafane
MicrosoftやYahooで プログラムマネージャーやられてた方ですか。日本だとプログラムマネージャーってコーディングしちゃうイメージなんですが、もっと上流工程の設計なんかをやってたんじゃないかなと推測。
スクラムマスターでもあるわけですか。やっぱりこういった仕事を海外でやろうと思ったらスクラムマスターなんだとおもいます。
シニアアジャイルチームリーダーというのはチームを最適化していく役割、という感じかと思います。日本だとあんまり聞かないですね。その仕事やります、そういう人を雇いたいと思います、っていうと賛同を得るのはむつかしかったりしそうです。
割と驚きだったのが Bungieに入社4年目で、その役割を与えらえているということ。日本だとなかなか中途で入った人にそういった大事なところを任せないですよね。そういうところがアジャイルなんでしょう。
少し脱線ですが日本企業の問題は
・優秀な人を採用しない(できない)
・優秀な人であっても任せない
・任せてしまったら優秀じゃないと分かっても役割を外せない
っていうところにあると思います。
優秀、優秀じゃないって言っていますがその会社に合う合わないってあるので常に優秀な人も常に優秀じゃない人もいないですよね。
さっさと任せてダメならさっさとはずして違う会社に行っちゃえばいいと思うんですけどね。そういう判断する人をネガティブにとらえる人が多いですし、それがうまく回っていかなき原因だと思うんですが。
別の会社だったら結果が出やすい人が、出にくい会社でそれでも頑張って結果を出そうとすることに合理的な意味ってあるんですかね?
ここからは講義内容を抜粋していきます。ことろどころ私の感想が入ってきますがご容赦を。感想でくくっていないところは基本的に講義内容です
■シニアアジャイルチームリーダーの仕事はどういうものか
・ゲーム開発は、終わりなき進化をしなくてはならない。
・ゲーム開発は、 急激な変化についていかなくてはならないそれを実現するためのディレクターである。
■開発規模によっての開発手法
Bungieも開発規模が100名程度のときはみんなの顔が見えているので、チーム運営に大きな工夫が要らない状況だったそうです。130名くらいになってきて人間関係を構築するのが難しくなってきたとのこと。
~個人の感想です:その1~
130名超えると難しくなるというはその通りだと思いますね。以前いた会社はまさに130名超えたあたりの体制を作るところで失敗しました。
それとは別に開発者が1000人以上の大きな会社にいたこともあるのですが、プロダクションごとに最大300名くらいで区分けしていましたね。
一人の責任者で管理できるのが 最大でも 300人くらいという感じですね。わたしも300人くらいだったらこうやったら管理できる、っていうイメージがあります。
細かく問題点を整理すると、100名超えるとまとまった人数の管理業務の人が必要になってくるんですよ。
そこまでは作業兼任で2、3人でやっていたりすることが多いと思うのですが、100人を超えたあたりで管理業務を役割でわけで複数人でやらないと回らなくなってきます。
ここが問題。100名いて総務的な人を二人、人事的な人を二人、経理的な人を二人、機材やネットワーク管理を二人、法務を一人、そのマネージャーを一人とか用意すると管理系で10人必要になってしまいます。
これ10%がコストセンターになっちゃうんですよ。感覚的なところで申し訳ないのですが10%のコストセンターはデカすぎますね。
10名の管理人員を置くのであれば、開発メンバーは300名くらいにして一人あたりのコストセンターの負担が3%くらいまでに抑えないと一人当たりの利益創出をするための労働時間が結構な負担になってしまうのです。
ソーシャルゲームがはやり始めた時に多くの会社が上場していきましたが、ここが分水嶺になったんじゃないですかね。
無理にでも300名以上にできたところは上場できたし、人員が確保できなかったところは上場できなかったように思います。まあすべてに当てはまるわけではないですが、とりあえず参考までに。
~個人の感想です:その1以上~
Haloのころは200名くらいの体制。アート、アニメーション、デザイン、エンジニア、テスト、という役割に分けていわゆる縦割りで作業を行っていた。
ただこのやり方はスケジュール全部予定通りに進まないとうまくいかない。どこかが遅れると破たんするし、大概どこかが遅れるもの。
~個人の感想です:その2~
そうですねえ。私は結局これが嫌なので先のほうまで規定したスケジュールを作らないことが多いんですよ。
各担当は作りたがる。何で作りたがるって、「自分はちゃんとやった」が言いたいからなんですよね。それ本当に大丈夫?良い形でリリースできないと意味がないのですが。
私は各担当の作業進捗を把握して、遅れているところに合わせて各担当の作業を常時調節します。このやり方をアジャイルって呼ぶと、「インチキ」呼ばわりされるのでいわないのですが、個人的には日本のゲーム開発には一番向いているアジャイルの対応方法かと思っています。
取りまとめをしている人がいなくなると破たんするのが弱点だったりしたりしますが。 これプログラムもデザインも、プランニングもある程度理解していないとできないので任せられる人があまりいないのも問題だったりします…。
本当のアジャイルを行うのであれば、全メンバーにアジャイルやプロジェクトマネジメントの基礎を教えないといけないんですよ。
アメリカはできる人が多いんですよ。大学で勉強することが多くて、それができていないと職に就けないから。
日本だとそれがないのでわからない人が多い、「わからなくてもいい」、「でもアジャイルでやった方がいいんじゃない?」、「自分はデザイナーだからプログラムのことは理解できない」、「でもディレクターだ!」とかいうことがまかり通っていて、はっきり言って狂気でしかないですけどね。
~個人の感想です:その2以上~
ここで考えたのが、個別の技術ではなくて統合する手順が必要だということ。縦割りの役割分担だと
・プレイヤーのことを考えない
・自分たちのスケジュールの残りのことしか考えないという状況に陥りがち
ここでDestunyのプロモーションビデオを流しました。いわゆるハイエンドのゲームプロモ、見た目だけではなく新しい遊びやストーリーがあるということを示したもの。
結局実現しないといけないのはそのムービーにあるように、興味を持ってもらえる要素がどれくらいたくさん入っているかということ。であれば個別のスケジュールをこなすことではなく、それを実現するためにどうするのかを考えなくてはいけないですよね。
それらを実現するために以下のような対応をしていました。
・作るものをBoxという単位で考える。(※Boxとは、バージョンアップの単位をBoxとよんでいる感じだと思います。)そのバージョンを作るための組織化ということ
・"cross discipline terms"…個別のコンテンツをつなぐチーム
・developing holistic player experiences …個別のコンテンツを作るチーム
というものを複数編成。デザイン、エンジニア、という単位でなくコンテンツごとに区分けしたチーム体制。これによって開発能力が2倍になったとのことです。
~個人の感想です:その3~
この体制で制作をやってみたいなあ。でもこれやろうとするとセクションマネージャーいる意味がなくなるんですよね。良くも悪くもセクションマネージャーなくす!という選択は現場に混乱を生むかと。それができないのがアジャイルじゃないということなんでしょうが、 Lindaも急に変えるとよくないと言ってましたけどね。
正確にいつくらいのことなんでしょう。Halo2が2004年でHalo3が2009年なので、10年からへたすると15年くらい遅れているわけですね。そりゃ開発能力に差ができるわけですよ。
また日本の場合スプリントをやるにあたって祭日が邪魔なんですよね。スプリントって2週間、とかって決めてそれを変えないのですが祭日が入ってくると作業日数がずれるんですよ。スプリントの区切りを各曜日で決めるんじゃなくて、営業日できった方ががいいのかもしれませんね。
1年ほど車のプログラムの仕事をしていたことがあったんですが、トヨタカレンダーっていうものがあってトヨタ系の企業はこれに沿って作業しています。祝祭日がないんですよ。代わりに年末、GW、お盆にたっぷり休みがある。工場を動かす効率化でこうしているんですが、スプリントが機能しやすい。
だからと言ってトヨタカレンダーの採用なんて簡単にできないですよね。ああアジャイルじゃない。
やってみると厳しいんですよ。子供と休みが合わなくなったりするので。あとこむ時期にしか休めないので旅行とかお金かかったりします。配偶者の田舎が遠かったりすると、うまく帰省できないことが起きたりしますね。
~個人の感想です:その3以上~
新しいバージョンを出していくうちに問題が出てきた。ゲームが売れ、評価も高かったがエンドゲームがないという不満が出てきた。
なぜこんな大事なことを見失ってしまっていたのか。組織構成に問題がある。
team layer 各コンテンツ
area layer 各コンテンツをまとめたもの
project layer 各コンテンツをまとめたものの集合
area layer は m layer を複数まとめたもの、 project layerは area layer を複数まとめた構成。この状況で制作を続けていて project layer同士が分断されてしまっていた。
各バージョンが出たところでチームを解散するので必要な知識、経験が引き継がれなくなってしまう。Live teamという継続するチームもあったがリリース後にしか編成されないし規模が小さかった。チームを長年続けているとチーム文化がうまれ健全化していくことが多いが、Box制作時は都度解散するからそれがなくなってしまっていた。
~個人の感想です:その4~
日本だとこれは逆に起こりにくいですね。アメリカだとパッと雇って終わったら解散、ってなるから起きちゃうんでしょうね。
~個人の感想です:その4以上~
Boxのつくり方はDestinyにあっていないと判断し、中心メンバーは常に残るような体制にした
都度都度最適なチームの形は変わっている。今まで変えてきているし、これからも変えるだろう。正解が大切なのではなくて、変えていくことを続けることが大切なのだ。
■その他言及していたこと
話の順番は入れ替えているのですが講義の中でよいと思った話を書いていきます。
・プロデューサーは継続的な改善を促さないといけない
自発的に動いていかないといけないということですね。日本だと逆になっていますよね。火が付いたら消しに行くのが仕事みたいになってしまっていますから。火がつかないようにする方が大切なんですが。
まあ、嫌がられたり評価されなかったりしますから。
アジャイルが大切、アジャイルが大切なら先んじての対応が大切、だからそれを評価する、という流れにならないと改善していかないでしょうね。
・継続的な改善といってもBungieでやっているのは大したことではなく、定期的に会議を開いて、気が付いた継続改善案をポストイットに張っていくだけ
チーム改善に銀の弾丸があるわけでなく、結局定期的な振り返りが一番有効ということですね。
・Linda氏の机に張っているのが以下の画像
四角い車輪で物を運んでいる人に丸い車輪を渡そうとしているんですが、忙しいからそんなものいらないよと返答している様子ですね。付け替えれば途端に作業が改善されるのに。でも形を変えると開発の現場ではあるあるですよね。
変化に弱い、できればやりたくないのは Bungieでもそうだそうです。でもやらないとねということ。
またしてもなんですが、これ日本のゲーム開発本当に弱いんですよね。原因は簡単なんですよ。リーダークラスがプロジェクトマネジメントを学んでいないから。
彼女なんかスクラムマスターだったりするわけです。海外のゲームスタジオのリーダーは大概こういった資格を持っていますよね。
資格を持っていないにしても、勉強くらいはしてほしいのですが、やらない人たちが平気でリーダーです、っていって改善提案しても受け入れないのが現状の現場。
日本のゲーム開発が残っていけるのだとすれば、早晩日本もそういう状況になるかと思います。できない人は消えていくんじゃないんですかね。
・チーム改革はうまくいかないこともあるし、柔軟性が大事
アジャイルの12のプラクティスのうち特に下記を重視しているとのこと
1、反映適応…継続的改革 作った後に改善する。
2、チームの最優先課題はプレイヤーが求めているコンテンツを提供すること
デザイナーがデザインをして、エンジニアがコーディングする、ということでなくみんなでプレイヤーが求めているものを行うということ
~個人の感想です:その5~
このあたりは本当に実感することです。日本のゲーム開発が面白くなくなってきた原因どこにありますかって聞かれると、各セクションマネージャー置いたからじゃないですかね。
私が開発始めたころは、そんな人たちいなかったんですよ。プロデューサーもいなくて、ディレクターという言葉もあんまりつかってなくて、リーダーがいるだけでしたね。
その時代はその時代で大変で、リーダーに嫌われると仕事がなくなる。そのまま会社に居場所がなくなるわけです。
人の好き嫌いとか、会う合わないで決まったりもするので多くの理不尽な判断がされていたかと思います。
それを解決するためにセクションマネージャーを置いて、各チームに適切な人を送るような形に変化しました。各メンバーの心の平穏にはこちらの方がいいんですが、楽をしようという人が増えてしまってうまくいっていないような気がします。
どんなコンテンツであっても複数人で作成するものでリーダーの意図を組む努力をしていないものはないですよ。
リーダー、ディレクターの指示の意図をくみ取ろうとせず、安易にわからないから違うチームに行く、ということを続けていればそりゃゲームは面白くならないですね。
各セクションマネージャーは甘やかすだけではなくて、そういったこところも見ないといけないかと思います。
~個人の感想です:その5以上~
・Bungieはアジリティを取り込むことで会社の構造を変化し、プレイヤーが求めるゲームを作れるようになった!
これがファクトでLinda氏の一番言いたいことだったのではないでしょうか。
■最後に
アジャイルを使ったことがある人という質問に対して75%くらいの人が手を上げていましたね。アジャイルに関心がある人たちが来ているということもあるけれども、思ったよりもアジャイルのやり方は浸透していると考えた方が良いかもですね。
500億稼ぐプロジェクトだからそういった体制が作れる、という意見がありますが500億掛けたからそういった体制が作れて、そういった体制が作れるから500億稼げるんだ、ということも言えるかと思います。
どういう戦い方をするのかはそれぞれで考えればいいことだと思いますが、海外のライバルはこういった手段をとっているということをは覚えておかないといけないと思います。
今ある開発環境をどのように変えていかないといけないのかを真剣に考えさせられた、本当にためになるセッションでした。