Microsoft Azure AppService WebAppの「ステージング機能」を使って「A/Bテスト」を試してみました。

Pocket

testab_title
Web制作をやっていると一度は「A/Bテスト(スプリットランテスト)」という言葉を聞くし、携わることもあるのではないでしょうか。

■A/Bテストとは?
A/Bテストとは、複数の案のどれが優れているかを、何度も試行して定量的に決定するテスト手法。WebページやWeb広告のデザインなどでよく利用される。[IT用語辞典より引用]
http://e-words.jp/w/A-B%E3%83%86%E3%82%B9%E3%83%88.html

このA/Bテストについては、色々な会社が分析ツールを出しているので、実際に行うときは何かしらの分析ツールを使う場合が多いと思います。

またAzureの「スロット(ステージング)」は、テスト環境と本番環境を入れ替えるためのものですが、「これとGoogleアナリティクスを使えばA/Bテストできるんじゃない?」という意見を @kazumihirose さん にいただきまして、たしかにそうかも!と思って方法を考えてみました。
今回はWebマーケティングな視点でのMicrosoft Azureの活用案ですが、「同一期間のA/Bテスト」を想定しています。
(トラフィックの配分を行うテスト方法についてはまた後日やります)


スロットを使ってA/Bテスト用の環境を作る

testab01
例えばLPページでA/Bテストすると過程します。

  • デザインA … メイン画像部に「お申し込みボタン」がない
  • デザインB … メイン画像部に「お申し込みボタン」あり

testab02
Azure WebAppで新規のWebアプリを作成して「新しい展開スロットの追加」でステージング環境を作成し、それぞれにデータをアップロード。

  • web-abtest … 「デザインA」のデータを入れる
  • web-abtest(testb) … 「デザインB」のデータを入れる

「ステージング環境」の設定についてはこちらの記事をどうぞ。

■Azure WebSitesの「ステージング」をWeb制作な視点で使ってみました
http://zuvuyalink.net/nrjlog/archives/1723

必要あれば、該当のWebアプリにドメインを設定しておきます。

計測を開始する

今回は期間計測として「1週間ごとにデザインAとデザインB」を入れ替えるとします。
「スロット」を使用してA/Bテストをする場合、「本番サイト」に入ってるデータがユーザーに表示されるサイトとなります。

testab03
「デザインA」が本番サイトに入っているので、この週にアクセスした場合、ユーザーには「デザインA」が表示されます。

testab04
「ステージング」でデータが入れ替わります。(URLは変わらないが中身が変わる)
この週は「デザインB」がユーザーに表示されます。

こんな感じで、「デザインA」と「デザインB」の入れ替えを週ごとで繰り返しデータを集めて分析します。
AとBはほぼタイムラグなく切り替わるので、閲覧ユーザーに影響なくテストを繰り返すことができます。

ステージングを使うといいなと思うところ

テスト対象ページの差し替えが簡単

クリックだけで「本番サイト」と「ステージング」が切り替えられます。
また「ステージング」にあるサイトは反映されませんが、URLを知ればページを確認できるので、本番サイトに反映する前にWeb上でクライアント確認をしてもらうことも可能です。

使用中のURLをそのまま使える

例えばドメインで運用しているLPページのテストをしたい場合、AzureのCnameを指定することでA/Bテスト用に作成したwebアプリにドメインを設定することもできます。
なので、テストを開始するためにURLを変更する手間もかかりません(URL変更作業って広告出稿してると地味に大変かなと)

突然のアクセス増加にも対応できる

例えば、Yahoo!ニュースなどに紹介されたりテレビに出たりということがあるといきなりアクセスが集中する場合もありますが、そのときは即時スケールアウトできるので「サイトが落ちる」「表示が遅くなる」ということも防げます。
これはキャンペーンサイトでかなりの強みかなと。

バックアップデータで当時の状態が一目瞭然

テストを続ける中で「この日のクリエイティブってどんなのだっけ?」となった場合、Azureで自動バックアップを取るようにしておけばその日のデータをすぐ確認できます。

最後に

ABテストは、長期的に細かな改善を行いながら効果的な訴求のクリエイティブを作ることを目指していくものです。
個人的には、詳細で厳密なデータを取りたい場合などは各企業が提供している分析ツールを活用するのが良いと思いますが、わざわざツールを新しく入れなくても「Azure WebApp + Googleアナリティクスが使えればA/Bテストは比較的簡単に採用」できると思います。
「ステージング機能」は単にテスト環境と本番環境を入れ替えるだけではなく、視点を変えれば色々な使い方ができるというのはホントに面白いなーって思いました!

また多変量テストも構成をうまくやればできそうとのことなので、そちらのやり方も引き続き考えてみたいと思います―。

Pocket

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>