ベータテスト:アプリケーションにおけるベータテストの基本と重要なステップ
A/Bテストとは、2つの選択肢を比較し、より良いパフォーマンスを発揮する方を選択することであり、みなさんも一度は聞いたことがあるかもしれません。しかし、アプリケーションやWebのA/Bテストでは、「A」と「B」はもはや2つのバリエーションを表すのではなく、「アルファ」と「ベータ」テスト、つまり受け入れテストのようなものです。社内チームによって運営されるソフトウェアのアルファテストにおいては、そもそも新製品が意図したとおりに機能するかどうかを判断するための最初のステップです。一方、ベータテストは、ターゲットオーディエンスの実際の使用状況を小規模で検証するためのプロトタイプサンプルとして機能します。
企業はこれらのテストによってより良いROI(Return On Investment:投資利益率)を受け取ることができます。しかし、アプリケーションやWeb開発者は、ベータテストの実行において、テスト段階のための適切なプロセスを設計する際に頻繁に困難に直面します。本記事では、ベータテスト概要や役割、具体的なプロセスについて説明します。
1.ベータテストとは
ベータテストは、アプリやWebサイトを大規模なエンドユーザーに公開する前の最終段階と呼ばれます。この段階では、限られた数の実際のユーザーが、一般公開で使用する予定のものと同じハードウェアやネットワークなどを使って試行します。このようなアプリ開発者が管理する環境において、ユーザーの使用過程における操作の不具合をできるだけ多く発見することが目的です。
アルファテストとベータテストの大きな違いは、誰がテストを行うかです。
アルファテストは、技術的なバグや生産上のエラー検出のために、社内の専門職員がラボ環境で行うことが多いのですが、ベータテストは、実際の使用状況のフィードバックのために、社外の実際のユーザーが本番環境で実施するものです。具体的には、内部テストによって明らかになる問題も多くありますが、、拡張性、パフォーマンス、信頼性の検証という点では、実際のユーザーで検証する必要があります。
2.ベータテストの重要な役割
組織内に複数の経験豊富なテスターがいる場合、アルファテストのみで十分ではないか、という疑問が生じるかもしれません。それでは、アプリケーションの開発プロセスにおけるベータテストの役割は何でしょうか?以下では、ベータテストの重要性を強調する主な利点をご紹介いたします。
隠れた問題を発見する
ベータテストアプリは、開発者がチーム内で検証している間に見逃してしまうような問題を特定するのに役立ちます。ユーザー側からアプリケーションにアプローチするさまざまな方法と同様に、ベータテスト期間中に気づかないバグが発見されることもあるでしょう。
複数のデバイスを組み合わせたテストが可能
ベータテストでは、参加者が自分のデバイスでアプリケーションやWebサイトをテストするため、社内チームのみでは困難だった幅広いデバイスによるテストを可能にします。これは、応答性や互換性の観点から、クロスサーバーやクロスデバイスの能力を検証するのに役立ちます。また、ソフトローンチを行うことで、地方や全国など様々な地域でアプリの動作確認ができ、様々な場所で正しく機能するかどうかを確認することができます。Lambda Testのように、クロスブラウザで確認できるクラウド上のベータテストアプリも出てきています。
リアルタイムのユーザー行動及び体験データ
ソフトウェア、アプリ、ウェブサイトを開発するキックオフとは、ユーザー基準のリストが検出されるのを待っていることを意味します。これらの要求がすべて認識され、ベータテストの段階で実装が検討されると、高品質なアプリケーションを手に入れることができます。具体的には、顧客の行動やフィードバックに関するすべてのデータがあれば、開発者は時間の使用量、要求量、そして時間の遅延、隠れたバグなどの概要を把握することができます。そこから、アプリ開発者は拡張性の改善や、エンドユーザーにとってシームレスなアプリのUX/UIパフォーマンスの強化などを決定することができます。
コスト最適化オプション
バグを発見するのに膨大な時間とコストがかかる本番のアルファテストに比べ、ベータテストは最小限の労力でコストを抑えながら、アプリのターゲットとなる顧客がリアルタイムで使用することを想定しています。リアルなフィードバックを低コストで得ることができるのです。
3.アプリのベータテストをデプロイする主なステップ
上記から、アプリケーション開発におけるベータテストの利点を理解していただけたと思います。利点を理解したところで、次にアプリ開発者は効果的なベータテストを成功させるための計画を立てる必要があります。アルファテストの後、いくつかの重要な段階があります。
ベータテストの目的を明確にする
テストの目的がマーケティングか技術的かによって、企業は適切なテスト形態を選択することになります。開発者は、アプリの特性と使用目的の全体のコンセプトを把握し、パブリックかプライベートベータテストかを選択する必要があります。
- パブリックベータテスト(またはオープンベータテスト)は、公共の場で関心のあるすべてのユーザーに無制限かつ無料の参加を提供します。最小限の資格しか必要としないオープンテストは、多くのテスターを集めることができ、最もアクセスしやすいベータテスト募集方法です。
このテスト方法は、多様なアイデアやフィードバックを得ることを目的としたベータテストに適しています。一般公開する前の最後のテストかマーケティングツールとして実施されることが多く、たくさんの人の興味を引くことができます。
- プライベートベータテスト(またはクローズドベータテスト)は、アクセスを制限し、企業によって招待されたユーザーのみが、試用目的でアプリケーションをダウンロードする権利を持っています。
このテスト方法は、アルファテストの段階を経て、アプリのセキュリティ、負荷耐性、パフォーマンス特性など、専門的なフィードバックを得る技術的な目的に適しています。プライベートベータテストは、パブリックベータテストの前に実施されるのが一般的です。
全体として、目的に応じていくつかのベータテスト方法がありますが、パブリックとプライベートは、マーケティングと技術的な目的であり、ベータテストの2つの大きな意図です。
ベータテスターのペルソナを作成する
どのタイプのベータテストが自社の目的に合っているかを決めたら、今度はテスターを誰にするかを理解しましょう。目的に応じて、技術的な目的のクローズドテストではプロのテスター、マーケティング目的のオープンテストでは「ターゲットエンドユーザー」となります。以下は、テスターの「イメージを描く」ために答えなければならない質問の一例です。
- テスターは誰ですか?
- 想定される職業は?
- 専門的なスキルレベルはどの程度か?
- 自社のアプリで解決できる問題は?
- この種のアプリの使用頻度は?
- アプリを使う動機は?
- 彼らはどのような機能を求めているのか?
など
テスターのペルソナが詳細であればあるほど、ベータテストの結果はより効果的で価値のあるものになることを覚えておいてください。
問題リストのデザインとテストの期間
ベータテストに決まった期間はありません。あらかじめ決められた期間、またはすべてのバグが修正されるまで継続することができます。設定された期間とは別に、開発者は、検討のための十分なフィードバック情報を収集するために、定性的および定量的なアンケート手法に基づいた質問リストの設計を決定する必要があります。
ベータテストの募集とガイドラインの実施
ベータテスト担当者募集のために、開発者がテスターにアプローチするためのプラットフォームをご紹介します。
- テスター専門のプラットフォーム:Erli Bird、BetaList、Betabound、BetaTesters Hub、Ubertestersなどです。
- ソーシャル・プラットフォーム:Twitter、Reddit、Quoraなどで、特定のハッシュタグを使ってトピックを投稿したり、ニュースを発表したりして、テスターに見つけてもらいます。
ターゲットとなるテスターが見つかったら、次はアプリケーションを配信し、試してもらう方法です。ここでは、一般的なアプリケーション配信プラットフォームをいくつか紹介します。AppBlade, Google Play Beta Testing, Appaloosa, TestFlight, Installrapp, Crashyltics Betaなどです。
テスト要員の確保と同時に、企業はテスターのために、条件、ベータテストへの参加方法、期待される入力情報、フィードバックプロセスのガイドなど、明確なガイドパスを作成する必要があります。これは、テスターの利便性とフィードバックの質を確保するためです。
プライベートベータテストの場合、テスターにNDAの締結を求めることがあります。
フィードバックの収集と分析
このテクノロジー時代には、フィードバックの収集と整理はすべて自動で行われます。開発者は、クラウドサービスやRPAサービスを利用して、すべてのデータを収集し、より効果的な分析プロセスや結果を得るためにリレーショナル構造で整理することを検討することができます。これにより、データの欠落や貴重なフィードバックの損失がないことが保証されます。
正しい推測の決定
テスターのフィードバックには、大きく分けて「バグ報告」と「改善勧告」の2種類があります。前者は、テスターが見つけたバグに対して、開発者が対応し、修正します。。しかし、後者は、すべてのアイデアを分析し、検討することになります。この提案は、アプリの最初のコンセプトに反していないか、互換性があるか、適しているかという点についてです。
すべてのベータテスターの意見に耳を傾けるべきですが、選択もしなければなりません。。開発者は、Webサイトやアプリに埋め込む前に、十分に考える必要があります。そして、新機能も再テストまでする必要があります。
ベータテスターとの関係を維持する
テスト期間中だけでなく、テスト終了後もベータテスターとの関係を維持するべきです。アプリのローンチが成功すると、ベータテスターの重要性に気付きます。情熱的で貴重なテスターとのつながりを維持することは、今後のプロジェクトのテストにおいてフィードバックの質を確保するのに繋がります。
アプリのプレミアムアカウントを提供するなど、テスターのモチベーションを高めることもできます。
まとめ
アプリケーションのローンチプロセスにおいて、ベータテストが重要な役割を担っていることは明らかです。それは効果的で、高いROIをもたらしますが、一部のアプリ開発者は、適切なベータテストプロセスを計画するのに苦労しているのも事実です。本記事を通して、アプリケーションのためのベータテストの基本的なステップを理解していただけたら幸いです。
アプリのベータテストを行う際のリソースは、自社で行うか、テストサービスに委託するかの2択です。自前でテストチームを構築し、募集し、訓練するのは、時に大変な労力とコストを要します。そのような場合には、テストアウトソーシングサービスに頼ってみてはいかがでしょうか。。CMC Japanは、29年の支援実績と2200人以上のプロフェッショナルなエンジニアをもって、テストサービスをお引き受けいたします。お気軽にお問い合わせください。