ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Real-Time Decisionsプラットフォーム開発者ガイド
11g リリース1 (11.1.1)
B72429-01
  目次へ移動
目次

前
 
次
 

12 デシジョン・スタジオについて

デシジョン・スタジオはインライン・サービスを定義および管理するためのツールです。デシジョン・スタジオにはインライン・サービスのすべての機能が公開されます。デシジョン・スタジオは、Javaの基本的な知識があり、アプリケーション開発およびライフサイクルの問題を総合的に理解するITプロフェッショナルを対象ユーザーとしています。この章では、インライン・サービスの2つの大きなカテゴリであるオブザーバとアドバイザについて概説するとともに、デシジョン・スタジオおよび関連する外部ファイル・ディレクトリにおけるインライン・サービスの様々な側面やコンポーネントの表示について説明します。

デシジョン・スタジオは、統合開発環境(IDE)パラダイムに準拠したリッチ・クライアント・アプリケーションです。デシジョン・スタジオの左側は「インライン・サービス・エクスプローラ」ビュー、右側はエディタ・ビューになっています。このナビゲータ・ビューには、事前定義されたインライン・サービス・フォルダ構造が表示されます。各フォルダ内のアイテムはインライン・サービスのメタデータ要素です。デシジョン・スタジオを使用して、メタデータ要素の追加、編集および削除ができます。メタデータ要素をダブルクリックすると、その要素の詳細がオブジェクト・エディタに表示されます。メタデータ要素のタイプごとに固有のエディタが用意されています。要素はXMLメタデータ(.sda)ファイルとして保存されます。メタデータからJavaクラス(.java)が自動生成され、.classファイルにコンパイルされます。これらの.classファイルがランタイム・インライン・サービスを構成します。デシジョン・スタジオはEclipse IDEに基づいています。それは、インライン・サービスの管理用機能と、汎用のJava開発ツールやソフトウェア構成管理(SCM)システムとの統合をはじめとするEclipse IDEの機能を兼ね備えています。


注意:

Oracle RTDドキュメント全体にわたって次の用語が参照されます。

  • RTD_HOME: Oracle RTDクライアント側ツールがインストールされているディレクトリです。

  • RTD_RUNTIME_HOME: アプリケーション・サーバーによってOracle RTDが実行されるアプリケーション・サーバー固有ディレクトリです。

詳細は、『Oracle Fusion Middleware Oracle Real-Time Decisions管理者ガイド』の「Oracle RTDラインタイム環境について」を参照してください。


この章には次のトピックが含まれます:

12.1 インライン・サービスについて

インライン・サービスは、企業全体のビジネス・プロセスにおける重要な局面での、リアルタイムかつ継続的な監視およびアドバイスを実行するデプロイ可能なアプリケーションです。インライン・サービスはビジネス・プロセス全体を追従するのではなく、プロセス内の特定の識別ポイントに焦点を当てます。インライン・サービスは、デシジョン・スタジオを使用して構成およびデプロイされ、デシジョン・センターを使用して分析および調整されます。インライン・サービスの実行はReal-Time Decision Serverで行われます。

12.1.1 インライン・サービスの構成

インライン・サービスは、デシジョン・スタジオを使用して構成およびデプロイされます。要素がプロジェクトに追加され、機能ロジックを含むJavaスクリプトレットが特定の要素に追加されます。インライン・サービスを保存すると、XMLメタデータが作成されてJavaコードが生成され、Real-Time Decision Serverにデプロイされて、ここでインライン・サービスが実行されます。

12.1.2 インライン・サービスの一般的なタイプ

インライン・サービスは、次に示す実行可能な2つの主要機能のうち、1つのみに特化して設計できます。

  • ビジネス・プロセスの監視

  • ビジネス上の重要な意思決定の方法に関するビジネス・プロセスへのアドバイス


注意:

特化したインライン・サービスを持つと便利ですが、一般に、インライン・サービスは監視と意思決定という2つの主要機能を兼備します。


この項では、特化したインライン・サービスの2つの大きなカテゴリについて説明します。

12.1.2.1 オブザーバ・インライン・サービス

監視では、インライン・サービスはビジネスに関するデータが収集される収集ポイントに焦点を当てます。このデータにおける傾向と相関関係の洞察および検出は、自己学習モデルによって行われます。このタイプのインライン・サービスをオブザーバといいます。

