グリー 開発本部 情報システム部 姫野 貴人氏、伊藤 仁美氏に、Jira、Confluence を活用することになった経緯と導入効果について詳しく聞きました。
グリーは、SNS「GREE」を中心に、ソーシャルゲームなどを提供している企業です。年商1,522億、従業員数 1,894人(グループ全体・2014年3月末現在)
グリーではJira、Confluenceなどアトラシアン製品を、次の4つの用途で、全社的に活用しています。
開発部門が新規タイトルの開発を始めるときは、必要に応じて「Jira(開発課題及びバグの管理ツール)」、「Confluence(技術情報管理ツール)」、「SharePoint(その他、情報管理ツール)」を利用します。
これら3システムの総合的な管理は情報システム部門が行います。しかし設定変更やカスタマイズは、ユーザーである開発部門が自由に行うことができます(※ Jiraは、社内規定により、変更不可)
Jira、Confluenceの使用は「強制」ではありませんが、現在は「事実上の社内標準」となっています。「釣り★スタ」、「ドリランド」など人気タイトルも、Jira、Confluenceを使って開発管理しています。
現場スタッフが、情報システム部門や人事部門などに対して、「新ツールへのログイン方法」や「交通費の精算方法」について質問したい場合は、Jiraを使ってお問い合わせをします。これは、バグ管理ツールであるJiraを、ヘルプデスクツールとして転用しているわけです。具体的には、お問い合わせごとにチケットを発行し、誰がいつまでに回答するかを決めて対応(クローズ)します。
カスタマサポート部門では、お客様からのお問い合わせを管理するツールとしてJiraを活用しています。考え方は「社内お問い合わせの管理」と同じで、Jiraをヘルプデスクツールとして転用するわけです。
お問い合わせがあり、「これは開発部門にエスカレーションする方が適切だ」と判断された場合は、お問い合わせチケットを、サポート部門のJiraから、そのゲームタイトルの開発部門のJiraに「付け替える」形で対処しています。
この「チケットの付け替えによる、スムーズな問い合わせ対応」が可能なことは、サポート部門と開発部門が、Jiraという同じツールを使っていることの大きな利点です。
Confluenceは、開発部門では「技術情報の管理」に使っていますが、その他、経理、人事、法務、情報システムなど各部門でも、「文書管理」、「議事録管理」に活用しています。Confluenceは、使いやすいツールなので、コンピュータに精通していない管理部門のスタッフでも簡単に使えます。
開発部門でのJira、Confluenceの活用状況や導入効果について、キーワードで説明すると次のようになります。
グリーでの開発プロジェクトは、大半が「ソーシャルゲームの開発」です。スピード感と柔軟性が求められるソーシャルゲーム開発では、プロジェクトの課題管理(バグ管理)を正確、確実に実施する必要があります。こうした課題管理(バグ管理)を、Jiraを使って行っています。
開発が停滞し、〆切に遅れそうなとき、開発リーダーは、何らかのテコ入れをする必要があります。しかし、的確な対策を打つには、まず状況を正確に把握しなければいけません。
「何となくマズイ…」という雰囲気的な認識ではなく、「対処すべき課題(バグ)が、いま何個あるのか」、「それら課題のうち、『解決済み』が何個で、『取組中』が何個で、『未着手』が何個なのか」というように、状況を、定量的(数え上げが可能な形)で把握する必要があります。
この「状況の定量的把握」をJiraを使って行っているわけです。
グリーでは、常時、非常に多数のプロジェクトが同時進行しています。各プロジェクトには個別に開発リーダーが管理しますが、組織としては、それらリーダーの上に100件~200件のプロジェクト全体を管理する統括マネージャーがあります。
各プロジェクトのリーダーがJiraを使って定量的な状況報告をすることにより、統括マネージャーは、「開発部門の全体状況」を正確に把握することができます。
技術者が、開発途上でカベにぶつかった場合、その課題の解決方法を技術情報データベースで検索できれば(ノウハウ)、あるいは、その課題をすでに開発した人に相談できれば(ノウフー)、悩む時間が短縮できるので有用です。
この「技術情報検索」をConfluenceで実現しています。
部門間、開発プロジェクト間での横断的な情報検索するには、各プロジェクトが同じ技術情報管理ツールを使っている必要があります。現在、グリーでは、Confluenceが「事実上の社内標準」なので、全社的な情報共有がスムーズに行えます。
開発部門は自由を好みます。しかし、それが行き過ぎると、システム全体の安定性に不都合が生じることがあります。
例えば、ある開発部門が、自分用のJiraにプラグインを加えたことで、他のチームのJiraの動作が遅延したということが、過去ありました。
こうした不都合が生じないよう、開発チームそれぞれの自由度を許容しながらも、システム全体は情報システム部門が管理し、安定させていく、そのような体制が重要です。
ゲーム開発は「知識産業」なので、ソースコードや技術情報などの知的財産は厳重に管理、保全する必要があります。
グリーでのゲーム開発は、グリーの従業員と協力会社とが連携して行います。協力会社からは、常時、多くの技術者がグリー社内に常駐しています。
こうした環境では、Jira、Confluence共に、的確なアクセス管理を施す必要があります。
Jira、Confluenceは、いずれも商用ツールらしく、MediaWikiのような無料ツールに比べ、セキュリティ機能は明らかに優れています。
JiraとConfluenceはアクティブディレクトリとの連携が可能です。誰かが退職する場合は、アクティブディレクトリ上で、その人を「退職者」として設定変更すれば、それに連動して、Jira、Confluence上のアクセス権限も変更されます。
セキュリティの一括管理ができるという点で、情報システム部門にとって、良い仕様です。
Jira、Confluenceは、ユーザー部門には「メニュー化」して提供するのが良いと考えます。また「活用のガイドライン(ルール)」も最初に設定するのが良いでしょう。
ユーザー部門に完全な自由度を与えてしまうと、システム全体の安定稼働に悪影響が生じる可能性があります。そうならないよう「メニュー化」「標準化」が重要です。
また、JiraやConfluenceなどアトラシアン製品は、いずれも良い製品ですが、究極のところ「海外のツール」なので、これを社内に円滑に展開していく上では、「日本のビジネス慣行をよく知っているベンダー」に協力を仰ぐのが良いと考えます。
私たちも、今の体制を作るまでには、リックソフトには何度も相談を重ねました。
グリーは、引き続きお客さまに喜ばれる面白いゲームを作っていきます。アトラシアン様およびリックソフト様には、私たちの開発活動を、プロジェクト管理や技術情報共有など各種ツールを通じて後方支援していただければと思っています。今後ともよろしくお願いします。
グリー様、本日はお忙しい中、貴重なお話をありがとうございました。