SlideShare ist ein Scribd-Unternehmen logo
1 von 40
Downloaden Sie, um offline zu lesen
セガゲームス 竹原涼
 所属 : 株式会社セガゲームス 開発技術部 技術開発課
 役割 : QAエンジニア見習い(元C/C++プログラマー)
◦ 最近同セガゲームスの粉川氏に弟子入り
◦ 現在はJenkinsを使ってリソースまわりの自動化の仕事をしてます
 GDC歴
◦ 初参加
お前に仕事をやろう
ラーメン大好きこかわ氏
 自動化
◦ Delivery Pipelines via Docker
◦ Automated Testing Roundtable Day 1~3
◦ Technical Issues in Tools Development Day 1~3
 テスト
◦ Effective Testing of F2P Games
◦ Rocking On: Harmonix, QA and 'Rock Band 4‘
 自動化
◦ Delivery Pipelines via Docker
◦ Automated Testing Roundtable Day 1~3
◦ Technical Issues in Tools Development Day 1~3
 テスト
◦ Effective Testing of F2P Games
◦ Rocking On: Harmonix, QA and 'Rock Band 4‘
 Riot GamesのLoL(League of Legend)開発環境に
Dockerを導入した話
 LoLではPBE(Public Beta Enviroment)サーバでバランス
変更や新キャラクター追加等の先行テストを行い、そこでの
ユーザーからのフィードバックを受けて本番環境のリリース
を行っている
「Delivery Pipelines via Docker」より
「Delivery Pipelines via Docker」より
ユーザー的には価値のない期間
「Delivery Pipelines via Docker」より
ここを無くしてイテレーション速度を上げたい
 自動化環境の構築コスト
「Delivery Pipelines via Docker」より
自動ビルド環境が欲しいんだけど
準備するから2スプリントくらい待って
 各種申請、設定のコスト
「Delivery Pipelines via Docker」より
ネットワーク設定の手配、ハードウェア関連の手配、etc…
 グローバルな開発環境
「Delivery Pipelines via Docker」より
世界中の拠点との連携、連絡……
 インフラとかweb界隈で流行中の
 生成と廃棄がすんごい楽で
 動作も早くて軽量な
 仮想化環境用ソフト
動作単位はコンテナ
「Delivery Pipelines via Docker」より
 複数の開発者間で差が発生することない
 アプリケーション込みで低オーバーヘッドの環境を
 短時間で構築できる
 例えば、LoLバージョン1と2のテスト環境をワンボタン
で構築、用が済んだらすぐに廃棄、といった運用も可
能に
「Delivery Pipelines via Docker」より
「Delivery Pipelines via Docker」より
 shell scriptやbatch scriptでコンテナの設定を書け
る
「Delivery Pipelines via Docker」より
「Delivery Pipelines via Docker」より
 Docker fileから作成したコンテナのイメージを保存し
ておく
 アプリケーションのインストールまで終わらせてからイ
メージを作成する事も可能
「Delivery Pipelines via Docker」より
「Delivery Pipelines via Docker」より
 JenkinsのジョブでDocker RegistryからDockerイ
メージを取得し、CI環境を作成
 目的(例えばデイリービルド)を完了した後はDockerコ
ンテナは廃棄(ジョブ毎に作り直す)
「Delivery Pipelines via Docker」より
※竹原個人の感想です
※Riot Gamesでこうした問題が発生した訳ではありません
 複数のコンテナを連携させて欲しいんだけど!
 コンテナ管理どうするんだ!
 コンテナを動かすホストとネットワーク環境の構築どう
するんだ!
 死活監視もしないと…
 最低限Dockerが動作する環境を自動で整えたい
 サーバ構築自動化ツールのCHEFを利用している
「Delivery Pipelines via Docker」より
 Opencontrailを利用
「Delivery Pipelines via Docker」より
 Google製のDocker管理用ツールである
kubernetes(クーバネィテス)を利用している
 フェイルオーバーやスケーリング、ロードバランス等の
機能を持つ
「Delivery Pipelines via Docker」より
「Delivery Pipelines via Docker」より
イテレーション速度UP!
※竹原個人の感想です
 (最高とか書きつつなんですが)Dockerはデリバリー
パイプラインを形成する一つの手段に過ぎないので、
プロジェクトの規模や予算、特性に沿った視点で導入
及び環境構築検討を
 真に重要なのはユーザからのフィードバック→改善の
ループをいかに早くまわせる環境を構築するか
 長年(5年以上!)も運営を続けているLoLの環境をレ
ガシーなものとせず、改善し続けるRiotの姿勢と体制
を見習いたい
 自動化
◦ Delivery Pipelines via Docker
◦ Automated Testing Roundtable Day 1~3
◦ Technical Issues in Tools Development Day 1~3
 テスト
◦ Effective Testing of F2P Games
◦ Rocking On: Harmonix, QA and 'Rock Band 4‘
 HarmonixにおいてQAの役割がどのような変遷を
辿っていったかを紹介するセッション
 独立して細分化されていたQAの役割が、アジャイル