これらの検出は、シン・クライアント・ツールであるデシジョン・センターによって確認できます。デシジョン・センターでは、ビジネス・ユーザーがこれらの洞察を利用して意思決定を行います。またビジネス・ユーザーは、デシジョン・センターを使用してインライン・サービスの管理および最適化も行います。

12.1.2.2 アドバイザ・インライン・サービス

ビジネス・プロセスのアドバイスの実行では、主要な意思決定ポイントおよび収集ポイントでインライン・サービス間が接続されます。意思決定ポイントとは、全体的なビジネス・プロセスにおいて、製品の推奨や顧客維持オファーの提示など、主要なビジネス上の意思決定が行われる場所です。最初に収集ポイントでデータが集められ、自己学習モデルを使用して検出され、組織の実現目標としているパフォーマンス・メトリックに従って選択肢がスコアリングされます。インライン・サービスにより、ビジネス・プロセスの意思決定ポイントで、最高スコアの選択肢が提示されます。フィードバックを介してこれらの選択肢の成功レベルがインライン・サービスに返されると、より適切な選択肢を提示するようにモデルの機能が向上します。このタイプのインライン・サービスをアドバイザといいます。

12.2 デシジョン・スタジオとEclipse

デシジョン・スタジオは、Eclipse Foundation社により開発されたオープン・ソースJava IDEであるEclipseに基づいています。デシジョン・スタジオはEclipse環境に対する標準プラグインとして存在します。Eclipseを使用している場合は、この環境を利用して、追加の開発機能や高度な機能を使用できます。Eclipseに精通していない場合でも、デシジョン・スタジオを完全に透過的に使用できます。


注意:

64ビット・マシンでデシジョン・スタジオを実行するには、コマンドラインで32ビットJDKを指定する必要があります。例:

RTD_HOME\eclipse\eclipse.exe -vm "C:\jdk160_32bit\jre\bin\javaw"


この項には次のトピックが含まれます:

12.2.1 デシジョン・スタジオのワークスペースの選択

デシジョン・スタジオの起動時にセッションのワークスペースを選択できます。デフォルトのワークスペースは、C:\Documents and Settings\username\Oracle RTD Studioです。必要に応じて、ワークスペースの場所をそれ以降のデフォルトとして設定できます。

また、セッション中にメニューから「ファイル」→ワークスペースの切替えを選択することでも、ワークスペースを変更できます。

12.2.2 Javaコンパイラ準拠レベルの設定

インライン・サービスは、Javaコンパイラ準拠レベルとして5を指定してコンパイルする必要があります。

この値がすべてのインライン・サービスで優先的に使用されるように設定するには、次の手順を実行します:

  1. デシジョン・スタジオにログインします。

  2. メニューで「ウィンドウ」→「プリファレンス」にナビゲートします。

  3. 「プリファレンス」ウィンドウの左側のパネルで、「Java」「コンパイラ」を選択します。

  4. JDKコンプライアンス領域のコンパイラ・コンプライアンス・レベルで「5.0」を選択します。

  5. 「OK」をクリックし、完全なリビルドを実行することを確認します。

以前のリリースのOracle RTDで作成されたインライン・サービスでは、Javaコンパイラ準拠レベルを手動で5.0に変更する必要が発生する場合があります。

インライン・サービスのレベルごとに個別にJavaコンパイラ準拠レベルを変更するには、インライン・サービス名を右クリックして「プロパティ」→「Javaコンパイラ」を選択してから、コンパイラ・コンプライアンス・レベルで「5.0」を選択します。

12.2.3 インライン・サービス・エクスプローラについて

インライン・サービス・エクスプローラを使用すると、インライン・サービス・プロジェクトのすべての側面にアクセスできます。一般的なインライン・サービス・プロジェクトを図12-1に示します。

図12-1 インライン・サービス・エクスプローラ

図12-1の説明が続きます
「図12-1 インライン・サービス・エクスプローラ」の説明

表12-1に、インライン・サービス・フォルダの内容を示します。

表12-1 インライン・サービス・フォルダの内容

フォルダ名 説明

Service Metadata

