企業のIT戦略でモバイルアプリケーションがますます重要になるにつれて、アプリケーションをテストし分析することがより重要になってきた。ユニットテストを使ったテストなどコードの機能的なテストはすべてのソフトウエアプロジェクトで実施されているだろうが、ユーザの振る舞いを分析しコンバージョン率を最大化するのはモバイル分野ではまだ未開拓だ。
Splitforceはモバイルアプリ向けにA/Bテストを提供する。アプリケーションの開発者はSplitforceを使うことで、アプリの機能やユーザエクスペリエンスを最適化できる。アプリストアに再提出することなく、ネイティブアプリのさまざまなバリエーションをテストでき、ユーザの行動を追跡し、分析できる。開発者はデータに基づいてデザインを決めることができる。Splitforceは現在、ネイティブのiOSアプリケーションとUnityを使ったゲームをサポートしている。Splitforceによれば、Androidは2014年の第1四半期にサポートされる予定だ。
SplitforceのSDKとプラットフォームを使うことで、開発者は開発したモバイルアプリのユーザの端末での使われ方を変える実験をすることができる。アプリケーションにハードコーディングされているコンポーネントをSplitforceのサーバがウェブ経由でコントロールできる動的コンポーネントに置き換えることで、アプリケーションの新しいバリエーションを生み出したり、既存のアプリを変えたりできる。これらのバリエーションは次のカテゴリによって分析される。
- レート: 購入やサインアップのような特定のゴールにどの程度の割合で到達しているのかを分析する。
- タイミング: アプリの特定の領域でユーザがどの程度時間を費やすか、またはユーザが製品を購入するまでにどの程度時間がかかるかを計測する。
- 量: ゲームのあるレベルをクリアするなど、ユーザが特定のタスクを完了した回数を計測する。
文字列や数値、色、ブール値、カスタムのサブジェクトなどをベースに実験ができる。サインアップして実験を定義すると、Splitforceはコードスニペットを生成し、開発者はそれをアプリのソースコードに貼付ける。iOSアプリで異なる色のボタンをテストし、購入イベント発生数をカウントするのは次のコードだ。
[[SFManager currentManager] experimentNamed:@"Experiment #1" applyVariationBlock:^(SFVariation *variation) {
// Configuration for 'Test Button Colors'
UIColor *testSubject = [SFUtils colorFromHexString:variation.variationData[@"Test Button Colors"]];
// set special button color
} applyDefaultBlock:^(NSError *error) {
if (error) NSLog(@"Splitforce Error: %@", error);
// set default button color
}];
次のコードでは、ある目的が達成されたときSplitforceサーバに通知している。
SFVariation *variation = [SFManager.currentManager variationForExperimentNamed:@"Experiment #1"];
[variation goalResultNamed:@"Item Purchased"];
[variation variationEnded];
生成されたコードスニペットを挿入するだけで、あとはライブラリをインクルードしアプリケーションを起動するときにSplitforceを初期化すればいいだけだ。
Splitforceのサービスプランはテストできる日時のユーザ数に依存する。500人までは無料。5.000人まではエントリプランの月額299ドル。プロプランであれば、75.000人までテストでき月額2.499ドル。75.000人以上をテストしたい場合はエンタープライズプランが利用できる。