【CEDEC2025】現場を理解して実現!ゲーム開発を効率化するWebサービスの開発と、利用促進のための継続的な改善
by
Cygames
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
1/84 プロダクション / エンジニアリング 現場を理解して実現! ゲーム開発を効率化するWebサービスの開発と、利用促進のための継続的な改善 株式会社Cygames 開発運営支援 / サブマネージャー 諸葛 泰鉉
Slide 2
Slide 2 text
2/84 ツール開発の壁 • 開発人数も少なく効率も上がらない。 • 場当たり的な開発が続き、サービスが複雑化したり、品質が安定しない。 • 開発したサービスが、他のプロジェクトで利用されない。 • AIの活用が重要だと分かってはいるが、どこから着手するかわからない。 業務効率化のWebサービス開発で このような課題、ありませんか
Slide 3
Slide 3 text
3/84 本セッションで得られること • 効果的な課題解決を実現する役割や体制 • 迅速な開発イテレーションを支える環境とプロセス • サービスの普及を促進する運用方法 • 課題解決のためのAI導入実践 私たちが直面した壁と、それを 乗り越えたノウハウを紹介します。
Slide 4
Slide 4 text
4/84 諸葛 泰鉉 開発運営支援 / サブマネージャー 2015年11月に株式会社Cygamesへ合流。 サーバーエンジニアとして「グランブルーファンタジー」の開発に携わる。 2018年後半から社内のゲーム開発効率化業務に従事し、 社内で使用される効率化のための複数のWebサービス開発と運用 そして部署内のインフラ管理業務を担当している。 自己紹介
Slide 5
Slide 5 text
5/84 部署の紹介 課題を解決し業務を効率化することで、 ゲーム開発の時間を確保し、品質向上に貢献 開発運営支援 様々なWebサービスで ゲームプロジェクトを支援中
Slide 6
Slide 6 text
6/84 主な業務支援Webサービスの紹介 「こえぼん」:シナリオ執筆支援 シナリオの執筆、台本化、音声管理を一元管理 <台本出力画面> <シナリオ執筆画面> <Cygames Magazine>
Slide 7
Slide 7 text
7/84 主な業務支援Webサービスの紹介 「CyResource」:汎用オンラインストレージ 様々なリソースをタグで管理 <リソース一覧> <リソース詳細>
Slide 8
Slide 8 text
8/84 主な業務支援Webサービスの紹介 「CyLoc」:ローカライズテキスト管理支援 翻訳テキストと進捗を一元管理 <翻訳画面> <進捗確認> <検索>
Slide 9
Slide 9 text
9/84 部署発足期:信頼獲得のプロセス 「信頼獲得」を目指し仕事探しスタート 小さなツール開発 新たな相談が増加 現場の課題を解決 「信頼」獲得 1 4 3 2 プロセスが回りサービスも人も増える成長期へ
Slide 10
Slide 10 text
10/84 成長期:拡大するチームとサービス 現場の信頼を追い風に、 サービスとともにチームも順調に成長! エンジニアが続々と合流 開発チーム 全社で利用されるサービスに成長 サービス
Slide 11
Slide 11 text
11/84 進化期:AIの可能性 成長した先には新たな目標! プロジェクトの課題に AIを活用した業務効率化!!
Slide 12
Slide 12 text
12/84 • 開発チームが多方面に対応を迫られ、慢性的に高負荷な状態 • サービスが増えるたびに蓄積される技術的な負債 • 人数に比例して増えるコミュニケーションコスト • 止まらない改善要望 • 利用プロジェクトが一部にとどまる など 成長の裏で直面した試練 チーム/サービスの成長とともに 次々と現れた「壁」
Slide 13
Slide 13 text
13/84 本日のアジェンダ • 「役割分担」による高負荷状況からの脱却 • 継続的な改善を支える「開発プロセスと技術基盤」 • 「普及戦略」で乗り越える利用されない壁 • AI活用の鍵となる「課題の可視化」 • まとめ
Slide 14
Slide 14 text
14/84 本日のアジェンダ • 「役割分担」による高負荷状況からの脱却 • 継続的な改善を支える「開発プロセスと技術基盤」 • 「普及戦略」で乗り越える利用されない壁 • AI活用の鍵となる「課題の可視化」 • まとめ
Slide 15
Slide 15 text
15/84 「役割分担」による 高負荷状況からの脱却
Slide 16
Slide 16 text
16/84 課題解決の全プロセス 課題表出 1 開発 4 要件定義 3 ヒアリング 2 改善 8 テスト 5 リリース 6 フィード バック回収 7 開発チーム 全プロセスを1チームが担当
Slide 17
Slide 17 text
17/84 何が起きたか 1. 利用者から様々な経路で要望が来る 2. 要望の背景や影響が不明 3. 対応すべきか不明な新規相談が 次々とやってくる プロセスは上手くいき課題解決は 進んだが…
Slide 18
Slide 18 text
18/84 開発チームが高負荷の状況に 全てをエンジニアがやる体制 対応が追いつかない! 利用者のニーズ把握が困難 利用者へのサポート不足 課題解決のスピード低下 相談対応のクオリティー低下
Slide 19
Slide 19 text
19/84 役割分担による新しい体制 必要な役割を3チームで分担へ サービスオーナー サポートチーム 開発チーム ユーザーに寄り添う サービス責任者 開発と運用に専念 ユーザーと 開発者の橋渡し
Slide 20
Slide 20 text
20/84 各チームの担当範囲 サービスオーナー 開発チーム サポートチーム 課題表出 開発 要件定義 ヒアリング 改善 テスト リリース フィード バック回収 1 4 3 2 8 5 6 7
Slide 21
Slide 21 text
21/84 サービスオーナーの立ち位置 サービスごと担当者が存在 こえぼん:シナリオチーム CyLoc:ローカライゼーションなど 開発 テスト リリース 課題表出 要件定義 ヒアリング 改善 フィード バック回収 1 3 2 8 7 4 5 6 サービスの最終責任者
Slide 22
Slide 22 text
22/84 サービスオーナーの役割 現場のニーズを吸い上げ、開発の方向性を定める サービスの 最終責任者 サービスの推進 ステークホルダー 調整 利用者代表
Slide 23
Slide 23 text
23/84 サービスオーナーの業務内容 • サービス開発方針策定 • 利用者のニーズ把握 • 開発運営チームとの連携 • 現場の課題管理 何か困っていますか?
Slide 24
Slide 24 text
24/84 サポートチームの立ち位置 非エンジニア2名 要件定義 ヒアリング 課題表出 開発 改善 テスト リリース フィード バック回収 1 4 3 2 8 5 6 7 ユーザーとの相談窓口
Slide 25
Slide 25 text
25/84 サポートチームの役割 開発チームの負荷を軽減し、チーム間の橋渡し役を担う 相談者の窓口 開発者サポート
Slide 26
Slide 26 text
26/84 サポートチームの業務内容 • 問い合わせ対応 • 課題確認と定義 • サービスのマニュアル作成 • FAQ整備
Slide 27
Slide 27 text
27/84 開発チームの立ち位置 エンジニア10名 課題表出 ヒアリング 開発 改善 テスト リリース フィード バック回収 要件定義 1 4 3 2 8 5 6 7 サービス開発の中核
Slide 28
Slide 28 text
28/84 開発チームの役割 迅速かつ安定したサービス提供 プロダクト オーナー Webサービス エンジニア SREエンジニア サービスオーナー の技術相談
Slide 29
Slide 29 text
29/84 開発チームの業務内容 • 要件定義 • サービス開発・運用業務 • インフラ構築 • CI/CD自動化・効率化 • サービスオーナーとの定例
Slide 30
Slide 30 text
30/84 役割分担で実感した効果
Slide 31
Slide 31 text
31/84 サービスオーナーとの役割分担による効果 – 開発方針が実業務にマッチし、作業優先が明確になった。 – 手戻りや無駄な機能開発(ミスマッチな提供)が削減した。 – 現場の課題を情報収集する負担が減った。 – サービスの価値が向上し、多数の職種が活用するようになった。 現場のニーズと状況の理解度が向上
Slide 32
Slide 32 text
32/84 サポートチームとの役割分担による効果 様々な経路でくる突発的な相談も数多く対応中! FAQ・マニュアル作成によるサービスへの質問減少 Webサービスの問い合わせ 適切な部署へ案内した問い合わせ 67件 50件 直近1年間の問い合わせ:117件 年間の相談対応が4割減
Slide 33
Slide 33 text
33/84 高負荷を乗り越え効果的に課題を解決 サービスオーナーと 円滑な連携が必須! 専門性を発揮しやすい分担で迅速な対応
Slide 34
Slide 34 text
34/84 本日のアジェンダ • 「役割分担」による高負荷状況からの脱却 • 継続的な改善を支える「開発プロセスと技術基盤」 • 「普及戦略」で乗り越える利用されない壁 • AI活用の鍵となる「課題の可視化」 • まとめ
Slide 35
Slide 35 text
35/84 善継続的な改善を支える 「開発プロセスと技術基盤」
Slide 36
Slide 36 text
36/84 成長による影響 課題解決を優先した結果 1. サービスが想定外に大規模化/複雑化 2. 場当たり的な対応の増加 3. 頻繁に突発的な対応が発生 4. コミュニケーションコストの増加
Slide 37
Slide 37 text
37/84 問題の顕在化 チーム拡大と開発を優先した結果、 新たな壁に直面!! 安定しないサービス 開発と運用コスト増加 意思決定の鈍化 立てにくい計画
Slide 38
Slide 38 text
38/84 解決に向けた取り組み 問題解決のために行った改善! 1. 開発プロセス 2. 技術基盤
Slide 39
Slide 39 text
39/84 開発プロセスの改善
Slide 40
Slide 40 text
40/84 変化に強いアジャイル開発 計画ミーティング 朝会 完了確認 振り返り • 大枠はScrum開発方式を採用 • 2週間のスプリントで運用 • スプリントの進行 • 柔軟なスプリント期間 バックログ整理
Slide 41
Slide 41 text
41/84 スプリント計画 • 計画ミーティングの開催 • 優先度順にタスクの割り振り • コードレビューの工数見積もりとレビュアーの選定 • 原則、スコープ変更は避ける方針 • リリース対象サービスを選定 • リリース日を調整 • タスクの納期設定 リリースの計画 スプリントのタスク計画
Slide 42
Slide 42 text
42/84 スプリントレビューと振り返り • スプリント内の完了ストーリーを確認 • 提供した機能の共有、ゴールとずれを確認 • KPT法(Keep, Problem, Try) • チームの良さをアピール、課題を共有 • 次の改善策をメンバーが選定 振り返り 完了確認(スプリントレビュー)
Slide 43
Slide 43 text
43/84 継続的なバックログ更新 • リリース物の共有とフィードバック • 新しい要望の確認 • タスクの優先度決定 • サービス外の困りごとも確認 サービスオーナーとバックログの最新化 • 開発フレームワークバージョンアップ • リファクタリング計画 サービスに必要な対応の計画
Slide 44
Slide 44 text
44/84 機動力を活かすチーム編成 こえぼんなどを開発 メンバー:5名 CyLocなどを開発 メンバー:5名 チーム1 チーム2 • メンバー数を最小限に抑える コミュニケーションコストを削減し、意思決定を迅速化 • スキルバランスを考慮 チーム内で自己完結できる範囲を広げ、外部への依存を低減 • 開発メンバー数は均等に配置
Slide 45
Slide 45 text
45/84 技術基盤の改善
Slide 46
Slide 46 text
46/84 技術選定と標準化 開発言語 PHP/TS/JS/C#/Python フレームワーク Laravel/React/Vue 課題:学習コスト増大、効率のバラつき • サービス毎に選定 • 当時の人気技術 初期:多様な技術が混在
Slide 47
Slide 47 text
47/84 技術選定と標準化 開発言語 PHP/TS/Python フレームワーク Laravel/React サービスを跨いだ開発スピードが大幅向上! • チーム内技術サポートも可能に • 学習コスト削減 / チーム内知見集約 開発言語とフレームワークの「標準化」
Slide 48
Slide 48 text
48/84 Jenkins、CodePipeline Github Actions 開発プロセスの自動化 開発から提供まで全自動化による効果 リリース時間1時間 複数のサービスで作業 • ビルド、テスト、デプロイ • メンテナンスIn/Out • 監視ON/OFF 自動化項目 自動化ツールの統一
Slide 49
Slide 49 text
49/84 GitHub内で一元管理できるようになるなど、 大幅な効率化を実現 Github Actions (コードで管理、並列処理など) 開発プロセスの自動化 開発から提供まで全自動化による効果 並列処理でリリース時間30分 作業をGithubで完結 自動化ツールの統一 • ビルド、テスト、デプロイ • メンテナンスIn/Out • 監視ON/OFF 自動化項目
Slide 50
Slide 50 text
50/84 新規リリースのリバート多発 利用者からサービス安定性への要求 品質向上のため、各種テストの導入 既存機能に 不具合が多発! 新機能の開発を優先
Slide 51
Slide 51 text
51/84 リファクタリングやフレームワークの バージョンアップにも活用 開発効率と、品質を向上 品質向上のため、各種テストの導入 テストの導入! サービスの安定性優先 バックエンド PHPUnit フロントエンド Jest End-to-End(E2E) Playwright、Datadog 主なテストとして…
Slide 52
Slide 52 text
52/84 継続的な改善の効果 技術基盤 開発プロセス 標準化と自動化で開発効率と安定性の向上 テスト文化の定着と品質向上 アジャイル開発と小さなチームで 対応スピードの向上 継続的なバックログ管理で明確な展望
Slide 53
Slide 53 text
53/84 本日のアジェンダ • 「役割分担」による高負荷状況からの脱却 • 継続的な改善を支える「開発プロセスと技術基盤」 • 「普及戦略」で乗り越える利用されない壁 • AI活用の鍵となる「課題の可視化」 • まとめ
Slide 54
Slide 54 text
54/84 「普及戦略」で乗り越える 利用されない壁
Slide 55
Slide 55 text
55/84 普及戦略の例 テキスト管理 権限管理 役割設定 対応言語設定 進捗と履歴確認 翻訳ステータス 可視化 変更履歴 進捗率レポート 外部連携 こえぼん OneDrive Json出力 CyLoc(ローカライズ支援サービス) テキスト、進捗、翻訳コメントなどを一元管理 主な機能 マスターデータ
Slide 56
Slide 56 text
56/84 普及プロセス 業務上の課題表出から出発 課題解決できるサービスを迅速に開発 機能拡張をしてサービスを成長 普及の準備 普及活動 ① ② ③ ④ ⑤
Slide 57
Slide 57 text
57/84 ①業務上の課題表出から出発 現場からの問題提起が発端 • エクセルで進捗管理表作成 • 手作業による進捗更新にコストが高い • 翻訳漏れが起きやすい • 同時作業が難しい
Slide 58
Slide 58 text
58/84 ②課題解決できるサービスを迅速に開発 短期間で提供 機を逃さぬ解決 信頼を獲得 特化型サービス開発
Slide 59
Slide 59 text
59/84 ③機能拡張によるサービスの成長 Webサービスによる対応範囲を広げる 継続的な機能開発による価値提供 課題を一つずつ解決していく 様々な職種での利用も加速 ワークフローの一部に!
Slide 60
Slide 60 text
60/84 ④普及の準備 • 他プロジェクトの情報収集 • プロジェクトや部署内へ影響を考慮 共通課題に注力した 開発方針へ変更 • 問い合わせ窓口の開設 • 迅速かつ容易な検証環境の提供 • マニュアルの整備 環境整備
Slide 61
Slide 61 text
61/84 ⑤普及活動 • 新規プロジェクトへ利用アプローチ • 導入ハードルを下げる • 利用方法のレクチャー • データ移行などの導入サポート サービスオーナーと普及活動 • サービスオーナー主導で推進 開発優先度は 利用者の声を反映して決定
Slide 62
Slide 62 text
62/84 プロジェクトへ普及状況 CyLoc 7つのプロジェクト Webサイトにも 活用 こえぼん 運用中の 全ゲームプロジェクト CyResource ゲームプロジェクト だけでなく全社での利用
Slide 63
Slide 63 text
63/84 全社普及の戦略 1. 実績を作り、信頼を構築 2. 共通する要望への対応を重視 3. 定期的なヒアリング実施 4. 問い合わせしやすい環境 5. 検証環境の迅速な提供 6. 導入ハードルの引き下げ
Slide 64
Slide 64 text
64/84 本日のアジェンダ • 「役割分担」による高負荷状況からの脱却 • 継続的な改善を支える「開発プロセスと技術基盤」 • 「普及戦略」で乗り越える利用されない壁 • AI活用の鍵となる「課題の可視化」 • まとめ
Slide 65
Slide 65 text
65/84 AI活用の鍵となる「課題の可視化」
Slide 66
Slide 66 text
66/84 AI活用プロジェクト開始 シナリオ執筆作業の負荷 大規模言語モデル(LLM)の可能性 シナリオ執筆の生産性向上 ゴール 背景 課題発生 技術の進展
Slide 67
Slide 67 text
67/84 課題の洗い出し 作業効率を上げるための ヒント探し! • ヒアリングと現場の課題収集 • 運用に追われ 解決されなかった様々な課題
Slide 68
Slide 68 text
68/84 ユーザーヒアリング • カメラ指定、衣装指定の自動指定 • 同じようなミスの指摘など • 重要度も確認 • 新規Webサービスの開発が必要 • ルールベースで解決できる • LLMで解決の可能性 困っているのは分かったがある問題に気づく 課題を分類 詳細ヒアリング
Slide 69
Slide 69 text
69/84 課題整理の必要性 課題はわかったが、どこから着手? • 影響度や重要度がわからない • 「誰が、どの程度」が見えない • 優先度を判断できない
Slide 70
Slide 70 text
70/84 課題特定の手段 まずは可視化 ワークフロー図を作成することに 理解しやすい 時系列で表現 影響範囲がわかる 重要度の把握できる
Slide 71
Slide 71 text
71/84 ワークフローの可視化作業 • 関係者の作業内容 • 全体の作業フロー • 各作業の工数 1.全ての登場人物を定義 2.上から下へ時系列になるよう作業を配置 3.利害関係がわかるように依頼元、依頼先を記載 4.各フローの工数を記入 手順に沿って作成 作業全般をプロジェクトへ確認
Slide 72
Slide 72 text
72/84 シナリオ執筆ワークフロー図
Slide 73
Slide 73 text
73/84 ワークフローの可視化結果 課題への理解と 解決策の検討が加速 シナリオ執筆業務の 理解度が向上 業務上の ボトルネックを特定 チーム内外の 認識齟齬を解消
Slide 74
Slide 74 text
74/84 AI活用ポイントの発見 効率的な監修作業や表現のチェック 「監修」プロセスにAIを活用 • 頻度 • 工数 • 効果 • 影響 工数削減や効果大 影響範囲:広 分析 発見
Slide 75
Slide 75 text
75/84 AIによるシナリオ監修補助機能の開発 1. 具体的機能 – AIによるシナリオ表現の監修と 改善提案の実装 2. 開発の工夫 – 誰でも使いやすい – 正解を求めないところに活用 – アイディア出し、シナリオの分析など
Slide 76
Slide 76 text
76/84 AI機能開発の注意点 ユーザーのAIへの理解を促す – 何でも解決できると思いがち – ハルシネーションの理解 – AI知識の共有やレクチャー – 最終的には人のチェックが必須
Slide 77
Slide 77 text
77/84 実際のAI機能
Slide 78
Slide 78 text
78/84 実際のAI機能
Slide 79
Slide 79 text
79/84 AI導入による効果と変化 業務効率化 – 執筆者1名がシナリオ1本を作成する際に、 平均0.5日の工数が削減 執筆者・監修者の負担軽減を実現 – 初稿までの時間短縮とやり取りの回数軽減
Slide 80
Slide 80 text
80/84 AI導入による効果と変化 プロセスの変化 執筆 監修 (人) 修正 導入前 執筆 監修 (人) 修正 監修 (AI) 導入後
Slide 81
Slide 81 text
81/84 AI活用のポイント 適切な業務効率化と生産性向上 明確な目的策定 課題を特定し、AI活用箇所を明確化 課題の可視化 AIに対する ユーザーの理解が必須
Slide 82
Slide 82 text
82/84 まとめ
Slide 83
Slide 83 text
83/84 まとめ • 役割分担で効率良い負荷分散 • 開発プロセスと技術基盤の継続的な改善 • 段階的にアプローチしていく普及戦略 • ワークフローの可視化からAI活用
Slide 84
Slide 84 text
84/84