機能の管理

学習の目的

この単元を完了すると、次のことができるようになります。

  • 機能パラメータを定義し、その目的を説明する。
  • 機能パラメータの管理に使用するツールを識別する。
  • 機能パラメータのデータ型が制限される理由を説明する。

機能の管理を柔軟に

Salesforce パートナーは、Salesforce と同じプラットフォームをそのすべての機能と共に使用します。これには、各自のビジネス組織の運用や AppExchange でのソリューションの販売が含まれますが、それだけに留まりません。実際には Salesforce と同じツールを使用して同様にビジネスを運営し、お客様に製品を提供できます。

お気づきのとおり、Salesforce はプラットフォームで出荷する機能を大幅に制御しています。たとえば、パワーユーザ向けに複雑な機能を選択して、他のユーザに影響を与えずに有効化できます。また機能の「ダークローンチ」も可能です。この場合、将来のリリースに向けて機能を実装し、無効化した状態で出荷します。

こうしたツールにより、機能のリリースと管理を非常に柔軟な方法で行うことができます。これと同じ柔軟性を機能パラメータで実現できるようになりました。

機能パラメータは、AppExchange パートナーだけに提供されています。機能パラメータを試す準備ができたら、Salesforce パートナーコミュニティでサポートケースを登録してください。

機能パラメータのなかった時代

それなりの工夫がありました。機能パラメータが登場する前、多くのパートナーが独自のスキームを作り上げ、管理パッケージ内の機能を選択して有効化できるようにしていました。たいていの場合は、保護されたカスタム設定を使用して機能を有効または無効にします。

しくみとしては、パートナーが個々のお客様組織に LMA ログインアクセス機能 (次の単元で説明) を使用してログインし、保護されたカスタム設定を更新して特定の機能を有効にしていました。このシステムは複雑で脆弱でした。AppExchange パートナーは、ライセンス管理アプリケーション (LMA) でライセンスを管理するように簡単に個々の機能を管理できる日を夢見ていました。

その日が訪れたのです。機能パラメータを使用して、ソリューションの機能を LMA がインストールされている組織から管理できるようになりました。個々の登録者について、どの機能を表示するかを選択します。するとその選択内容がすぐにお客様の登録者組織に通知されます。

機能パラメータでは、個々の機能に加えてカスタムオブジェクトも管理できます。定義した機能パラメータに基づいて、カスタムオブジェクトを表示または非表示にできます。

機能パラメータとは?

お客様ごとの機能パラメータは、機能管理アプリケーション (FMA) で管理されます。FMA は LMA を拡張したもので、LMA でライセンスを管理できるように、機能設定を管理できます。

ライセンス管理組織 (LMO) とお客様の登録者組織は機能パラメータを使用して相互に通信します。各機能パラメータの値は 2 つの方向のいずれかに転送されます。

  • LMO から登録者の組織へ
  • 登録者の組織から LMO へ

FMA は機能パラメータ値を組織から組織へと渡します。FMA を使用して個々のお客様に関連付けられた機能パラメータを表示および変更できます。

機能パラメータとはどのようなものでしょうか? 実はかなりシンプルです。機能パラメータは、パラメータを識別する名前、値、データフローの方向で構成されます。値は次のどの型にすることもできます。

  • Boolean
  • Integer
  • Date (日付)

データフローの方向は、LMO-to-subscriber または subscriber-to-LMO です。つまり、すべての機能パラメータは宛先と発信元を認識しています。機能パラメータのデータは、発信元組織で記述され、受信する組織ではその値の参照のみができます。これにより、機能パラメータの情報は一方向のみに流れます。

機能パラメータ自体は非常に制限されています。文字列値は許可されませんが、これは意図的なものです。これらのパラメータはお客様組織間で渡されるため、個人識別情報が含まれないようにしています。

機能パラメータのシンプルさによるもう 1 つの利点は、他の種類のデータ (利用状況や有効化総計値など) を保存できることです。当然、総計値を収集するために少しコードを記述する必要はありますが、コーディングが完了したら後は簡単です。FMA は登録者組織から自動的に総計値を収集します。これについても心配する必要はありません。

機能の管理を柔軟に

以下は機能パラメータに関連する組織と交換されるデータの概要です。

FMA を使用して LMO、登録者組織、パッケージ組織間で機能パラメータが渡される方法を示す図

  • 機能パラメータはパッケージ組織で定義します。
  • お客様が AppExchange からパッケージをインストールします。
  • 登録者組織でのパッケージインストール中、定義した機能パラメータごとにレコードが LMO に表示され (該当するレコードがすでに存在する場合は除く)、FMA によって管理されます。
  • 連結オブジェクトレコードも LMO に表示されます。この連結オブジェクトが機能パラメータを登録者のライセンスに関連付けます。連結オブジェクトとは、基本的に、2 つの主従関係 (機能パラメータで 1 つ、ライセンスで 1 つ) を持つカスタムオブジェクトです。この連結オブジェクトは登録者組織にあるため、機能パラメータの値が保存されます。連結オブジェクトが作成されると、その機能パラメータはパッケージ組織で指定されたデフォルト値を使用します。
  • LMO から登録者組織へのデータフローへの変更。一方、LMO は登録者組織から総計値を収集します。

機能パラメータのしくみについての詳細は、『ISVforce ガイド』を参照してください。

機能パラメータの定義

  1. パッケージに移動して [機能パラメータ] タブ (1) を選択します。
  2. 追加するパラメータの種別を選択します (2)。パッケージマネージャの [機能パラメータ] タブ。ここで機能パラメータを定義します。
  3. 新しい機能パラメータの情報 (3) として名前、識別のための表示ラベル、フローの方向 ([LMO から登録者] または [登録者から LMO]) を入力します。パッケージマネージャの [機能パラメータ] タブ。ここで機能パラメータを定義します。
  4. ソリューションに定義した他のカスタムメタデータと同様に、パラメータをパッケージに追加します。

LMO から登録者の組織へのデータの移動

LMO から登録者に移動する機能パラメータは LMO でのみ作成または編集できます。登録者組織では参照のみです。たとえば、LMO-to-subscriber 機能パラメータは次の目的に使用できます。

  • 新機能の非表示または表示
  • 登録者が使用可能なリソースの制御
  • 期限付きのトライアル期間に対する機能の有効化

この場合、制限があります。

LMO-to-subscriber 機能パラメータに値を割り当てる手順は、次のとおりです。

  1. LMO で、ライセンス管理アプリケーション (LMA) を開きます。
  2. 機能パラメータを表示または変更するお客様のライセンスを選択します。ライセンスレコードウィンドウ。ここで機能パラメータを表示および変更します。
  3. 変更するパラメータの横にある下矢印をクリックして、編集または削除します。

登録者からの総計値の収集

subscriber-to-LMO 機能パラメータを使用して、登録者の組織の活動を追跡できます。こうした機能パラメータの値は、登録者側で発生し、LMO に渡されます。これらの値を収集する手順は、次のとおりです。

  1. LMO で、LMA を開きます。
  2. 機能パラメータの値を検査するライセンスを選択します。ライセンスレコードウィンドウ。ここで機能パラメータを表示できます。
  3. 任意の subscriber-to-LMO 機能パラメータの値は、[Feature Parameter Value (機能パラメータ値)] 項目で見つけることができます。

機能パラメータを使用すると、カスタマーエクスペリエンスを以前よりも詳細に調整でき、新機能のリリースをより慎重に管理できます。ただし、LMA はそれだけではありません。次は、サポートコンソールを使用してお客様の満足度を維持する方法を確認しましょう。

リソース