インライン・サービスを形成するメタデータ。このファイル・タイプのデフォルトのエディタは各要素に固有です。メタデータはテキスト・エディタで編集することもできますが、この方法はお薦めしません。

.settings

このインライン・サービスに固有のEclipseエディタ設定が格納されています。

classes

コンパイル処理で生成されたクラス。

etc

このディレクトリには、システム管理に使用する様々なスクリプトおよびファイルが含まれます。ロード・ジェネレータ・スクリプトが構築されると、規定によりこのフォルダに保存されます。

gensrc

インライン・サービス用に生成されたソース・コード・ファイル。

src

カスタムJavaコード。ユーザーが用意した任意のJavaクラスが含まれる場合があります。これらのクラスの一部を使用して、生成済インライン・サービスJavaクラスのデフォルト動作をオーバーライドできます。

lib

libフォルダは、外側クラスを使用する場合にユーザーによってオプションで作成されます。

たとえば、ある関数、ロジックまたは初期化ブロック内でTHashMapというクラスにアクセスするとします。このクラスはtcollections.jarファイル内にあります。このクラスを使用するには、次の手順を実行します:

  1. プロジェクト・ワークスペース内のプロジェクト・ディレクトリの下にlibフォルダを作成します。

  2. tcollections.jarファイルをこのフォルダに置きます。

  3. インライン・サービス・プロパティ(「インライン・サービス」を右クリックし、「プロパティ」→「プロジェクト」→「プロパティ」を選択)で、Javaビルド・パスを選択します。

  4. 「ライブラリ」タブを選択し、外部Jarsの追加...をクリックします。

  5. 手順2tcollections.jarファイルを置いたフォルダでこのファイルを選択します。

このjarのクラスを使用するには、編集するインライン・サービス・オブジェクトの「説明」ボックスの横にある「詳細」ボタンを使用してインポートし、そのクラスをコード内で使用します。

.classpath

プロジェクトのJavaクラスパスを含むファイル。このファイルを編集する必要はありません。

.project

Eclipseプロジェクト・ファイル。


12.2.4 コード生成

通常、インライン・サービスの要素を構成すると、次の4つのファイルが生成されます。

  • 構成をメタデータとして格納する.sdaファイル。

  • メタデータから生成され、クラス・ファイルにコンパイルされる.javaファイル。

  • 元の生成済ファイルを拡張して、特殊な環境で生成済ファイルの動作を上書きするために使用される.javaファイル。

  • 最初は生成済ファイルからコンパイルされ、その後、任意の上書きファイルからコンパイルされるクラス・ファイル。

それぞれのファイルの名前は次のようになります。

  • メタデータ・ファイル: Object_ID.sda

  • 生成済ファイル: GENObject_ID.java

  • 上書きファイル: Object_ID.java

  • クラス・ファイル: Object_ID.class

  • 生成済クラス・ファイル: GENObject_ID.class


ヒント:

オブジェクトIDは、オブジェクトに付けられた名前と同様に作成されます。オブジェクトIDは、作成されたオブジェクト名の下にあるテキスト・ボックスに表示されます。オブジェクトIDはJava標準に準拠するため、ラベルと異なる場合があります。オブジェクトIDを調べるには、「トグル」アイコンを使用して、ラベルの表示とオブジェクトIDの表示を切り替えます。

「トグル」アイコンは黄色のタグです。

たとえば、Customer accountという名前の要素があるとします。このオブジェクトIDは、Java命名規約に準拠してCustomerAccountという形式になります。

作成されるファイルは次のとおりです。

  • メタデータ・ファイル: CustomerAccount.sda

  • 生成済ファイル: GENCustomerAccount.java

  • 上書きファイル: CustomerAccount.java

  • クラス・ファイル: CustomerAccount.class

  • 生成済クラス・ファイル: GENCustomerAccount.class

12.2.5 デシジョン・スタジオのパースペクティブおよびビューについて

デシジョン・スタジオでは、複数のパースペクティブでインライン・サービスを操作できます。パースペクティブは、そのパースペクティブのビューやエディタの初期設定およびレイアウトを定義します。パースペクティブごとに、特定のタイプのタスク達成を目的とした一連の機能があり、特定のタイプのリソースに対応します。パースペクティブは、特定のメニューおよびツールバーの表示を制御します。

