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
組み込み開発のテストとゲーム開発のテストの違い
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
gree_tech
PRO
November 11, 2021
Technology
0
820
組み込み開発のテストとゲーム開発のテストの違い
GREE Tech Conference 2021 で発表された資料です。
https://techcon.gree.jp/2021/session/ShortSession-4
gree_tech
PRO
November 11, 2021
Tweet
Share
More Decks by gree_tech
See All by gree_tech
変わるもの、変わらないもの :OSSアーキテクチャで実現する持続可能なシステム
gree_tech
PRO
0
3.2k
マネジメントに役立つ Google Cloud
gree_tech
PRO
0
34
今この時代に技術とどう向き合うべきか
gree_tech
PRO
3
2.5k
生成AIを開発組織にインストールするために: REALITYにおけるガバナンス・技術・文化へのアプローチ
gree_tech
PRO
0
240
安く・手軽に・現場発 既存資産を生かすSlack×AI検索Botの作り方
gree_tech
PRO
0
220
生成AIを安心して活用するために──「情報セキュリティガイドライン」策定とポイント
gree_tech
PRO
1
1.6k
あうもんと学ぶGenAIOps
gree_tech
PRO
0
340
MVP開発における生成AIの活用と導入事例
gree_tech
PRO
0
370
機械学習・生成AIが拓く事業価値創出の最前線
gree_tech
PRO
0
260
Other Decks in Technology
See All in Technology
Data Hubグループ 紹介資料
sansan33
PRO
0
2.7k
Digitization部 紹介資料
sansan33
PRO
1
6.8k
顧客との商談議事録をみんなで読んで顧客解像度を上げよう
shibayu36
0
250
変化するコーディングエージェントとの現実的な付き合い方 〜Cursor安定択説と、ツールに依存しない「資産」〜
empitsu
4
1.4k
Oracle Cloud Observability and Management Platform - OCI 運用監視サービス概要 -
oracle4engineer
PRO
2
14k
Kiro IDEのドキュメントを全部読んだので地味だけどちょっと嬉しい機能を紹介する
khmoryz
0
200
Tebiki Engineering Team Deck
tebiki
0
24k
StrandsとNeptuneを使ってナレッジグラフを構築する
yakumo
1
120
AWS Network Firewall Proxyを触ってみた
nagisa53
1
240
登壇駆動学習のすすめ — CfPのネタの見つけ方と書くときに意識していること
bicstone
3
110
コスト削減から「セキュリティと利便性」を担うプラットフォームへ
sansantech
PRO
3
1.5k
Bill One 開発エンジニア 紹介資料
sansan33
PRO
5
17k
Featured
See All Featured
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
250
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.4k
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
Become a Pro
speakerdeck
PRO
31
5.8k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
280
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
310
Evolving SEO for Evolving Search Engines
ryanjones
0
130
How to Ace a Technical Interview
jacobian
281
24k
Code Reviewing Like a Champion
maltzj
527
40k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.6k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
310
Transcript
組み込み開発のテストと ゲーム開発のテストの違い グリー株式会社 QAグループ シニアマネージャー 堀⽶ 賢
2 ⾃⼰紹介 ⽒名と所属 主な仕事内容 略歴 堀⽶ 賢(ほりごめ さとし) Customer &
Product Satisfaction部 QAグループ シニアマネージャー 障害削減、QAコスト最適化の推進 リスクマネジメント、プロダクト品質向上提案 QAグループ技術向上の推進 など 組み込み系ソフトウェアのテスト技術者を経て グリーに⼊社。ベンダ連携やテスト内容の改善、 メンバーの技術向上に向けた勉強会開催など幅 広く活動中。 CEDECに過去4回登壇
3 今回お話する前提 製品例 開発プロセス 開発期間 テスト規模 組み込み開発 ゲーム開発 ウォーターフォール型 (派⽣開発が多い)
アジャイル型 (新規と運⽤がある) 半年〜数年 新規︓1〜2年(増加傾向) 運⽤︓数⽇〜数週間 数⼗⼈ 新規︓10〜20⼈ 運⽤︓数⼈ ※期間、規模は⼀例です。 ※あくまで個⼈の経験/⾒聞の範囲となるため、⼀般論と異なる内容も含まれます。
4 今回お話すること 1.構成管理の違い 2.テスト設計⽅法の違い 3.テスト体制の違い 4.さいごに
5 今回お話すること 1.構成管理の違い 2.テスト設計⽅法の違い 3.テスト体制の違い 4.さいごに
6 ソフトウェアの更新管理 組み込み開発 ゲーム開発 フェーズ 開発 α β1 βn …
既存機 能実装 追加機能 実装① … 追加機 能実装 n β1不具 合修正 βn不具 合修正 特徴 α β … 基本機 能実装 アセット変更 本番デ ータ⼊ 稿 仮データ⼊ 稿 … インクリメンタルな開発で、各フェーズご とに計画された機能を実装する。 バージョンは規則的に設定され、更新タイ ミングがそのまま開発のマイルストンにな る。 イテレーティブな開発で、随時アセットを 更新/変更する。 バージョン内での開発要件が流動的で、要 件リストなどを⽤いることがある。 テスト⽤ビルドのバージョンは都度確認。 … …
7 仕様の更新管理 組み込み開発 ゲーム開発 運⽤ 特徴 既存モデルの仕様書をベースに、新規機能 分を追加し、バージョンをインクリメント する。 要件追加等で開発中に変更があった場合、
変更分とバージョンを更新する。 開発の全体像となる機能は、箇条書きや要 件ベースでドキュメント化されることがあ る。 仕様の変動が多いため、都度の更新はせず にリスト管理などで運⽤する。 v1.0.0 既存機能 v1.1.0 追加機能込 変更管理 シート 仕様書 開発要件 リスト
8 ゲームのテストに活⽤した点 ・ゲーム開発は、仕様/ソフトウェアの変更や追加、削除が多くプロジェクトの変動性が⾼い。 ・マクロな視点で、⾒積もりやテスト内容をコントロールすることが重要(その上でテスト技術が⼤事)。 変更が多いため、ミ クロな視点になりが ち マクロな視点で全体 をコントロールする ことが重要
・場当たり的なアサイン ・テストの重複 ・計画的なアサイン ・重複の抑制
9 今回お話すること 1.構成管理の違い 2.テスト設計⽅法の違い 3.テスト体制の違い 4.さいごに
10 テスト設計⽅法の特徴 組み込み開発 ゲーム開発 開発の特 徴 ・仕様の変動が少なく、段階的に機能開発 する ・機能不具合が返品や事故につながる可能 性があるため、安⼼/安全を重視する
・仕様の変動が多く、実装済の機能に対し ても後から変更されることがある ・ユーザーから⾒た価値が変動しやすく、 市場において、より魅⼒的であるかを重視 する テスト設 計の特徴 ・⾼いカバレッジを達成するためにテスト アーキテクチャ設計をする ・機能テストは詳細なローレベルテストケ ースを⽤いる ・経験ベースのテストや探索的テストは機 能テストを補完するかたちで実施する ・組み合わせや条件を網羅するためにテス ト設計技法を適⽤する ・仕様変更に対応するため、⼀部機能につ いては抽象度の⾼いハイレベルテストケー スを⽤いる ・経験ベースのテストや探索的テストは機 能テストと並⾏して⼀定の⼯数をかけて実 施する ・状態の変化や設定の境界を網羅するため にテスト設計技法を適⽤する
11 ゲームのテストに活⽤した点 ・仕様の変動が多いため、テストの抽象度が⾼く属⼈化しやすい。また網羅性が確認しづらい。 ・テストケース詳細化の粒度とテスト観点の教育、網羅性の可視化などが重要。 機能 ⼿順 期待結果 チュートリアル チュートリアルを進⾏する チュートリアルが問題なく進⾏する
こと ※テストケース例 機能 事前条件 ⼿順 期待結果 チュートリ アル 開始 インストール 後の初回起動 ゲームを開始する チュートリアルが始ま ること クエス ト ↑から継続し て進⾏ クエストへの案内 を選択する クエストの説明が始ま ること ・・・ 観点説明資料 マニュアル等 + ・属⼈化しやすい ・テストできているか不明瞭 ・⼀定⽔準でテストできる ・テスト内容が明確
12 今回お話すること 1.構成管理の違い 2.テスト設計⽅法の違い 3.テスト体制の違い 4.さいごに
13 稼働場所とアサイン⽅法 組み込み開発 ゲーム開発 オンサイ ト オフサイ ト 開発担当 テスト担当
テスト リーダー テスト メンバー テスト メンバー 接続互換性テスト、多端末テストなど で稼働する可能性あり。 開発担当 テスト担当 テスト リーダー スタジオ リーダー テスト メンバー テスト メンバー ※テストメンバー は固定アサイン ※テストメンバー は都度アサイン
14 ゲームのテストに活⽤した点 ・スケジュールの変動が多いことなどから、固定したアサインが難しい。 ・精度の⾼いテストを実現するために必要な情報連携を意識したテストスタジオとの関係構築が重要。 ⾃ 社 ス タ ジ オ
テスト担当 テスト リーダー スタジオ リーダー テスト メンバー テスト メンバー 密な状況連携 ・アサインミスの抑制 ・テスト精度の向上
15 今回お話すること 1.構成管理の違い 2.テスト設計⽅法の違い 3.テスト体制の違い 4.さいごに
16 さいごに ソフトウェアテストの対象ドメイン例 ・ソフトウェアテストのアプローチは様々で、対象ドメインの違いで変わってくるが共通することも多々ある ・それぞれの特徴を認識して、参考にすることで現場課題の解決につながる可能性がある
17