開発を経て、最新作ではプリプロダクション段階から
チームに参加するようになったという内容
 QAは単純なスキルセットではなく視点である、という
言葉が印象的だった
 QA is a perspective, not just a skill set
 KONGREGATEのF2Pゲームにおける効果的なテスト
手法に関するセッション
 プレイテストに関するメリット、デメリット、シチュエー
ションによる使い分け、過去のメトリクス分析に基づく
テスト計画等
 既に資料公開済
http://developers.kongregate.com/blog/testing-f2p
アメリカの代替地域としてはオーストラリアとカナダが良いけどインストール数は
1/3 くらいになるよ、等結構細かい数値の実例が載っていて興味深い
「Effective Testing of F2P Games」より
「Effective Testing of F2P Games」より
 タイトルの規模、特徴、予算にあったものを選択して
組み合わせてテスト計画を練り、テスト設計を行う
「Effective Testing of F2P Games」より
 段階に分けて継続率とフォーカスポイントを設定
「Effective Testing of F2P Games」より
 ゴールの設定時に予算も概算しておく
「Effective Testing of F2P Games」より
 このセッションではKONGREGATEでQAがどこまで関
与しているか、については特に触れられていなかった
が、QAが何をどこまで視野に入れてテスト計画を練
るべきかについては考えさせられた
「Effective Testing of F2P Games」より
 テスト計画を練る際に全体の予算、スケジュール管理、リ
リースする範囲(地域)まで包括的に視野に入れなければな
らなくなってきている
 開発の初期段階からチームに参加し、技術的な話だけでは
なく、長期的な視点で開発を支える事が求められてきている
QA is a perspective, not just a skill set
ご清聴ありがとうございました
 主催者用意のラウンドテーブル用のHP
 http://autotestingroundtable.com/
 ラウンドテーブルにTrelloの利用を試みるも失敗
◦ 少しだけ質疑応答有り(上記HPから飛べます)
 Twitter ハッシュタグ : #autotestgdc
◦ これもあまり利用されず……
 Google Group : Automated Testing in Games
◦ できたばかりなので利用率は低め(トピックは1つだけ)

Weitere ähnliche Inhalte

Was ist angesagt?

Github codespaces すごく良い。もうこれで 十分なんじゃという話
Github codespaces すごく良い。もうこれで 十分なんじゃという話Github codespaces すごく良い。もうこれで 十分なんじゃという話
Github codespaces すごく良い。もうこれで 十分なんじゃという話
xiidec
 

Was ist angesagt? (20)

dockerでImmutable InfrastructureなWordPressを考える
dockerでImmutable InfrastructureなWordPressを考えるdockerでImmutable InfrastructureなWordPressを考える
dockerでImmutable InfrastructureなWordPressを考える
 
Docker 再入門 2016 update
Docker 再入門 2016 updateDocker 再入門 2016 update
Docker 再入門 2016 update
 
DockerでGUIアプリケーションを動かす
DockerでGUIアプリケーションを動かすDockerでGUIアプリケーションを動かす
DockerでGUIアプリケーションを動かす
 
Dockerが抱えるネットワークの課題
Dockerが抱えるネットワークの課題Dockerが抱えるネットワークの課題
Dockerが抱えるネットワークの課題
 
Dockerの基本的な話
Dockerの基本的な話Dockerの基本的な話
Dockerの基本的な話
 
Dockerで楽しむ自宅サーバ
Dockerで楽しむ自宅サーバDockerで楽しむ自宅サーバ
Dockerで楽しむ自宅サーバ
 
KubernetesとOpenShiftの話
KubernetesとOpenShiftの話KubernetesとOpenShiftの話
KubernetesとOpenShiftの話
 
Docker入門
Docker入門Docker入門
Docker入門
 
Android アプリ開発における Gradle ビルドシステム
Android アプリ開発における Gradle ビルドシステムAndroid アプリ開発における Gradle ビルドシステム
Android アプリ開発における Gradle ビルドシステム
 
Android アプリを Jenkins でビルドして GitHub に “リリース” を作る
Android アプリを Jenkins でビルドして GitHub に “リリース” を作るAndroid アプリを Jenkins でビルドして GitHub に “リリース” を作る
Android アプリを Jenkins でビルドして GitHub に “リリース” を作る
 
CAMPHOR- day 2020 - Docker 超入門
CAMPHOR- day 2020 - Docker 超入門CAMPHOR- day 2020 - Docker 超入門
CAMPHOR- day 2020 - Docker 超入門
 
Jenkins と groovy
Jenkins と groovyJenkins と groovy
Jenkins と groovy
 
今時のDev opsの取り組み事例集
今時のDev opsの取り組み事例集今時のDev opsの取り組み事例集
今時のDev opsの取り組み事例集
 
清貧Docker ~個人がDockerを使う理由~
清貧Docker ~個人がDockerを使う理由~清貧Docker ~個人がDockerを使う理由~
清貧Docker ~個人がDockerを使う理由~
 
Docker for Windows & Web Apps for Containers 実践活用技法
Docker for Windows & Web Apps for Containers 実践活用技法Docker for Windows & Web Apps for Containers 実践活用技法
Docker for Windows & Web Apps for Containers 実践活用技法
 
