(57)【要約】【課題】ビジネスプロセスにおけるコンテキストに基づくユーザインターフェース、検索、およびナビゲーションを提供するためのシステム、ソフトウェア、およびコンピュータによって実施される方法を提供すること。【解決手段】1つのプロセスは、ビジネスプロセスのためにユーザによって埋められるべき電子ページ上のデータフィールド、およびビジネスプロセスに関連するデータオブジェクトを特定するための動作を含む。データオブジェクトの特定のデータオブジェクトフィールドがさらなる検索のために選択され、データフィールドを埋めるための提案されるエントリが、特定のデータオブジェクトフィールドおよびデータオブジェクトの特定の種類を用いた、ビジネスプロセスに関連する追加的な情報の検索に基づいて決定される。【選択図】図1
2012059261.tif 000002
【特許請求の範囲】
【請求項１】
ユーザに対して提案されるオプションを1つまたは複数のプロセッサに生成させるための、コンピュータによって実施される方法であって、前記1つまたは複数のプロセッサによって行われる以下のステップを含み、前記方法は、
ユーザによって埋められるべき電子ページ上のデータフィールドを特定するステップを含み、前記データフィールドはビジネスプロセスに関連し、
前記方法は、
前記ビジネスプロセスに関連するデータオブジェクトを特定するステップ
を含み、前記データオブジェクトは、前記ビジネスプロセスに関連する値を表す少なくとも1つのデータオブジェクトフィールドを含み、
前記方法は、
特定のデータオブジェクトフィールドに関連する追加的な検索に使用する、前記データオブジェクトの前記特定のデータオブジェクトフィールドを選択するステップと、
前記ビジネスプロセスに関連する追加的な情報を求めてバックエンドリポジトリの検索を行うステップとを含み、前記検索は、少なくとも、前記特定のデータオブジェクトフィールドに関連する識別子、および前記特定のデータオブジェクトまたは前記特定のデータオブジェクトフィールドの種類を使用し、
前記方法は、
少なくとも、前記検索から得られた検索結果に基づいて前記データフィールドを埋めるために提案されるエントリを動的に決定するステップと、
前記電子ページのユーザインターフェースを通じて前記ユーザに対して前記提案されるエントリを表示するステップとを含む、方法。
【請求項２】
前記データオブジェクトは、前記ビジネスプロセス、前記ユーザのユーザプロファイル、前記ユーザの少なくとも1つのユーザ活動、前記ユーザによって入力されたデータ、および前記電子ページの前記ユーザインターフェースに表示される静的なテキストのうちの少なくとも1つに基づいて特定される、請求項1に記載の方法。
【請求項３】
前記特定のデータオブジェクトフィールドを選択するステップは、前記特定のデータオブジェクトフィールドと、前記電子ページ上の前記データフィールドとの間の論理的つながりの判定に基づく、請求項1に記載の方法。
【請求項４】
前記特定のデータオブジェクトフィールドを選択するステップは、前記データオブジェクトの種類に少なくとも部分的に基づく、請求項1に記載の方法。
【請求項５】
前記少なくとも1つの検索結果は、少なくとも、前記特定のデータオブジェクトフィールドに関連するデータオブジェクトの間の論理的つながりを示すオブジェクトグラフを含む、請求項1に記載の方法。
【請求項６】
前記提案されるエントリは、前記オブジェクトグラフに少なくとも部分的に基づいて決定される、請求項5に記載の方法。
【請求項７】
前記ユーザインターフェース内の少なくとも1つの選択された語にコンテキストタグを適用するステップをさらに含み、前記コンテキストタグは、前記少なくとも1つの選択された語に関連する関連情報を含むデータ構造を含む、請求項1に記載の方法。
【請求項８】
前記コンテキストタグは、少なくとも、前記ビジネスプロセスに関連する補助的なタスクを行うために提案されるオプションを含む、請求項7に記載の方法。
【請求項９】
前記ユーザまたは前記ビジネスプロセスに関連しかつ、前に表示され提案されたエントリに関連する履歴データを保守するステップをさらに含む、請求項1に記載の方法。
【請求項１０】
前記提案されるエントリは、前に表示され提案されたエントリに関連する前記履歴データに少なくとも部分的に基づいて決定される、請求項9に記載の方法。
【請求項１１】
前に表示され提案されたエントリに関連する前記履歴データは、前記提案されるエントリに関する前記ユーザからの選択を受信した後に更新される、請求項9に記載の方法。
【請求項１２】
前記提案されるエントリは、前記ビジネスプロセスに関連する用語の事前に定義された語のリストにさらに基づく、請求項1に記載の方法。
【請求項１３】
有形の記憶媒体に符号化されたコンピュータプログラムであって、以下の動作を1つまたは複数のプロセッサに行わせるためのコンピュータ可読命令を含み、
前記動作は、
ユーザインターフェースに表示される語を特定するステップを含み、前記語は、ビジネスプロセスに関連し、
前記動作は、
前記ビジネスプロセスに関連するデータオブジェクトを特定するステップを含み、
前記データオブジェクトは、前記ビジネスプロセスに関連する値を表す少なくとも1つのデータオブジェクトフィールドを含み、
前記動作は、
特定のデータオブジェクトフィールドに関連する追加的な検索に使用する、前記データオブジェクトの前記特定のデータオブジェクトフィールドを選択するステップと、
前記ビジネスプロセスに関連する追加的な情報を求めてバックエンドリポジトリの検索を行うステップとを含み、前記検索は、少なくとも、前記特定のデータオブジェクトフィールドに関連する識別子、および前記特定のデータオブジェクトフィールドの種類を使用し、
前記動作は、
前記ユーザインターフェースに表示される前記語に関連する提案されるオプションを動的に決定するステップを含み、前記提案されるオプションは、少なくとも、前記検索から得られた検索結果に基づいて決定され、
前記動作は、
前記ユーザインターフェースを通じて前記ユーザに提案されるオプションを表示するステップを含む、コンピュータプログラム。
【請求項１４】
前記特定される語は、前記特定される語と、前記ユーザインターフェースの他のテキストとの間の関係、および追加的提案されるオプションを生成する可能性のうちの少なくとも1つに基づいて選択される、請求項13に記載のコンピュータプログラム。
【請求項１５】
前記提案されるオプションは、少なくとも1つの選択された語に関連する関連情報を含むデータ構造に記憶されている、請求項13に記載のコンピュータプログラム。
【請求項１６】
前記データ構造は、前記ビジネスプロセスに関連する補助的なタスクを行うためのアプリケーションへのリンクを含む、請求項15に記載のコンピュータプログラム。
【請求項１７】
前記ユーザインターフェースに表示される前記語は、前記ユーザインターフェースのデータフィールドに前記ユーザによって入力されたテキストである、請求項13に記載のコンピュータプログラム。
【請求項１８】
前記ユーザインターフェースに表示される前記語は、前記ビジネスプロセスに関連する用語の事前に定義された語のリストに基づいて特定される、請求項13に記載のコンピュータプログラム。
【請求項１９】
前記事前に定義された語のリストは、前記提案されるオプションが前記ユーザに対して表示された後に、追加的な情報で更新される、請求項18に記載のコンピュータプログラム。
【請求項２０】
ビジネスプロセスのコンテキストに関連する情報を記憶するように動作するメモリと、
1つまたは複数のプロセッサとを含むシステムであって、
前記1つまたは複数のプロセッサは、
ユーザによって埋められるべき、電子ページ上のデータフィールドを特定するように動作し、前記データフィールドは、ビジネスプロセスに関連し、
前記1つまたは複数のプロセッサは、
前記ビジネスプロセスに関連するデータオブジェクトを特定するように動作し、前記データオブジェクトは、名前空間および値にさらに関連し、
前記1つまたは複数のプロセッサは、
前記ビジネスプロセスに関連する追加的な情報を求めてバックエンドリポジトリを検索するように動作し、前記検索は、少なくとも、前記データオブジェクトに関連する前記名前空間および前記値を使用し、
前記1つまたは複数のプロセッサは、
少なくとも、前記検索から得られた検索結果に基づいて前記データフィールドを埋めるために提案されるエントリを動的に決定するとともに、
前記電子ページのユーザインターフェースを通じて前記ユーザに対して提案されるエントリを表示するように動作する、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、ビジネスプロセスにおけるコンテキストに基づくユーザインターフェース、検索、およびナビゲーションを提供するためのソフトウェア、コンピュータシステム、およびコンピュータによって実施される方法に関する。
【背景技術】
【０００２】
アプリケーション、ウェブページ、または電子的なフォームは、ユーザが処理のために情報を入力することを可能にする入力フィールドを有することがある。例えば、ビジネスアプリケーションのユーザは、ビジネスアプリケーションによって実行されているビジネスプロセスの特定のステップを完了する、または進めるために情報を入力する必要があることがある。ビジネスプロセスに関連して、ユーザは、ビジネスプロセスに関連するタスクを実行している間に、追加的な情報、または外部リソースへのアクセスを欲する可能性もある。外部リソースは、オンライン検索を通じて、またはビジネスアプリケーションの外部のその他の方法を通じてユーザにより直接取得され得る。しかし、場合によっては、ビジネスアプリケーションまたはビジネスプロセスは、特定の環境またはシナリオのための特別なソリューションである可能性があり、ビジネスプロセスに関連する特定のタスクのためにユーザが必要とする種類の情報は、典型的な検索方法を通じて容易にアクセスできない可能性がある。たとえユーザが、例えばオンライン検索を通じて関連情報を得ることができるとしても、情報は、ユーザに関連する現在のビジネスプロセスの特定のコンテキストに適さない可能性がある。また、プロセスの外部の検索方法を通じて特定のビジネスプロセスのための関連情報を特定することは、リソースの非効率的な利用である可能性がある。例えば、ユーザは、ビジネスプロセスに関連するタスクを実行している間に、特定のビジネスまたは製品に特有の情報を役立てることができるが、この情報は、通常の検索方法を通じて利用できない可能性があり、ユーザは、ビジネスプロセスの特定のステップに役立つ可能性がある情報の種類を認識してすらいない可能性がある。
【０００３】
ビジネスアプリケーション、ウェブページ、または電子的なフォームでユーザ入力に利用できるデータフィールドは、ユーザインターフェースを通じて表示され得る。ユーザインターフェースは、さまざまなデータフィールドおよびテキストを含み得る。ユーザインターフェース内のデータフィールドおよびテキストは、ユーザが利用でき、特定のデータフィールドまたはテキストに関連する入力値またはさらなるアクションの提案を特定するためにアプリケーションによって使用され得る。特定のテキストの文字またはデータフィールドはタグ付けされる可能性があり、そのテキストに関連する提案されるリンクまたはアクション項目を提供することができる。しかし、タグ付けされるフィールドもしくは文字は、ユーザの特定のコンテキストに関連付けられない可能性があるか、または広く認められている語もしくは句にしか適用できない可能性がある。さらに、ユーザインターフェースを通じてユーザが利用できるオプションは、ビジネスプロセスに関連する関連情報または関連プロセスステップを発見する手引きをユーザに与えない可能性がある。つまり、ユーザインターフェースは、特定のビジネスコンテキストの中でユーザのニーズを十分に満たさない可能性がある。
【発明の概要】
【課題を解決するための手段】
【０００４】
本開示は、ビジネスプロセスにおけるコンテキストに基づくユーザインターフェース、検索、およびナビゲーションを提供するための技術を提供する。コンピュータプログラム製品が有形の記憶媒体に符号化され、製品は、1つまたは複数のプロセッサに動作を行わせるためのコンピュータ可読命令を含む。これらの動作は、ビジネスプロセスのためにユーザによって埋められるべき電子ページ上のデータフィールド、およびビジネスプロセスに関連するデータオブジェクトを特定するステップを含み得る。データオブジェクトの特定のデータオブジェクトフィールドがさらなる検索のために選択され、データフィールドを埋めるための提案されるエントリが、特定のデータオブジェクトフィールドおよびデータオブジェクトの特定の種類を用いた、ビジネスプロセスに関連する追加的な情報の検索に基づいて決定される。
【０００５】
概して、それぞれのデータを処理し、変換する、有形の媒体に具現化されたコンピュータによって実装されるソフトウェアとして説明されるが、態様の一部もしくはすべては、コンピュータによって実施される方法であってよく、またはさらには、この説明される機能を実行するためのそれぞれのシステムもしくはその他のデバイスに含まれてよい。本開示のこれらのおよびその他の態様ならびに実施形態の詳細が、添付の図面および以下の説明に示される。本開示のその他の特徴、目的、および利点は、それらの説明および図面、ならびに特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【０００６】
【図１】ビジネスプロセスにおけるコンテキストに基づくユーザインターフェース、検索、およびナビゲーションのさまざまな特徴を実装する例示的な環境を示す図である。
【図２】図1に示されたシステムなどの適切なシステムを用いて、ビジネスプロセスに関連するタスクを実行するユーザに、提案される情報を提供するための例示的なプロセスの流れ図である。
【図３】図1に示されたシステムなどの適切なシステムを用いて、提案されるコンテキストに基づくオプションを生成するための例示的なプロセスの流れ図である。
【図４】図1に示されたシステムなどの適切なシステム内のビジネスプロセスに関連するデータオブジェクトの例示的なモデルの図である。
【図５】図1に示されたシステムなどの適切なシステムを用いた自動化された検索を備えるコンテキストに基づくユーザインターフェースの例示的なスクリーンショットである。
【発明を実施するための形態】
【０００７】
概して、本開示は、ビジネスプロセスにおけるコンテキストに基づくユーザインターフェース、検索、およびナビゲーションを提供するためのコンピュータシステム、ソフトウェア、およびコンピュータによって実施される方法を説明する。ビジネスプロセスは、特に、企業資源計画(ERP)システムで実行されている既存のプロセスに対する拡張プロセスとして実行される場合、インテリジェントな検索、ナビゲーション、およびリンクの自動生成に使用され得るプロセスコンテキストを有する可能性がある。例えば、提案されるアクションの一覧が、タスク実行ユーザインターフェース内の特定の用語に対して自動的に生成され得る。入力データフィールド、ユーザによって入力されたテキスト、およびユーザインターフェースの静的なテキストまたはその他の部分が、自動的なリンクによって拡充され得る。静的なテキストまたは入力フィールドの内容が、適切なユーザインターフェースへのコンテキストに基づくナビゲーションを可能にするリンクで強調され得る。自動検索機能またはユーザによる検索機能も、現在のビジネスプロセスのコンテキストに基づいて適切な検索結果を返すように改善され得る。
【０００８】
例えば、ユーザインターフェースは、ユーザがデータを入力するためのデータフィールドの視覚的表現、ならびに情報をユーザに対して表示するための文字列およびテキストを提供することができる。しかし、ユーザは、特定のデータフィールドにデータを入力するために、または電子的なフォームにすべてを記入するために、ユーザインターフェースのデータフィールドまたはテキストからすぐには分からない補足的な情報を必要とする可能性がある。ユーザがユーザインターフェースに表示された情報を理解または処理するのを助けるための追加的なオプションを、ユーザが利用できることもある。追加的な情報およびオプションは、特定のデータフィールドに対する提案される入力値、ユーザが利用可能な提案されるアクション項目、またはユーザをユーザの現在のコンテキストに関連する有益なプロセスにつなげるためのリンクによってユーザインターフェースを通じてユーザに提供され得る。結果として、ユーザインターフェースは、ユーザが関わる特定のプロセスインスタンスのプロセスコンテキストにしたがって拡充され得る。
【０００９】
ユーザインターフェースの拡充は、概して、プロセスインスタンスに関連するプロセスコンテキストの構造と、ユーザに対して表示される追加的な情報および提案されるオプションとの間の意味的つながりに基づいて実施される。特に、各ビジネスプロセスインスタンスは、プロセスインスタンスを定義するさまざまな変数を含むプロセスコンテキストに関連付けられる。プロセスコンテキストの各変数は、特定の変数の種類または「ビジネスオブジェクトの種類」に対応する可能性がある。変数の種類は、本質的に、各変数に関連する関係を定義する意味情報を含む可能性がある。したがって、特定の変数の種類および特定のデータフィールドの値から得られる意味情報が、プロセスインスタンスとインタラクションするユーザを支援することができる追加的な情報またはオプションを検索するためにERPシステムを検索するために使用される。検索結果は、ユーザインターフェースのデータフィールドにコンテキストタグ(contextual tag)を追加するための語のリスト、またはビジネスプロセスの特定のタスクに関する提案されるリンクなどのユーザのための追加的なオプションを生成するために使用され得る。
【００１０】
本開示のコンテキストに基づくユーザインターフェース、検索、およびナビゲーションの1つの潜在的な利点は、ユーザが、特定のビジネス環境におけるユーザの特定のニーズに合うように綿密に調整された環境を与えられることである。ビジネスアプリケーションのユーザは、ビジネスアプリケーションを用いてビジネスプロセスに関連するタスクを実行することができ、タスクを実行する間に手引きまたは役に立つ情報を必要とする可能性がある。ユーザが必要とする可能性がある情報は、ユーザが容易にアクセスできないか、またはユーザに容易に分からない可能性がある。例えば、ビジネスプロセスは、特定の企業組織に関連する可能性があり、従来の検索方法は、ビジネスプロセスのタスクを完了するために必要な情報をユーザに与えない可能性がある。たとえユーザが、追加的な情報を得るために、またはさまざまなタスクを実行するためにリソースにアクセスできるとしても、ユーザは、ビジネスプロセスのタスクを実行するユーザの効率を高めることができる提案される情報またはオプションを表示されることから恩恵を受ける可能性がある。例えば、ユーザがビジネスアプリケーションのユーザインターフェースにデータを入力するとき、コンテキストに基づく環境は、ユーザが妨げられることなくユーザインターフェースにデータ入力を続けることができるようにユーザに提案を与えるために、バックグラウンドで自動検索を実行することができる。
【００１１】
本開示は、特定のプロセスコンテキストに合わせて特に調整され、ビジネスプロセスのタスクを完了するためにユーザが必要とするであろう情報、ツール、リンク、またはその他の提案されるオプションを特定するコンテキストに基づく環境を説明する。提案および情報は、ユーザの効率を高め、容易に分からない潜在的なソリューションを特定するために、ビジネスアプリケーションのユーザインターフェースを通じてユーザが容易に利用できるようにされ得る。さらに、コンテキストに基づく環境は、提案される情報および自動化された検索を、以前のアクションの履歴、またはユーザに対して表示された特定の提案の成功率に基づいて特定のユーザまたは複数のユーザの特定の使用パターンに適合させることができる。
【００１２】
図示された例に目を向けると、図1は、ビジネスプロセスにおけるコンテキストに基づくユーザインターフェース、検索、およびナビゲーションを提供するための例示的な環境100を示す。図示された環境100は、サーバ102および1つもしくは複数のクライアント135を含むか、またはそれらに通信可能に結合され、それらの少なくとも一部はネットワーク112を介して通信する。また、環境100は、ビジネスプロセスのプロセスコンテキストに関連する意味情報を自動的に特定し、その意味情報を、ユーザおよびビジネスプロセスのコンテキストに合わせて特に調整された関連情報または提案されるオプションをビジネスアプリケーションのユーザインターフェースを通じて特定および表示するために使用することができるシステムをサポートする。
【００１３】
概して、サーバ102は、1つまたは複数のホストされるアプリケーション122を記憶する任意のサーバであり、ここで、ホストされるアプリケーション122の少なくとも一部は、図1の図示された環境100内の、環境100に通信可能に結合されたユーザまたはクライアントに送信される要求および応答によって実行される。例えば、サーバ102は、Enterprise Java(登録商標)Beans (EJB)、J2EE Connector Architecture (JCA)、Java(登録商標) Messaging Service (JMS)、Java(登録商標) Naming and Directory Interface (JNDI)、およびJava(登録商標) Database Connectivity (JDBC)などのJava(登録商標)技術を含むJava(登録商標) 2 Platform, Enterprise Edition (J2EE)準拠のアプリケーションサーバであってよい。ある場合、サーバ102は、複数のさまざまなホストされるアプリケーション122を記憶する可能性があり、一方、その他の場合、サーバ102は、単一のホストされるアプリケーション122のみを記憶し、実行するように意図された専用サーバである可能性がある。場合によっては、サーバ102は、ウェブサーバを含むか、またはウェブサーバに通信可能に結合される可能性があり、ここで、ホストされるアプリケーション122は、ホストされるアプリケーション122のプログラムされたタスクまたは動作を実行するためにシステムのクライアント135によってネットワーク112を介してアクセスおよび実行される1つまたは複数のウェブベースのアプリケーションを表す。
【００１４】
高いレベルで、サーバ102は、環境100に関連するデータおよび情報を受信、送信、処理、記憶、または管理するように動作可能な電子的なコンピューティングデバイスを含む。図1に図示されたサーバ102は、環境100のクライアント135に関連する1つもしくは複数のクライアントアプリケーション144またはビジネスアプリケーションからのアプリケーション要求を受信し、関連するホストされるアプリケーション122で前記要求を処理し、ホストされるアプリケーション122からの適切な応答を要求元のクライアントアプリケーション144に送り返すことによって受信された要求に応答する役割を担うことができる。あるいは、サーバ102のホストされるアプリケーション122は、サーバ102にローカルでアクセスするユーザからのローカルの要求を処理し、その要求に応答することができる可能性がある。したがって、図1に図示された外部クライアント135からの要求に加えて、ホストされるアプリケーション122に関連する要求は、内部ユーザ、外部または第三者の顧客、その他の自動化されたアプリケーション、および任意のその他の適切な主体、個人、システム、またはコンピュータからも送信され得る。さらに、用語「クライアントアプリケーション」および「ビジネスアプリケーション」は、本開示の範囲を逸脱することなしに適宜交換可能に使用され得る。
【００１５】
本開示で使用されるとき、用語「コンピュータ」は、任意の好適な処理デバイスを包含するように意図される。例えば、図1は単一のサーバ102を図示するが、環境100は、サーバプールを含む2つ以上のサーバ102およびサーバ以外のコンピュータを用いて実装され得る。それどころか、サーバ102は、例えば、ブレードサーバ、汎用のパーソナルコンピュータ(PC)、Macintosh、ワークステーション、UNIX(登録商標)ベースのワークステーション、または任意のその他の好適なデバイスなどの任意のコンピュータまたは処理デバイスであってよい。言い換えると、本開示は、汎用のコンピュータ以外のコンピュータ、および通常のオペレーティングシステムを持たないコンピュータを考慮する。さらに、図示されたサーバ102は、Linux(登録商標)、UNIX(登録商標)、Windows(登録商標)、Mac OS、または任意のその他の好適なオペレーティングシステムを含む任意のオペレーティングシステムを実行するように適合され得る。一実施形態によれば、さらに、サーバ102は、メールサーバを含むか、またはメールサーバに通信可能に結合され得る。
【００１６】
この実装において、および図1に示されたように、サーバ102は、プロセッサ118、インターフェース117、メモリ120、1つまたは複数のホストされるアプリケーション122、およびプロセスエンジン104を含む。インターフェース117は、ネットワーク112に接続された(環境100内を含む)クライアント-サーバ環境またはその他の分散環境内のその他のシステム(例えば、クライアント135、およびネットワーク112に通信可能に結合されたその他のシステム)と通信するためにサーバ102によって使用される。概して、インターフェース117は、ソフトウェアに符号化された論理、および/または好適な組み合わせの、ネットワーク112と通信するように動作可能なハードウェアを含む。より具体的には、インターフェース117は、ネットワーク112またはインターフェースのハードウェアが、図示された環境100の内外で物理的な信号を伝えるように動作可能であるように、通信に関連する1つまたは複数の通信プロトコルをサポートするソフトウェアを含み得る。
【００１７】
サーバ102は、グラフィカルユーザインターフェース(GUI)160aなどのユーザインターフェースも含み得る。GUI160aは、例えば、サーバ102のユーザが、データの生成、準備、要求、または分析、ならびにビジネストランザクションに関連するソースドキュメントの閲覧およびアクセスなどの任意の好適な目的で、プラットフォームの少なくとも一部に接続することを可能にするように動作可能なグラフィカルユーザインターフェースを含む。概して、GUI160aは、特定のユーザに、システムによって提供されるか、またはシステム内で伝えられるビジネスデータの効率的でユーザにとって分かりやすい表示を与える。GUI160aは、ユーザによって操作されるインタラクティブなフィールド、プルダウンリスト、およびボタンを有する複数のカスタマイズ可能なフレームまたはビューを含み得る。例えば、GUI160aは、ユーザが、GUI160aに表示されたデータフィールドに入力するための提案されたエントリのリストから選択することを可能にするインタラクティブな要素を提供することができる。GUI160aは、あり得るアクションの提案、またはユーザにとって有益である可能性があるプロセスへのリンクを表示することもできる。より全般的に言って、GUI160aは、ユーザが、アプリケーション122のさまざまなサービスおよび機能にアクセスし、それらを利用することを可能にする通常のインタラクティブな要素を提供することもできる。GUI160aは、多くの場合、設定可能であり、表とグラフ(棒グラフ、線グラフ、円グラフ、状態ダイヤル(status dial)など)の組み合わせをサポートし、タブが重要な特徴によって表現されるリアルタイムのポータル(例えば、サイトまたはマイクロサイト)を構築することができる。したがって、GUI160aは、プラットフォームで情報を処理し、ユーザに結果を視覚的に、効率的に表示する、汎用ウェブブラウザと、インテリジェントなエンジンと、コマンドラインインターフェース(CLI)との組み合わせなどの任意の好適なグラフィカルユーザインターフェースを考慮する。
【００１８】
概して、例示的なサーバ102は、環境100のコンポーネントの間の(すなわち、サーバ102とクライアント135の間の)無線通信または有線通信を容易にするネットワーク112と、ネットワーク112に通信可能に結合されているが、図1に図示されていない追加的なクライアント、サーバ、またはその他のデバイスなどの任意のその他のローカルまたはリモートのコンピュータとに通信可能に結合され得る。ネットワーク112は、図1においては単一のネットワークとして図示されているが、ネットワーク112の少なくとも一部が送信者と受信者の間の通信を容易にすることができる限り、本開示の範囲を逸脱せずに、連続したネットワークまたは不連続のネットワークであることができる。ネットワーク112は、企業ネットワークまたは保護されたネットワークのすべてまたは一部である可能性があるが、別の場合には、ネットワーク112の少なくとも一部は、インターネットへの接続を表す可能性がある。場合によっては、ネットワーク112の一部は、例えば、クライアント135とサーバ102の間の接続などの仮想プライベートネットワーク(VPN)である可能性がある。さらに、ネットワーク112のすべてまたは一部は、有線リンクまたは無線リンクのいずれかを含み得る。例示的な無線リンクは、802.11a/b/g/n、802.20、WiMax、および/または任意のその他の適切な無線リンクを含み得る。つまり、ネットワーク112は、図示された環境100の内部および外部のさまざまなコンピューティングコンポーネントの間の通信を容易にするように動作可能な任意の内部もしくは外部の1つのネットワーク、複数のネットワーク、サブネットワーク、またはそれらの組み合わせを包含する。ネットワーク112は、例えば、ネットワークアドレス間でインターネットプロトコル(IP)のパケット、フレームリレーのフレーム、非同期転送モード(ATM)のセル、音声、映像、データ、およびその他の好適な情報を伝えることができる。ネットワーク112は、1つもしくは複数のローカルエリアネットワーク(LAN)、無線アクセスネットワーク(RAN)、メトロポリタンエリアネットワーク(MAN)、広域ネットワーク(WAN)、インターネットのすべてもしくは一部、および/または1つもしくは複数の場所にある任意のその他の1つの通信システムもしくは複数の通信システムも含み得る。しかし、ネットワーク112は、本開示の必須のコンポーネントではない。
【００１９】
図1に図示されるように、サーバ102は、プロセッサ118を含む。図1においては単一のプロセッサ118として図示されているが、2つ以上のプロセッサが、環境100の特定のニーズ、要望、または特定の実施形態にしたがって使用され得る。各プロセッサ118は、中央演算処理装置(CPU)、ブレード、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、または別の好適なコンポーネントであってよい。概して、プロセッサ118は、サーバ102の動作と、特に複数のホストされるアプリケーション122の1つまたは複数とを実行するために命令を実行し、データを操作する。具体的には、サーバのプロセッサ118は、クライアント135およびそれらのクライアント135のそれぞれのクライアントアプリケーション144からの要求を受信し、それらの要求に応答するために必要とされる機能と、ホストされるアプリケーション122のその他の動作を行うために必要とされる機能とを実行する。
【００２０】
特定の実装に関わりなく、「ソフトウェア」は、少なくとも、本明細書において説明される処理および動作を行うために実行されるときに動作可能な有形の媒体上のコンピュータ可読命令、ファームウェア、配線されたもしくはプログラムされたハードウェア、または任意のそれらの組み合わせを含み得る。さらに言えば、各ソフトウェアコンポーネントは、C、C++、Java(登録商標)、Visual Basic、アセンブラ、Perl、任意の好適なバージョンの4GLなどを含む任意の適切なコンピュータ言語で完全にまたは部分的に書かれるか、または記述される可能性がある。図1に図示されたソフトウェアの一部は、さまざまなオブジェクト、方法、またはその他の処理を通じてさまざまな特徴および機能を実装する個々のモジュールとして示されているが、ソフトウェアは、その代わりに、必要に応じて、いくつかのサブモジュール、第三者のサービス、コンポーネント、ライブラリなどを含み得ることが理解されるであろう。逆に、さまざまなコンポーネントの特徴および機能は、必要に応じて単一のコンポーネントに組み合わされ得る。図示された環境100において、プロセッサ118は、サーバ102上で1つまたは複数のホストされるアプリケーション122を実行する。
【００２１】
高いレベルで、1つまたは複数のホストされるアプリケーション122のそれぞれは、本開示にしたがって、特に、図示されたクライアント135およびそれらのクライアント135の関連するクライアントアプリケーション144から受信された1つまたは複数の要求に応答して、およびそれらの要求に関連して情報を実行、変更、削除、生成、またはその他の方法で管理することができる任意のアプリケーション、プログラム、モジュール、プロセス、またはその他のソフトウェアである。ある場合、1つのホストされるアプリケーション122だけが、特定のサーバ102に配置され得る。その他の場合、複数の関連するおよび/もしくは関連しないホストされるアプリケーション122が、単一のサーバ102に記憶され得るか、またはさらに、複数のその他のサーバ102のあちこちに配置され得る。ある場合、環境100は、複合的なホストされるアプリケーション122を実装する可能性がある。例えば、複合アプリケーションの一部は、Enterprise Java(登録商標) Beans (EJB)として実装され得るか、または設計時コンポーネント(design-time component)が、とりわけ、J2EE (Java(登録商標) 2 Platform, Enterprise Edition)、ABAP (Advanced Business Application Programming)のオブジェクト、またはMicrosoftの.NETなどのさまざまなプラットフォームに実行時の実装を生成する能力を有する可能性がある。加えて、ホストされるアプリケーション122は、ネットワーク112を介して(例えば、インターネットを通じて)リモートのクライアント135またはクライアントアプリケーション144によってアクセスされ、実行されるウェブベースのアプリケーションを表す可能性がある。さらに、サーバ102の内部にあるように図示されているが、特定のホストされるアプリケーション122に関連する1つまたは複数のプロセスは、リモートで記憶され、参照され、または実行され得る。例えば、特定のホストされるアプリケーション122の一部は、リモートで呼び出される、アプリケーションに関連するウェブサービスである可能性がある一方、ホストされるアプリケーション122の別の部分は、リモートのクライアント135での処理のためにバンドルされたインターフェースオブジェクトまたはエージェントである可能性がある。さらに、ホストされるアプリケーション122のうちの任意のものまたはすべてが、本開示の範囲から逸脱することなしに、別のソフトウェアモジュールまたはエンタープライズアプリケーション(図示せず)の子モジュールまたはサブモジュールである可能性がある。その上さらに、ホストされるアプリケーション122の一部は、サーバ102で直接作業するユーザ、およびクライアント135でリモートで作業するユーザによって実行され得る。
【００２２】
図示されるように、プロセッサ118は、ホストされるアプリケーション122またはクライアントアプリケーション144に関連して実行されるビジネスプロセスのためのランタイムエンジンとして働くプロセスエンジン104を実行し、ユーザがビジネスプロセスを開発および配置できる環境を提供することもできる。プロセスエンジン104は、ホストされるアプリケーション122またはクライアントアプリケーション144が特定のビジネスプロセスに関連して実行されることを可能にする開発ツール、インターフェース、モジュール、サービス、およびメタデータの定義を提供することができる。特に、プロセスエンジン104は、ビジネスプロセス実行言語(BPEL)、ビジネスプロセスモデリング表記法(BPMN)、またはビジネスプロセスを定義するためのその他の仕組みによって定義されたか、またはモデリングされたビジネスプロセスを実行することができる。プロセスエンジン104に関連して実行されるビジネスプロセスの各インスタンスは、プロセスエンジン104のプロセスインスタンス170である。さらに、プロセスエンジン104は、プロセスエンジン104によって実行されるビジネスプロセスに関する複数のプロセス定義を保持する可能性がある。プロセス定義は、特定のビジネスプロセスの構造を定義する変数、モデル、およびコンポーネントを含む。つまり、各プロセス定義は、1つまたは複数のプロセスインスタンス170が基礎とすることができるプロセスモデルまたはテンプレートを表すことができ、特定のプロセス定義に関連するプロセスインスタンス170は、特定の変数またはコンポーネントを共有する可能性がある。各プロセスインスタンス170は、プロセスコンテキスト126にも関連付けられる。概して、各プロセスコンテキスト126は、プロセスインスタンス170のさまざまなパラメータを定義する、特定のプロセスインスタンス170に関連する変数の集合である。変数は、プロセスインスタンス170のさまざまなパラメータの値を有するフィールドを含むデータオブジェクトを含み得る。したがって、用語「変数」および「データオブジェクト」は、本開示の範囲を逸脱することなく、適宜交換可能に使用され得る。
【００２３】
さらに、プロセッサ118は、ビジネスプロセスに関連してユーザに対して表示するための追加的な情報またはオプションを生成するために使用され得る任意のアプリケーション、プログラム、関数、モジュール、プロセス、ランタイムエンジン、またはその他のソフトウェアである可能性があるコンテキストベースモジュール(context-based module)128も実行することができる。特に、コンテキストベースモジュール128は、特定のプロセスコンテキスト126に合わせて特に調整され、ビジネスプロセスのタスクを完了するためにユーザが必要とするであろう情報、ツール、リンク、またはその他の提案されるオプションを特定する。つまり、プロセスコンテキスト126は、ビジネスプロセスを完了するための、ユーザのための追加的な手引きを生成するためにコンテキストベースモジュール128によって使用され得る。コンテキストベースモジュール128は、特定のプロセスインスタンス170に関連するプロセスコンテキスト126の現在の状態を利用して、特定のプロセスインスタンス170とインタラクションするユーザを支援する追加的なオプション、提案、および情報でユーザインターフェースを拡充する。
【００２４】
ある実装において、コンテキストベースモジュール128は、概して、プロセスコンテキスト126の構造と、追加的なオプションおよび情報との間の意味的つながりを特定することによってユーザインターフェースの拡充を実施する。例えば、特定のプロセスコンテキスト126に含まれる変数は、プロセスコンテキスト126に関連するプロセスインスタンス170によって呼び出されたウェブサービスから作成され得る。ウェブサービスは、ネットワーク112を通じてサーバ102がアクセス可能なバックエンドシステム124によって保持され得る。場合によっては、プロセスコンテキスト126の変数は、基盤となるERPシステムのエンタープライズサービスおよび対応するXML (拡張可能マークアップ言語)スキーマから作られる。したがって、これらの変数は、ビジネスオブジェクトの種類またはXML名前空間などの特定の変数の種類に関連付けられる可能性がある。さらに、それぞれの変数の種類は、変数が特定のプロセスインスタンス170に対してどのようにして定義されるのかについての何らかの意味情報を提供する。例えば、エンタープライズサービスは、特定の変数の種類の意味論的意味に関する情報を含むコア構成要素技術仕様(Core Component Technical Specification) (CCTS)データモデリングシステムを実装し得る。したがって、そのとき、コンテキストベースモジュール128は、変数に関連する意味情報を用いて、特定のプロセスインスタンスのための追加的なオプションを検索するために使用する特定の変数を特定することができる。
【００２５】
コンテキストベースモジュール128は、変数の名前空間および変数の実際の値を用いて、プロセスインスタンス170とインタラクションするユーザを支援することができる追加的な情報またはオプションを検索する。コンテキストベースモジュール128は、例えば、ユーザ対して表示する追加的な情報またはオプションを特定するために、変数の名前空間および変数の値を用いてバックエンドシステム124のバックエンドリポジトリ184の全文検索を行うことができる。場合によっては、コンテキストベースモジュール128は、バックエンドリポジトリ184を検索するために使用される特定の変数内の特定のフィールドを特定することもできる。また、変数のフィールドは、データの種類に関連付けられる可能性があり、特定のデータの種類に関連する意味情報に基づいて検索のために特定され得る。さらに、一部の変数は、入れ子になった階層で複数のフィールドを用いて構築される可能性があり、異なる階層の異なるフィールドの任意の組み合わせが、検索のために特定され得る。そして、検索結果が、ユーザインターフェースのデータフィールドに適用するコンテキストタグを作成するための語のリスト152を生成するために使用され得る。さらに、検索結果は、追加的な情報への対応するリンクを生成し、それらのリンクを表示するために使用され得る。コンテキストベースモジュール128の実装の一例が、図3に関連して以下でさらに詳細に説明される。
【００２６】
提案および情報は、ユーザの効率を高め、容易に分からない潜在的なソリューションを特定するために、クライアント135のGUI160bを通じてなど、ビジネスアプリケーションのユーザインターフェースを通じてユーザが容易に利用できるようにされ得る。さらに、コンテキストベースモジュール128は、提案される情報および自動化された検索を、以前のアクションの履歴、またはユーザに対して表示された特定の提案の成功率に基づいて特定のユーザまたは複数のユーザの特定の使用パターンに適合させることができる。提案されたオプションに対する応答の履歴が、メモリ120に記憶され得る。一部の実装において、バックエンドシステム124の検索から生成された語のリスト152は、クライアントコンピュータ135のメモリ150、またはサーバ102のメモリ120に記憶され得る。語のリスト152は、さらなる検索のためにGUI160bに表示される関連するテキストを選択するために使用され得る。語のリスト152は、特定のプロセスコンテキストで追加的な情報を提供することが分かっている関連する語を含む。語のリスト152は、ユーザが、そのユーザに対して表示された提案されたオプションに応答するときに追加的な情報で更新され得る。例えば、非同期Java(登録商標)ScriptおよびXML (AJAX)ウェブ開発技術などの任意の適切な仕組みが、語のリスト152を更新するために使用され得る。
【００２７】
プロセスエンジン104は、ホストされるアプリケーション122とは別個である可能性があるが、その他の場合、プロセスエンジン104は、特定の1つまたは複数のホストされるアプリケーションに組み込まれるか、または特定の1つまたは複数のホストされるアプリケーションの一部である可能性がある。場合によっては、ホストされるアプリケーション122は、プロセスエンジン104に通信可能に結合される可能性があり、ホストされるアプリケーション122が、プロセスエンジン104によって提供される機能にアクセスし、それらの機能を利用することを可能にすることができる。前に生成された提案されたオプション、および特定のオプションの頻度または選択率の分析を通じて、コンテキストベースモジュール128は、ユーザによる選択の見込みまたは確率がより高い可能性がある潜在的な提案されるオプションまたは追加的な情報を特定することができる。コンテキストベースモジュール128によって提供される機能は、提案されるオプションを列挙するドロップダウンメニューを生成するか、または、例えば、頻繁に選択されるオプションに対する「あなたはさらに...ができる」リンクを生成するためのユーザインターフェースのサポートを提供することを含み得る。
【００２８】
概して、サーバ102は、データおよびプログラム命令を記憶するためのメモリ120も含む。メモリ120は、任意のメモリまたはデータベースモジュールを含む可能性があり、限定することなく、磁気媒体、光媒体、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、取り外し可能な媒体、またはその他の好適なローカルもしくはリモートのメモリコンポーネントを含む揮発性メモリまたは不揮発性メモリの形態をとる可能性がある。メモリ120は、クラス、フレームワーク、アプリケーション、バックアップデータ、ビジネスオブジェクト、ジョブ、ウェブページ、ウェブページのテンプレート、データベーステーブル、ビジネス情報および/または動的な情報を記憶するリポジトリ、ならびにサーバ102およびそのサーバ102の1つまたは複数のホストされるアプリケーション122の目的に関連する任意のパラメータ、変数、アルゴリズム、命令、規則、制約、またはそれらに対する参照を含む任意のその他の適切な情報を含むさまざまなオブジェクトまたはデータを記憶することができる。その上さらに、メモリ120は、VPNアプリケーション、ファームウェアのログおよびポリシー、HTMLファイル、データクラスまたはオブジェクトのインターフェース、図示されていないソフトウェアアプリケーションまたはサブシステム、ファイアウォールのポリシー、セキュリティログまたはアクセスログ、プリントまたはその他のレポートファイルなどの任意のその他の適切なデータを含み得る。
【００２９】
図1に示されるように、環境100は、バックエンドシステム124も含む。概して、バックエンドシステム124は、環境100に関連するデータおよび情報を受信、送信、処理、記憶、または管理するように動作可能な電子的なコンピューティングデバイスであり、有線接続または無線接続を用いてネットワーク112を介して少なくともサーバ102および/または1つもしくは複数のクライアント135に接続するかまたはそれらと通信するように動作可能である。ある実装において、バックエンドシステム124は、リソースおよび事業を管理し、ビジネス環境における情報の流れを促進するために使用される企業資源計画(ERP)システムである。図1に図示されるように、バックエンドシステム124は、プロセッサ188、インターフェース187、およびメモリ190を含む。バックエンドシステム124は、サーバ102のプロセスエンジン104によって実行されるビジネスプロセスなどの、外部で実行されるビジネスプロセスが利用できるさまざまなサービスをホストする。例えば、バックエンドシステム124は、外部のビジネスプロセスがアクセス可能なウェブサービス186と、バックエンドシステム124のメモリ190内のバックエンドリポジトリ184に記憶されるデータの全文検索182とを提供する。特に、バックエンドリポジトリ184は、サーバ102のプロセスエンジン104によって実行されるビジネスプロセスに関連するデータを記憶することができる。ビジネスプロセスに関連するデータは、さまざまなアプリケーション、変数、要素、組織、製品、または本開示で説明されるビジネスプロセスに関連するその他の主体を記述するユーザ定義の、または自動生成されたメタデータまたはその他のデータである可能性がある。図1においては、バックエンドシステム124は単一のサーバまたはコンピューティングデバイスとして示されているが、バックエンドシステム124は、複数のハードウェアまたはソフトウェアユニット全体に分散される可能性もある。
【００３０】
場合によっては、バックエンドリポジトリ184は、コンテキストベースモジュール128がアクセスできる可能性があり、自動全文検索機能182は、ユーザに対して表示する提案されるオプションを特定するのに有用である可能性がある、特定のユーザ、ビジネスプロセス、またはユーザインターフェースの要素に関連する任意の情報を求めてバックエンドリポジトリ184を検索するためにコンテキストベースモジュール128によって呼び出され得る。例えば、コンテキストベースモジュール128は、特定の変数の種類および変数内の特定のフィールドの値に関連する意味情報を用いてバックエンドリポジトリ184の全文検索を行って、特定のプロセスインスタンス170とインタラクションするユーザを支援することができる追加的な情報またはオプションを特定することができる。また、バックエンドリポジトリ184のデータは、特定の1人のユーザまたは複数のユーザに対して表示された提案されたオプションの履歴に関連するデータと、提案されたオプションの表示に応じて行われたアクションを反映する統計データとを含み得る。さらに、メモリ190は、特定のプロセスインスタンス170とインタラクションするユーザに対する提案されるリンクを生成するためにコンテキストベースモジュール128によって取得され得る詳細なユーザインターフェース情報185も記憶することができる。
【００３１】
図1の図示された環境は、1つまたは複数のクライアント135も含む。各クライアント135は、有線接続または無線接続を用いてネットワーク112を介して少なくともサーバ102に接続するか、またはサーバ102と通信するように動作可能な任意のコンピューティングデバイスであってよい。さらに、図1に図示されるように、クライアント135は、プロセッサ146、インターフェース142、グラフィカルユーザインターフェース(GUI)160b、クライアントアプリケーション144、およびメモリ150を含む。GUI160bは、システムによって提供されるか、またはシステム内で伝えられるビジネスデータのユーザにとって分かりやすい表示を行うように動作可能である。GUI160bは、提案されるオプションを表示するか、またはユーザがビジネスプロセスを完了するためにデータを入力することを可能にする複数のインタラクティブな要素を含み得る。インタラクティブな要素は、例えば、ドロップダウンメニューまたはデータフィールド162a〜bを含み得る。
【００３２】
概して、クライアント135は、図1の環境100に関連する任意の適切なデータを受信、送信、処理、および記憶するように動作可能な電子的なコンピュータデバイスを含む。環境100に関連するか、または環境100の外部にある多くのクライアント135が存在し得ることが理解されるであろう。例えば、図示された環境100は1つのクライアント135を含むが、環境100の代替的な実装は、サーバ102に通信可能に結合された複数のクライアント、または環境100の目的に適する任意のその他の数のクライアントを含み得る。加えて、ネットワーク112を介して環境100とインタラクションすることができる、環境100の図示された部分の外部の1つまたは複数のさらなるクライアント135も存在する可能性がある。さらに、用語「クライアント」および「ユーザ」は、本開示の範囲を逸脱することなしに適宜交換可能に使用され得る。さらに、各クライアント135は、単一のユーザによって使用されているものとして説明されるが、本開示は、多くのユーザが1つのコンピュータを使用する可能性があること、または1人のユーザが複数のコンピュータを使用する可能性があることを考慮する。
【００３３】
本開示で使用されるとき、クライアント135は、パーソナルコンピュータ、タッチスクリーン端末、ワークステーション、ネットワークコンピュータ、キオスク、無線データポート、スマートフォン、携帯情報端末(PDA)、これらのもしくはその他のデバイス内の1つもしくは複数のプロセッサ、または任意のその他の好適な処理デバイスを包含するように意図される。例えば、各クライアント135は、キーパッド、タッチスクリーン、マウス、またはユーザの情報を受け付けることができるその他のデバイスなどの入力デバイスと、サーバ102(およびホストされるアプリケーション122)、または、デジタルデータ、視覚的情報、クライアントアプリケーション144、もしくはGUI160bを含む、クライアント135自体の動作に関連する情報を伝える出力デバイスとを含むコンピュータを含み得る。入力デバイスおよび出力デバイスは両方とも、磁気記憶媒体、CD-ROM、またはディスプレイ、つまりGUI160bを通じたクライアント135のユーザからの入力の受信およびクライアント135のユーザへの出力の提供の両方を行うその他の好適な媒体などの固定かまたは取り外し可能な記憶媒体を含み得る。
【００３４】
図1は、複数の要素を含むか、または複数の要素に関連付けられているように示されているが、図1の環境100内に図示されたすべての要素が、本開示のそれぞれの代替的な実装で利用されるわけではない可能性がある。例えば、図1は、クライアントコンピュータ135によってアクセスされ得るサーバ102のホストされるアプリケーションを実装するクライアント-サーバ環境を示すが、一部の実装においては、サーバ102は、GUI160aを直接利用するユーザがアクセス可能なアプリケーションUIを特色として備えるローカルアプリケーションを実行する。加えて、本明細書に記載の要素のうちの1つまたは複数は、環境100の外部に配置され得るが、その他の場合、特定の要素は、その他の記載された要素、および図示された実装に記載されていないその他の要素のうちの1つまたは複数の中に含まれるか、またはそれらの一部である可能性がある。さらに、図1に図示された特定の要素は、その他のコンポーネントと組み合わされる可能性があり、本明細書において説明される目的だけでない別の目的または追加的な目的で使用される可能性がある。
【００３５】
図2は、ビジネスプロセスにおけるコンテキストに基づくユーザインターフェース、検索、およびナビゲーションを提供するプロセス200を示す流れ図である。最初に、202において、ユーザによって埋められるべき電子ページ上のデータフィールドが特定され得る。電子ページが、ユーザが関わるプロセスインスタンスの一部としてユーザに表示される。次に、204において、プロセスインスタンスのプロセスコンテキストに基づく、データフィールドに入力するための提案されるエントリが、決定され得る。プロセスコンテキストは、例えば、プロセスインスタンスによって表示されるデータフィールド、ユーザの前のアクション、ユーザに関連する情報、データベースに記憶されたユーザのプロファイル、またはユーザによって入力された、もしくはデータフィールドに関連する情報の種類に基づいて決定され得る。提案されるエントリは、実行されているビジネスプロセスの特定のプロセスコンテキスト、および特定のユーザに合わせて特に調整される。一部の実装において、206で、電子ページの特定のテキストが、コンテキストタグの適用のためにやはり選択され得る。コンテキストタグは、特定の語に関連する関連情報を含むデータ構造である可能性がある。コンテキストタグに含まれる情報は、ユーザに役立つ可能性があるさらなる情報の外部ソースへのリンク、自動化された検索の結果もしくは前の検索結果から特定された関連情報、現在のビジネスプロセスに関連して補助的なタスクを行うためのその他のアプリケーションへのリンク、またはユーザが、特定のビジネスプロセスに役立つことを発見する可能性があるその他の種類のコンテキストリンクもしくはコンテキストによるデータである可能性がある。208において、特定されたテキスト項目に対するコンテキストタグが、プロセスインスタンスのプロセスコンテキストに基づいてやはり生成され得る。加えて、コンテキストタグは、データフィールドに入力するための少なくとも1つの提案されるエントリに基づいて生成され得る。例えば、204において特定された提案される入力データが、コンテキストタグを生成するためにユーザインターフェースの関連するテキストを選択するために使用され得る。最後に、210において、テキストに関連する追加的なアクション項目および生成されたコンテキストタグが、ユーザに対して表示され得る。ユーザに対して表示される提案されるエントリおよびコンテキストタグの情報は、ユーザが、ビジネスプロセスに関連するタスクを実行している間に追加的な情報または潜在的なソリューションを効率的に特定するのを助けることができる。
【００３６】
図3は、ビジネスプロセスを容易にする、コンテキストに基づくユーザインターフェース、検索、およびナビゲーションを提供するためのプロセス300の詳細な流れ図である。最初に、302において、ユーザインターフェース160bに関連するビジネスプロセスが、特定される。一部の実装において、ビジネスプロセスは、ビジネスアプリケーション144を用いて実行される1つまたは複数のアクションを含み得る。アクションは、企業組織に関連して実行される特定のタスクである可能性がある。ある場合、タスクは、セグメントに分割される可能性があるか、または順に実行される複数のステップで構成される可能性がある。ビジネスアプリケーション144のユーザは、ビジネスアプリケーション144で特定のビジネスプロセスインスタンスを開始することができ、特定のユーザインターフェースの構成が、プロセスインスタンスのステップ中にユーザに対して表示され得る。コンテキストベースモジュール128は、実行されているプロセスインスタンスが、プロセスインスタンスに関連する関連の値を表す変数を含むプロセスコンテキスト126に関連すると判断する可能性がある。概して、プロセスコンテキスト126は、プロセスインスタンスを実行するための、ユーザのための追加的な手引きを生成するためにコンテキストベースモジュール128によって使用され得る、特定のプロセスインスタンスに関連する変数の集合である。さらに、プロセスコンテキスト126の変数の一部は、ユーザインターフェース160bに表示される特定のデータフィールド162に直接リンクされ得る。したがって、コンテキストベースモジュール128は、特定のプロセスインスタンスに結び付けられているユーザインターフェース160の特定のデータフィールド162の認識によって、特定のプロセスインスタンスを特定することができる。
【００３７】
同じプロセスコンテキスト126内の異なる変数は、異なる変数の種類の値を表す可能性があり、変数は、各変数のビジネスオブジェクトの種類に基づいて特定され得る。コア構成要素技術仕様(CCTS)データモデリングシステムで使用される変数の種類などの変数の種類が、プロセスインスタンスについての情報を得るために、変数に含まれる値とともに使用され得る。例えば、プロセスコンテキスト126は、従業員IDを表す変数を含み得る。従業員ID変数は、「userID」という変数の種類に関連付けられる可能性がある。したがって、userIDという変数の種類、およびCCTSシステムから得られる変数の種類に関連する意味情報に基づいて、コンテキストベースモジュール128は、従業員ID変数が人に関連すると判断することができる。図4および5に関連して以下で説明される例に示されるように、プロセスコンテキスト126は、ビジネスプロセスを容易にするための情報を得るために使用され得るさまざまな種類の変数および変数の種類を含み得る。図4に関連して以下でさらに詳細に説明されるように、プロセスコンテキスト126は、各フィールドがプロセスコンテキスト126の異なる値を表すさまざまなフィールドからなる特定のデータ構造に関連付けられるか、または結び付けられる可能性もある。
【００３８】
304において、プロセスインスタンスに関連するプロセスコンテキスト126が、特定される。一部の実装において、プロセスインスタンスは、エンタープライズサービスシステムに関連してモデリングまたは実行され、エンタープライズWebサービス記述ファイル(enterprise web service description file)が、特定のプロセスコンテキスト126で見つかった変数の種類を得るためにインポートされ得る。したがって、プロセスコンテキスト126は、エンタープライズWebサービス記述ファイルに定義された変数の種類にインタラクティブに、または自動的に基づく可能性がある。プロセスコンテキスト126の変数は、プロセスインスタンスを完全に実行するために必要とされる値などの、対応するプロセスインスタンスに関連する値を含む。例えば、購入注文を完了するためのプロセスコンテキスト126は、購入注文ID、購入注文を扱う従業員の従業員ID、または購入される製品の製品IDなどの変数を含み得る。概して、普通の企業組織またはビジネスアプリケーションに関連するビジネスプロセスは、組織またはアプリケーション内の必要に応じて、標準化された変数の種類を有する可能性がある。
【００３９】
プロセスコンテキスト126が特定された後、306において、プロセスコンテキスト126内の変数の種類が、判定される。変数の種類は、変数の名前の分析またはその他の方法で、コンテキストベースモジュール128によって判定され得る。一部の実装において、変数の種類に関連する情報は、種類リポジトリに記憶される可能性があり、コンテキストベースモジュール128は、それぞれの変数の種類に関連するデータを求めて種類リポジトリを検索することができる。変数の種類は、変数の意味または変数に関連する論理的関係を反映する固有の意味情報も含み得る。この意味情報は、例えば、特定の変数の種類の意味論的意味に関する情報を含むCCTSデータモデリングシステムから取得され得る。次に、308において、特定の変数の種類、およびプロセスコンテキスト126内の変数のデータフィールドに含まれる値が、さらなる検索のために選択され得る。コンテキストベースモジュール128は、さまざまな変数の種類に関連する意味情報または任意のその他の好適な基準に基づいて、さらなる検索のために変数内の特定の値を選択することができる。例えば、特定の変数の種類の意味情報に基づいて、一部の変数またはフィールドは、有用な検索結果をよりもたらしやすい可能性があり、さらなる検索のためにより選択されやすい。変数は、特定のビジネスプロセスにおけるそれらの変数の相対的な重要性に基づいて選択される可能性もある。さらに、ある実装において、変数は、ユーザが、プロセスインスタンスで特定のステップに関する手引きを必要とする見込みに基づいて選択される。特定のユーザがプロセスインスタンスで特定のステップに関する手引きを必要とする確率は、例えば、ユーザの好み、特定のビジネスプロセスに関連するユーザ特有の振る舞いもしくは全体的な使用パターンの統計データ、特定のプロセスコンテキスト126の既知の変数および未知の変数の相互依存性、またはプロセスインスタンスの実行中の自動化された手引きの必要性を予測するための任意のその他の尺度に基づいて決定され得る。さらに、特定の変数内の特定のフィールドも、バックエンドリポジトリ184を検索するために使用され得る。変数のフィールドも、データの種類に関連付けられる可能性があり、特定のデータの種類に関連する意味情報に基づいて検索のために特定され得る。
【００４０】
次に、310において、選択された変数および対応する変数の種類が、プロセスインスタンスに関連する関連情報を検索するために使用される。一部の実装において、検索されるべきデータベースは、バックエンドシステム124のリポジトリ184である可能性がある。プロセスコンテキスト126の特定の変数の既知の値、およびそれらの変数に関連する変数の種類が、関連する検索結果を得るための検索語として使用され得る。例えば、各変数は、ビジネスオブジェクトの種類またはXML名前空間などの特定の変数の種類に関連付けられる可能性がある。変数のXML名前空間および変数の値が、追加的なオプションを求めてバックエンドリポジトリ184を全文検索するのに使用され得る。統計的なフィルタリングプロセスが、ユーザにオプションを提案するための特に関連性のある情報を特定するために検索結果に対して行われ得る。例えば、コンテキストベースモジュール128は、前に表示された提案のユーザの選択の履歴、特定のデータフィールド162へのユーザの前の入力、および特定の提案の全体的な成功率を含む可能性がある、ユーザに関連する記憶された情報にアクセスすることができる。ユーザに関連するこの統計情報は、検索結果を絞り込み、関連データを特定するために使用され得る。特に、所望の検索結果は、特定のプロセスインスタンスに関する提案されるエントリまたはアクション項目を決定することに何らか役立つことができる任意の種類の情報である可能性がある。例えば、購入注文の処理中、従業員IDなどの、プロセスコンテキスト126から選択された既知の変数が、プロセスインスタンスによって必要とされる購入注文の提案される承認者を生成するための関連情報を求めてバックエンドリポジトリ184を検索するために使用され得る。バックエンドリポジトリ184の検索は、従業員に関連する組織図を発見する可能性がある。ユーザの上司が組織図から決定される可能性があり、このことは、ユーザの上司が購入注文の潜在的な承認者であるので、購入注文を完了するための提案を特定するのに役立つ可能性がある。
【００４１】
特に、312において、コンテキストベースモジュール128は、プロセスコンテキスト126に関連するオブジェクトグラフを含み得る検索の結果に基づいてオブジェクトグラフ(object graph)を取得または生成することができる。オブジェクトグラフは、プロセスインスタンスに関連するデータオブジェクトまたは変数の間のつながりおよび依存関係の論理的表現である。例えば、特定の従業員に関連する情報の検索から生成されるオブジェクトグラフは、従業員の直接の上司、従業員に関連するビジネスプロセス、または従業員のもっとも最近の取引先に関連するデータオブジェクトを含み得る。これらの項目に関連するデータオブジェクトの間の関係も、オブジェクトグラフに含まれ得る。
【００４２】
オブジェクトグラフは、314において、提案されるオプションを生成し、それらのオプションをユーザに対して表示して未完了のビジネスプロセスを助けるために、検索結果から得られた任意のその他の関連情報とともに使用され得る。場合によっては、提案されるオプションは、データフィールド162に入力するための提案されるエントリ、またはデータフィールド162の内容に関連してユーザが行うことができる提案されるアクションのリストである。例えば、マーケティングビジネスプロセスは、ユーザが、ユーザインターフェース160bのデータフィールド162にマーケティング素材の潜在的な受取人を入力することを要求する可能性がある。上述のようにコンテキストベースモジュール128によって行われる自動検索を用いて、マーケティング素材の提案される受取人が、ユーザインターフェース160bを通じてユーザに対して表示され得る。提案される受取人は、例えば、マーケティング素材の対象に関連する取引を前に行った、ユーザの最近の取引先を含み得る。さらに、コンテキストベースモジュール128は、ユーザが、マーケティング素材の潜在的な受取人を特定するのに役立つ可能性があるリソースにアクセスすることを可能にすることなどの、データフィールド162に関連する提案されるアクションを表示することができる。つまり、特定のプロセスインスタンスのプロセスコンテキストの変数および変数の種類に基づいて、コンテキストベースモジュール128は、ユーザがビジネスプロセスを完了するのを支援するためにユーザにオプションを提案するための潜在的に関連する情報を特定することができる。
【００４３】
コンテキストベースモジュール128が、プロセスコンテキストに関連する特定の変数に関連する自動化された検索を行うとき、316において、コンテキストベースモジュール128は、コンテキストタグを生成し、それらのタグをユーザインターフェース160bの特定のテキストに適用することができる。コンテキストタグは、特定の語、またはその語がユーザインターフェース160bに現れる特定のコンテキストにおけるその他のユーザインターフェースの要素に関連する関連情報を含むデータ構造である可能性がある。コンテキストタグに含まれる情報は、ユーザに役立つ可能性があるさらなる情報の外部ソースへのリンク、自動化された検索の結果もしくは前の検索結果から特定された関連情報、現在のビジネスプロセスに関連して補助的なタスクを行うためのその他のアプリケーションへのリンク、またはユーザが、特定のビジネスプロセスに役立つことを発見する可能性があるその他の種類のコンテキストリンクもしくはコンテキストによるデータである可能性がある。例えば、コンテキストタグは、ユーザによって行われるユーザインターフェースのアクションによって有効化される可能性があり、この有効化は、コンテキストタグを付けられる語または要素に関連する詳細の表示をもたらす。したがって、ユーザは、タグ付けされた語に関連する、利用可能な追加的な情報に気付かされる。概して、静的なテキストおよびデータフィールドのエントリを含む、ユーザインターフェース160bの特定の語が、ユーザインターフェース160bのその他のテキストとのそれらの語の関係と、実質的なコンテキストに基づく提案を生成するそれらの語の可能性とに基づいて選択される。そして、コンテキストタグが、図5に関連して以下でさらに詳細に説明されるように、選択された語に対して生成または更新される。
【００４４】
ユーザインターフェースにおけるデータ入力、検索、およびナビゲーションのためのコンテキストに基づく環境を提供することは、さまざまなシナリオで有用である可能性がある。例えば、コンテキストに基づく検索およびナビゲーションは、ユーザが休暇願を完成し、提出するのを助けることができる。一部の実装において、ユーザは、従業員であり、アプリケーション144を通じて休暇願を提出したい可能性があり、アプリケーション144は、ユーザが休暇願を提出する前に関連情報を入力するように要求する可能性がある。各休暇願のインスタンスは、休暇願の提出のために通常必要とされることが分かっている事前に定義された要素または値を有する特定のデータオブジェクトに関連付けられ得る。換言すれば、休暇願のデータオブジェクトは、特定の構造および特定の値を有する休暇願のプロセスコンテキスト126を表す可能性がある。ある実装において、プロセスコンテキスト126の構造および値は、「ビジネスオブジェクトの種類」またはCCTSの種類の変数である。したがって、休暇願のビジネスプロセスの特定のインスタンスが、アプリケーション144による処理のためにユーザによって開始されるとき、休暇願に共通であり、休暇願のプロセスコンテキスト126に含まれる特定の値が特定される場合は、プロセスエンジン104がプロセスインスタンスを休暇願として認識することができる。特定のプロセスインスタンスのプロセスコンテキスト126は、プロセスインスタンスをユーザが完了するのを容易にするためにコンテキストベースモジュール128によって使用され得る。
【００４５】
例えば、図4に示されるように、それぞれの休暇願のプロセスコンテキスト400は、休暇願を提出する従業員のID (employeeID)402a、従業員の名前404a、休暇願の承認者のID 414a、および休暇願の提出に関連するその他の情報を含む情報に関連付けられ得る。ある実装において、休暇願のプロセスコンテキスト400の情報の一部は、すでに分かっている可能性がある。図4に図示されるように、例えば、休暇願のプロセスコンテキスト400は、休暇願を提出するユーザの従業員識別番号「d055555」402cをすでに含む。要求される休暇の種類406cおよび従業員の名前404cなどのその他の情報が、休暇願のプロセスコンテキスト400にすでに含まれている可能性がある。いずれにせよ、コンテキストベースモジュール128が、ユーザによって開始されたプロセスインスタンスが休暇願のプロセスであることをプロセスコンテキスト400から認識するとき、追加的な検索が、休暇願の残りの変数に関するあり得る値を決定するために行われ得る。
【００４６】
図5は、この例で説明される休暇願の提出のためのユーザインターフェース502の例示的なスクリーンショット500を示す。図5に図示されるように、休暇願のユーザインターフェース502は、従業員が休暇願の提出のために要求される情報を入力するためのさまざまなデータフィールド510を含み得る。データフィールド510a〜eは、ユーザの休暇願を承認するための適切な承認者をユーザが入力するためのデータフィールド510dと、休暇願に関する適切な通知をユーザが入力するためのデータフィールド510eとを含み得る。しかし、アプリケーションによって提供されるユーザインターフェース502は、休暇願のプロセスコンテキスト400に直接関連付けられない可能性がある。特に、ユーザインターフェースのデータフィールド510は、図4に示された休暇願のデータオブジェクト400のそれらのデータフィールド510に対応する変数に、例えばプロセスエンジン104によって提供されるウィジェットなどのアプリケーションまたはプロセスを通じてそれらが結び付けられるまでリンクされない可能性がある。ユーザインターフェースの要素をプロセスコンテキスト400の要素と結び付けるために、ウィジェットは、ユーザインターフェースのデータフィールド510と、関連するプロセスコンテキスト400の値との間の論理的な類似性を自動的に検出するようにプログラムされ得る。ウィジェットは、将来使用するために、ユーザインターフェースとプロセスコンテキストの間の前の結び付きに関する情報を記憶することもできる。一部の実装において、ウィジェットは、自動的にヘルプ機能を提供するか、または関連する値を検索するために、プロセスコンテキストの現在の状態を、プロセスコンテキストに制約された値の種類と組み合わせる可能性がある。例えば、コンテキストモジュール128によって提供される自動的提案は、ウィジェットによって判定された、現在実行中のビジネスプロセスの特定のステップに依存する可能性がある。ビジネスプロセスの順次的な進行は、ビジネスプロセスに関連するプロセスコンテキストの状態を変える可能性があり、したがって、ウィジェットは、プロセスコンテキストの現在の状態にふさわしい提案またはアクションを生成するためにプロセスコンテキストの状態を追跡することができる。
【００４７】
ユーザインターフェースのデータフィールド510が休暇願のプロセスコンテキスト400の適切な変数402〜414に結び付けられるか、リンクされると、コンテキストベースモジュール128は、図4に示されたように、ユーザが、承認のために休暇願を提出する適切な承認者を見つける必要があることを認識する。プロセスコンテキスト400の変数のうちの1つまたは複数に関連するさまざまなデータオブジェクトが、バックエンドシステム124のデータベース184に記憶され得る。コンテキストベースモジュール128は、休暇願のあり得る承認者を特定するための情報を提供し得る関連データオブジェクトを求めてデータベース184を検索するために、バックエンドシステム124によって提供される全文検索機能182を呼び出すことができる。例えば、一部の実装において、従業員の上司がおそらく休暇願の適切な承認者であると思われるので、ユーザに関連する組織図を検索してユーザの上司のリストを得るために、ユーザのemployeeID402cが使用され得る。さらに、コンテキストベースモジュール128は、変数の種類が変数に固有の追加的な関係を反映する意味情報を含む可能性があるので、変数の実際の値および変数の種類を用いてバックエンドリポジトリ184の関連情報を検索する可能性がある。したがって、employeeID402cの実際の値およびemployeeIDの変数の種類(userID402b)が、追加的な情報を求めてデータベース184を検索するために使用され得る。企業組織に特有の序列で配列され得るユーザの上司のリストが与えられると、特定の上司が、休暇願の提案される承認者として選択され、例えば、図5に示されるように、承認者データフィールドに関連するドロップダウンメニュー512でユーザに対して表示される可能性がある。提案される上司は、その上司が企業組織内でユーザにどれだけ直接的に関連している可能性があるかに基づいて、または提案されるエントリをユーザが特定の上司を承認者として選択する見込みを反映した順序で列挙するためのその他の基準に基づいて選択され得る。あり得る承認者に関する追加的な提案が、例えば、ユーザの同じ部門内のその他の管理者に基づいて特定され得る。図示された例において、上司およびそれらの上司のそれぞれのemployeeIDのリスト512が、図5に見られるように、承認者データフィールド510dを埋めるための提案されるエントリとしてユーザに対して表示される。
【００４８】
ユーザインターフェースの特定のデータフィールド510のための提案されるエントリを特定することに加えて、コンテキストベースモジュール128は、選択されたテキストに関連する提案される検索、ナビゲーション、またはアクション項目に関して、ユーザインターフェースに表示される選択されたテキストにコンテキストタグを適用することもできる。ユーザインターフェースは、データフィールドにユーザによって入力された特定のテキスト、またはユーザインターフェース内の表示されたテキストを含み得る。一部の実装において、コンテキストベースモジュール128は、ユーザインターフェースをスキャンし、さらなる処理およびタグ付けのために、意味を多くに含んだテキストを選択または強調することができる。例えば、コンテキストベースモジュール128は、特定のテキストと、関連するビジネスプロセスコンテキスト126の対応する変数との間の重要な論理的つながりを判定することができる。
【００４９】
図5に図示されるように、ユーザインターフェースの3つの語、「d023588」520a、「Reiner」520b、および「Harald」520cが、コンテキストに基づく環境によって強調された。一部の実装において、ユーザインターフェース内の語が、特定のデータフィールドのデータの種類に基づいて強調のために選択される。例えば、「d023588」というテキスト520aが、コンテキストベースモジュール128によって従業員の通常のemployeeIDとして認識される可能性があり、その結果、employeeIDに関して追加的なデータおよびリンクが表示され得るように強調される。さらに、「d023588」520aを検索語として用いたバックエンドシステム124のデータベース184のテキスト検索が、「d023588」というemployeeIDに関連するフルネーム「Reiner Hille」を特定する可能性がある。つまり、コンテキストベースモジュール128によって呼び出された自動検索機能182から得られた検索結果が、コンテキストタグのためのテキストを強調するために使用され得る。「Reiner」520bはユーザインターフェースの別のデータフィールドに現れる語であるので、その語も、強調される。最後に、特定の休暇願に関連する従業員は、「Harald」のファーストネームを持つ可能性があるので、したがって、「Harald」というテキスト520cが、やはり強調される。
【００５０】
強調されるテキストは、それぞれの強調される語に関連するコンテキストを決定するために処理される可能性があり、適切な場合、強調されるテキストに関連する追加的な情報または提案されるアクション項目が例えばドロップダウンメニュー530でユーザに表示され得るように、コンテキストタグが適用される。語のリスト152が、テキストの強調およびコンテキストタグの生成を容易にするために使用され得る。語のリスト152は、特定のプロセスコンテキストに関して追加的な情報を提供することが分かっている関連する語を含む。ある場合、語のリスト152はあらかじめ生成されていてよく、語のリスト152で見つかった語が、強調のために選択され得るか、または強調される語のコンテキストが、その語のリストから決定され得る。語のリスト152があらかじめ生成されていない場合、語のリスト152が、作成され、強調される語を入れられる。その他の場合、強調される語のコンテキストは、データフィールドまたはその他のテキストなどのユーザインターフェースのその他の項目とのその語の関係に基づいて決定され得る。例えば、図示された実施形態において、コンテキストベースモジュール128は、データフィールド510eに入力されたメッセージのあいさつに「Reiner」520bが含まれていることから、「Reiner」が、従業員の名前であるか、またはあり得る承認者の名前であると判断することができる。さらに、「d023588」520aなどのその他の強調されるテキストが、そのテキストが承認者データフィールド510dに存在することから承認者のemployeeIDであると特定される可能性があり、バックエンドリポジトリ184の検索の後、employeeID520aが、そのemployeeID520aに対応する従業員の名前、Reinerにリンクされる。あり得る承認者の名前がデータフィールド内に表示されている可能性があると判断されると、強調される承認者の名前のコンテキストから得られた情報530が、表示され得る。情報は、強調される承認者のプロファイルを表示すること、強調される承認者を組織図で示すこと、Haraldの休暇日程を開くこと、承認者に関連する追加的な情報を表示すること、追加的な別の承認者を列挙すること、または特定された承認者および関連コンテキストに関連するその他のアクション項目などのユーザのための提案されるアクション項目を含み得る。
【００５１】
コンテキストタグは、ユーザインターフェースのデータフィールドに関して行われたコンテキストに基づく検索からの検索結果にリンクされ得る。つまり、特定のビジネスプロセスまたはユーザについてコンテキストベースモジュール128から得られた既知の情報が、コンテキストタグを増強または更新するために使用され得る。特に、コンテキストベースモジュール128は、特定のビジネスプロセスに関連する統計情報の履歴またはデータベースを保守する学習メカニズムを実装することができる。統計データは、コンテキストベースモジュール128によって表示された提案に関連するユーザ活動に基づいて更新される。例えば、コンテキストベースモジュール128が、特定のビジネスプロセスに関連する特定のユーザの前の活動の知識がない場合、コンテキストベースモジュール128は、特定のユーザによってもっとも選択されやすいであろう提案、リンク、およびアクション項目を「推測する」内部論理に基づいて、ユーザに対する提案またはコンテキストタグを生成することができる。そして、特定の提案されたエントリまたはリンクのユーザの選択または回避などのユーザのアクションが、学習メカニズムによって追跡され、ユーザおよび特定のプロセスコンテキストに関連する履歴に記憶される。次いで、ユーザの前のアクションが、ユーザに対する将来の提案を改善する、または向上させるために使用され得る。したがって、コンテキストベースモジュール128は、特定のプロセスコンテキストに関連する内部論理、およびプロセスコンテキストに関連するユーザの前のアクションの履歴に基づいて、データフィールドに対するコンテキストタグまたは提案されるエントリを生成することができる。一部の実装において、プロセスコンテキストに関して集められる統計データは、特定のユーザに特有の履歴、または複数のユーザにまたがる使用パターンの全体的な履歴である可能性がある。
【００５２】
上述の図および付随する説明は、例示的なプロセスおよびコンピュータによって実装可能な技術を説明する。しかし、環境100 (またはその環境100のソフトウェアもしくはその他のコンポーネント)は、これらのおよびその他のタスクを行うための任意の好適な技術を使用、実装、または実行することを考慮する。これらのプロセスは例示のみを目的としていること、および説明された技術または同様の技術は、同時、個別、もしくは組み合わせを含め、任意の適切なときに行われ得ることが理解されるであろう。加えて、これらのプロセスのステップのうちの多くは、同時に、および/または示されたのとは異なる順序で行われ得る。さらに、環境100は、方法が適切なままである限り、さらなるステップ、より少ないステップ、および/または異なるステップを備えたプロセスを使用することができる。
【００５３】
言い換えると、本開示は特定の実施形態および広く関連する方法の観点で説明されたが、これらの実施形態および方法の代替形態および変更形態は、当業者に明らかであろう。したがって、例示的な実施形態の上記の説明は、本開示を定義または限定しない。また、その他の変更、置き換え、および修正が、本開示の精神および範囲を逸脱することなく可能である。
【符号の説明】
【００５４】
100  例示的な環境
102  サーバ
104  プロセスエンジン
112  ネットワーク
117、142、187  インターフェース
118、146、188  プロセッサ
120、150、190  メモリ
122  ホストされるアプリケーション
124  バックエンドシステム
126  プロセスコンテキスト
128  コンテキストベースモジュール
135  クライアント
144  クライアントアプリケーション
152  語のリスト
160a、160b  グラフィカルユーザインターフェース
162  データフィールド
170  プロセスインスタンス
182  全文検索、自動全文検索機能
184  バックエンドリポジトリ、データベース
185  詳細なユーザインターフェース情報
186  ウェブサービス
【図１】
2012059261.tif 000003
【図２】
2012059261.tif 000004
【図３】
2012059261.tif 000005
【図４】
2012059261.tif 000006
【図５】
2012059261.tif 000007
【外国語明細書】
2012059261.tif 000008
2012059261.tif 000009
2012059261.tif 000010
2012059261.tif 000011
2012059261.tif 000012
2012059261.tif 000013
2012059261.tif 000014
2012059261.tif 000015
2012059261.tif 000016
2012059261.tif 000017
2012059261.tif 000018
2012059261.tif 000019
2012059261.tif 000020
2012059261.tif 000021
2012059261.tif 000022
2012059261.tif 000023
2012059261.tif 000024
2012059261.tif 000025
2012059261.tif 000026
2012059261.tif 000027
2012059261.tif 000028
2012059261.tif 000029
2012059261.tif 000030
2012059261.tif 000031
2012059261.tif 000032
2012059261.tif 000033
2012059261.tif 000034
2012059261.tif 000035
2012059261.tif 000036
2012059261.tif 000037
2012059261.tif 000038
2012059261.tif 000039
2012059261.tif 000040
2012059261.tif 000041
2012059261.tif 000042
2012059261.tif 000043
2012059261.tif 000044
2012059261.tif 000045
2012059261.tif 000046
2012059261.tif 000047