デフォルトのインライン・サービス・パースペクティブには、次の4つのビューがあります。

  • 「インライン・サービス・エクスプローラ」ビュー: ツリー形式でプロジェクトおよび要素が表示されます。デフォルトでは、画面の左側に配置されます。

  • 「問題」ビュー: プロジェクトに関するエラーおよび例外が表示されます。デフォルトでは画面の底部に配置され、このビューと「テスト」ビューのいずれかがタブで選択されます。

    「問題」ビューでは、インライン・サービスの構築時にコンパイル・エラーや検証エラーを特定できます。コンパイル・エラーをダブルクリックすると、Javaパースペクティブが表示され、エラーが強調表示されます。

    検証エラーをダブルクリックすると、インライン・サービス・パースペクティブが表示され、検証エラーのある要素に対する要素エディタも表示されます。

  • 「テスト」ビュー: インライン・サービスのテスト用の領域が提供されます。デフォルトでは画面の底部に配置され、このビューと「問題」ビューのいずれかがタブで選択されます。

  • カンニング・ペーパー・ビュー: 一般的なタスクの手順が表示されます。デフォルトでは、画面の右側に配置されます。

インライン・サービス・パースペクティブの中央の領域はエディタ領域です。選択したプロジェクト・ツリーのノードに固有のエディタが表示されます。新しいエディタに変更するには、編集する要素をダブルクリックします。

Javaファイルを編集するには、Javaパースペクティブに変更して、編集するJavaファイルをダブルクリックします。

インライン・サービス・パースペクティブはデフォルトのパースペクティブであり、インライン・サービスを構成およびデプロイするためのメインの作業領域となります。Oracle RTDには、インライン・サービス・メタデータを操作するための多くの機能があります。これらについては、後述の各項で説明します。ここに記載のない機能は、コアのEclipseプラットフォームの一部になります。これらの機能の詳細は、Eclipseのオンライン・ヘルプ・ドキュメント『Workbench User Guide』を参照してください。

インライン・サービス・パースペクティブには、表12-2に示すメニューおよびツールバー・アイテムがあります。

表12-2 インライン・サービス・パースペクティブのメニューおよびツールバー・アイテム

メニューまたはツールバー・アイテムの名前 説明

「ファイル」→「新規インライン・サービス・プロジェクト」

選択したワークスペースに新しいインライン・サービス・プロジェクトを作成します。

「プロジェクト」→「ダウンロード」

変更するために、デプロイ済のインライン・サービスをReal-Time Decision Serverからダウンロードします。

「プロジェクト」→「デプロイ」

インライン・サービスをReal-Time Decision Serverにデプロイします。

「ウィンドウ」→パースペクティブを開く→インライン・サービス・パースペクティブ

インライン・サービス・パースペクティブを開きます。

「ウィンドウ」→「ビューの表示」→「インライン・サービス・エクスプローラ」ビュー

現在のインライン・サービスのビューを表示します。

「ウィンドウ」→「オブジェクトIDの表示」

ラベルとオブジェクトIDの表示を切り替えます。

「ヘルプ」→「バージョン情報」

デシジョン・スタジオのバージョン情報を表示します。

「デプロイ」アイコン

「デプロイ」アイコンは青い矢印がサーバーを指しているアイコンです。

インライン・サービスをReal-Time Decision Serverにデプロイします。

「ダウンロード」アイコン

「ダウンロード」アイコンはサーバーから矢印が出ているアイコンです。

変更するために、デプロイ済のインライン・サービスをReal-Time Decision Serverからダウンロードします。

「トグル」アイコン

「トグル」アイコンは黄色のタグです。

ラベルとオブジェクトIDの表示を切り替えます。


「インライン・サービス・エクスプローラ」ビューにもツールバー・アイテムがあります。これらのアイテムを表12-3に示します。

表12-3 「インライン・サービス・エクスプローラ」ビューのツールバー・アイテム

ツールバー・アイテム名 説明

「メタデータ」アイコン

フォルダと紙のアイコンが表示されます。

プロジェクト・ツリー全体とインライン・サービス・メタデータのみの表示を切り替えます。

「すべて閉じる」アイコン

2つの正方形が重なっていてマイナス記号のあるアイコンです。

プロジェクト・ツリーを閉じます。