runC概要と使い方
runC概要と使い方runC概要と使い方
runC概要と使い方
 
本格的にコンテナを利用するために ~ Azureでのコンテナ利用パターン
本格的にコンテナを利用するために ~ Azureでのコンテナ利用パターン本格的にコンテナを利用するために ~ Azureでのコンテナ利用パターン
本格的にコンテナを利用するために ~ Azureでのコンテナ利用パターン
 
割と新し目の Open shift origin で作る自宅 paas 作成記
割と新し目の Open shift origin で作る自宅 paas 作成記割と新し目の Open shift origin で作る自宅 paas 作成記
割と新し目の Open shift origin で作る自宅 paas 作成記
 
Github codespaces すごく良い。もうこれで 十分なんじゃという話
Github codespaces すごく良い。もうこれで 十分なんじゃという話Github codespaces すごく良い。もうこれで 十分なんじゃという話
Github codespaces すごく良い。もうこれで 十分なんじゃという話
 
Introduction of skippbox
Introduction of skippboxIntroduction of skippbox
Introduction of skippbox
 

Ähnlich wie 自動化ーニバルだよ!GDC16に見る自動化技術とテストのトレンド

パフォーマンス計測Ciサービスを作って得た知見を共有したい
パフォーマンス計測Ciサービスを作って得た知見を共有したいパフォーマンス計測Ciサービスを作って得た知見を共有したい
パフォーマンス計測Ciサービスを作って得た知見を共有したい
zaru sakuraba
 
Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014
Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014
Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014
Masahiro Nagano
 

Ähnlich wie 自動化ーニバルだよ!GDC16に見る自動化技術とテストのトレンド (20)

はてなにおける継続的デプロイメントの現状と Docker の導入
はてなにおける継続的デプロイメントの現状と Docker の導入はてなにおける継続的デプロイメントの現状と Docker の導入
はてなにおける継続的デプロイメントの現状と Docker の導入
 
Jenkins 再入門
Jenkins 再入門Jenkins 再入門
Jenkins 再入門
 
DockerとDocker Hubの操作と概念
DockerとDocker Hubの操作と概念DockerとDocker Hubの操作と概念
DockerとDocker Hubの操作と概念
 
Multibranch Pipeline with Docker 入門編
Multibranch Pipeline with Docker 入門編Multibranch Pipeline with Docker 入門編
Multibranch Pipeline with Docker 入門編
 
Docker/Aarukas入門ハンズオン資料~第1回さくらとコンテナの夕べ #さくらの夕べ 番外編
Docker/Aarukas入門ハンズオン資料~第1回さくらとコンテナの夕べ #さくらの夕べ 番外編Docker/Aarukas入門ハンズオン資料~第1回さくらとコンテナの夕べ #さくらの夕べ 番外編
Docker/Aarukas入門ハンズオン資料~第1回さくらとコンテナの夕べ #さくらの夕べ 番外編
 
ビルドサーバで使うDocker
ビルドサーバで使うDockerビルドサーバで使うDocker
ビルドサーバで使うDocker
 
Dockerを使ってみよう
Dockerを使ってみようDockerを使ってみよう
Dockerを使ってみよう
 
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
 
捕鯨!詳解docker
捕鯨!詳解docker捕鯨!詳解docker
捕鯨!詳解docker
 
パフォーマンス計測Ciサービスを作って得た知見を共有したい
パフォーマンス計測Ciサービスを作って得た知見を共有したいパフォーマンス計測Ciサービスを作って得た知見を共有したい
パフォーマンス計測Ciサービスを作って得た知見を共有したい
 
GitLab から GitHub + CircleCI に乗り換えてチーム運用を改善しつつある話
GitLab から GitHub + CircleCI に乗り換えてチーム運用を改善しつつある話GitLab から GitHub + CircleCI に乗り換えてチーム運用を改善しつつある話
GitLab から GitHub + CircleCI に乗り換えてチーム運用を改善しつつある話
 
CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜
CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜
CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜
 
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
 
はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-
はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-
はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-
 
開発環境をDockernizeした話
開発環境をDockernizeした話開発環境をDockernizeした話
開発環境をDockernizeした話
 
今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門
 
Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014
Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014
Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014
 
Amazon ECSとDevOps
Amazon ECSとDevOpsAmazon ECSとDevOps
Amazon ECSとDevOps
 
Recap: Modern CI/CD with Tekton and Prow Automated via Jenkins X - Kubernetes...
Recap: Modern CI/CD with Tekton and Prow Automated via Jenkins X - Kubernetes...Recap: Modern CI/CD with Tekton and Prow Automated via Jenkins X - Kubernetes...
Recap: Modern CI/CD with Tekton and Prow Automated via Jenkins X - Kubernetes...
 
Infrakitの話とk8s+GPUの話
Infrakitの話とk8s+GPUの話Infrakitの話とk8s+GPUの話
Infrakitの話とk8s+GPUの話
 

自動化ーニバルだよ!GDC16に見る自動化技術とテストのトレンド