(57)【要約】  本開示は、対話式及び非対話式モードでのシステムにわたる制御及びデータ探索の自動化を可能にするために、テンプレートを実行及びレンダリングするために構成されたプラットフォームに関する。最初に、プラットフォームは、ユーザ要求又はシステム主導要求のいずれかに基づいてテンプレートを探索に追加し、そのテンプレートに関連付けられた実行モデルを抽出することによってそのテンプレートを実行するように構成される。さらに、ターゲット・システムは、ユーザが入力を提供し得る対話式モード又はターゲット・システムがユーザ入力なしに実行プランを稼働するように構成された非対話式モードで実行プランを稼働するように構成される。ターゲット・システムは、実行エンジンによって実行された動作に応答してターゲット・システムによって生成されたデータを受信するようにさらに構成される。データ・ストア中でターゲット・システムからデータを受信すると、ターゲット・システムは、ＧＵＩ上にレンダリングされたテンプレート上でデータを可視化するように構成される。
2021510440.tif 000002
【特許請求の範囲】
【請求項１】
テンプレートの対話式及び非対話式実行及びレンダリングのためのプラットフォーム（１０２）であって、前記プラットフォーム（１０２）が、
メモリ（２０６）と、
前記メモリ（２０６）に結合されたプロセッサ（２０２）とを備え、前記プロセッサ（２０２）は、
外部システム及びデータベースのセット（１１０）との接続を確立することと、
ユーザ入力に基づいてグラフィカル・ユーザ・インターフェースを介して新しい探索をレンダリングするか又は既存の探索をレンダリングすることと、
コンテキスト情報に基づいて外部システム及びデータベースの前記セット（１１０）からシステムのサブセットを識別することと、
前記コンテキスト情報に基づいてシステムの前記サブセットに関連付けられた動作／動作グループのセットを表示することと、
ユーザによって選択されたターゲット動作／動作グループに関連付けられたターゲット・システムを識別することと、
前記ターゲット・システムにターゲット動作／動作グループ実行要求を送信することであって、前記ターゲット動作／動作グループが、前記ターゲット・システムを制御するか、又は、ユーザ入力をキャプチャし、前記ユーザ入力に基づいて前記ターゲット・システムを制御するために読取り動作及び書込み動作のうちの１つを実施するために、読取り動作、書込み動作のうちの１つに関連付けられた、送信することと、
前記ターゲット・システムからデータを受信することであって、前記データが、前記ターゲット・システムを介した前記動作又は動作グループの実行に応答して受信される、受信することと、
前記ターゲット・システムから受信されたデータのタイプとあらかじめ定義されたルールのセットとに基づいて、保存されたテンプレートのセット又はリアルタイムで生成されたテンプレートから、最良適合テンプレートのサブセットを発見することであって、最良適合テンプレートの前記サブセットが、前記ターゲット・システムを制御するために前記ターゲット・システムに書き戻すために前記ターゲット・システムにデータを送信すること、及びデータ可視化のためにターゲット・システムからデータを受信することを可能にする、発見することと、
最良適合テンプレートの前記サブセットに関連付けられた属性のセットを表示することと、
ユーザ入力に基づいて又はあらかじめ定義されたルールの前記セットからの１つ又は複数のあらかじめ定義されたルールに基づいて、前記新しい探索又は前記既存の探索上に最良適合テンプレートの前記サブセットからのターゲット・テンプレートをレンダリングすることであって、前記テンプレートが対話式又は非対話式モードでレンダリングされる、レンダリングすることと、
通知イベントを生成することであって、前記通知イベントが前記探索の変更を示す、生成することと、
前記ターゲット・テンプレートに関心がある１つ又は複数のリスナーに前記通知イベントを送信することと、
前記新しい探索又は前記既存の探索上に前記ターゲット・テンプレートをレンダリングすることと、
前記ターゲット・テンプレートから実行モデルを抽出することによって前記ターゲット・テンプレートを実行することであって、前記実行モデルが、前記ターゲット・テンプレートの定義に記憶された動作の前記セットを表すグラフである、実行することと、
実行プランを稼働するようにとの命令を生成することであって、前記実行プランが、記憶された動作の前記セットに基づいて生成される、生成することと、
対話式又は非対話式モードで前記実行プランからの各動作を実行することと、
現在の動作の実行のためにユーザ入力が必要とされるとき、前記ユーザに、実行されるべき前記動作のための入力を提供するようにプロンプトすることであって、前記ユーザ入力をキャプチャするために対話式ＵＩ要素がレンダリングされ、前記実行プランからの各動作が、前記ユーザ提供入力に基づいて実行される、プロンプトすることと、
実行された前記動作に応答して前記ターゲット・システムによって生成されたデータを受信することと、
データ・ストア中でターゲット・システムから受信された前記データに基づいて、前記ＧＵＩ上にレンダリングされた前記テンプレート上で前記データを可視化することと
を行うための、１つ又は複数のモジュール（２０８）に関連付けられ、前記メモリ（２０６）に記憶された、プログラム命令を実行するように構成された、プラットフォーム（１０２）。
【請求項２】
システムの前記セットがサービス・レジストリを介して登録される、請求項１に記載のプラットフォーム（１０２）。
【請求項３】
前記コンテキスト情報が、前記探索において前記ユーザによって選択された視覚要素、又は前記ユーザによって提供された入力に基づいて決定される、請求項１に記載のプラットフォーム（１０２）。
【請求項４】
前記グラフィカル・ユーザ・インターフェース（ＧＵＩ）が、ユーザ・デバイス上にメニューをレンダリングするように構成され、前記メニューが動作のサブセットを備える、請求項１に記載のプラットフォーム（１０２）。
【請求項５】
前記ターゲット動作のための実行プランを生成するようにさらに構成され、前記実行プランが動作のグラフであり、前記グラフの各ノードが前記ターゲット・システム上で実行されるべき動作を表す、請求項１に記載のプラットフォーム（１０２）。
【請求項６】
前記ターゲット・システムは、実行エンジンから受信された情報が、前記ターゲット動作の実行のために十分でないとき、情報の消失した部分のためのユーザ入力を受け付けるためのフォームの生成を可能にするために、フォームのメタ情報を生成するように構成された、請求項５に記載のプラットフォーム（１０２）。
【請求項７】
前記フォームのメタ情報が、フォーム・ノードを作成するために使用され、前記フォーム・ノードが探索適合であり、前記フォーム・ノードに対応する探索ノードが、新しい探索又は前記既存の／保存された探索に関連付けられた現在の探索に追加される、請求項６に記載のプラットフォーム（１０２）。
【請求項８】
前記ターゲット・システムが、前記ＧＵＩを介してユーザ入力フォームをレンダリングするようにとの命令を前記ユーザ・デバイスに送るように構成され、前記ユーザ入力フォームが、前記フォームのメタ情報に基づいて生成され、前記ユーザ入力フォームが、変更イベントを受信すると生成される、請求項７に記載のプラットフォーム（１０２）。
【請求項９】
前記ユーザ入力フォームから受信されたユーザ入力が分析され、前記ユーザ入力フォーム上の前記ユーザ入力が前記ターゲット・システムに関連付けられた動作に対応するとき、実行が前記ターゲット・システムに転送され、前記ユーザ入力フォーム上の前記ユーザ入力が他のシステムに関連付けられた動作に対応するとき、前記実行が前記他のシステムに転送される、請求項８に記載のプラットフォーム（１０２）。
【請求項１０】
前記ターゲット・システムは、前記情報／前記ユーザから受信された前記ユーザ入力が十分であるとき、前記ターゲット動作を実行するように構成された、請求項９に記載のプラットフォーム（１０２）。
【請求項１１】
前記ターゲット・システムによって生成された前記新しいデータの前記タイプを受信し、新しいデータが前記ターゲット動作の実行時に生成されるとき、宛先データ・コンテナを決定するようにさらに構成された、請求項１０に記載のプラットフォーム（１０２）。
【請求項１２】
前記新しいデータのための前記宛先データ・コンテナを定義すること、或いは
既存のデータ・コンテナが再使用されると識別され、次いで、前記既存のデータ・コンテナが前記宛先データ・コンテナとして割り当てられたとき、探索チェーン又はユーザ構成に基づいて、前記データが追加されるか又は交換され得るデータ・ストアのデータ・コンテナを識別すること
を行うようにさらに構成された、請求項１１に記載のプラットフォーム（１０２）。
【請求項１３】
データ・ストア（２２２）の前記宛先データ・コンテナの識別情報とともに、要求を前記ターゲット・システムに送るようにさらに構成され、前記ターゲット・システムが、前記新しいデータを前記データ・ストア（２２２）の前記宛先データ・コンテナにルーティングするように構成され、前記データ・ストア（２２２）が、前記ターゲット・システムによって提供された前記新しいデータを記憶し、前記宛先コンテナの変更に対応する変更イベントを発行するように構成された、請求項１２に記載のプラットフォーム（１０２）。
【請求項１４】
前記ターゲット動作の実行に基づいて前記ターゲット・システム上で動作のチェーンを実行するようにさらに構成され、動作の前記チェーンが前記ターゲット動作の実行中又はその後に実行される、請求項１０に記載のプラットフォーム（１０２）。
【請求項１５】
あらかじめ定義された基準に基づいて、保存されたテンプレートの前記セット又はリアルタイムで生成された前記テンプレートから最良適合テンプレートの前記サブセットをランク付けするためのステップをさらに含み、前記あらかじめ定義された基準が、最良の成果、ポピュラリティ、関係性、クリエータ、探索のタイプ、又は予想される実行時間を備え、前記リアルタイム・テンプレートが、ＡＩ及び機械学習を使用して生成される、請求項１に記載のプラットフォーム（１０２）。
【請求項１６】
テンプレート・リポジトリが、保存されたテンプレートの前記セットを維持するように構成され、保存されたテンプレートの前記セットが、前記ユーザによって作成された１つ又は複数のテンプレートと、前記プラットフォームの他のユーザによって発行された１つ又は複数のテンプレートと、１つ又は複数のシステム生成テンプレートとを備える、請求項１に記載のプラットフォーム（１０２）。
【請求項１７】
前記システム生成テンプレートが、ユーザによって提供された明示的フィードバックの分析に基づいて生成され、システム生成テンプレートが、あらかじめ定義されたルールの前記セットに基づいて生成されたテンプレートであり、あらかじめ定義されたルールの前記セットが、ユーザの挙動からキャプチャされた暗黙的フィードバックを備え、前記ユーザの挙動が、ユーザの使用パターンと、いくつかの可視化又はデータによりユーザによって費やされた時間と、前記データに対してユーザによって実施された算出とから導出される、請求項１に記載のプラットフォーム（１０２）。
【請求項１８】
あらかじめ定義されたルールの前記セットが、ユーザのデフォルト・テンプレートと、ユーザ／チーム／団体によって最も頻繁に使用されるものと、使用の寿命と、前記ユーザによって最も最近使用されたものと、ユーザの使用履歴、ロケーション、役割に基づく最も関連するものと、ターゲット・システムから受信された前記データのタイプ及び構造とを備える、請求項１に記載のプラットフォーム（１０２）。
【請求項１９】
テンプレートの対話式及び非対話式実行及びレンダリングのための方法であって、前記方法は、
プロセッサ（２０２）によって、外部システム及びデータベースのセット（１１０）との接続を確立するためのステップと、
前記プロセッサ（２０２）によって、ユーザ入力に基づいてグラフィカル・ユーザ・インターフェースを介して新しい探索をレンダリングするか又は既存の探索をレンダリングするためのステップと、
前記プロセッサ（２０２）によって、コンテキスト情報に基づいて外部システム及びデータベースの前記セット（１１０）からシステムのサブセットを識別するためのステップと、
前記プロセッサ（２０２）によって、前記コンテキスト情報に基づいてシステムの前記サブセットに関連付けられた動作／動作グループのセットを表示するためのステップと、
前記プロセッサ（２０２）によって、ユーザによって選択されたターゲット動作／動作グループに関連付けられたターゲット・システムを識別するためのステップと、
前記プロセッサ（２０２）によって、前記ターゲット・システムにターゲット動作／動作グループ実行要求を送信するためのステップであって、前記ターゲット動作／動作グループが、前記ターゲット・システムを制御するか、又は、ユーザ入力をキャプチャし、前記ユーザ入力に基づいて前記ターゲット・システムを制御するために読取り動作及び書込み動作のうちの１つを実施するために、読取り動作、書込み動作のうちの１つに関連付けられた、送信するためのステップと、
前記プロセッサ（２０２）によって、前記ターゲット・システムからデータを受信するためのステップであって、前記データが、前記ターゲット・システムを介した前記動作又は動作グループの実行に応答して受信される、受信するためのステップと、
前記プロセッサ（２０２）によって、前記ターゲット・システムから受信されたデータのタイプとあらかじめ定義されたルールのセットとに基づいて、保存されたテンプレートのセット又はリアルタイムで生成されたテンプレートから、最良適合テンプレートのサブセットを発見するためのステップであって、最良適合テンプレートの前記サブセットが、前記ターゲット・システムを制御するために前記ターゲット・システムに書き戻すために前記ターゲット・システムにデータを送信すること、及びデータ可視化のために前記ターゲット・システムからデータを受信することを可能にする、発見するためのステップと、
前記プロセッサ（２０２）によって、最良適合テンプレートの前記サブセットに関連付けられた属性のセットを表示するためのステップと、
前記プロセッサ（２０２）によって、ユーザ入力に基づいて又はあらかじめ定義されたルールの前記セットからの１つ又は複数のあらかじめ定義されたルールに基づいて、前記新しい探索又は前記既存の探索上に最良適合テンプレートの前記サブセットからのターゲット・テンプレートをレンダリングするためのステップであって、前記テンプレートが対話式又は非対話式モードでレンダリングされる、レンダリングするためのステップと、
前記プロセッサ（２０２）によって、通知イベントを生成するためのステップであって、前記通知イベントが前記探索の変更を示す、生成するためのステップと、
前記プロセッサ（２０２）によって、前記ターゲット・テンプレートに関心がある１つ又は複数のリスナーに前記通知イベントを送信するためのステップと、
前記プロセッサ（２０２）によって、前記新しい探索又は前記既存の探索上に前記ターゲット・テンプレートをレンダリングするためのステップと、
前記プロセッサ（２０２）によって、前記ターゲット・テンプレートから実行モデルを抽出することによって前記ターゲット・テンプレートを実行するためのステップであって、前記実行モデルが、前記ターゲット・テンプレートの定義に記憶された動作の前記セットを表すグラフである、実行するためのステップと、
前記プロセッサ（２０２）によって、実行プランを稼働するようにとの命令を生成するためのステップであって、前記実行プランが、記憶された動作の前記セットに基づいて生成される、生成するためのステップと、
前記プロセッサ（２０２）によって、対話式又は非対話式モードで前記実行プランからの各動作を実行するためのステップと、
前記プロセッサ（２０２）によって、現在の動作の実行のためにユーザ入力が必要とされるとき、前記ユーザに、実行されるべき前記動作のための入力を提供するようにプロンプトするためのステップであって、前記ユーザ入力をキャプチャするために対話式ＵＩ要素がレンダリングされ、前記実行プランからの各動作が、前記ユーザ提供入力に基づいて実行される、プロンプトするためのステップと、
前記プロセッサ（２０２）によって、実行された前記動作に応答して前記ターゲット・システムによって生成されたデータを受信するためのステップと、
前記プロセッサ（２０２）によって、データ・ストア中でターゲット・システムから受信された前記データに基づいて、前記ＧＵＩ上にレンダリングされた前記テンプレート上で前記データを可視化するためのステップと
を含む、方法。
【請求項２０】
テンプレートの対話式及び非対話式実行及びレンダリングのためのコンピュータ・プログラムをその上に具備したコンピュータ・プログラム製品であって、前記コンピュータ・プログラム製品は、
外部システム及びデータベースのセット（１１０）との接続を確立するためのプログラム・コードと、
ユーザ入力に基づいてグラフィカル・ユーザ・インターフェースを介して新しい探索をレンダリングするか又は既存の探索をレンダリングするためのプログラム・コードと、
コンテキスト情報に基づいて外部システム及びデータベースの前記セット（１１０）からシステムのサブセットを識別するためのプログラム・コードと、
前記コンテキスト情報に基づいてシステムの前記サブセットに関連付けられた動作／動作グループのセットを表示するためのプログラム・コードと、
ユーザによって選択されたターゲット動作／動作グループに関連付けられたターゲット・システムを識別するためのプログラム・コードと、
前記ターゲット・システムにターゲット動作／動作グループ実行要求を送信するためのプログラム・コードであって、前記ターゲット動作／動作グループが、前記ターゲット・システムを制御するか、又は、ユーザ入力をキャプチャし、前記キャプチャされたユーザ入力に基づいて前記ターゲット・システムを制御するために読取り動作及び書込み動作のうちの１つを実施するために、読取り動作、書込み動作のうちの１つに関連付けられた、送信するためのプログラム・コードと、
前記ターゲット・システムからデータを受信するためのプログラム・コードであって、前記データが、前記ターゲット・システムを介した前記動作又は動作グループの実行に応答して受信される、受信するためのプログラム・コードと、
前記ターゲット・システムから受信されたデータのタイプとあらかじめ定義されたルールのセットとに基づいて、保存されたテンプレートのセット又はリアルタイムで生成されたテンプレートから、最良適合テンプレートのサブセットを発見するためのプログラム・コードであって、最良適合テンプレートの前記サブセットが、前記ターゲット・システムを制御するために前記ターゲット・システムに書き戻すために前記ターゲット・システムにデータを送信すること、及びデータ可視化のためにターゲット・システムからデータを受信することを可能にする、発見するためのプログラム・コードと、
最良適合テンプレートの前記サブセットに関連付けられた属性のセットを表示するためのプログラム・コードと、
ユーザ入力に基づいて又はあらかじめ定義されたルールの前記セットからの１つ又は複数のあらかじめ定義されたルールに基づいて、前記新しい探索又は前記既存の探索上に最良適合テンプレートの前記サブセットからのターゲット・テンプレートをレンダリングするためのプログラム・コードであって、前記テンプレートが対話式又は非対話式モードでレンダリングされる、レンダリングするためのプログラム・コードと、
通知イベントを生成するためのプログラム・コードであって、前記通知イベントが前記探索の変更を示す、生成するためのプログラム・コードと、
前記ターゲット・テンプレートに関心がある１つ又は複数のリスナーに前記通知イベントを送信するためのプログラム・コードと、
前記新しい探索又は前記既存の探索上に前記ターゲット・テンプレートをレンダリングするためのプログラム・コードと、
前記ターゲット・テンプレートから実行モデルを抽出することによって前記ターゲット・テンプレートを実行するためのプログラム・コードであって、前記実行モデルが、前記ターゲット・テンプレートの定義に記憶された動作の前記セットのグラフィカル表現である、実行するためのプログラム・コードと、
実行プランを稼働するようにとの命令を生成するためのプログラム・コードであって、前記実行プランが、記憶された動作の前記セットに基づいて生成される、生成するためのプログラム・コードと、
対話式又は非対話式モードでの前記実行プランからの各動作を実行するためのプログラム・コードと、
現在の動作の実行のためにユーザ入力が必要とされるとき、前記ユーザに、実行されるべき前記動作のための入力を提供するようにプロンプトするためのプログラム・コードであって、前記ユーザ入力をキャプチャするために対話式ＵＩ要素がレンダリングされ、前記実行プランからの各動作が、前記ユーザ提供入力に基づいて実行される、プロンプトするためのプログラム・コードと、
実行された前記動作に応答して前記ターゲット・システムによって生成されたデータを受信するためのプログラム・コードと、
データ・ストア中でターゲット・システムから受信された前記データに基づいて、前記ＧＵＩ上にレンダリングされた前記テンプレート上で前記データを可視化するためのプログラム・コードと
を備える、コンピュータ・プログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、その開示の全体が参照により本明細書に組み込まれる、２０１８年１月９日に出願されたインド仮出願第２０１７１１０３１９６２号の優先権を主張する。
【０００２】
本開示は、一般に、複数のシステムにわたる制御及びデータ探索の自動化を可能にするためのテンプレートの対話式（ｉｎｔｅｒａｃｔｉｖｅ）及び非対話式（ｎｏｎ−ｉｎｔｅｒａｃｔｉｖｅ）実行及びレンダリングの分野に関する。
【背景技術】
【０００３】
現今では、情報技術（ＩＴ：Ｉｎｆｏｒｍａｔｉｏｎ  Ｔｅｃｈｎｏｌｏｇｙ）の分野における発展とともに、たいていの団体は、重要な情報を含んでいる複数の異種システムを有する。これらのシステムは、大部分はサイロにおいて動作し、機械によって又は人間によって生成される情報を有し得る。その結果、これらのシステムのユーザは、これらのシステムにわたって情報を閲覧するためにアプリケーションを切り替えなければならず、これは、非効率性及びより低い生産性を生じる。
【０００４】
たとえば、大きい団体では、データ分析及び探索能力を有しない、使用中のいくつかのレガシー・システムがある。これにより、そのようなレガシー・システムにおいてデータを可視化し、そのデータに対して分析を実施することが困難になる。さらに、これらのレガシー・システムに関連付けられたデータベースからデータを抽出することは、冗長で時間がかかる作業である。
【０００５】
いくつかのシナリオでは、あるシステムによってキャプチャされたデータは、団体における別のシステムによってキャプチャされたデータと相関され得ない。その結果、大きい団体に関連付けられた分離されたシステムのセットからキャプチャされたデータに関して見識を得て、分析を実施することが、極めて困難になる。
【発明の概要】
【０００６】
本発明の概要は、対話式及び非対話式モードでの複数のシステムにわたる制御及びデータ探索の自動化を可能にするために、テンプレートを実行及びレンダリングするためのプラットフォーム及び方法に関係する態様を導入するために提供され、それらの態様は、発明を実施するための形態において以下でさらに説明される。本発明の概要は、請求される開示の本質的な特徴を識別するものではなく、請求される開示の範囲を決定又は限定することにおいて使用されるものでもない。
【０００７】
一実施例では、テンプレートの対話式及び非対話式実行及びレンダリングのためのプラットフォームが開示される。本プラットフォームは、メモリと、メモリに結合されたプロセッサとを備える。プロセッサは、１つ又は複数のモジュールに関連付けられ、メモリに記憶された、プログラム命令を実行するように構成される。一実施例では、プロセッサは、システムのセットとの接続を確立するための、メモリに記憶されたプログラム命令を実行し得る。さらに、プロセッサは、ユーザ入力に基づいてグラフィカル・ユーザ・インターフェースを介して新しい探索をレンダリングするか又は既存の探索をレンダリングするための、メモリに記憶されたプログラム命令を実行し得る。さらに、プロセッサは、コンテキスト情報に基づいてシステムのセットからのシステムのサブセットを識別するための、メモリに記憶されたプログラム命令を実行し得る。さらに、プロセッサは、コンテキスト情報に基づいてシステムのサブセットに関連付けられた動作／動作グループのセットを表示するための、メモリに記憶されたプログラム命令を実行し得る。さらに、プロセッサは、ユーザによって選択されたターゲット動作／動作グループに関連付けられたターゲット・システムを識別するための、メモリに記憶されたプログラム命令を実行し得る。さらに、プロセッサは、ターゲット・システムにターゲット動作／動作グループ実行要求を送信するための、メモリに記憶されたプログラム命令を実行し得、ターゲット動作／動作グループは、ターゲット・システムを制御するか、又は、ユーザ入力をキャプチャし、ユーザ入力に基づいてターゲット・システムを制御するために読取り動作及び書込み動作のうちの１つを実施するために、読取り動作、書込み動作のうちの１つに関連付けられる。さらに、プロセッサは、ターゲット・システムからデータを受信するための、メモリに記憶されたプログラム命令を実行し得、データは、ターゲット・システムを介した動作又は動作グループの実行に応答して受信される。さらに、プロセッサは、ターゲット・システムから受信されたデータのタイプとあらかじめ定義されたルールのセットとに基づいて、保存されたテンプレートのセット又はリアルタイムで生成されたテンプレートから、最良適合テンプレート（ｂｅｓｔ  ｆｉｔ  ｔｅｍｐｌａｔｅ）のサブセットを発見するための、メモリに記憶されたプログラム命令を実行し得、最良適合テンプレートのサブセットは、ターゲット・システムを制御するためにターゲット・システムに書き戻すためにターゲット・システムにデータを送信すること、及びデータ可視化のためにターゲット・システムからデータを受信することを可能にする。さらに、プロセッサは、通知イベントを生成するための、メモリに記憶されたプログラム命令を実行し得、通知イベントは探索の変更を示す。さらに、プロセッサは、ターゲット・テンプレートに関心がある１つ又は複数のリスナーに通知イベントを送信するための、メモリに記憶されたプログラム命令を実行し得る。さらに、プロセッサは、新しい探索又は既存の探索上にターゲット・テンプレートをレンダリングするための、メモリに記憶されたプログラム命令を実行し得る。さらに、プロセッサは��ターゲット・テンプレートから実行モデルを抽出することによってターゲット・テンプレートを実行するための、メモリに記憶されたプログラム命令を実行し得、実行モデルは、ターゲット・テンプレートの定義に記憶された動作のセットを表すグラフである。さらに、プロセッサは、実行プランを稼働するようにとの命令を生成するための、メモリに記憶されたプログラム命令を実行し得、実行プランは、記憶された動作のセットに基づいて生成される。さらに、プロセッサは、対話式又は非対話式モードで実行プランからの各動作を実行するための、メモリに記憶されたプログラム命令を実行し得る。さらに、プロセッサは、現在の動作の実行のためにユーザ入力が必要とされるとき、ユーザに、実行されるべき上記動作のための入力を提供するようにプロンプトするための、メモリに記憶されたプログラム命令を実行し得、ユーザ入力をキャプチャするために対話式ＵＩ要素がレンダリングされ、実行プランからの各動作は、ユーザ提供入力に基づいて実行される。さらに、プロセッサは、実行された動作に応答してターゲット・システムによって生成されたデータを受信するための、メモリに記憶されたプログラム命令を実行し得る。さらに、プロセッサは、データ・ストア中でターゲット・システムから受信されたデータに基づいて、ＧＵＩ上にレンダリングされたテンプレート上でデータを可視化するための、メモリに記憶されたプログラム命令を実行し得る。
【０００８】
一実施例では、テンプレートの対話式及び非対話式実行及びレンダリングのための方法が開示される。本方法は、システムのセットとの接続を確立するためのステップを含む。本方法は、ユーザ入力に基づいてグラフィカル・ユーザ・インターフェースを介して新しい探索をレンダリングするか又は既存の探索をレンダリングするためのステップをさらに含む。本方法は、コンテキスト情報に基づいてシステムのセットからシステムのサブセットを識別するためのステップをさらに含む。本方法は、コンテキスト情報に基づいてシステムのサブセットに関連付けられた動作／動作グループのセットを表示するためのステップをさらに含む。本方法は、ユーザによって選択されたターゲット動作／動作グループに関連付けられたターゲット・システムを識別するためのステップをさらに含む。本方法は、ターゲット・システムにターゲット動作／動作グループ実行要求を送信するためのステップをさらに含み、ターゲット動作／動作グループは、ターゲット・システムを制御するか、又は、ユーザ入力をキャプチャし、キャプチャされたユーザ入力に基づいてターゲット・システムを制御するために読取り動作及び書込み動作のうちの１つを実施するために、読取り動作、書込み動作のうちの１つに関連付けられる。本方法は、ターゲット・システムからデータを受信するためのステップをさらに含み、データは、ターゲット・システムを介した動作又は動作グループの実行に応答して受信される。本方法は、ターゲット・システムから受信されたデータのタイプとあらかじめ定義されたルールのセットとに基づいて、保存されたテンプレートのセット又はリアルタイムで生成されたテンプレートから、最良適合テンプレートのサブセットを発見するためのステップをさらに含み、最良適合テンプレートのサブセットは、ターゲット・システムを制御するためにターゲット・システムに書き戻すためにターゲット・システムにデータを送信すること、及びデータ可視化のためにターゲット・システムからデータを受信することを可能にする。本方法は、通知イベントを生成するためのステップをさらに含み、通知イベントは探索の変更を示す。本方法は、ターゲット・テンプレートに関心がある１つ又は複数のリスナーに通知イベントを送信するためのステップをさらに含む。本方法は、新しい探索又は既存の探索上にターゲット・テンプレートをレンダリングするためのステップをさらに含む。本方法は、ターゲット・テンプレートから実行モデルを抽出することによってターゲット・テンプレートを実行するためのステップをさらに含み、実行モデルは、ターゲット・テンプレートの定義に記憶された動作のセットを表すグラフである。本方法は、実行プランを稼働するようにとの命令を生成するためのステップをさらに含み、実行プランは、記憶された動作のセットに基づいて生成される。本方法は、対話式又は非対話式モードで実行プランからの各動作を実行するためのステップをさらに含む。本方法は、現在の動作の実行のためにユーザ入力が必要とされるとき、ユーザに、実行されるべき上記動作のための入力を提供するようにプロンプトするためのステップをさらに含み、ユーザ入力をキャプチャするために対話式ＵＩ要素がレンダリングされ、実行プランからの各動作は、ユーザ提供入力に基づいて実行される。本方法は、実行された動作に応答してターゲット・システムによって生成されたデータを受信するためのステップをさらに含む。本方法は、データ・ストア中でターゲット・システムから受信されたデータに基づいて、ＧＵＩ上にレンダリングされたテンプレート上でデータを可視化するためのステップをさらに含む。
【０００９】
一実施例では、テンプレートの対話式及び非対話式実行及びレンダリングのためのコンピュータ・プログラムをその上に具備したコンピュータ・プログラム製品が開示される。本コンピュータ・プログラム製品は、システムのセットとの接続を確立するためのプログラム・コードを備える。本コンピュータ・プログラム製品は、ユーザ入力に基づいてグラフィカル・ユーザ・インターフェースを介して新しい探索をレンダリングするか又は既存の探索をレンダリングするためのプログラム・コードを備える。本コンピュータ・プログラム製品は、コンテキスト情報に基づいてシステムのセットからシステムのサブセットを識別するためのプログラム・コードを備える。本コンピュータ・プログラム製品は、コンテキスト情報に基づいてシステムのサブセットに関連付けられた動作／動作グループのセットを表示するためのプログラム・コードを備える。本コンピュータ・プログラム製品は、ユーザによって選択されたターゲット動作／動作グループに関連付けられたターゲット・システムを識別するためのプログラム・コードを備える。本コンピュータ・プログラム製品は、ターゲット・システムにターゲット動作／動作グループ実行要求を送信するためのプログラム・コードを備え、ターゲット動作／動作グループは、ターゲット・システムを制御するか、又は、ユーザ入力をキャプチャし、キャプチャされたユーザ入力に基づいてターゲット・システムを制御するために読取り動作及び書込み動作のうちの１つを実施するために、読取り動作、書込み動作のうちの１つに関連付けられる。本コンピュータ・プログラム製品は、ターゲット・システムからデータを受信するためのプログラム・コードを備え、データは、ターゲット・システムを介した動作又は動作グループの実行に応答して受信される。本コンピュータ・プログラム製品は、ターゲット・システムから受信されたデータのタイプとあらかじめ定義されたルールのセットとに基づいて、保存されたテンプレートのセット又はリアルタイムで生成されたテンプレートから、最良適合テンプレートのサブセットを発見するためのプログラム・コードを備え、最良適合テンプレートのサブセットは、ターゲット・システムを制御するためにターゲット・システムに書き戻すためにターゲット・システムにデータを送信すること、及びデータ可視化のためにターゲット・システムからデータを受信することを可能にする。本コンピュータ・プログラム製品は、通知イベントを生成するためのプログラム・コードを備え、通知イベントは探索の変更を示す。本コンピュータ・プログラム製品は、ターゲット・テンプレートに関心がある１つ又は複数のリスナーに通知イベントを送信するためのプログラム・コードを備える。本コンピュータ・プログラム製品は、新しい探索又は既存の探索上にターゲット・テンプレートをレンダリングするためのプログラム・コードを備える。本コンピュータ・プログラム製品は、ターゲット・テンプレートから実行モデルを抽出することによってターゲット・テンプレートを実行するためのプログラム・コードを備え、実行モデルは、ターゲット・テンプレートの定義に記憶された動作のセットを表すグラフである。本コンピュータ・プログラム製品は、実行プランを稼働するようにとの命令を生成するためのプログラム・コードを備え、実行プランは、記憶された動作のセットに基づいて生成される。本コンピュータ・プログラム製品は、対話式又は非対話式モードで実行プランからの各動作を実行するためのプログラム・コードを備える。本コンピュータ・プログラム製品は、現在の動作の実行のためにユーザ入力が必要とされるとき、ユーザに、実行されるべき上記動作のための入力を提供するようにプロンプトするためのプログラム・コードを備え、ユーザ入力をキャプチャするために対話式ＵＩ要素がレンダリングされ、実行プランからの各動作は、ユーザ提供入力に基づいて実行される。本コンピュータ・プログラム製品は、実行された動作に応答してターゲット・システムによって生成されたデータを受信するためのプログラム・コードを備える。本コンピュータ・プログラム製品は、データ・ストア中でターゲット・システムから受信されたデータに基づいて、ＧＵＩ上にレンダリングされたテンプレート上でデータを可視化するためのプログラム・コードを備える。
【００１０】
発明を実施するための形態は、添付図を参照しながら説明される。図では、参照番号の（１つ又は複数の）最左桁は、参照番号が最初に現れる図を識別する。同様の特徴及び構成要素を指すために図面全体にわたって同じ番号が使用される。
【図面の簡単な説明】
【００１１】
【図１】本開示の一実施例による、テンプレートの対話式及び非対話式実行及びレンダリングのためのプラットフォームのネットワーク実装形態を示す図である。
【図２】本開示の一実施例による、プラットフォームを示す図である。
【図３】図３（１）〜（２）は、本開示の一実施例による、１つ又は複数のシステムを制御し、プラットフォームに接続された１つ又は複数のシステムにわたってデータを探索するためのブロック図である。
【図４】本開示の一実施例による、複数のシステムにわたる制御及びデータ探索の自動化を可能にするための視覚及び実行テンプレートを推奨するためのブロック図である。
【図５】図５（１）〜（３）は、本開示の一実施例による、テンプレートの対話式及び非対話式実行及びレンダリングのためのブロック図である。
【発明を実施するための形態】
【００１２】
一実施例では、テンプレートの対話式及び非対話式実行及びレンダリングのために構成されたプラットフォームが示される。最初に、プラットフォームは、ユーザ・デバイスからアクセスされ得る。一実施例では、プラットフォームは、システムのセットとの接続を確立するように構成され得る。システムのセットは、プラットフォームに関連付けられたサービス・レジストリを介して登録され得る。さらに、プラットフォームは、ユーザから受信された命令に基づいてユーザ・デバイスのグラフィカル・ユーザ・インターフェースを介して新しい探索を開始するか又は既存の／保存された探索をレンダリングするように構成され得る。さらに、プラットフォームは、探索においてユーザによって選択された視覚要素、又はユーザによって提供された入力に基づいて、ターゲット・システムのセットからターゲット・システムのサブセットを識別するように構成され得る。さらに、プラットフォームは、ユーザによって選択された視覚要素又はユーザによって提供された入力に基づいて、グラフィカル・ユーザ・インターフェースを介してメニューを表示するように構成され得る。メニューは、システムのサブセットに関連付けられた動作／動作グループのセットを表示するように構成され得る。さらに、プラットフォームは、メニューからユーザによって選択された動作／動作グループに関連付けられたターゲット・システムを識別するように構成され得る。さらに、プラットフォームは、ターゲット・システムに動作／動作グループ実行要求を送信するように構成され得、動作／動作グループは、ターゲット・システムを制御するか、又は、ユーザ入力をキャプチャし、キャプチャされたユーザ入力に基づいてターゲット・システムを制御するために読取り又は書込み動作を実施するために、読取り動作、書込み動作のうちの１つに関連付けられる。さらに、プラットフォームは、ターゲット・システムからデータを受信するように構成され得、データは、ターゲット・システムを介した動作又は動作グループの実行に応答して受信される。さらに、プラットフォームは、ターゲット・システムから受信されたデータのタイプとあらかじめ定義されたルールのセットとに基づいて、保存されたテンプレートのセット又はリアルタイムで生成されたテンプレートから、最良適合テンプレートのサブセットを発見するように構成され得、最良適合テンプレートのサブセットは、ターゲット・システムを制御するためにターゲット・システムに書き戻すためにターゲット・システムにデータを送信すること、並びにデータ可視化及び分析のためにターゲット・システムからデータを受信することを可能にする。
【００１３】
一実施例では、プラットフォームは、対話式及び非対話式モードでの複数のシステムにわたる制御及びデータ探索の自動化を可能にするために、テンプレートを実行及びレンダリングするためにさらに構成される。最初に、プラットフォームは、マッチするテンプレートのセットがヌル・セットであるかどうかを決定するように構成される。マッチするテンプレートのセットがヌル・セットでない場合、プラットフォームは、いくつかのテンプレートをビュー・パネルに追加し、いくつかを探索に直接追加するように構成される。一実施例では、テンプレートを、ビュー・パネルに追加するか又は探索において直接追加するという決定は、様々な属性、たとえば、発見されたテンプレートに関するデータのタイプ、ポピュラリティ、関係性（ｒｅｌｅｖａｎｃｅ）、環境変数、ユーザ構成、又はユーザ選定に基づいて行われ得る。一実施例では、ビュー・パネルに追加されたテンプレートは、ＧＵＩ上にレンダリングされ得る。さらに、プラットフォームは、テンプレートの１つ又は複数のメタ特性、たとえば、クリエータ、パブリッシャー、含まれているデータのタイプ、可視化のタイプ、ポピュラリティ、関係性、予想される実行／完了時間、動作、動作入力パラメータなどに基づいて、ビュー・パネル中のテンプレートのリストをランク付けするように構成される。たとえば、ユーザの選定、ユーザ構成、環境変数など、追加の特性が、ランク付けするために使用され得る。一実施例では、ビュー・パネルは、ビュー・パネル中のテンプレートのいくつかの属性を表示して、それらの概要をユーザに提供し得る。一実施例では、ユーザは、ＧＵＩを通して、テンプレートを探索に追加し、そのテンプレートを実行し、レンダリングすることを選定し得る。一実施例では、テンプレートは、システムによって自動的に追加され、実行され、レンダリングされ得る。一実施例では、テンプレートは、対話式又は非対話式実行のために探索において追加され得る。プラットフォームは、ユーザ要求又はシステム主導要求のいずれかに基づいてテンプレートを探索に追加するように構成される。さらに、プラットフォームは、テンプレートから実行モデルを抽出することによってそのテンプレートを実行するように構成される。実行モデルは、テンプレートの定義に記憶された動作探索のグラフ表現である。実行モデルから実行プランが生成される。プラットフォームは、実行プランを稼働するようにとの命令を生成するようにさらに構成される。システムは、命令に基づいて対話式又は非対話式モードで実行プランを稼働するように構成される。実行プランを実行しながら、実行プラン中の各動作について、実行エンジンは、ユーザ入力が必要とされるか否かを決定するように構成される。ユーザ入力が必要とされ、プランが対話式モードで稼働している場合、コマンドがＧＵＩに送られる。ＧＵＩは、ユーザに、実行されるべき動作のための入力を提供するようにプロンプトする。システムは、ユーザ入力をキャプチャするために、ウィザードをレンダリングするか又は対話式ＵＩ要素を使用するようにさらに構成される。さらに、ユーザ提供入力を用いて現在の動作を実行するために、ユーザ提供入力が実行エンジンに送られる。システムは、実行エンジンによって実行された動作に応答してターゲット・システムによって生成されたデータを受信するようにさらに構成される。データ・ストア中でターゲット・システムからデータを受信すると、システムは、ＧＵＩ上にレンダリングされたテンプレート上でデータを可視化するように構成される。
【００１４】
対話式及び非対話式モードでの複数のシステムにわたる制御及びデータ探索の自動化を可能にするために、テンプレートを実行及びレンダリングするための説明されたプラットフォームの態様は、任意の数の異なるコンピューティング・システム、環境、及び／又は構成において実装され得るが、実施例は、以下の例示的なプラットフォームのコンテキストで説明される。
【００１５】
次に図１を参照すると、テンプレートの対話式及び非対話式実行及びレンダリングのためのプラットフォーム１０２のネットワーク実装形態１００が開示される。本開示は、プラットフォーム１０２がサーバ上で実装されることを考慮して説明されるが、プラットフォーム１０２が、ラップトップ・コンピュータ、デスクトップ・コンピュータ、ノートブック、ワークステーション、メインフレーム・コンピュータ、サーバ、サーバ・クラスタ、分散型サーバ、ネットワーク・サーバなど、様々なコンピューティング・システムにおいても実装され得ることを理解されたい。一実装形態では、プラットフォーム１０２は、クラウドベース環境において実装され得る。プラットフォーム１０２が、以下でユーザ・デバイス１０４と総称される１つ又は複数のユーザ・デバイス１０４−１、１０４−２．．．１０４−Ｎ、又はユーザ・デバイス１０４上に常駐するアプリケーションを通して複数のユーザによってアクセスされ得ることを理解されよう。ユーザ・デバイス１０４の実例は、限定はしないが、ポータブル・コンピュータ、携帯情報端末、ハンドヘルド・デバイス、及びワークステーションを含み得る。ユーザ・デバイス１０４は、第１のネットワーク１０６を通してプラットフォーム１０２に通信可能に結合される。さらに、プラットフォーム１０２は、第２のネットワーク１１２を通して外部システム及びデータベースのセット１１０に接続される。一実施例では、外部システム及びデータベースのセット１１０からの各システムは、データを収集し、処理し、維持するように構成され得る。一実施例では、外部システム及びデータベースのセット１１０からの各システムは、コネクタ１０８を通してプラットフォームに接続され得る。各コネクタは、１つ又は複数のシステムをプラットフォーム１０２に接続するように構成される。システム１１０がプラットフォーム１０２に接続されると、ユーザは、これらの外部システム及びデータベース１１０を制御するか、又はこれらのシステムにわたってデータを探索し得る。一実施例では、コネクタ１０８は、コネクタ１０８の構成に基づいて複数のシステムに接続するように構成されたコネクタ１０８であり得る。
【００１６】
一実装形態では、第１のネットワーク１０６及び第２のネットワーク１１２は、ワイヤレス・ネットワーク、ワイヤード・ネットワーク又はそれらの組合せであり得る。第１のネットワーク１０６及び第２のネットワーク１１２は、イントラネット、ローカル・エリア・ネットワーク（ＬＡＮ：ｌｏｃａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ワイド・エリア・ネットワーク（ＷＡＮ：ｗｉｄｅ  ａｒｅａ  ｎｅｔｗｏｒｋ）、インターネットなど、異なるタイプのネットワークのうちの１つとして実装され得る。第１のネットワーク１０６及び第２のネットワーク１１２は、専用ネットワーク又は共有ネットワークのいずれかであり得る。共有ネットワークは、互いに通信するために、様々なプロトコル、たとえば、ハイパーテキスト転送プロトコル（ＨＴＴＰ：Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）、伝送制御プロトコル／インターネット・プロトコル（ＴＣＰ／ＩＰ：Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）、ワイヤレス・アプリケーション・プロトコル（ＷＡＰ：Ｗｉｒｅｌｅｓｓ  Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）などを使用する異なるタイプのネットワークの関連付けを表す。さらに、第１のネットワーク１０６及び第２のネットワーク１１２は、ルータ、ブリッジ、サーバ、コンピューティング・デバイス、記憶デバイスなどを含む、様々なネットワーク・デバイスを含み得る。プラットフォーム１０２は、外部システム及びデータベースのセット１１０からの１つ又は複数のシステムから受信されたデータを使用してデータ分析及び可視化を実施するようにさらに構成され得る。テンプレートの対話式及び非対話式実行及びレンダリングのためのプラットフォーム１０２の働きは、図２を参照しながらさらに説明される。
【００１７】
次に図２を参照すると、本開示の一実施例によるプラットフォーム１０２が示されている。一実施例では、プラットフォーム１０２は、少なくとも１つのプロセッサ２０２と、入出力（Ｉ／Ｏ：ｉｎｐｕｔ／ｏｕｔｐｕｔ）インターフェース２０４と、メモリ２０６とを使用して実装され得る。少なくとも１つのプロセッサ２０２は、１つ又は複数のマイクロプロセッサ、マイクロコンピュータ、マイクロコントローラ、デジタル信号プロセッサ、中央処理ユニット、状態機械、論理回路、及び／又は動作命令に基づいて信号を操作する任意のデバイスとして実装され得る。能力の中でも、少なくとも１つのプロセッサ２０２は、メモリ２０６に記憶されたコンピュータ可読命令をフェッチ及び実行するように構成される。
【００１８】
Ｉ／Ｏインターフェース２０４は、様々なソフトウェア及びハードウェア・インターフェース、たとえば、ウェブ・インターフェース、グラフィカル・ユーザ・インターフェースなどを含み得る。Ｉ／Ｏインターフェース２０４は、プラットフォーム１０２が、直接、又はクライアント・デバイス１０４を通してユーザと対話することを可能にし得る。さらに、Ｉ／Ｏインターフェース２０４は、プラットフォーム１０２が、ウェブ・サーバ及び外部データ・サーバ並びに外部システム及びデータベースのセット１１０など、他のコンピューティング・デバイスと通信することを可能にし得る。Ｉ／Ｏインターフェース２０４は、ワイヤード・ネットワーク、たとえば、ＬＡＮ、ケーブルなどと、ＷＬＡＮ、セルラー、又は衛星などのワイヤレス・ネットワークとを含む、多種多様なネットワーク及びプロトコル・タイプ内の複数の通信を可能にすることができる。Ｉ／Ｏインターフェース２０４は、いくつかのデバイスを、互いに又は別のサーバに接続するための１つ又は複数のポートを含み得る。
【００１９】
メモリ２０６は、たとえば、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ：ｓｔａｔｉｃ  ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）及びダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ：ｄｙｎａｍｉｃ  ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）など、揮発性メモリ、並びに／又は、読取り専用メモリ（ＲＯＭ：ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ）、消去可能プログラマブルＲＯＭ、フラッシュ・メモリ、ハード・ディスク、光ディスク、及び磁気テープなど、不揮発性メモリを含む、当技術分野において知られている任意のコンピュータ可読媒体を含み得る。メモリ２０６は、モジュール２０８とデータ２１０とを含み得る。
【００２０】
モジュール２０８は、特定のタスク、機能を実施するか、又は特定の抽象データタイプを実装する、ルーチン、プログラム、オブジェクト、構成要素、データ構造などを含む。一実装形態では、モジュール２０８は、動作クライアント２１２と、レンダリング・エンジン２１４と、実行マネージャ２１６と、実行エンジン２１８と、サービス・リポジトリ２２０と、データ・ストア２２２と、探索クライアント２２４と、探索モジュール２２６と、変換サービス・モジュール２２８と、結果セット・ストア２３０と、テンプレート発見エンジン２３２と、テンプレート・リポジトリ２３４と、他のモジュール２３６とを含み得る。他のモジュール２３６は、プラットフォーム１０２のアプリケーション及び機能を補足するプログラム又はコード化命令を含み得る。
【００２１】
データ２１０は、特に、モジュール２０８のうちの１つ又は複数によって処理され、受信され、生成されたデータを記憶するためのリポジトリの働きをする。データ２１０はまた、データ・ストア２２２と他のデータ２４０とを含み得る。
一実施例では、データ・ストア２２２は、外部システム及びデータベースのセット１１０によって生成されたデータを記憶するように構成され得る。
一実施例では、データ・ストア２２２は、１つ又は複数のモジュール２０８によって生成されたデータを記憶するように構成され得る。一実施例では、他のデータ２４０は、モジュール２０８中の１つ又は複数のモジュールの実行の結果として生成されたデータを含み得る。一実施例では、他のデータ２４０は、他のモジュール２３６中の１つ又は複数のモジュールの実行の結果として生成されたデータを含み得る。
【００２２】
一実装形態では、プラットフォーム１０２は、第２のネットワーク１１２を通して（システム１１０と呼ばれることもある）外部システム及びデータベースのセット１１０と接続するように構成され得る。ユーザは、プラットフォーム１０２を使用するためにＩ／Ｏインターフェース２０４を使用して登録し得る。ユーザが登録されると、ユーザは、Ｉ／Ｏインターフェース２０４を介してプラットフォーム１０２にアクセスするためにクライアント・デバイス１０４を使用し得る。ユーザが登録し、プラットフォームに接続されると、ユーザは、プラットフォーム上で実装された異なるモジュールにアクセスし、１つ又は複数の動作及び式を実施し得る。
【００２３】
最初に、ユーザ・デバイス１０４上のグラフィカル・ユーザ・インターフェース（ＧＵＩ：Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）は、ユーザがＩ／Ｏインターフェース２０４を使用してプラットフォーム１０２と通信することを可能にし得る。Ｉ／Ｏインターフェース２０４は、ユーザが新しい探索を作成するか又は既存の／保存された探索を開くことを可能にし得る。新しい探索は、新しいフォルダ、古いフォルダ、既存のファイル、又は新しいファイル、ウェブ・ブラウザ、分析報告などに対応し得る。一実施例では、既存の／保存された探索も、ウェブ・ブラウザ又はオフライン・ツールを介してユーザによって始動される分析動作／新しい分析動作に対応し得る。
【００２４】
ユーザは、ＧＵＩを通してプラットフォーム１０２と対話し、新しい探索又は既存の／保存された探索における要素を選択し得る。要素は、グラフ、テキスト、テキスト・ボックス、コマンド・ボタン、バックグラウンド、又は既存の／保存された探索上に存在する任意の他の視覚要素に対応し得る。一実施例では、ユーザに関連付けられたコンテキスト情報は、ユーザによって選択された要素又はユーザによって提供された入力に基づいて決定される。
【００２５】
動作クライアント２１４は、コンテキスト情報を受信するように構成される。コンテキスト情報は、探索においてユーザによって選択された視覚要素、又はユーザによって提供された入力に基づいて決定される。ユーザは、探索においてキーワードを入力することによって入力を提供し得る。
【００２６】
サービス・レジストリ２２０は、コンテキスト情報に基づいてシステムのサブセット及び動作のサブセットを識別するために、コンテキスト情報に基づいて外部システム及びデータベースのセット１１０からの各システムに関連付けられた動作のセットを発見するように構成され得る。動作のサブセットは、個別動作及び／又は複合動作を備え得る。一実施例では、複合動作は、ターゲット・システムによって提供される１つ又は複数の動作を含んでいることがある動作のグループであり得る。
【００２７】
ＧＵＩは、ユーザ・デバイス２０４上にメニューをレンダリングし得る。メニューは、動作のサブセットを備え得る。一実施例では、メニューは、ユーザの選択のための動作のサブセットを伴うドロップダウンの形式で表示され得る。
【００２８】
ユーザは、メニューにおいて表示された動作のサブセットからターゲット動作を選定し得る。一実施例では、ユーザは、ターゲット動作としてメニューにおいて表示された動作のサブセットから２つ以上の動作／複合動作を選定し得る。
【００２９】
ターゲット動作が選択されると、動作クライアント２１２は、ユーザによって選択されたターゲット動作をハンドリングし、ターゲット動作を実行するようにとの要求を実行マネージャ２１６に送信するように構成される。
【００３０】
実行マネージャ２１６は、ターゲット動作のための実行プランを生成するように構成される。実行プランは、ターゲット動作が実行されるべきであるシーケンスと、ターゲット動作の実行のために必要とされる情報とを表し得る。実行プランは、動作及び式のグラフであり、グラフの各ノードが、ターゲット・システム上で実行されるべき動作を表す。
【００３１】
実行プランは、動作及びそのコンテキスト・ベース・パラメータをターゲット・システムのコネクタ１０８に送ることによって、実行エンジン２１８によって実行され得る。実行プランを実行しながら、実行エンジン２１８は、並行して（すなわち同時に）又は連続的に（すなわち交互に）ターゲット動作をターゲット・システムに送り得る。
【００３２】
ターゲット・システムは、実行エンジン２１８から受信された動作パラメータが、ターゲット動作を実行するのに十分であるかどうかを決定するように構成され得る。
【００３３】
実行エンジン２１８から受信された動作パラメータが、ターゲット動作の実行のために十分でない場合、ターゲット・システムは、フォームのメタ情報を生成するように構成され得る。フォームのメタ情報は、実行エンジン２１８に送られる。
フォームのメタ情報は、ターゲット動作又はターゲット動作に関係する情報の消失したパラメータのためのユーザ入力を受け付けるためのフォームの生成を可能にし得る。
【００３４】
実行エンジン２１８は、フォーム・ノードを作成するためにフォームのメタ情報を使用し得る。フォーム・ノードは探索適合（ｅｘｐｌｏｒａｔｉｏｎ  ｃｏｍｐａｔｉｂｌｅ）である（すなわち、フォーム・ノードは、探索において配置され、レンダリングされ得る）。フォーム・ノードが生成されると、フォーム・ノードは探索モジュール２２６に送られる。探索モジュール２２６は、探索ノードを、新しい探索又は既存の／保存された探索に関連付けられた現在の探索に追加するように構成される。
【００３５】
レンダリング・エンジン２１４は、探索モジュール２２６から変更イベントを受信するように構成される。さらに、レンダリング・エンジン２１４は、ＧＵＩを介してユーザ入力フォームをレンダリングするようにとの命令をユーザ・デバイス１０４に送るように構成され得る。ユーザ入力フォームはメタ情報に基づいて生成される。
【００３６】
ＧＵＩ２０４は、ユーザ入力フォームをレンダリングするように構成される。さらに、ユーザは、ユーザ入力フォーム中のすべての必要なフィールドを埋め得、コマンド・ボタンのセットからのコマンド・ボタンをクリックする。各コマンド・ボタンは、システムのセットからの異なるシステム又はターゲット・システムに関連付けられた異なる動作に関連付けられ得る。
【００３７】
クリックされたコマンド・ボタンが任意のターゲット・システムの別の動作に関連付けられる場合、実行は、ターゲット動作と同じやり方で別の動作をハンドリングするために、動作クライアント２１２にもう一度転送される。
【００３８】
クリックされたコマンド・ボタンが異なるシステムの別の動作に関連付けられない場合、動作クライアント２１２は、ユーザ入力フォームから受信されたユーザ入力を収集し、これらのユーザ入力を実行エンジン２１８に転送するように構成される。ユーザ入力は、しきい値パラメータ、あらかじめ定義された基準、又は概して分析目的で使用される任意の他の情報の形態のものであり得る。
【００３９】
実行エンジン２１８は、ユーザから受信されたユーザ入力を、コネクタ１０８を通してターゲット・システムに送信するように構成される。
【００４０】
実行エンジン２１８から受信された情報／ユーザ入力が十分である場合、ターゲット・システムは、ターゲット動作を実行するように構成され得る。ターゲット動作の実行に基づいて、ターゲット・システムは、新しいデータを生成することも生成しないこともある。
【００４１】
新しいデータが生成された場合、実行エンジン２１８は、ターゲット・システムによって生成された新しいデータのタイプを受信するように構成される。実行エンジン２１８は、実行ハンドラ２３８に、宛先データ・コンテナを決定することを要求するように構成される。たとえば、新しいデータのタイプは、構造データ、非構造化データ、分析データ、視覚データなどであり得る。
【００４２】
実行ハンドラ２３８は、新しいデータのための宛先データ・コンテナを定義するように構成される。実行ハンドラ２３８は、探索チェーン又はユーザ構成に基づいて、このデータが追加／交換され得るデータ・ストア２２２のデータ・コンテナを見つけるように構成され得る。既存のデータ・コンテナが再使用されると識別された場合、既存のデータ・コンテナは宛先データ・コンテナとして割り当てられる。別の実施例では、実行ハンドラ２３８は、このタイプのデータのための新しい空のデータ・コンテナを作成するようにとの要求をデータ・ストア２２２に送るように構成される。新たに作成されたデータ・コンテナは、宛先データ・コンテナになる。
【００４３】
実行ハンドラ２３８は、データ・ストア２２２の宛先データ・コンテナの識別情報とともに、要求をターゲット・システム１１０に送るように構成される。ターゲット・システムは、新しいデータをデータ・ストア２２２の宛先コンテナにルーティングするように構成される。データ・ストア２２２は、ターゲット・システムによって提供されたデータを記憶するように構成される。コネクタ１０８は、データが宛先コンテナ中で変更されたというイベントを発行し、その結果、このデータ変更イベントのすべてのサブスクライバ／リスナーがそれに応じて行動することができるように構成される。一実施例では、モジュールは、これらのイベントを識別し、それに応じて、新たに生成されたデータを使用してＧＵＩ上で様々な可視化を作成するように構成され得る。別の実施例では、イベントは、宛先コンテナ中の変更の大きさをデータ・ストア２２２に記憶されたあらかじめ定義された変更しきい値と比較することによって識別され得る。コネクタ１０８が、イベントに関連付けられた１つ又は複数の外部システム及びデータベース１１０に通知するように構成され得ることに留意されたい。さらに、モジュールは、現在生成されたデータ又は前に生成されたデータに基づいて式を計算することによって新しいデータを生成するように構成され得る。さらに、モジュールは、この変更イベントに基づいて動作の依存チェーン（ｄｅｐｅｎｄｅｎｔ  ｃｈａｉｎ）を更新するために動作のチェーンを実行するように構成され得る。動作及び式のチェーンは、ターゲット動作の実行中又はその後に実行される。
【００４４】
一実施例では、新しいデータが、ユーザ選択動作／動作グループに応答して生成された場合、実行エンジン２１８は、ターゲット・システムによって生成された新しいデータのタイプを受信するように構成される。実行エンジン２１８は、実行ハンドラ２３８に、宛先データ・コンテナを決定することを要求するように構成される。
【００４５】
さらに、実行ハンドラ２３８は、任意の既存のデータ・コンテナが、新たに生成されたデータを付加するか又は交換するために再使用され得るかどうかを決定するように構成される。実行ハンドラ２３８は、探索チェーン、ユーザの選定、又は構成などに基づいてこれを決定するように構成され得る。既存のデータ・コンテナが再使用され得ない場合、実行ハンドラ２３８は、テンプレート発見エンジン２３２に、受信されたデータ・セット・タイプのための最良適合テンプレートをサーチすることを要求する。
【００４６】
さらに、テンプレート発見エンジン２３２は、新しいデータに関連付けられた「データのタイプ」を表すのに好適なすべての最良適合テンプレートを識別するためにテンプレート・リポジトリ２３４を照会するように構成される。一実施例では、最良適合テンプレートのサブセットは、ターゲット・システムから受信されたデータのタイプとあらかじめ定義されたルールのセットとに基づいて、保存されたテンプレートのセット又はリアルタイムで生成されたテンプレートから、実行ハンドラによって発見される。最良適合テンプレートのサブセットは、ターゲット・システムを制御するためにターゲット・システムに書き戻すためにターゲット・システムにデータを送信すること、並びにデータ可視化及び分析のためにターゲット・システムからデータを受信することを可能にする。
【００４７】
一実施例では、テンプレート・リポジトリ２３４は、現在のユーザのために適用可能なマッチするテンプレート／最良適合テンプレートのサブセットを発見するために、単独で又は組み合わせて、「データのタイプ」、「ユーザ入力」、「環境変数」のいずれかに基づいて、テンプレート・リポジトリ２３４に保存されたテンプレートのセットを分析するように構成される。一実施例では、テンプレートのセットは、以下を備え得る。
−  ユーザによって作成されたテンプレート
−  他のユーザによってユーザに発行されたテンプレート
−  （ユーザの過去の挙動又は他のシステムパラメータに基づいて）ユーザのためにシステムによって推奨されたテンプレート。言い換えれば、テンプレート・リポジトリは、保存されたテンプレートのセットを維持するように構成される。保存されたテンプレートのセットは、ユーザによって作成された１つ又は複数のテンプレートと、プラットフォームの他のユーザによって発行された１つ又は複数のテンプレートと、１つ又は複数のシステム生成テンプレートとを備える。システム生成テンプレートは、ユーザによって提供された明示的フィードバックの分析に基づいて生成されるか、又は、あらかじめ定義されたルールのセットに基づいて生成されたテンプレートである。あらかじめ定義されたルールのセットは、ユーザの挙動からキャプチャされた暗黙的フィードバックを備え、ユーザの挙動は、ユーザの使用パターンと、いくつかの可視化又はデータによりユーザによって費やされた時間と、データに対してユーザによって実施された算出とから導出される。
あらかじめ定義されたルールのセットは、限定はしないが、ユーザのデフォルト・テンプレートと、ユーザ／チーム／団体によって最も頻繁に使用されるものと、使用の寿命と、ユーザによって最も最近使用されたものと、ユーザの使用履歴、ロケーション、役割に基づく最も関連するものと、ターゲット・システムから受信されたデータのタイプ及び構造とを含む、パラメータのセットをも備え得る。一実装形態では、あらかじめ定義されたルールのセットは、ユーザの挙動からキャプチャされた暗黙的フィードバックとパラメータのセットとに対して機械学習技法を使用することによって生成され得る。
【００４８】
さらに、実行ハンドラ２３８は、マッチするテンプレート／最良適合テンプレートのセットと、データのタイプ、ユーザ入力、環境変数又はそれらの組合せに対応するデフォルト可視化とを受信するように構成される。さらに、実行ハンドラは、現在の探索においてこれらのテンプレートを追加するようにとの要求を探索モジュール２２６に送るように構成される。さらに、実行ハンドラ２３８は、あらかじめ定義された基準に基づいて、保存されたテンプレートのセット又はリアルタイムで生成されたテンプレートから最良適合テンプレートのサブセットをランク付けするように構成され、あらかじめ定義された基準は、最良の成果、ポピュラリティ、関係性、クリエータ、探索のタイプ、又は予想される実行時間を備え、リアルタイム・テンプレートは、ＡＩ及び機械学習を使用して生成される。
【００４９】
探索モジュール２２６は、ＧＵＩ上でのテンプレートの実行の目的で、受信されたテンプレート及びデフォルト可視化をビュー・パネル又は探索ページに追加するように構成される。一実施例では、テンプレートは、信頼性スコア、ポピュラリティ、関係性、予想される実行時間などのような、テンプレートのメタ属性に基づいて、探索ページに追加され得る。ユーザは、ビュー・パネル上でマッチするテンプレートのセットと様々な可視化とを閲覧し得る。
【００５０】
さらに、探索モジュール２２６は、すべての発見されたテンプレート及びデフォルト可視化をグラフィカル・ユーザ・インターフェース（ＧＵＩ）（すなわち、ユーザ・スクリーン／ビュー・パネル及び／又は探索ページ）に追加するように構成される。テンプレートをビュー・パネル及び／又は探索ページに追加することに加えて、探索モジュール２２６は、探索変更イベントを引き起こすように構成される。
【００５１】
さらに、探索変更イベントをトリガすると、レンダリング・エンジン２１４は、探索変更イベント通知を受信するように構成される。さらに、レンダリング・エンジン２１４は、ビュー・パネルをリフレッシュするようにとのコマンドをＧＵＩに送る。さらに、ＧＵＩは、新たに追加されたテンプレート及びデフォルト可視化がビュー・パネル中で可視になるようにリフレッシュされる。
さらに、得られたテンプレート・リストは、テンプレートの１つ又は複数のメタ特性、たとえば、所有者、パブリッシャー、含まれているデータのタイプ、可視化のタイプ、ポピュラリティ、関係性、予想される実行／完了時間、動作、動作入力パラメータなどに基づいて、レンダリング・エンジン２１４によってランク付けされ得る。ビュー・パネルはまた、ランク付けする間に、追加の特性、たとえばユーザの選定、ユーザ構成、環境変数、機械学習アルゴリズムなどを使用し得る。
【００５２】
ＧＵＩは、ユーザが、ビュー・パネル中にリストされているすべてのテンプレートの概要を得るのを助けるために、ビュー・パネル中のテンプレートのいくつかの属性を表示するように構成され得る。さらに、これらの属性は、ユーザが、後の段階における探索においてどのテンプレートを追加し、実行し、レンダリングすべきかを選定するのを助け得る。
【００５３】
さらに、ユーザは、探索上でテンプレートを追加し、実行し、レンダリングするために、ＧＵＩと対話し得る。一実施例では、ユーザは、対話式又は非対話式モードでテンプレートを実行することを選定し得る。一実施例では、発見されたテンプレートのセットからのテンプレートのサブセットは、同様に、ユーザ介入なしに追加され、実行され、レンダリングされ得る。さらに、テンプレートを探索に直接追加するという決定は、データのタイプ、ポピュラリティ、関係性、環境変数、ユーザ構成、ユーザ選定又はそれらの組合せに基づき得る。
【００５４】
さらに、探索クライアント２２４は、テンプレートを探索に追加するようにとのコマンドをＧＵＩから受信し得る。さらに、ＧＵＩは、テンプレートの実行のモード、対話式又は非対話式を、探索クライアントに送る。
【００５５】
さらに、探索クライアント２２４は、テンプレートをビュー・パネルから探索ページに移動するようにとのコマンドを探索モジュール２２６にフォワーディングし得る。
【００５６】
一実施例では、探索モジュール２２６は、ビュー・パネルからテンプレートを除去し、そのテンプレートを１つ又は複数の要求された探索ページに追加するように構成される。
【００５７】
さらに、探索モジュール２２６は、通知イベントに関心があるすべてのリスナーがそのイベントを受信することができるように探索の変更を告知するために、通知イベントを引き起こすように構成され得る。一実施例では、リスナーは、リアルタイム・リフレッシュ及び探索の実行のために他のユーザと共有される、この探索の他のインスタンスであり得る。
【００５８】
さらに、レンダリング・エンジン２１４は、探索変更イベントを検出し、ＧＵＩに探索ページ上にテンプレートをレンダリングすることを要求するように構成される。さらに、ＧＵＩは、最初にテンプレートのレイアウトをレンダリングすることによって、テンプレートをレンダリングし得る。さらに、テンプレート内に含まれているすべての可視化もレンダリングされ得る。
【００５９】
さらに、探索モジュール２２６は、テンプレートから実行モデルを抽出するように構成される。実行モデルは、テンプレート作成時にテンプレートに記憶された動作のグラフである。一実施例では、実行モデルは、テンプレート作成時にテンプレートに記憶された式のグラフであり得る。
【００６０】
さらに、探索モジュール２２６は、抽出された実行モデルを実行するようにとの要求を実行ハンドラ２３８に送るように構成される。
【００６１】
実行ハンドラ２３８は、この実行モデルを使用して実行プランを構築し得る。実行プランは動作のグラフである。グラフの各ノードは、ターゲット・システム１１０上で実行されるべき動作を表す。さらに、実行ハンドラ２３８は、プラン実行を開始するために、構築された実行プランを実行エンジン２１８にサブミットする。
【００６２】
実行エンジン２１８は、実行プランを実行し得る。さらに、実行のために実行プランの各動作をターゲット・システムに送る前に、実行エンジン２１８は、現在の動作を実行するためにユーザ入力が必要とされるかどうかを決定し得る。
【００６３】
ユーザ入力が必要とされる場合、実行エンジン２１８は、ユーザに入力について要求するようにとのコマンドをレンダリング・エンジン２１４に送り得る。さらに、要求は、ＧＵＩによって受信される。
【００６４】
さらに、レンダリング・エンジン２１４は、入力を受信するためにＧＵＩを介してユーザにプロンプトし得る。レンダリング・エンジン２１４は、ユーザ入力を対話式に求めるためにＧＵＩを介してウィザードをレンダリングし得る。
【００６５】
さらに、ユーザ提供入力は、ＧＵＩによってキャプチャされ、動作クライアント２１２を介して実行エンジン２１８に送られ得る。
【００６６】
さらに、実行エンジン２１８は、受信された動作パラメータを使用して、実行プランの現在の動作を実行するようにとのコマンドをターゲット・システムに送り得る。
【００６７】
一実施例では、ターゲット・システムは、実行された動作の結果としていくらかのデータが利用可能であるとき、動作実行要求に対する応答を提供し得る。
【００６８】
実行ハンドラ２３８は、利用可能なデータをデータ・ストア２２２の指定されたデータ・コンテナにルーティングするようにとの要求をターゲット・システムに送り得る。さらに、ターゲット・システム１１０は、動作によって生成されたデータを、実行ハンドラ２３８を介してデータ・ストア２２２中の指定された宛先データ・コンテナにルーティングし得る。実行ハンドラ２３８は、データ・ストア２２２上の負荷を低減するために一時的キャッシュとして働き得る。
【００６９】
さらに、データが、実行ハンドラ２３８を介して、データ・ストア２２２にターゲット・システムによってルーティングされるとき、実行ハンドラ２３８又はデータ・ストア２２２によってデータ変更イベントが引き起こされ得る。
【００７０】
データ変更イベントが生成されると、レンダリング・エンジン２１４は、生成されたデータに関連付けられた、レンダリングされたテンプレートの可視化をリフレッシュするようにとのコマンドをＧＵＩに送り得る。
【００７１】
さらに、ＧＵＩは、可視化に関連付けられたデータ変換定義をレンダリング・エンジン２１４に送り得る。さらに、レンダリング・クライアントは、そのコマンドを変換サービス・モジュール２２８に送る。
【００７２】
さらに、変換サービス・モジュール２１４は、データ変換定義からデータ変換クエリを作成し得る。さらに、データ変換クエリは、データ・ストア２２２に送られる。
【００７３】
さらに、データ・ストア２２２は、提供されたデータ変換クエリにマッチする、データ・ストア２２２に記憶されたデータを、変換サービス・モジュール２１４に返し得る。
さらに、変換サービス・モジュール２１４は、受信されたデータを結果セット・ストア２３０に記憶する。
【００７４】
一実施例では、結果セット・ストア２３０は、データ変更通知を引き起こし得る。さらに、データ変更通知は、レンダリング・エンジン２１４によって受信される。
【００７５】
さらに、レンダリング・エンジン２１４は、結果セット・ストア２３０に関連付けられた可視化をリフレッシュするようにとのコマンドをＧＵＩに送り得る。１つ又は複数のシステムを制御し、プラットフォーム１０２に接続された１つ又は複数のシステムにわたってデータを探索するプロセスは、図３のブロック図に関してさらに詳述される。
【００７６】
次に図３を参照すると、本開示の一実施例による、１つ又は複数のシステムを制御し、プラットフォーム１０２に接続された１つ又は複数の外部システム及びデータベース１１０にわたってデータを探索するための方法３００が示されている。方法３００は、コンピュータ実行可能命令の一般的なコンテキストで説明され得る。概して、コンピュータ実行可能命令は、特定の機能を実施するか、又は特定の抽象データタイプを実装する、ルーチン、プログラム、オブジェクト、構成要素、データ構造、プロシージャ、モジュール、機能などを含むことができる。方法３００はまた、通信ネットワークを通してリンクされるリモート処理デバイスによって機能が実施される分散コンピューティング環境において実践され得る。分散コンピューティング環境では、コンピュータ実行可能命令は、メモリ記憶デバイスを含む、ローカル・コンピュータ記憶媒体とリモート・コンピュータ記憶媒体の両方中にあり得る。
【００７７】
方法３００が説明される順序は、限定として解釈されるものではなく、任意の数の説明される方法ブロックは、方法３００又は代替方法を実装するために任意の順序で組み合わせられ得る。さらに、個別ブロックは、本明細書で説明される本開示の趣旨及び範囲から逸脱することなく、方法３００から削除され得る。さらに、方法は、任意の好適なハードウェア、ソフトウェア、ファームウェア、又はそれらの組合せで実装され得る。しかしながら、説明を簡単にするために、以下で説明される実施例では、方法３００は、上記で説明されたプラットフォーム１０２において実装されると見なされ得る。
【００７８】
一実施例では、ステップ３０２において、ユーザ・デバイス１０４上のグラフィカル・ユーザ・インターフェース（ＧＵＩ）は、ユーザがＩ／Ｏインターフェース２０４を使用してプラットフォーム１０２と通信することを可能にし得る。Ｉ／Ｏインターフェース２０４は、ユーザが新しい探索を作成するか又は既存の／保存された探索を開くことを可能にし得る。新しい探索は、新しいフォルダ、古いフォルダ、既存のファイル、又は新しいファイル、ウェブ・ブラウザ、分析報告などに対応し得る。一実施例では、既存の／保存された探索も、ウェブ・ブラウザ又はオフライン・ツールを介してユーザによって始動される分析動作／新しい分析動作に対応し得る。
【００７９】
ステップ３０４において、ユーザは、ＧＵＩを通してプラットフォーム１０２と対話し、新しい探索又は既存の／保存された探索における要素を選択し得る。要素は、グラフ、テキスト、テキスト・ボックス、コマンド・ボタン、バックグラウンド、又は既存の／保存された探索上に存在する任意の他の視覚要素に対応し得る。一実施例では、ユーザに関連付けられたコンテキスト情報は、ユーザによって選択された要素又はユーザによって提供された入力に基づいて決定される。
【００８０】
ステップ３０６において、動作クライアント２１４は、コンテキスト情報を受信するように構成される。コンテキスト情報は、探索においてユーザによって選択された視覚要素、又はユーザによって提供された入力に基づいて決定される。ユーザは、探索においてキーワードを入力することによって入力を提供し得る。
【００８１】
ステップ３０８において、サービス・レジストリ２２０は、コンテキスト情報に基づいてシステムのサブセット及び動作のサブセットを識別するために、コンテキスト情報に基づいて外部システム及びデータベースのセット１１０からの各システムに関連付けられた動作のセットを発見するように構成され得る。
動作のサブセットは、個別動作及び／又は複合動作を備え得る。一実施例では、複合動作は、ターゲット・システムによって提供される１つ又は複数の動作を含んでいることがある動作のグループであり得る。
【００８２】
ステップ３１０において、ＧＵＩは、ユーザ・デバイス２０４上にメニューをレンダリングし得る。メニューは、動作のサブセットを備え得る。一実施例では、メニューは、ユーザの選択のための動作のサブセットを伴うドロップダウンの形式で表示され得る。
【００８３】
ステップ３１２において、ユーザは、メニューにおいて表示された動作のサブセットからターゲット動作を選定し得る。一実施例では、ユーザは、ターゲット動作としてメニューにおいて表示された動作のサブセットから２つ以上の動作／複合動作を選定し得る。
【００８４】
ステップ３１４において、ターゲット動作が選択されると、動作クライアント２１２は、ユーザによって選択されたターゲット動作をハンドリングし、ターゲット動作を実行するようにとの要求を実行マネージャ２１６に送信するように構成される。
【００８５】
ステップ３１６において、実行マネージャ２１６は、ターゲット動作のための実行プランを生成するように構成される。実行プランは、ターゲット動作が実行されるべきであるシーケンスと、ターゲット動作の実行のために必要とされる情報とを表し得る。実行プランは、動作のグラフであり、グラフの各ノードが、ターゲット・システム１１０上で実行されるべき動作を表す。
【００８６】
ステップ３１８において、実行プランは、動作及びそのコンテキスト・ベース・パラメータをターゲット・システムのコネクタに送ることによって、実行エンジン２１８によって実行され得る。実行プランを実行しながら、実行エンジン２１８は、並行して（すなわち同時に）又は連続的に（すなわち交互に）ターゲット動作をターゲット・システムに送り得る。
【００８７】
ステップ３２０において、ターゲット・システムは、実行エンジン２１８から受信された動作パラメータが、ターゲット動作を実行するのに十分であるかどうかを決定するように構成され得る。
【００８８】
ステップ３２２において、実行エンジン２１８から受信された動作パラメータが、ターゲット動作の実行のために十分でない場合、ターゲット・システムは、フォームのメタ情報を生成するように構成され得る。フォームのメタ情報は、実行エンジン２１８に送られる。
フォームのメタ情報は、ターゲット動作又はターゲット動作に関係する情報の消失したパラメータのためのユーザ入力を受け付けるためのフォームの生成を可能にし得る。
【００８９】
ステップ３２４において、実行エンジン２１８は、フォーム・ノードを作成するためにフォームのメタ情報を使用し得る。フォーム・ノードは探索適合である（すなわち、フォーム・ノードは、探索において配置され、レンダリングされ得る）。フォーム・ノードが生成されると、フォーム・ノードは探索モジュール２２６に送られる。探索モジュール２２６は、探索ノードを、新しい探索又は既存の／保存された探索に関連付けられた現在の探索に追加するように構成される。
【００９０】
ステップ３２６において、レンダリング・エンジン２１４は、探索モジュール２２６から変更イベントを受信するように構成される。さらに、レンダリング・エンジン２１４は、ＧＵＩを介してユーザ入力フォームをレンダリングするようにとの命令をユーザ・デバイス１０４に送るように構成され得る。ユーザ入力フォームはメタ情報に基づいて生成される。
【００９１】
ステップ３２８において、ＧＵＩ２０４は、ユーザ入力フォームをレンダリングするように構成される。さらに、ユーザは、ユーザ入力フォーム中のすべての必要なフィールドを埋め得、コマンド・ボタンのセットからのコマンド・ボタンをクリックする。各コマンド・ボタンは、システムのセットからの異なるシステム又はターゲット・システムに関連付けられた異なる動作に関連付けられ得る。
【００９２】
ステップ３３０において、クリックされたコマンド・ボタンが任意のターゲット・システムの別の動作に関連付けられる場合、実行は、ステップ３１４にもう一度転送される。
【００９３】
ステップ３３２において、クリックされたコマンド・ボタンが異なるシステムの別の動作に関連付けられない場合、動作クライアント２１２は、ユーザ入力フォームから受信されたユーザ入力を収集し、これらのユーザ入力を実行エンジン２１８に転送するように構成される。
ユーザ入力は、しきい値パラメータ、あらかじめ定義された基準、又は概して分析目的で使用される任意の他の情報の形態のものであり得る。
【００９４】
ステップ３３４において、実行エンジン２１８は、ユーザから受信されたユーザ入力を、コネクタ１０８を通してターゲット・システムに送信するように構成される。
【００９５】
ステップ３３６において、実行エンジン２１８から受信された情報／ユーザ入力が十分である場合、ターゲット・システムは、ターゲット動作を実行するように構成され得る。
ターゲット動作の実行に基づいて、ターゲット・システムは、新しいデータを生成することも生成しないこともある。
【００９６】
ステップ３３８において、新しいデータが生成された場合、実行エンジン２１８は、ターゲット・システムによって生成された新しいデータのタイプを受信するように構成される。実行エンジン２１８は、実行ハンドラ２３８に、宛先データ・コンテナを決定することを要求するように構成される。たとえば、新しいデータのタイプは、構造データ、非構造化データ、分析データ、視覚データなどであり得る。
【００９７】
ステップ３４０において、実行ハンドラ２３８は、新しいデータのための宛先データ・コンテナを定義するように構成される。実行ハンドラ２３８は、探索チェーン又はユーザ構成に基づいて、このデータが追加／交換され得るデータ・ストア２２２のデータ・コンテナを見つけるように構成され得る。既存のデータ・コンテナが再使用されると識別された場合、既存のデータ・コンテナは宛先データ・コンテナとして割り当てられる。別の実施例では、実行ハンドラ２３８は、このタイプのデータのための新しい空のデータ・コンテナを作成するようにとの要求をデータ・ストア２２２に送るように構成される。新たに作成されたデータ・コンテナは、宛先データ・コンテナになる。
【００９８】
ステップ３４２において、実行ハンドラ２３８は、データ・ストア２２２の宛先データ・コンテナの識別情報とともに、要求をターゲット・システムに送るように構成される。ターゲット・システムは、新しいデータをデータ・ストア２２２の宛先コンテナにルーティングするように構成される。
データ・ストア２２２は、ターゲット・システムによって提供されたデータを記憶するように構成される。データ・ストア２２２は、データが宛先コンテナ中で変更されたというイベントを発行し、その結果、このデータ変更イベントのすべてのサブスクライバ／リスナーがそれに応じて行動することができるように構成される。一実施例では、モジュールは、これらのイベントを識別し、それに応じて、新たに生成されたデータを使用してＧＵＩ上で様々な可視化を作成するように構成され得る。別の実施例では、イベントは、宛先コンテナ中の変更の大きさをデータ・ストア２２２に記憶されたあらかじめ定義された変更しきい値と比較することによって識別され得る。コネクタ１０８が、イベントに関連付けられた１つ又は複数の外部システム及びデータベース１１０に通知するように構成され得ることに留意されたい。さらに、モジュールは、現在生成されたデータ又は前に生成されたデータに基づいて式を計算することによって、さらに新しいデータを生成するように構成され得る。さらに、モジュールは、この変更イベントに基づいて動作の依存チェーンを更新するために動作のチェーンを実行するように構成され得る。複数のシステムにわたる制御及びデータ探索の自動化を可能にするための視覚及び実行テンプレートを推奨するプロセスは、図４のブロック図を参照しながらさらに詳述される。
【００９９】
次に図４を参照すると、本開示の一実施例による、複数のシステムにわたる制御及びデータ探索の自動化を可能にするための視覚及び実行テンプレートを推奨するための方法４００が示されている。方法４００は、コンピュータ実行可能命令の一般的なコンテキストで説明され得る。概して、コンピュータ実行可能命令は、特定の機能を実施するか、又は特定の抽象データタイプを実装する、ルーチン、プログラム、オブジェクト、構成要素、データ構造、プロシージャ、モジュール、機能などを含むことができる。方法４００はまた、通信ネットワークを通してリンクされるリモート処理デバイスによって機能が実施される分散コンピューティング環境において実践され得る。分散コンピューティング環境では、コンピュータ実行可能命令は、メモリ記憶デバイスを含む、ローカル・コンピュータ記憶媒体とリモート・コンピュータ記憶媒体の両方中にあり得る。
【０１００】
方法４００が説明される順序は、限定として解釈されるものではなく、任意の数の説明される方法ブロックは、方法４００又は代替方法を実装するために任意の順序で組み合わせられ得る。さらに、個別ブロックは、本明細書で説明される本開示の趣旨及び範囲から逸脱することなく、方法４００から削除され得る。さらに、方法は、任意の好適なハードウェア、ソフトウェア、ファームウェア、又はそれらの組合せで実装され得る。しかしながら、説明を簡単にするために、以下で説明される実施例では、方法４００は、上記で説明されたプラットフォーム１０２において実装されると見なされ得る。
【０１０１】
ステップ４０２において、新しいデータが、ユーザ選択動作／動作グループに応答して生成された場合、実行エンジン２１８は、ターゲット・システム１１０によって生成された新しいデータのタイプを受信するように構成される。実行エンジン２１８は、実行ハンドラ２３８に、宛先データ・コンテナを決定することを要求するように構成される。
【０１０２】
ステップ４０４において、実行ハンドラ２３８は、任意の既存のデータ・コンテナが、新たに生成されたデータを付加するか又は交換するために再使用され得るかどうかを決定するように構成される。実行ハンドラ２３８は、探索チェーン、ユーザの選定、又は構成などに基づいてこれを決定するように構成され得る。既存のデータ・コンテナが再使用され得ない場合、実行ハンドラ２３８は、テンプレート発見エンジン２３２に、受信されたデータ・セット・タイプのための最良適合テンプレートをサーチすることを要求する。
【０１０３】
ステップ４０６において、テンプレート発見エンジン２３２は、新しいデータに関連付けられた「データのタイプ」を表すのに好適なすべての最良適合テンプレートを識別するためにテンプレート・リポジトリ２３４を照会するように構成される。一実施例では、最良適合テンプレートのサブセットは、ターゲット・システムから受信されたデータのタイプとあらかじめ定義されたルールのセットとに基づいて、保存されたテンプレートのセット又はリアルタイムで生成されたテンプレートから、実行ハンドラによって発見される。最良適合テンプレートのサブセットは、ターゲット・システムを制御するためにターゲット・システムに書き戻すためにターゲット・システムにデータを送信すること、並びにデータ可視化及び分析のためにターゲット・システムからデータを受信することを可能にする。
【０１０４】
ステップ４０８において、テンプレート・リポジトリ２３４は、現在のユーザのために適用可能なマッチするテンプレート／最良適合テンプレートのサブセットを発見するために、単独で又は組み合わせて、「データのタイプ」、「ユーザ入力」、「環境変数」のいずれかに基づいて、テンプレート・リポジトリ２３４に保存されたテンプレートのセットを分析するように構成される。一実施例では、テンプレートのセットは、以下を備え得る。
−  ユーザによって作成されたテンプレート
−  他のユーザによってユーザに発行されたテンプレート
−  （ユーザの過去の挙動又は他のシステムパラメータに基づいて）ユーザのためにシステムによって推奨されたテンプレート。言い換えれば、テンプレート・リポジトリは、保存されたテンプレートのセットを維持するように構成される。保存されたテンプレートのセットは、ユーザによって作成された１つ又は複数のテンプレートと、プラットフォームの他のユーザによって発行された１つ又は複数のテンプレートと、１つ又は複数のシステム生成テンプレートとを備える。システム生成テンプレートは、ユーザによって提供された明示的フィードバックの分析に基づいて生成されるか、又は、あらかじめ定義されたルールのセットに基づいて生成されたテンプレートである。あらかじめ定義されたルールのセットは、ユーザの挙動からキャプチャされた暗黙的フィードバックを備え、ユーザの挙動は、ユーザの使用パターンと、いくつかの可視化又はデータによりユーザによって費やされた時間と、データに対してユーザによって実施された算出とから導出される。あらかじめ定義されたルールのセットは、限定はしないが、ユーザのデフォルト・テンプレートと、ユーザ／チーム／団体によって最も頻繁に使用されるものと、使用の寿命と、ユーザによって最も最近使用されたものと、ユーザの使用履歴、ロケーション、役割に基づく最も関連するものと、ターゲット・システムから受信されたデータのタイプ及び構造とを含む、パラメータのセットをも備え得る。一実装形態では、あらかじめ定義されたルールのセットは、ユーザの挙動からキャプチャされた暗黙的フィードバックとパラメータのセットとに対して機械学習技法を使用することによって生成され得る。
【０１０５】
ステップ４１０において、実行ハンドラ２３８は、マッチするテンプレート／最良適合テンプレートのセットと、データのタイプ、ユーザ入力、環境変数又はそれらの組合せに対応するデフォルト可視化とを受信するように構成される。
さらに、実行ハンドラ２３８は、現在の探索においてこれらのテンプレートを追加するようにとの要求を探索モジュール２２６に送るように構成される。さらに、実行ハンドラ２３８は、あらかじめ定義された基準に基づいて、保存されたテンプレートのセット又はリアルタイムで生成されたテンプレートから最良適合テンプレートのサブセットをランク付けするように構成され、あらかじめ定義された基準は、最良の成果、ポピュラリティ、関係性、クリエータ、探索のタイプ、又は予想される実行時間を備え、リアルタイム・テンプレートは、ＡＩ及び機械学習を使用して生成される。
【０１０６】
ステップ４１２において、探索モジュール２２６は、ＧＵＩ上でのテンプレートの実行の目的で、受信されたテンプレート及びデフォルト可視化をビュー・パネル又は探索ページに追加するように構成される。一実施例では、テンプレートは、信頼性スコア、ポピュラリティ、関係性、予想される実行時間などのような、テンプレートのメタ属性に基づいて、探索ページに追加され得る。ユーザは、ビュー・パネル上でマッチするテンプレートのセットと様々な可視化とを閲覧し得る。対話式及び非対話式モードでの複数のシステムにわたる制御及びデータ探索の自動化を可能にするためにテンプレートを実行及びレンダリングするプロセスは、図５のブロック図を参照しながらさらに詳述される。
【０１０７】
次に図５を参照すると、本開示の一実施例による、対話式及び非対話式モードでの複数のシステムにわたる制御及びデータ探索の自動化を可能にするためにテンプレートを実行及びレンダリングするための方法５００が示されている。方法５００は、コンピュータ実行可能命令の一般的なコンテキストで説明され得る。概して、コンピュータ実行可能命令は、特定の機能を実施するか、又は特定の抽象データタイプを実装する、ルーチン、プログラム、オブジェクト、構成要素、データ構造、プロシージャ、モジュール、機能などを含むことができる。方法５００はまた、通信ネットワークを通してリンクされるリモート処理デバイスによって機能が実施される分散コンピューティング環境において実践され得る。分散コンピューティング環境では、コンピュータ実行可能命令は、メモリ記憶デバイスを含む、ローカル・コンピュータ記憶媒体とリモート・コンピュータ記憶媒体の両方中にあり得る。
【０１０８】
方法５００が説明される順序は、限定として解釈されるものではなく、任意の数の説明される方法ブロックは、方法５００又は代替方法を実装するために任意の順序で組み合わせられ得る。さらに、個別ブロックは、本明細書で説明される本開示の趣旨及び範囲から逸脱することなく、方法５００から削除され得る。
さらに、方法は、任意の好適なハードウェア、ソフトウェア、ファームウェア、又はそれらの組合せで実装され得る。しかしながら、説明を簡単にするために、以下で説明される実施例では、方法５００は、上記で説明されたプラットフォーム１０２において実装されると見なされ得る。
【０１０９】
ステップ５０２において、探索モジュール２２６は、すべての発見されたテンプレート及びデフォルト可視化をグラフィカル・ユーザ・インターフェース（ＧＵＩ）（すなわち、ユーザ・スクリーン／ビュー・パネル及び／又は探索ページ）に追加するように構成される。テンプレートをビュー・パネル及び／又は探索ページに追加することに加えて、探索モジュール２２６は、探索変更イベントを引き起こすように構成される。
【０１１０】
ステップ５０４において、探索変更イベントをトリガすると、レンダリング・エンジン２１４は、探索変更イベント通知を受信するように構成される。さらに、レンダリング・エンジン２１４は、ビュー・パネルをリフレッシュするようにとのコマンドをＧＵＩに送る。さらに、ＧＵＩは、新たに追加されたテンプレート及びデフォルト可視化がビュー・パネル中で可視になるようにリフレッシュされる。さらに、得られたテンプレート・リストは、テンプレートの１つ又は複数のメタ特性、たとえば、所有者、パブリッシャー、含まれているデータのタイプ、可視化のタイプ、ポピュラリティ、関係性、予想される実行／完了時間、動作、動作入力パラメータなどに基づいて、レンダリング・エンジン２１４によってランク付けされ得る。ビュー・パネルはまた、ランク付けする間に、追加の特性、たとえばユーザの選定、ユーザ構成、環境変数を使用するか、又は機械学習アルゴリズムなどを使用し得る。
【０１１１】
ステップ５０６において、ＧＵＩは、ユーザが、ビュー・パネル中にリストされているすべての発見されたテンプレートの概要を得るのを助けるために、ビュー・パネル中のテンプレートのいくつかの属性を表示するように構成され得る。さらに、これらの属性は、ユーザが、後の段階における探索においてどのテンプレートを追加し、実行し、レンダリングすべきかを選定するのを助け得る。
【０１１２】
ステップ５０８において、ユーザは、探索上でテンプレートを追加し、実行し、レンダリングするために、ＧＵＩと対話し得る。一実施例では、ユーザは、対話式又は非対話式モードでテンプレートを実行することを選定し得る。一実施例では、発見されたテンプレートのセットからのテンプレートのサブセットは、同様に、ユーザ介入なしに追加され、実行され、レンダリングされ得る。さらに、テンプレートを探索に直接追加するという決定は、データのタイプ、ポピュラリティ、関係性、環境変数、ユーザ構成、ユーザ選定又はそれらの組合せに基づき得る。
【０１１３】
ステップ５１０において、探索クライアント２２４は、テンプレートを探索に追加するようにとのコマンドをＧＵＩから受信し得る。さらに、ＧＵＩは、テンプレートの実行のモード、対話式又は非対話式を、探索クライアントに送る。
【０１１４】
ステップ５１２において、探索クライアント２２４は、テンプレートをビュー・パネルから探索ページに移動するようにとのコマンドを探索モジュール２２６にフォワーディングし得る。
【０１１５】
ステップ５１４において、探索モジュール２２６は、ビュー・パネルからテンプレートを除去し、そのテンプレートを１つ又は複数の要求された探索ページに追加するように構成される。
【０１１６】
ステップ５１６において、探索モジュール２２６は、通知イベントに関心があるすべてのリスナーがそのイベントを受信することができるように探索の変更を告知するために、通知イベントを引き起こすように構成され得る。一実施例では、リスナーは、他の共有ユーザ・セッションのための探索のリアルタイム・リフレッシュのために他のユーザと共有される、この探索の他のインスタンスであり得る。
【０１１７】
ステップ５１８において、レンダリング・エンジン２１４は、探索変更イベントを検出し、ＧＵＩに探索ページ上にテンプレートをレンダリングすることを要求するように構成される。さらに、ＧＵＩは、最初にテンプレートのレイアウトをレンダリングすることによって、テンプレートをレンダリングし得る。さらに、テンプレート内に含まれているすべての可視化もレンダリングされ得る。
【０１１８】
ステップ５２０において、探索モジュール２２６は、テンプレートから実行モデルを抽出するように構成される。実行モデルは、テンプレート作成時にテンプレートに記憶された動作のグラフである。一実施例では、実行モデルは、テンプレート作成時にテンプレートに記憶された式のグラフであり得る。
【０１１９】
ステップ５２２において、探索モジュール２２６は、抽出された実行モデルを実行するようにとの要求を実行ハンドラ２３８に送るように構成される。
【０１２０】
ステップ５２４において、実行ハンドラ２３８は、この実行モデルを使用して実行プランを構築し得る。実行プランは動作及び式のグラフである。グラフの各ノードは、ターゲット・システム１１０上で実行されるべき動作を表す。さらに、実行ハンドラ２３８は、プラン実行を開始するために、構築された実行プランを実行エンジン２１８にサブミットする。
【０１２１】
ステップ５２６において、実行エンジン２１８は、実行プランを実行し得る。さらに、実行のために実行プランの各動作をターゲット・システム１１０に送る前に、実行エンジン２１８は、現在の動作を実行するためにユーザ入力が必要とされるかどうかを決定し得る。
【０１２２】
ステップ５２８において、ユーザ入力が必要とされる場合、実行エンジン２１８は、ユーザに入力について要求するようにとのコマンドをレンダリング・エンジン２１４に送り得る。さらに、要求は、ＧＵＩによって受信される。
【０１２３】
ステップ５３０において、レンダリング・エンジン２１４は、入力を受信するためにＧＵＩを介してユーザにプロンプトし得る。レンダリング・エンジン２１４は、ユーザ入力を求めるためにＧＵＩを介してウィザードをレンダリングするか、又は、ユーザ入力を対話式に求めるために任意のＵＩ要素をナビゲートすること、ハイライトすること、マークすること、点滅させること（ｆｌａｓｈｉｎｇ）を使用し得る。
【０１２４】
ステップ５３２において、ユーザは、いくつかの可視化の様々な視覚要素とともに、ＧＵＩ上の段階的なウィザード又は対話のいずれかを通して、動作パラメータのための入力を提供し得る。
【０１２５】
ステップ５３４において、ユーザ提供入力は、ＧＵＩによってキャプチャされ、動作クライアント２１２を介して実行エンジン２１８に送られ得る。
【０１２６】
ステップ５３６において、実行エンジン２１８は、受信された動作パラメータを使用して、実行プランの現在の動作を実行するようにとのコマンドをターゲット・システムに送り得る。
【０１２７】
ステップ５３８において、ターゲット・システム１１０は、実行された動作の結果としていくらかのデータが利用可能であるとき、動作実行要求に対する応答を提供し得る。
【０１２８】
ステップ５４０において、実行ハンドラ２３８は、利用可能なデータをデータ・ストア２２２の指定されたデータ・コンテナにルーティングするようにとの要求をターゲット・システム１１０に送り得る。さらに、ターゲット・システムは、動作によって生成されたデータを、実行ハンドラ２３８を介してデータ・ストア２２２中の指定された宛先データ・コンテナにルーティングし得る。実行ハンドラ２３８は、データ・ストア２２２上の負荷を低減するために一時的キャッシュとして働き得る。
【０１２９】
ステップ５４２において、データが、実行ハンドラ２３８を介して、データ・ストア２２２にターゲット・システムによってルーティングされるとき、実行ハンドラ２３８又はデータ・ストア２２２によってデータ変更イベントが引き起こされ得る。
【０１３０】
ステップ５４４において、データ変更イベントが生成されると、レンダリング・エンジン２１４は、生成されたデータに関連付けられた、レンダリングされたテンプレートの可視化をリフレッシュするようにとのコマンドをＧＵＩに送り得る。
【０１３１】
ステップ５４６において、ＧＵＩは、可視化に関連付けられたデータ変換定義をレンダリング・エンジン２１４に送り得る。さらに、レンダリング・クライアントは、そのコマンドを変換サービス・モジュール２２８に送る。
【０１３２】
ステップ５４８において、変換サービス・モジュール２１４は、データ変換定義からデータ変換クエリを作成し得る。さらに、データ変換クエリは、データ・ストア２２２に送られる。
【０１３３】
ステップ５５０において、データ・ストア２２２は、提供されたデータ変換クエリにマッチする、データ・ストア２２２に記憶されたデータを、変換サービス・モジュール２１４に返し得る。さらに、変換サービス・モジュール２１４は、受信されたデータを結果セット・ストア２３０に記憶する。
【０１３４】
ステップ５５２において、結果セット・ストア２３０は、データ変更通知を引き起こし得る。さらに、データ変更通知は、レンダリング・エンジン２１４によって受信される。
【０１３５】
ステップ５５４において、レンダリング・エンジンは、結果セット・ストア２３０に関連付けられた可視化をリフレッシュするようにとのコマンドをＧＵＩに送り得る。
【０１３６】
対話式及び非対話式モードでの複数のシステムにわたる制御及びデータ探索の自動化を可能にするためにテンプレートを実行及びレンダリングする方法及びシステムのための実装形態が説明されたが、添付の特許請求の範囲は、必ずしも説明された特定の特徴又は方法に限定されるとは限らないことを理解されたい。むしろ、特定の特徴及び方法は、対話式及び非対話式モードでの複数のシステムにわたる制御及びデータ探索の自動化を可能にするためにテンプレートを実行及びレンダリングするための実装形態の実例として開示される。
【図１】
2021510440.tif 000003
【図２】
2021510440.tif 000004
【図３（１）】
2021510440.tif 000005
【図３（２）】
2021510440.tif 000006
【図４】
2021510440.tif 000007
【図５（１）】
2021510440.tif 000008
【図５（２）】
2021510440.tif 000009
【図５（３）】
2021510440.tif 000010
【国際調査報告】
2021510440.tif 000011
2021510440.tif 000012