エディタとリンク・アイコン

左向き矢印の下に右向き矢印があるアイコンです。

要素の選択に応じてエディタが調整されるよう、選択した要素タイプとリンクに適切なエディタを探します。

「メニュー」アイコン

「メニュー」アイコンは下向き矢印のアイコンです。

エディタとリンク「メタデータのみ表示」および「常にオブジェクトIDを表示」にアクセスできます。最後のオプションは、「インライン・サービス・エクスプローラ」とエディタで要素のオブジェクトIDとラベルの両方を表示します。


Javaパースペクティブでは、Javaソース・ファイルの編集時に通常使用するビューを組み合せます。一方、デバッグ・パースペクティブには、Javaプログラムのデバッグ時に使用するビューが含まれます。

生成済Javaコードを直接操作するには、Javaパースペクティブを使用します。Javaコード・レベルでインライン・サービスをデバッグするには、デバッグ・パースペクティブを使用します。

12.2.6 ビューの配置とエディタのサイズ変更

エディタ領域のタブには、現在編集のために開かれているリソース名が表示されます。アスタリスク(*)は、変更がまだ保存されていないことを示します。ビューのタブにはビューの名前が表示され、ビューに固有の機能を提供するツールバーがあります。

パースペクティブのビューおよびエディタは、画面上の任意の領域にドラッグ・アンド・ドロップできます。ビューおよびエディタのサイズは、配置される領域に合せて自動的に変更されます。(主な作業場所である)エディタまたはビューの一部が、他のビューに覆われたり、使用するには不便な領域にサイズ変更される場合があります。エディタまたはビューのサイズを変更するには、開いている別のビューを閉じて残りが自動的にサイズ変更されるようにするか、エディタまたはビューを最大化します。

エディタとビューはどちらも、タブをダブルクリックするか、右クリックして表示されるメニュー・アイテムを使用して、最大化と最小化を切り替えることができます。パースペクティブ、エディタおよびビューの詳細は、Eclipseのオンライン・ヘルプに含まれている、『Workbench User Guide』内のオンライン・ドキュメントを参照してください。

12.2.7 要素へのカスタム・ロジックの追加

Javaコードは、デシジョン・スタジオ内の要素のロジック・パネルに追加されます。このコードは、GENObject_ID.javaファイルの適切なメソッドに挿入されます。ロジックを要素に追加したり更新したりする場合は、要素を選択し、エディタを使用してロジック・パネルのコードを変更します。

生成済コード内に直接、大きなコードの断片を挿入する方が便利な場合もあります。デシジョン・スタジオのJavaパースペクティブを使用して、これらのファイルを直接編集できます。生成済コードは、特定の場所でしか手動で編集できないので注意してください。また、「プロジェクト」→クリーンを選択すると、デシジョン・スタジオで生成済コードが再生成され、生成済Javaコードに直接加えたコード変更が上書きされます。

デシジョン・スタジオのJavaパースペクティブを使用して編集可能な任意のメソッドは、StartおよびEndマーカーで明示的に示されています。たとえば、Applicationオブジェクトにはインライン・サービスを初期化するinit()というメソッドがあります。

このメソッドのコードは、デシジョン・スタジオ・インタフェースで、アプリケーション要素の「ロジック」タブの「初期化ロジック」を使用して追加できます。

かわりにEclipseを使用して初期化コードを直接Applicationクラスに追加する場合は、次のようにマークされたメソッドにのみ追加します。

public void init() {
    // SDCUSTOMCODESTART.Application.InitBody.java.0
    // SDCUSTOMCODEEND.Application.InitBody.java.0
  }

コードは、メソッドの開始コメントと終了コメントの間に記述する必要があります。コメント化された領域外にコードを記述すると、上書きされるおそれがあります。生成済Javaファイルに直接追加されたコードは、ファイルの再生成時に失われます。コードを保持するには、対応するメタデータ要素にそれをコピーする必要があります。

12.2.8 生成済コードの上書き

生成済クラスObject_ID.javaは、クラスGENObject_ID.javaを拡張します。なんらかの理由でGENObject_ID.javaに含まれるコードを上書きする必要がある場合は、上書きするコードをObject_ID.javaファイルに追加します。このファイルは、gensrcディレクトリからsrcディレクトリに移動する必要があります。

