正しくベータテストを行うために、知っておきたい基礎知識 | アドビUX道場 #UXDojo

Creative Cloud UI/UX & Web

テストはデザインプロセスの重要な一部です。そしてプロセスの各段階では、異なる種類のテストが必要とされます。この記事では、ユーザーによる検証を通じて失敗のリスクを軽減できるテスト、すわなちベータテストについて説明します。

ベータテストの実践は製品開発の現場を中心に一般的に行われています。しかし、ベータテストとは何か、あるいは製品デザインにどのような利点を提供するのかについては、しばしば誤解が見られます。そこでこの記事では、ベータテストの定義、そしてベストプラクティスや実行する際に考慮すべき事柄を紹介します。

ベータテストとは何か?

ベータ・テストとは、実際に使用される環境におけるパフォーマンスを評価するために、完成に近い状態の製品をターゲットであるユーザーに与えるユーザー評価テストの一種です。

ベータテストに標準的なやり方や準備方法はありません。実際のテスト手順は、テストの目標に合致したものであるべきです。ただし、ベータテストの実施の際に従うべき条件がいくつか存在します。

  • 製品は機能の実装が完了した状態であること(公開が予定されている機能がすべて含まれているべきです)
  • 製品が安定していること(テスト参加者が予測できないな状況に直面すべきではありりません)
  • テスト参加者が、製品のターゲットに属していること
  • テスト参加者は、テスト用ラボではないリアルな操作環境において、現実世界で実際に発生するシナリオを完了すること

アルファテストとベータテストの違いは何か?

ベータテストのさまざまな種類やアプローチについて紹介する前に、アルファテストとの違いを明確にしておきましょう。

アルファテストはベータテストの前の段階で行われます。ベータとは異なり、アルファテスト用のバージョンは安定性が低くて、機能も限られているのが一般的です。アルファテストは、多くの場合、チーム内の開発者、デザイナー、品質管理の担当者から構成されるチームによって行われます。アルファテストはバグやクラッシュを発見するために、ブラックボックステスト(テストする機能や製品の内部構造、デザイン、実装について参加者に知らせないテスト方法)とホワイトボックステスト(テストする項目の内部構造、デザイン、実装について参加者に知らせるテスト方法)を組み合わせて実施されるのが一般的です。アルファテストでは行動をコントロールすることが可能です。つまり、テストの参加者に指示を出したり、彼らの体験について特定の質問をすることができます。

最新のソフトウェア開発プロセスにおいて、ベータテストは製品開発サイクルの不可欠な部品であるべきです。

ベータテストは通常ブラックボックステストです。テスト参加者は実装について何も知らず、ソースコードにもアクセスできません。ベータテストはほとんどがエンドユーザー側で行われることになるため、ユーザーの操作をコントロールすることはできません。ベータテストは非常に貴重な洞察を提供できます。製品とのインタラクションについての真のシナリオです。

例えば、ベータテストでは、想定していたユーザージャーニーと実際のユーザージャーニーを比較することができます。ユーザーの行動習慣(ソフトウェアの操作にマウスとキーボードのどちらを好んで使用するか)、感情的な反応(デザイン上の決定をユーザーがどのように感じるか)といった情報を収集できます。また、ユーザーから実際に得たデータに基づいた共感マップを作成することもできます。

デイビッド・グレイによる共感マップのカンバス
共感マップのモデル

製品デザインにおけるテストの実施時期

最新のソフトウェア開発プロセスにおいて、ベータテストは製品開発サイクルの不可欠な部品であるべきです。最終的には、開発サイクルの中でベータテストを実施するタイミングは、開発している製品の性質次第です。ベータテストを主要なリリースのみに限定しているチームもあれば、すべてのリリースでベータテストを実施しているチームもあります。

ソフトウェアまたはアプリケーション開発プロセスをノブとして表現した画像と3D背景の合成イメージ。
画像提供: Olivier Le Moal

テストの順序は組織のニーズによって異なりますが、一般的なテスト手順は次のようになります。

  • アルファ前のテスト(初期開発段階で、製品チーム内部で行われるテスト)
  • アルファテスト(ラボ環境で開発の進んだプロトタイプを用いて製品チームが行うテスト。信頼できる少数のユーザーをテストに招待することもある)
  • ベータテスト(被験者から完成した製品を使用した最初の反応を得るために行われるチーム外の人々と行うテスト)
  • リリーステスト(一般公開する前の最終テスト)

すべての段階で明確な合格基準を設定するべきです。たとえば、ベータテストの場合であれば、優先度の高い問題に関するバグの数を0にすることが挙げられるでしょう。

ベータテストの種類

次に紹介するのは、一般的に行われているベータテストのいくつかの種類です。ベータテストには、異なる種類のベータテストを複数含めることができる点に留意してください。

クローズドベータとオープンベータ

クローズドベータ(プライベートベータとも呼ばれます)は、選ばれたユーザーによる機能のテストです。例えば、今後数か月以内に製品の公開を計画していて、製品の最新情報を入手したい訪問者が電子メールを残せるランディングページがある場合、サインアップした人の中からベータテスターを選択することができるでしょう。クローズドベータテストは、限られた範囲(将来公開される予定の主要な機能のみ)のベータテスト向きです。通常、テスト参加者の数は制限されます。テスター数の増加に伴い、問題を発見する効率が下がるため、テスト参加者の総数を制限することは理にかなっています。

検出された問題の数を平準化したテスト・ユーザーのグラフ。
より多くのユーザーがより多くの問題の発見につながるわけではない

