レギュラーセッション

マスタデータ統一スキーマ言語による効率的なトランクベース開発フローの実現

対象プラットフォーム:モバイル
講演形式
レギュラーセッション
講演時間
08月23日(水) 16:30 〜 17:30
講演ルーム
第3会場
受講スキル

- マスタデータの並列開発に課題意識を持つ方

- マスタデータのスキーマを複数のシステムに多重に定義したことがある方

- Protocol Buffersを使ったDSLの設計手法に興味を持つ方

得られる知見

- Protocol Buffersを使ったDSLの設計手法

- 複数の内製システムをDSLで束ねて高度なインテグレーションを可能にする手法

- マスタデータのトランクベース開発手法と、そのためのスキーマ言語に求められる要素

- マスタデータの動作確認のイテレーションを高速化する手法

セッションの内容

モバイルゲームのマスタデータ開発/運用では、マスタデータの編集UI、並行開発可能なバージョン管理、バリデーション、クライアント/サーバでのロード/インポートなど、様々な機能が必要になります。

これらは大抵は言語も動作環境もバラバラになるので、それぞれ異なるシステムを使うことが多くなります。

DeNAでもこのそれぞれに対して独立した内製システムを開発/運用してきましたが、

各システムへの個別にスキーマ定義することによる重複作業や、システム間を跨った操作が必要なワークフローの複雑化を招き、開発効率の低下や、システム利用の敷居の高さが問題になっていました。

また、ブランチを使った並行開発による大量のマージ工数も大きな問題になり、並行開発フロー自体の抜本的な改善も必要とされていました。

本セッションでは、これらの問題の解決策として、マスタデータの入力からロードまでの間の、全てのマスタデータ関連システムで必要なスキーマ情報を統一して扱う、

ProtocolBuffersをベースとしたマスタデータ統一スキーマ言語 Muscleを開発した事例を紹介します。

また、これに合わせてマージ工数の抜本的な削減のために導入した並行開発フローである、トランクベース開発の概要と、

そのためにマスタデータ統一スキーマ言語にどのような機能が求められたのかについても紹介します。

大竹 悠人

株式会社ディー・エヌ・エー

ゲームサービス事業本部開発事業部第一技術部テクノロジー推進第二グループ

エンジニア

講演者詳細を開く >

<講演者プロフィール>

2009年にWeb動画配信サービス会社に入社。複数のWeb/ゲーム機/家電向けサービスの立ち上げに携わる。
2013年にDeNAに入社し、ブラウザゲーム運営、新規ネイティブタイトル開発を経験。成果物の技術資産化を推し進める過程で、ライブラリなどのゲーム基盤開発業務に携わるようになる。
現在はゲーム開発者の声に耳を傾けながら、ゲーム開発の課題をより良い、効率的な方法で解決できるような基盤を様々な方面で模索している。

<受講者へのメッセージ>

モバイルゲームのマスタデータ並行開発は複雑で多面的な領域領域で、その解決手法は開発効率に大きな影響を及ぼします。
本セッションで紹介するDeNAでの事例は、DeNAの社内システムを含む話にはなるのですが、解決手法自体は一般化可能なものであり、
皆様のマスタデータ並行開発環境をより良くする助けになりうると信じています。

マスタデータ並行開発に苦しんだことのあるモバイルゲームエンジニアの方々をお待ちしています!
閉じる