機能テストのロールアウトの管理

手順の概要

  1. 組織の on-device decisioning を有効にする
  2. A/B Test アクティビティの作成
  3. 機能の定義とロールアウト設定
  4. アプリケーションでの機能の実装とレンダリング
  5. アプリケーションにイベントのトラッキングを実装
  6. A/B アクティビティのアクティベート
  7. 必要に応じてロールアウトとトラフィック割り当てを調整する

1.組織の on-device decisioning を有効にする

オンデバイス判定を有効にすることで、A/B アクティビティがほぼゼロの待ち時間で実行されるようになります。 この機能を有効にするには、Adobe Target で Administration/Implementation/Account details に移動し、「On-Device Decisioning」トグルを有効にします。

alt 画像

NOTE
On-Device Decisioning の切り替えを有効または無効にするには、管理者または承認者 ユーザーの役割が必要です。

「On-Device Decisioning」切替スイッチを有効 Adobe Target すると、クライアントの ルールアーティファクト の生成を開始します。

2. A/B Test アクティビティの作成

  1. Adobe Target で、Activities ページに移動し、Create Activity/A/B test を選択します。

    alt 画像

  2. Create A/B Test Activity モーダルでは、デフォルトの Web オプションを選択した状態(1)のままにし、experience composer として Form を選択し(2)、No Property Restrictions を使用して Default Workspace を選択し(3)、Next をクリックします(4)。

    alt 画像

3.機能の定義とロールアウト設定

アクティビティ作成の Experiences の手順で、アクティビティの名前を指定します(1)。 機能のロールアウトを管理するアプリケーション内の場所(2)の名前を入力します。 例えば、ondevice-rollouthomepage-addtocart-rollout は、機能ロールアウトを管理する宛先を示すロケーション名です。 次の例で、ondevice-rollout はエクスペリエンス A に対して定義された場所です。オプションで、オーディエンスの絞り込み(4)を追加して、アクティビティの選定を制限できます。

alt 画像

  1. 同じページの「Content」セクションで、次に示すように、ドロップダウンの「Create JSON Offer (1)」を選択します。

    alt 画像

  2. 表示される JSON Data テキストボックスで、有効な JSON オブジェクト(2)を使用して、Experience A (1)でこのアクティビティとともにロールアウトする機能の機能フラグ変数を入力します。

    alt 画像

  3. Next (1)をクリックして、アクティビティ作成の Targeting のステップに進みます。

    alt 画像

  4. Targeting の手順では、簡単にするために、All Visitors オーディエンス(1)を残します。 ただし、トラフィック配分(2)を 10% に調整します。 これにより、機能がサイト訪問者の 10% のみに制限されます。 次へ(3)をクリックして、Goals & Settings のステップに進みます。

    alt 画像

  5. Goals & Settings の手順で、Adobe Target UI でアクティビティの結果を表示する Reporting Source として Adobe Target (1)を選択します。

  6. アクティビティを測定する Goal Metric を選択します。 この例では、ユーザーが orderConfirm (2)の場所に到達したかどうかで示されるように、ユーザーがアイテムを購入したかどうかに基づいてコンバージョンが成功します。

  7. Save & Close (3)をクリックして、アクティビティを保存します。

    alt 画像

4. アプリケーションで機能を実装しレンダリングする

Node.js
code language-js line-numbers
targetClient.getAttributes(["ondevice-rollout"]).then(function(attributes) {
      const featureFlags = attributes.asObject("ondevice-rollout");

      // Your flag variables are now available in the featureFlags object variable.
      //If you failed to qualify for the Activity, you will have an empty object.
      console.log(featureFlags);
    });
Java
code language-java line-numbers
    Attributes attrs = targetJavaClient.getAttributes(targetDeliveryRequest, "ondevice-rollout");
    Map<String, Object> featureFlags = attrs.toMboxMap("ondevice-rollout");
​
    // Your flag variables are now available in the featureFlags object variable.
    //If you failed to qualify for the Activity, you will have an empty object.
    System.out.println(featureFlags);

5. アプリケーションにイベントのトラッキングを実装する

機能フラグ変数をアプリケーションで使用できるようにすると、既にアプリケーションの一部となっている任意の機能を有効にすることができます。 訪問者がアクティビティの対象とならない場合は、オーディエンスとして定義された 10% バケットに含まれていなかったことを意味します。

Node.js
code language-js line-numbers
//... Code removed for brevity

if(featureFlags.enable == "yes") { //Fell within 10% traffic
    console.log("Render Feature");
}
else {
    console.log("Disable Feature");
}

// alternatively, the getValue method could be used on the Attributes object.

if(attributes.getValue("ondevice-rollout", "enable") === "yes") { //Fell within 10% traffic
    console.log("Render Feature");
}
else {
    console.log("Disable Feature");
}
Java
code language-java line-numbers
//... Code removed for brevity
​
if("yes".equals(String.valueOf(featureFlags.get("enable")))) { //Fell within 10% traffic
    System.out.println("Render Feature");
}
else {
    System.out.println("Disable Feature");
}
​
// alternatively, the getString method could be used on the Attributes object.
​
if("yes".equals(attrs.getString("ondevice-rollout", "enable"))) { //Fell within 10% traffic
    System.out.println("Render Feature");
}
else {
    System.out.println("Disable Feature");
}

6. ロールアウトアクティビティの有効化

alt 画像

7.必要に応じたロールアウトとトラフィック割り当ての調整

アクティビティをアクティブ化したら、いつでも編集して、必要に応じてトラフィックの割り当てを増減します。

最初のロールアウトが正常に行われるので、トラフィック割り当てを 10% から 50% に増やします。

alt 画像

recommendation-more-help
6906415f-169c-422b-89d3-7118e147c4e3