12.2.9 インライン・サービス検索の実行

インライン・サービスでオブジェクトおよび文字列を検索する手順は、次のとおりです。

  1. メニューで「検索」→「検索」を選択して手順を開始します。

  2. 「インライン・サービス検索」タブをクリックします。

  3. 検索文字列を入力し、必要に応じて検索条件を絞り込みます。

    • オブジェクトIDと任意の文字列を組み合せて検索できます。

    • インライン・サービス検索では、デフォルトでは大文字と小文字は区別されません。必要に応じて、次に示す検索オプションを1つ以上選択できます。

      • 大/小文字の区別 - 入力された式を検索する際に、大文字と小文字が区別されます。

      • 完全一致のみ - 長い語の一部ではなく独立した語として式が存在する場合のみ検索されます。

      • 正規表現 - 検索文字列としてJava正規表現を使用します。

  4. 「検索」をクリックします。

    結果は「検索」ビューに表示されます。

12.3 デシジョン・スタジオのプロジェクトの概要

インライン・サービスは、デシジョン・スタジオ内のプロジェクトとして構築されます。

この項には次のトピックが含まれます:

12.3.1 新規プロジェクトの開始

新しいインライン・サービスを開始するには、「ファイル」→「新規インライン・サービス・プロジェクト」を選択してプロジェクトを開始します。リストからテンプレートを選択してプロジェクトの名前を指定し、「終了」をクリックしてプロジェクトを作成します。

テンプレートのリストには、Oracle RTDインストールで提供されるテンプレートと任意のユーザー定義テンプレートが含まれます。

12.3.2 プロジェクトのインポート

既存のプロジェクトを開くには、「ファイル」→「インポート」を選択してプロジェクトをインポートします。メタデータを以前のバージョンから更新する必要がある場合は、アップグレードするよう求められます。

12.3.3 ユーザー定義テンプレートの作成

インライン・サービスからテンプレートを作成するには、「ファイル」→「エクスポート」を選択してプロジェクトをテンプレートにエクスポートします。エクスポート・タイプは「インライン・サービス・テンプレート」を選択します。テンプレートは、インライン・サービスのプリファレンスで定義された場所に保存されます。プリファレンスにアクセスするには、「ウィンドウ」→「プリファレンス」を選択し、「インライン・サービス」を選択します。入力されたディレクトリは、ファイル・システム上でテンプレートが保存される場所になります。

12.3.4 デプロイされているインライン・サービスのダウンロード

デプロイ済インライン・サービスをダウンロードするには、「プロジェクト」→「ダウンロード」を選択します。また、ツールバーの「ダウンロード」アイコンを使用してもReal-Time Decision Serverからダウンロードできます。

デプロイされているインライン・サービスを変更する場合は、その変更と、ビジネス・ユーザーにより行われている可能性のある変更の両方が失われないよう、次の手順に従うことが重要です。次の方法を使用します。

  1. デプロイされている目的のインライン・サービスを編集しているビジネス・ユーザーがいないことを確認します。

  2. ダウンロードする場合は必ずインライン・サービスをロックして、編集中にビジネス・ユーザーが変更できないようにします。

  3. デシジョン・スタジオで変更作業を行います。

  4. インライン・サービスを再デプロイしてロックを解除します。

インライン・サービスがロックされている間、ビジネス・ユーザーはそのデプロイされているインライン・サービスを表示できますが、編集はできません。

12.3.5 デプロイの状態について

インライン・サービスをデシジョン・スタジオからデプロイする場合は、デプロイ・ダイアログでデプロイの状態を選択します。開発、QAおよび本番の3つデプロイメント状態が使用できます。デプロイメント状態のサポートは将来のリリースで削減されるため、QAおよび本番の状態にはデプロイしないでください。

「テスト」ビューでインライン・サービスをテストする場合、最後のデプロイ状態がテストされます。

12.3.6 サンプル・プロジェクト

インポートして使用できるサンプル・プロジェクトがRTD_HOME\examplesディレクトリにあります。サンプル・プロジェクトの1つがCrossSellインライン・サービスです。

CrossSellインライン・サービスでは、クレジット・カード会社のコンタクト・センターを想定した単純な実装がシミュレートされます。センターで電話を受けると、顧客および連絡先チャネルに関する情報が入力されます。

