Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
モバイルゲーム運営における認知資源をより有効活用していくための取り組み/Devsumi2019...
Search
Kazumasa Kuramochi
August 29, 2019
Programming
0
550
モバイルゲーム運営における認知資源をより有効活用していくための取り組み/Devsumi2019 Fukuoka DELiGHTWORKS
Kazumasa Kuramochi
August 29, 2019
Tweet
Share
Other Decks in Programming
See All in Programming
Package Traits
ikesyo
1
180
アクターシステムに頼らずEvent Sourcingする方法について
j5ik2o
6
690
Fixstars高速化コンテスト2024準優勝解法
eijirou
0
180
traP の部内 ISUCON とそれを支えるポータル / PISCON Portal
ikura_hamu
0
170
Androidアプリのモジュール分割における:x:commonを考える
okuzawats
1
270
선언형 UI에서의 상태관리
l2hyunwoo
0
260
BEエンジニアがFEの業務をできるようになるまでにやったこと
yoshida_ryushin
0
170
menu基盤チームによるGoogle Cloudの活用事例~Application Integration, Cloud Tasks編~
yoshifumi_ishikura
0
140
非ブラウザランタイムとWeb標準 / Non-Browser Runtimes and Web Standards
petamoriken
0
420
ATDDで素早く安定した デリバリを実現しよう!
tonnsama
1
1.5k
テストケースの名前はどうつけるべきか?
orgachem
PRO
1
290
HTML/CSS超絶浅い説明
yuki0329
0
180
Featured
See All Featured
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.2k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Code Review Best Practice
trishagee
65
17k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Typedesign – Prime Four
hannesfritz
40
2.5k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.2k
The Language of Interfaces
destraynor
155
24k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
The Pragmatic Product Professional
lauravandoore
32
6.4k
Building Better People: How to give real-time feedback that sticks.
wjessup
366
19k
Transcript
Copyright 2019 DELiGHTWORKS. モバイルゲーム運営における 認知資源をより有効活⽤していくための取り組み ディライトワークス株式会社 技術部 倉持和匡
Copyright 2019 DELiGHTWORKS. ⾃⼰紹介 2 倉持 和匡 ディライトワークス株式会社 技術部所属 2018年9⽉⼊社
英語版『Fate/Grand Order』 エンジニアリーダー
Copyright 2019 DELiGHTWORKS. 英語版『Fate/Grand Order』 3 ⽇本でのリリースから2年後の 2017年6⽉にアメリカとカナダで配信開始 2018年4⽉からはシンガポール、タイ、 フィリピン、ベトナム、オーストラリアでも配信
Copyright 2019 DELiGHTWORKS. 4 本⽇のお話
Copyright 2019 DELiGHTWORKS. 5 重要かつ緊急 重要だが緊急でない 重要でないが緊急 重要でなく緊急でない ⾼ 緊急度
低 ⾼ 重 要 度 低 ⻘⾊部分の仕事の対応⼒を上げるには?
Copyright 2019 DELiGHTWORKS. 6 ⽇々課題に感じていること
Copyright 2019 DELiGHTWORKS. 7 サービスを運営していると ⽇々やるべきことが増えていく
Copyright 2019 DELiGHTWORKS. 8 ただ出社するだけで 昨⽇まで存在していなかった 仕事が次々と⽣まれてくる..︕
Copyright 2019 DELiGHTWORKS. 9 既にあるタスクは そのままに 新しいタスクが増える
Copyright 2019 DELiGHTWORKS. 10 昨⽇までは 存在していなかった 仕事の具体例
Copyright 2019 DELiGHTWORKS. 11 GooglePlay,AppStore からの義務化 昨⽇までは存在していなかった仕事
Copyright 2019 DELiGHTWORKS. 12 ◯⽉までに新バージョンの SDKの使⽤が義務化 昨⽇までは存在していなかった仕事
Copyright 2019 DELiGHTWORKS. 13 ポリシーが変更されたので ◯⽉までに対応必須 昨⽇までは存在していなかった仕事
Copyright 2019 DELiGHTWORKS. 14 変更していない ストア掲載の スクリーンショットが 原因でリジェクト 昨⽇までは存在していなかった仕事
Copyright 2019 DELiGHTWORKS. 15 某国から⼤量の BOTアクセスが…… 昨⽇までは存在していなかった仕事
Copyright 2019 DELiGHTWORKS. 16 Gitの操作ができなくなりました…… マシンの調⼦が悪くなりました…… etc 相談対応 昨⽇までは存在していなかった仕事
本当に次々と 何でも起こる..
Copyright 2019 DELiGHTWORKS. 18 想定外の仕事が 発⽣するのは 受け⼊れるしかない
Copyright 2019 DELiGHTWORKS. 19 それらは⼤抵の場合 放置できず緊急度が⾼い
Copyright 2019 DELiGHTWORKS. 20 普段抱えている業務に ⾼い集中⼒や注意⼒を要求する ものがあると
Copyright 2019 DELiGHTWORKS. 21 予期せず⽣まれた仕事に 対処する余裕が無くなる
Copyright 2019 DELiGHTWORKS. 22 ⾼い集中⼒や注意⼒を 要求する作業は 認知資源を多く消費する
認知資源
・⼼理学⽤語 ・注意や集中を要する活動をすることで消費される 脳が使えるリソースを指す概念 ・1⽇に使える総量は有限
Copyright 2019 DELiGHTWORKS. 25 時間の無駄遣いは 意識されているが
Copyright 2019 DELiGHTWORKS. 26 認知資源の無駄遣いは あまり意識されていないのでは︖
Copyright 2019 DELiGHTWORKS. 27 認知資源を浪費している 仕事を⾒つけて改善する
Copyright 2019 DELiGHTWORKS. 改善事例 〜⽬次〜 28 プルリク リマインダー メンテナンススケジュール作成ツール ダウンロードサイズ肥⼤化
検出の⾃動化 リリースブランチ間マージの補助ツール
プルリク リマインダー
Copyright 2019 DELiGHTWORKS. プルリクの運⽤ 30 GitHub Enterpriseでバージョン管理 全ての修正がプルリク,レビュー対象 エンジニア全員でレビュー
Copyright 2019 DELiGHTWORKS. 31 退勤までに忘れずに レビューしてもらいたいとき、 皆さんどうしてますか︖
Copyright 2019 DELiGHTWORKS. 改善前のレビュー依頼⽅法 32 未解決のプルリクがあるか確認して、 まだレビューしていない⼈に チャットで呼びかけたり、、 歩き回って声がけしたり。。。
Copyright 2019 DELiGHTWORKS. 33 なんとかして この作業をやらずに済ませる ⽅法は無いか..
リマインダー ツールを作ろう
Copyright 2019 DELiGHTWORKS. プルリク リマインダー 35
Copyright 2019 DELiGHTWORKS. リマインダーツールの作成 36 GitHubが提供する コマンドラインツール 「Hub」を使⽤ https://hub.github.com/ https://github.com/github/hub
Copyright 2019 DELiGHTWORKS. リマインダーツールの作成 37 hub prコマンドで未消化のプルリクを出⼒ >hub pr list
-f “%pC%>(8)%i%Creset %t% l %cr %n %U %n 残りレビュアー :%rs" 未消化のプルリクの『番号』『タイトル』『作成からの経過時間』 『まだ⾒てないレビュアーは誰か』が全て出⼒
Copyright 2019 DELiGHTWORKS. リマインダーツールの作成 38 Jenkinsで毎⽇朝晩2回実⾏ Slackチャンネルにメンション付きで通知
Copyright 2019 DELiGHTWORKS. 39 プルリクの リマインド作業からの解放
メンテナンス スケジュール 作成ツール
Copyright 2019 DELiGHTWORKS. メンテナンス作業について 41 サービスの⼀時停⽌ サーバープログラムやデータの更新 新バージョンアプリの公開 お知らせの更新 etc
Copyright 2019 DELiGHTWORKS. メンテナンス作業について 42 メンテナンス作業に関わる⼈数 10⼈程度 定期メンテナンスの作業項⽬数 30〜40項⽬程度 数分〜数⼗分の単位で各作業が順番に進⾏
Copyright 2019 DELiGHTWORKS. 実際のメンテナンススケジュールの⼀部(参考) 43 作業例 13:20 [Server] マスターデータを本番環境に反映する(約5分)担当〇〇
Copyright 2019 DELiGHTWORKS. 44 スケジュール作成の 問題点
Copyright 2019 DELiGHTWORKS. 問題点1 45 過去のスケジュールの コピーから作成 (作業記載漏れのリスク)
Copyright 2019 DELiGHTWORKS. コピペスケジュールでの失敗談…(1/2) 46 メンテナンス無しで始まるイベントがあり、 過去にあった類似の予定をコピーして作成 コピー元の予定には無かった 『ファイルアップロード作業』が実は 今回は必要だった..
Copyright 2019 DELiGHTWORKS. コピペスケジュールでの失敗談…(2/2) 47 事前に本番環境にアップロードしておくのを忘れ.. 必要なファイルが本番環境に上がってない.. イベント開始直後にゲームが遊べなくなり、 ランチから慌てて会社に戻って対応することに…
Copyright 2019 DELiGHTWORKS. 問題点2 48 各作業の開始時間は すべて⼿計算..!
Copyright 2019 DELiGHTWORKS. 問題点3 49 ⾃分の作業があることに 気づきにくい
Copyright 2019 DELiGHTWORKS. 50 これらの問題を解決するため 何を⾏ったか
Copyright 2019 DELiGHTWORKS. 改善策 51 Wikiへの直書きと時間の⼿計算を廃⽌ Googleスプレッドシートで予定を管理 コピペではなくテンプレート化 Google Apps
Script(GAS)を使った ツールを作成
Copyright 2019 DELiGHTWORKS. GASで実装した機能 52 各作業の開始時間の⾃動計算 メンテナンス専⽤カレンダーに予定を登録 作業担当者への招待 (リマインド機能) Wiki貼り付け⽤の全予定テキスト出⼒機能
Copyright 2019 DELiGHTWORKS. スプレッドシートでの⼊⼒イメージ 53 開始時間 所要時間(分) カテゴリ 担当者 作業項目
3日前作業 事前作業 〇〇 アセットのアップロード 自動計算 5 メンテナンス作業 〇〇 サーバー更新 自動計算 15 メンテナンス作業 〇〇 アプリ公開 1日後作業 事後作業 〇〇 メンテナンス開始日時 2019/8/29 14:15 開始時間計算ボタン 予定登録ボタン テキスト出力ボタン 予定削除ボタン
Copyright 2019 DELiGHTWORKS. 全ての問題を解決︕ 54 過去のスケジュールのコピーから作成 各作業の開始時間はすべて⼿計算..! ⾃分の作業があることに気づきにくい
ダウンロードサイズ肥⼤化 検出の⾃動化
Copyright 2019 DELiGHTWORKS. ダウンロードサイズの肥⼤化 56 アプリがダウンロードするファイルは 開発中に増えていく CDNのネットワーク帯域が 逼迫しないよう備える必要がある
Copyright 2019 DELiGHTWORKS. ダウンロードサイズの肥⼤化 57 あらかじめダウンロードサイズを⾒積もる CDNの上限緩和申請が必要な場合がある インフラチームはリリースの2週間前に 申請が必要なサイズかを把握しておきたい
Copyright 2019 DELiGHTWORKS. ダウンロードサイズの計算 58 追加ダウンロードサイズの計算が必要 上限緩和申請を出す必要があるか 事前に予測することは困難
Copyright 2019 DELiGHTWORKS. 改善前の問題点 59 計算ツールはあるが毎度⼿動実⾏だった ツール実⾏に必要なパラメータ 準備にひと⼿間かかる 2週間前に実⾏することを覚えて おかなければならない
Copyright 2019 DELiGHTWORKS. 失敗談… 60 上限緩和申請が必要と判断される ダウンロードサイズの数倍に 膨らんでいたがアラートを上げ忘れていた そのままイベント当⽇を迎える…
Copyright 2019 DELiGHTWORKS. 61 どういった改善を⾏ったか
Copyright 2019 DELiGHTWORKS. どういった改善を⾏ったか 62 毎⽇Jenkinsで計算するツールを⽤意 計算結果をSlackチャンネルに通知 ⼀定サイズを超えたら インフラチームにメンション付きで通知
Copyright 2019 DELiGHTWORKS. 改善を⾏った結果 63 ダウンロードサイズ計算の⼿間から 解放された︕ リリースの2週間前に実施することを 覚えておく必要がなくなった︕
ブランチ間マージ補助ツール(計画中)
Copyright 2019 DELiGHTWORKS. 複数ブランチでの並⾏開発 65 1~2ヶ⽉先に配信予定のイベントの 開発とQAが複数並⾏して進⾏ それぞれGitのブランチを分けて開発
Copyright 2019 DELiGHTWORKS. リリースブランチ間マージについて 66 各ブランチで⾏われた修正は 次にリリース予定のブランチにも反映
Copyright 2019 DELiGHTWORKS. マージの必要性と頻度の⾼さ 67 修正内容を次バージョンでも反映させる ためマージが必要 コミット差分をチェックしてマージする 頻度はほぼ毎⽇
Copyright 2019 DELiGHTWORKS. ブランチ間マージ作業での問題点1 68 コミット差分チェックから マージプルリク作成まで全て⼿動
Copyright 2019 DELiGHTWORKS. ブランチ間マージ作業での問題点2 69 ⼀部ファイルはコンフリクトする 場合があり解決が必要
Copyright 2019 DELiGHTWORKS. ブランチ間マージ作業での問題点3 70 並⾏開発している全ての ブランチ間でマージが必要
Copyright 2019 DELiGHTWORKS. ブランチ間マージ作業での問題点4 71 この煩雑なブランチ間の マージ作業は(ほぼ) 毎⽇⾏う必要がある
Copyright 2019 DELiGHTWORKS. 72 どのような改善が⾏えるか
Hubを使ってプルリク作成を⾃動化
Copyright 2019 DELiGHTWORKS. プルリク作成の⾃動化 74 Hub でプルリク作成が可能 >hub pull-request コマンドで作成
プルリクが0件の時=マージ可能な時、 マージプルリクを⾃動で作成する
Copyright 2019 DELiGHTWORKS. 75 これできっと楽になれる
Copyright 2019 DELiGHTWORKS. 最後に 76 何のために認知資源を節約するのか?
Copyright 2019 DELiGHTWORKS. 77 重要かつ緊急 (予期せず発生するタスク) 重要だが緊急でない 重要でないが緊急 重要でなく緊急でない ⾼
緊急度 低 ⾼ 重 要 度 低 予期せず発⽣するタスクに対処できる余裕を⽣み出す
Copyright 2019 DELiGHTWORKS. 78 重要かつ緊急 (予期せず発生するタスク) 重要だが緊急でない (準備, 計画, 挑戦,成長)
重要でないが緊急 重要でなく緊急でない ⾼ 緊急度 低 ⾼ 重 要 度 低 計画的な仕事、⾃⼰成⻑のための余裕を⽣み出す
Copyright 2019 DELiGHTWORKS.