◆この記事を読むのにかかる時間:約5分程度
◆この記事の主な対象者:仕様変更や共有漏れなどによる障害を減らしたい方
1.はじめに
みなさま今年も一年お疲れさまでした。
恒例のアドベントカレンダーの時期になりました。
私事ですが、今年は担当するタイトルが増え、
新たな環境で障害削減の取り組みなどを進める機会が多くありました。
今回は新たに実施した「ユーザシナリオを想定したテストで障害の抑制を図った」取り組みについて、ご紹介していきたいと思います。
2.課題感
今回の事例とするタイトルでは以下のような課題感に直面していました。
a.ユーザーの意向を最後まで検討するがゆえに、仕様確定の遅延・QA期間中の変更が多発
上記に伴って実装の遅延や設定値の調整などがテスト中も多く発生しており、
綺麗な実装状態でのテストが行えない状況が多く発生していました。
b.職掌内、QAへの仕様変更の共有が上手くされていないパターンが頻発している
例えば、設定変更が入ったが、別の影響箇所の表記は古い仕様のまま などの不整合が目立つ状況が多く発生していました。
また、テスト後の機能に対して変更が入っても関係者に連携がないままリリースされてしまう といった、リスクの高い状況もありました。
3.対策
課題の事象に関しては、
前提として、仕様変更があった際には関係者に周知を実施する、
テスト終了後に変更を行わない、といったフローを設けていますが、
それでも事業やタイトル、市場の状況変化にあわせて、仕様変更は発生します。
QAチームもなるべくこれらの状況に柔軟にかつ、ユーザが不利益を被ってしまう障害リスクを排除するように対応するため
テスト終了後~リリース前の最終状態での、
仕様が最新化された状態で施策の整合性が保たれているか
テスト未依頼のままリリースされているものがないか 、既存機能に問題が生じていないかなどの確認を目的とした、
「ユーザの観点を想定した通しテスト」を実施することにしました。
テストの概要は以下となっています。
確認実施タイミング
QA期間後~リリースまでの数営業日の間に実施。
※可能な場合はQA期間の最終日などを充てる
確認観点
主に以下のような観点で実施。
・各影響範囲の仕様情報と実機/設定値の状態が一致しているか
→仕様変更の共有漏れによる不一致を防ぐ観点
・実機内で出ているもの対して整合性が取れており違和感がないか
・定常的に入る施策更新が過不足なく正しく入っているか
→ユーザが利用する定常箇所などで、連携漏れなどによる作業未実施を防ぐ観点
例)ガチャラインナップの更新など
以下にテストサンプルのケースを添付します。
4.取り組みから得られた結果
実際に本テストを導入したことで以下の結果が得られました。
数値結果:
1リリース平均で約12.7件の不具合検知をおこなうことができた。
※1リリース毎に検知される不具合総数の約10-20%
主な検出内容:
・仕様変更の共有漏れの箇所やQA実施後に連携なく調整をした内容
・定常施策での更新漏れ
・表示系の違和感や不備など(優先度は高くない見切れやレイアウトなど)
テストの目的としている連携・共有漏れなどに起因する不具合が検知できているという点で、
一定の取り組みの効果はあるように感じました。
一方で、当然ながらコスト面はテストを実施した分膨らんでしまうため、
その点は開発チームと事前にしっかりと合意を得ておく必要があります。
5.おわりに
いかがだったでしょうか。
同じような状況でのテスト・障害抑制の課題感を抱えている方々は、
特にゲームの開発現場だと多いのではないかと思います。
この記事の取り組みが参考になりましたら、ぜひお試しいただけると幸いです。
それでは皆さま、よい年末をお過ごしください。