既知の顧客情報に基づき、この顧客に対する抱合せ販売のオファーが提供されます。オファーの成否が追跡され、サーバーに返されます。これにより、基になる意思決定モデルに対して精度を高めるフィードバックが返され、抱合せ販売のオファーが改善されます。

CrossSellインライン・サービスでは、次を含めてOracle RTDの多くの機能が使用されています。

  • キー・パフォーマンス・インディケータ(KPI)による意思決定プロセスの推進

  • 顧客維持率の最大化や収益増加などの競合するKPIの最適化

  • 正しい意思決定を行うためにグラフィカルなルールベース型スコアリングの使用

  • 最良の意思決定を予測するために分析的な自己学習モデルの使用

ただし、CrossSellプロジェクトに表示されるいくつかの機能は、シミュレーション専用であるので注意してください。これらはサンプルの中で明示的に示しているので、本番のインライン・サービスでは使用しないでください。

デシジョン・スタジオを使用してCrossSellインライン・サービスをデプロイする前に、Oracle RTD DatabaseにCrossSellのサンプル・データを移入する必要があります。詳細は、『Oracle Fusion Middleware Oracle Real-Time Decisions管理者ガイド』のCrossSellサンプル・データの移入に関する項を参照してください。

デシジョン・スタジオでは、CrossSellサンプルはプロジェクトをインポートすることで表示できます。このプロジェクトは、RTD_HOME\examples\CrossSellにあります。プロジェクトをインポートしたら、各要素をダブルクリックしてその要素のエディタを表示することで、表12-4に示す機能を表示できます。

表12-4 CrossSellサンプル・インライン・サービスの機能

機能 要素名 説明

複数のKPI

パフォーマンス目標

Cross Sellインライン・サービスは、収益の最大化と顧客維持率の最大化の両方を最適化するように設計されています。

動的な顧客データ

データ・ソース/CustomerDataSource

エンティティ/カスタマ

データ・ソースとエンティティを組み合せると、顧客に提示するオファー・タイプの意思決定を支援する顧客データにアクセスできます。

エンティティは、1つまたは複数のデータ・ソースを、インライン・サービスの重要な単位を表すオブジェクトにマップする手段を提供するオブジェクトです。

エンティティを介してアクセスされるデータはセッション固有です。

抱合せ販売および顧客維持のためのオファー

選択肢

拡張可能なオファーは「選択肢」の下にまとめられています。これらのオファーには、抱合せ販売のオファーを意図したものも、顧客維持率の向上を意図したものもあります。各オファーの「スコア」タブを開くと、オファーに割り当てられている評価のスコアが表示されます。スコアは、パフォーマンス目標(RevenueやRetention)ごとに用意されています。一部のオファー(たとえば、all Credit Cards)は、親の選択肢グループからスコアリングを引き継ぎます。これは、このグループ内のすべてのオファーが同様にスコアリングされることを示します。この場合、スコアはProfit Marginを受入れ確率で乗算して計算されます。

その他のオファー(Reduced Interest Rateなど)は、ルールを使用して計算します。Reduced Interest Rateの収益目標には、組織の収益が赤字を示す場合、実際に負の値がスコアリングされます。

スコアリング・ルール

スコアリング・ルール/興味の低下率

スコアリング・ルールは、顧客に関する情報など、セッション・データを使用してオファーを動的にスコアリングする方法です。

母集団のセグメント

フィルタリング・ルール/保持するセグメント

フィルタリング・ルールを使用して母集団をセグメント化できます。このルールにより、顧客維持オファーに適するグループと、抱合せ販売の対象となるグループの2つのグループが出力されます。顧客が6回以上の放棄呼を受け、かつ2年を超えて顧客であり続けた場合、その顧客は維持オファーのグループにフィルタリングされます。

母集団のセグメントによる意思決定の重み付け

デシジョン/OfferDecision

「デシジョン」要素を使用して、競合するパフォーマンス・メトリック全体で意思決定プロセスの重み付けを行うことができます。このサンプルでは、顧客維持プロファイルに一致する母集団のセグメントに対して、Customer Retentionのスコアが高いオファーを重みの高い優先度に設定します。

編成プロセスへの統合