一方、オープンベータテストはアクセス制限をかけず、誰でもベータテストに登録できるようにします。オープンベータテストは、クローズドベータテストの後に続けて行われるのが一般的です。ベータテストは、ターゲットユーザーと彼らのインタラクションパターンに関する定量的なデータを収集したい場合には最適です。また、このテストでは、バックエンドが実際の数のユーザーを処理できるかどうかなど、実行環境の拡張性に関する洞察も得られます。ただし、オープンベータテストの結果を分析するのは、テスト参加者が多いほど困難になります。例えば、GoogleがGmailのベータテストを行い、その結果が完全に一般利用できるようになるまでには5年かかりました。

テクニカルベータテスト

技術面に焦点を当てたテクニカルベータテストは、技術に詳しいユーザー(通常は、組織内の人たち)を対象にしたベータテストです。このテストの目的は、複雑なバグを発見し、エンジニアリングチームに質の高いのテストレポートを提供することです。技術に精通したテスト参加者には小さな問題に寛容な傾向がありますが、これがより集中したテストを可能にします。参加者は、途中で問題に直面する場面があっても、進んでテストを完了しようとするでしょう。

限定ベータテスト

特定の機能に関するフィードバックを収集する必要がある場合に行われるのが、限定ベータテストです。フィードバックを集めるために、その機能が利用できるバージョンを公開します。

マーケティングベータテスト

マーケティングのベータテストの目的は、製品に対する情報メディアの注目を集めることです。一般的に、このベータテストは、マーケティングチャネルの評価をするのに役立ちます。また、ユーザーの新しい製品機能に対する反応を把握することも可能です。Instagramのように、マーケティングベータテストに両方の目標を掲げている例hもいくつかあります。

ベータテストの実行に必要なもの

他のテストプロセスと同様に、ベータテストも適切な計画から始まります。最初の段階ではテスト戦略を準備します。考慮するべきいくつかの点を以下に示します。

目標を事前に設定する

まず何よりも重要なのは、ベータテストで達成しようとしている目標を知ることです。実際にテストしたいものは何でしょうか?確認したい特定のユーザーフローまたは特定の機能をはあるでしょうか?目標が定まれば、テスト範囲を選択し、最適なベータテストの種類を選ぶことができます。

正しい被験者を募集する

適切な参加者を特定して勧誘することは大きな挑戦です。テスト参加者が製品を使用するために必要なスキルを持っているべきであるという条件が、場合によっては問題になることがあります。参加者の数が不適切なのは、ベータテストが失敗するよくある理由のひとつです。

では、ベータテストに必要な人数はどのように計算すればよいのでしょうか?すべてのプロジェクトは異なるため、どんなプロジェクトでも利用できるテスト参加者数の計算式を提供することは困難ですが、3つの制約のコンセプトに頼ることは可能です。このコンセプトでは、コストは時間と対象範囲の関数であり、これら3つの要素は定義された予測可能な方法で関連しているとされます。これをベータテストに適用すると、テスト範囲を拡大したら、品質を維持するために時間やコストを増やさなければならないことがわかります。テスト参加者の数に関しては、調査結果の統計的有意性を証明するのに十分なフィードバックを適切に提供できる人数が目安になります。How to RightSize Your Mobile App Beta Programという記事では、モバイルアプリの場合に、人数を算出する方法の例が示されています。

範囲、コスト、時間を頂点とする三角形の描画。
3つの制約の概念を使用して、必要なベータテスターの数を決定する

テスト期間の決定

短すぎたり長すぎるテスト期間は、ユーザーの反応を正しく表さない結果につながります。テストを開始する前に、ベータ版を参加者向けに提供しておく期間を判断するのは重要です。期間を決定する要因としては、設定した目標、または設定した予算額を利用することができます。

製品ドキュメントの作成

テストする製品には、セットアップ方法と使用方法の説明が用意されていなければなりません。説明書は、詳細に専門用語を使用せずに記述し、確認のためのレビューを行いましょう。テスト参加者がいつでも説明を参照できるようにしておきます。

既知の問題をテスト参加者と共有する

ユーザ体験に悪影響を与える既知の問題がある場合は、ベータテストを開始する前に、テスト参加者に問題の一覧を共有することをお勧めします。そうすることで、テスト参加者は問題に対してより寛容になります。

ベータテストの結果を製品チームおよび関係者と共有する

デザインチーム、開発チーム、品質管理、プロダクトマネジメントを含め、全員がベータテストの結果を受け取るべきです。

フィードバックを収集するための明確な手順を作成する

ユーザの行動に関するいくつかの情報は自動的に収集されるべきです(つまり、クラッシュレポートやその他のシステム情報を送信するためのメカニズムが組み込まれているべきです)が、テスト参加者と製品チームのコミュニケーションのための明確な経路を作ることも重要です。テスト参加者は、製品の機能に関する彼らの考えを共有し、デザイン変更の要望を提出することができるべきです。

ベータテスト用ツールを使用する

ベータテストで一般的に収集される情報には、バグの記録、生産性の測定、ユーザーからのフィードバックなどがあります。テストプロセスを簡素化してくれるツールを準備しておくことは重要です。以下はベータテストを効果的に実行するのに役立つツールです。

おわりに

ベータテストは、製品が市場に出る前に実際のユーザによるテストができる素晴らしい実践です。ベータテストの目的は製品によって異なるかもしれませんが、最終的なゴールは変わりません。優れたユーザー体験を提供する製品の実現です。


この記事はEverything You Need to Know About Beta Testing(著者:Nick Babich)の抄訳です

POSTED ON 2019.12.16