統合点

統合点は、情報を収集したり(IVRから顧客に関する情報を収集するCallStartなど)、外部システムに情報を提供したりすることによって(顧客に対する最高スコアのオファーをCRMシステムに提供するOfferRequestなど)、外部のシステムおよびプロセスと接するサイトです。

OfferResponse統合点にはelse分岐にコードがありますが、これはシミュレーション用なので注意してください。本番環境では、オファーが受け入れられたかどうかはサービス・センターのオペレータからのフィードバックとなります。



警告:

インライン・サービスの負荷生成スクリプトが実行されているときの時間の経過をシミュレートするために、Application.javacurrentTimeMillisメソッドがオーバーライドされています。CrossSellを本番のインライン・サービスのベースとして使用する場合、次のオーバーライド・ファイルを削除する必要があります。

RTD_HOME\examples\CrossSell\src\com\sigmadynamics\sdo\
Application.java

詳細は、第12.2.8項「生成済コードの上書き」を参照してください。


Cross Sellインライン・サービスをデプロイしてデータをロードする準備ができました。インライン・サービスをデプロイしたら、RTD_HOME\scripts\loadgen.cmdを実行してロード・ジェネレータを開きます。そこで「既存のロード・ジェネレータ・スクリプトを開きます」を選択して、RTD_HOME\examples\CrossSell\etc\LoadGen.xmlにブラウズします。「セキュリティ」タブで有効なユーザー名とパスワード入力し、スクリプトを実行します。

このスクリプトでは、シミュレーション上の顧客データを取得してインライン・サービスを実行します。データおよび検出された相関関係は、デシジョン・センターで表示できます。

12.4 インライン・サービスのディレクトリ構造

インライン・サービスを作成するとき、ファイル・システム上の任意の場所にプロジェクトを作成できます。使用しやすいように、すべてのプロジェクトを1つのディレクトリに保存することをお薦めします。デフォルトのワークスペースは、C:\Documents and Settings\user_name\Oracle RTD Studioです。

インライン・サービスを保存すると、そのディレクトリ名はインライン・サービス名と同じになります。インライン・サービスには、次のディレクトリ構造が作成されます。

表12-5 インライン・サービスのディレクトリ構造

ディレクトリ名 説明

Inline_Service_name\classes

インライン・サービスのコンパイル済クラス

Inline_Service_name\dc

デシジョン・センターのカスタムJSP用フォルダ

カスタムJSPは、http://<host_name_or_ip>:<port>/ui/custom/<ILS-name>/<custom page file name>という形式のURLを使用してアクセスできます。

例:

http://localhost:8081/ui/custom/CrossSell/mypage.jsp.

Inline_Service_name\etc

インライン・サービス関連の様々なファイルが配置されオプションのディレクトリ。例:

  • loadgenスクリプト

  • Readmeファイル

  • インライン・サービス説明ファイル

  • インライン・サービス設定手順ファイル

インライン・サービスがデプロイされる際に、このディレクトリはReal-Time Decision Serverに送信されません。

Inline_Service_name\gensrc

インライン・サービスの生成済ソース・コードの場所

Inline_Service_name\meta

インライン・サービスのメタデータ

Inline_Service_name\src

インライン・サービスの生成済コードを上書きするソース・コード


インライン・サービスのディレクトリ構造にオプションのlibディレクトリも追加して、外部Javaクラスを格納することもできます。詳細は、表12-1を参照してください。

12.5 インライン・サービスのセキュリティ

インライン・サービス・セキュリティは、Oracle Fusion MiddlewareおよびOracle WebLogic Serverで定義されているセキュリティ・フレームワークおよび要素によってのみ提供されます。このワークフレームを使用して、インライン・サービスに関連する特殊な権限(インライン・サービスをデシジョン・スタジオからデプロイする権限など)をユーザーに付与できます。

セキュリティに関する一般情報は、『Oracle Fusion Middleware Oracle Real-Time Decisions管理者ガイド』の「Oracle Real-Time Decisionsのセキュリティ」を参照してください。インライン・サービスの権限の詳細は、『Oracle Fusion Middleware Oracle Real-Time Decisions管理者ガイド』のOracle Real-Time Decisionsのリソース・タイプとアクションに関する項を参照してください。