(57)【要約】アプリケーションの統合を提供する。第１のアプリケーションはクライアントコンピュータ上で実行される。第１のアプリケーションはブラウザベースのアプリケーションなどの第２のアプリケーションに接続される。第１のアプリケーションは、第２のアプリケーションに関連する少なくとも１つの機能性を識別すること、および少なくとも１つの機能性に関連するユーザインターフェース要素を第１のアプリケーション内に表示する。
2013528859.tif 000002
【特許請求の範囲】
【請求項１】
第１のアプリケーションを実行するステップと、
前記第１のアプリケーションから第２のアプリケーションに接続するステップと、
前記第２のアプリケーションに関連する少なくとも１つの機能性を識別するステップと、
前記少なくとも１つの機能性に関連するユーザインターフェース要素を前記第１のアプリケーション内で表示するステップと
を含むことを特徴とするアプリケーションの統合を提供するための方法。
【請求項２】
前記表示されたユーザインターフェース要素の選択を前記第１のアプリケーションのユーザが受け取るステップと、
前記第２のアプリケーションに関連する少なくとも１つの機能性を呼び出すステップと
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項３】
少なくとも１つの第２の機能性が、前記第１のアプリケーションにより提供され、および、前記少なくとも１つの機能性を呼び出すステップに関連するかどうかを判定するステップと、
前記少なくとも１つの第２の機能性が、前記第１のアプリケーションにより提供され、および、前記少なくとも１つの機能性の呼び出すステップに関連するという判定に応答して、前記少なくとも１つの第２の機能性を前記第１のアプリケーションによって呼び出すステップと
をさらに含むことを特徴とする請求項３に記載の方法。
【請求項４】
前記第１のアプリケーションが前記第２のアプリケーションから結果通知を受け取るステップと、
前記結果通知を第１のアプリケーションのユーザに対して表示するステップと
をさらに含むことを特徴とする請求項３に記載の方法。
【請求項５】
前記少なくとも１つの機能性に関連する前記ユーザインターフェース要素を前記第１のアプリケーション内に表示するステップが、
前記少なくとも１つの機能性に関連するアクションカテゴリを識別するステップと、
前記アクションカテゴリに関連するユーザインターフェース要素に対して視覚的外観を割り当てるステップと
を含むことを特徴とする請求項１に記載の方法。
【請求項６】
命令のセットを記憶するコンピュータ可読媒体であって、前記命令は実行される時にアプリケーションの統合を提供するための方法を実行し、前記命令のセットにより実行される方法が
第１のアプリケーションを初期化するステップと、
少なくとも１つの第２のアプリケーションが、呈示される要素を含むかどうかを判定するステップと、
前記少なくとも１つの第２のアプリケーションが、呈示される要素を含むという判定に応答して、前記第１のアプリケーションのユーザインターフェース内に、前記少なくとも１つの第２のアプリケーションの呈示される要素が前記第１のアプリケーションのユーザに利用可能であることを表示するステップと
を含むことを特徴とするコンピュータ可読媒体。
【請求項７】
前記第１のアプリケーションのユーザにより要求されたアクションを受け取るステップと、
前記第１のアプリケーションのユーザにより要求されたアクションが前記呈示される要素に対する変更を含むかどうかを判定するステップであって、前記呈示される要素はデータ要素を含む、ステップと、
前記第１のアプリケーションのユーザにより要求されたアクションが前記データ要素に対する変更を含むという判定に応答して、前記少なくとも１つの第２のアプリケーションにデータ要素に対する変更を通知するステップと
をさらに含むことを特徴とする請求項６に記載のコンピュータ可読媒体。
【請求項８】
前記呈示される要素がヘルプトピックを含むことを特徴とする請求項６に記載のコンピュータ可読媒体。
【請求項９】
前記第１のアプリケーションのユーザインターフェース内に、前記少なくとも１つの第２のアプリケーションの呈示される要素が前記第１のアプリケーションのユーザに利用可能であることを表示するステップが、前記ヘルプトピックを、前記第１のアプリケーションに関連するヘルプメニューに追加するステップを含むことを特徴とする請求項８に記載のコンピュータ可読媒体。
【請求項１０】
前記呈示される要素が機能を含むことを特徴とする請求項６に記載のコンピュータ可読媒体。
【請求項１１】
前記第１のアプリケーションのユーザインターフェース内に、前記少なくとも１つの第２のアプリケーションの呈示される要素が前記第１のアプリケーションのユーザに利用可能であることを表示するステップが、少なくとも１つのアクション要素を、前記第１のアプリケーションに関連するユーザインターフェースに追加するステップを含むことを特徴とする請求項１０に記載のコンピュータ可読媒体。
【請求項１２】
前記少なくとも１つのアクション要素の選択を前記第１のアプリケーションのユーザが受け取るステップと、
前記少なくとも１つの第２のアプリケーション上の機能を呼び出すステップと 
をさらに含むことを特徴とする請求項１１に記載のコンピュータ可読媒体。
【請求項１３】
前記機能を呼び出すステップに応答して、前記少なくとも１つの第２のアプリケーションから結果通知を受け取るステップと、
前記第１のアプリケーションのユーザに対して、前記少なくとも１つの第２のアプリケーションから受け取った結果通知に関連するメッセージを表示するステップと
をさらに含むことを特徴とする請求項１２に記載のコンピュータ可読媒体。
【請求項１４】
複数の呈示される要素を識別するステップであって、前記複数の呈示される要素のそれぞれが、複数のブラウザベースのアプリケーションの内の少なくとも１に関連するステップと、
前記複数の呈示される要素のそれぞれに関連する前記第１のアプリケーションのユーザインターフェース内に要素を作成するステップと
をさらに含むことを特徴とする請求項６に記載のコンピュータ可読媒体。
【請求項１５】
アプリケーションの統合を提供するためのシステムであって、前記システムは、
メモリ記憶装置と、
前記メモリ記憶装置に連結されるプロセシングユニットと
を備え、前記プロセシングユニットが、
クライアントベースのアプリケーションから少なくとも１つのブラウザベースのアプリケーションに接続すること、
前記少なくとも１つのブラウザベースのアプリケーションに関連する少なくとも１つの呈示される機能を識別すること、
前記クライアントベースのアプリケーション内にユーザインターフェース要素を表示することであって、前記ユーザインターフェース要素が前記少なくとも１つの呈示される要素に関連すること、
前記少なくとも１つの呈示される要素を実行する要求を、前記クライアントベースのアプリケーションのユーザからユーザインターフェース要素を介して受け取ること、
前記クライアントベースのアプリケーションが、前記少なくとも１つの呈示される機能に関連する実行前の機能を備えるかどうかを判定すること、
前記クライアントベースのアプリケーションが前記少なくとも１つの呈示される機能に関連する実行前の機能を備えるという判定に応答して、前記実行前の機能を実行すること、
前記少なくとも１つの呈示される機能を実行する要求を、前記少なくとも１つのブラウザベースのアプリケーションに送ること、
前記少なくとも１つのブラウザベースのアプリケーションによる前記少なくとも１つの呈示される機能を実行する要求に関連する結果を、前記少なくとも１つのブラウザベースのアプリケーションから受け取ること、
前記受け取った結果に関連する通知を前記クライアントベースのアプリケーションのユーザに対して表示すること、
前記クライアントベースのアプリケーションが前記少なくとも１つの呈示される機能に関連する実行後の機能を備えるかどうかを判定すること、
前記クライアントベースのアプリケーションが前記少なくとも１つの呈示される機能に関連する実行後の機能を備えるという判定に応答して、前記実行後の機能を実行すること
を行うべく動作することを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クライアントアプリケーションとウェブページの統合に関する。
【背景技術】
【０００２】
クライアントアプリケーションとウェブページの統合とは、ウェブブラウザベースの機能性とスタンドアロンアプリケーションの機能性との間に相互運用性を与えるプロセスである。いくつかの状況において、クライアントベースのアプリケーションは、何らかのネットワークのサポートを必要とすることなくコンピュータ上で実行させることができ、一方、ブラウザベースのアプリケーションはウェブブラウザ内で実行され、クライアント上にアプリケーションをインストールする必要性が軽減される。しかし、これにより類似する機能性の２つの別々のバージョンが開発されるという、努力が重複することになることがある。さらに、２つの異なるアプリケーションでは、一貫性の無いユーザ経験が与えられ、また、クライアントアプリケーションとウェブブラウザの機能性とに利用可能なローカルなリソースを同時に利用することができない。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
このことにより、クライアントアプリケーションとブラウザベースのアプリケーションを切替えて使用するユーザ間に混乱と非効率性をもたらすことになる。従来の戦略は２つのアプリケーションを別々に開発することであるが、これにはしばしば問題が伴い、何故なら従来の戦略では２つのバージョン間の統合、相互運用性、および一貫性のあるユーザ経験が許されないからである。
【課題を解決するための手段】
【０００４】
クライアントアプリケーションとウェブページの統合を提供することができる。この要約は、以下の「発明を実施するための形態」でさらに述べる概念を選択して簡略化した形式で紹介するために提供するものである。この要約は、特許請求の範囲の重要な特徴または主要な特徴を特定することを意図していない。この要約は請求の範囲を制限するものとして使用されることも意図していない。
【０００５】
アプリケーションの統合が提供される。第１のアプリケーションは、クライアントコンピュータ上で実行される。第１のアプリケーションは、ブラウザベースのアプリケーションなどの第２のアプリケーションに接続される。第１のアプリケーションは、第２のアプリケーションに関連する少なくとも１つの機能性を識別すること、および、少なくとも１つの機能性に関連するユーザインターフェース要素を第１のアプリケーション内に表示する。
【０００６】
上述の全体的な説明および後の、発明を実施するための形態は、双方とも例を提供し、また、単なる説明のためのものである。従って、上述の全体的な説明および後の発明を実施するための形態は、制限するものとして解釈されるべきではない。さらに、本明細書に記載されるものに対して特徴または変形が加えることができる。例えば、実施形態では、発明を実施するための形態に記載される種々の特徴の組み合わせおよび副次的な組み合わせを対象とすることができる。
【図面の簡単な説明】
【０００７】
本開示に組み込まれ、および本開示の一部を成す添付の図面には、本発明の種々の実施形態が例示される。
【０００８】
【図１】動作環境のブロック図である。
【図２Ａ】サンプルアプリケーションのブロック図である。
【図２Ｂ】サンプルアプリケーションのブロック図である。
【図３】統合クライアントアプリケーションのブロック図である。
【図４】アプリケーション統合を提供する方法のフローチャートである。
【図５】コンピュータ装置を含むシステムのブロック図である。
【発明を実施するための形態】
【０００９】
以下の発明を実施するための形態では添付の図面が参照される。可能な限り、図面および以下の説明においては同じ参照番号を使用して、同じまたは同様の要素が参照される。本発明の実施形態が記載されるが、修正、改変、および他の実装が可能である。例えば、置き換え、追加、または修正が、図面に例示される要素に対してなされて良く、本明細書に記載される方法は、開示される方法に対して段階の置き換え、並べ替えまたは追加をすることにより、修正されても良い。従って、以下の発明を実施するための形態は本発明を制限しない。代わりに、本発明の適切な範囲が添付の請求項によって定義される。
【００１０】
クライアントアプリケーションとウェブページの統合を提供することができる。本発明の実施形態と一貫性を持って、ブラウザベースのアプリケーションとクライアントベースのアプリケーションとの間に相互運用性を提供するための設計がなされる。設計により、クライアントベースのアプリケーションに、関連するブラウザベースのアプリケーション上で利用可能なアクションを通知して、そのアクションが動的にクライアントベースのアプリケーションのユーザインターフェース（ＵＩ）上に呈示されるようにすることができる。ユーザは、クライアントベースのアプリケーションのＵＩを介してアクションを行うことができるが、そのアクションがブラウザベースのアプリケーションに関連するデータに効力を及ぼしても良い。クライアントベースのアプリケーションは、クライアントベースのアプリケーションにおいて利用可能な追加的なビジネスロジックを実行することもできるが、ブラウザベースのアプリケーションから呈示されるアクションの呼び出しの前または後にも、ブラウザベースのアプリケーションにおいて利用可能な追加的なビジネスロジックを実行することはできない。
【００１１】
例えば、企業が２つの給与アプリケーションを開発するとする。一方のアプリケーションはクライアントベースのアプリケーションを備え、給与計算に使用されて従業員の銀行口座に給与を送金することができる。他方のアプリケーションを、給与報告を作成し、これを従業員がウェブブラウザを介してチェックできるようにするためのブラウザベースのアプリケーションとして開発することができる。両アプリケーションとも正確に機能するが、アプリケーションが統合されれば、企業は追加的なビジネスロジックを追加することができる。そのようなロジックでは、例えば、給与が送信された直後に給与報告を生成することができる。そして給与報告を従業員に直接送ることができる。
【００１２】
図１は動作環境１００のブロック図である。動作環境１００には、クライアント１１０、ネットワーク１２０、および複数のウェブサーバ１３０（Ａ）乃至１３０（Ｂ）を備える。ネットワーク１２０は、例えば、企業イントラネットなどのプライベートネットワークおよび／またはインターネットなどのパブリックネットワークを含む。ウェブサーバ１３０（Ａ）乃至（Ｂ）は、クライアント１１０などからウェブページ要求を受けるべく、および要求されたウェブページで応答するべく動作するコンピュータを備える。ウェブサーバ１３０（Ａ）乃至（Ｂ）はまた、ブラウザベースのアプリケーションのための実行フレームワークを提供するべく動作する。例えば、クライアント１１０は、ウェブブラウザアプリケーションを介して、給与報告ブラウザベースアプリケーションを備えるウェブページを要求する。ウェブサーバ１３０（Ａ）は、例えば、その要求に対してウェブページおよび関連するアプリケーションで応答する。クライアント１１０は、ブラウザベースのアプリケーションに関連する機能性がウェブサーバ１３０（Ａ）によりウェブブラウザアプリケーションとの対話（相互作用）を介して実行されることを、要求する。
【００１３】
図２Ａはサンプルブラウザベースのアプリケーション２００のブロック図である。ブラウザベースのアプリケーション２００は、メニューバー２１０、第１の機能ＵＩ要素２３０および第２の機能ＵＩ要素２４０を含むユーザインターフェース（ＵＩ）を備える。例えば、ブラウザベースのアプリケーション２００は、従業員データと、第１の機能ＵＩ要素２３０に関連して報告を生成するため、および／または、第２の機能ＵＩ要素２４０に関連して取引が完了したことを従業員に通知するための機能と、を含む財務アプリケーションを備える。
【００１４】
図２Ｂはクライアントアプリケーション２５０のブロック図である。クライアントアプリケーション２５０は、複数のＵｌアクション要素２６０（Ａ）乃至（Ｃ）を含むユーザインターフェースリボン２６５を備えることができる。クライアントアプリケーション２５０は、例えば、従業員データと従業員に関連する口座に現金の振替を実行するための機能とを含む会計アプリケーションを備える。
【００１５】
図３は、統合クライアントアプリケーション３００のブロック図である。統合クライアントアプリケーションは、複数のＵＩアクション要素２６０（Ａ）乃至（Ｃ）と、複数の統合Ｕｌ要素３１０（Ａ）乃至（Ｂ）と、を含むユーザインターフェースリボン２６５を備える。統合Ｕｌ要素３１０（Ａ）乃至（Ｂ）は、ブラウザベースのアプリケーション２００が呈示する機能に基づき、ユーザインターフェースリボン２６５に組み込まれる。本発明の実施形態と一貫性を持って、統合クライアントアプリケーション３００は、ブラウザベースのアプリケーション２００に関連する従業員データに対して、アクセス、修正、および／または同期を行うべく動作する。
【００１６】
ウェブページを既存のＵＩとは別に描画する代わりに、統合クライアントアプリケーション３００では、ブラウザベースのアプリケーション２００が呈示するアクションを統合して、一貫性のあるユーザ経験を達成することができる。例えば、第１の機能ＵＩ要素２３０および／または第２の機能ＵＩ要素２４０に関連する機能を、統合クライアントアプリケーション３００に関連する視覚的外観に従ってユーザインターフェースリボン２６５内に表示させることができる。視覚的外観には、色、テキストのスタイル、配置場所、アイコンおよび／またはメニュー配置などの構成の詳細が含まれても良い。
【００１７】
本発明の実施形態と一貫性を持って、統合クライアントアプリケーション３００は、アプリケーションを開くというユーザ要求で開始される。統合クライアントアプリケーション３００は、統合クライアントアプリケーション３００の構成に関連するＵＲＬ（ｕｎｉｆｏｒｍ  ｒｅｓｏｕｒｃｅ  ｌｏｃａｔｏｒ）に従って、ウェブページをロードすることができる。ＷｅｂＢｒｏｗｓｅｒコントロールは、標準のＡｃｔｉｖｅＸ（登録商標）コントロール、すなわち、例えば．Ｎｅｔｆｒａｍｅｗｏｒｋで発行される管理されたコントロールを含んで良く、統合クライアントアプリケーション３００が従来のウェブブラウザアプリケーションと同様にブラウザベースのアプリケーション２００にアクセスできるようにする。
【００１８】
ウェブページがロードされた後、ウェブページは、そのコンテンツを統合クライアントアプリケーション３００に呈示することができる。上述の例示の財務アプリケーションについては、「報告生成」および「通知」の機能および／またはブラウザベースのアプリケーション２００に関連する従業員データが、クライアントベースのアプリケーションに対して呈示される。呈示されるデータの他の例には、ヘルプテキスト、トピックインデックス、および／または、メソッド呼び出しのアドレスまたは名称が含まれている。
【００１９】
ブラウザベースのアプリケーション２００に関連するデータおよび機能は、例えば、統合クライアントアプリケーション３００内に実装されるメソッドをブラウザベースのアプリケーション２００に呼び出させることにより、呈示させることができる。次に、ブラウザベースのアプリケーション２００は、統合クライアントアプリケーション３００に対するデータおよび／または機能の参照を交換することができる。ブラウザベースのアプリケーション２００は、全ての必要な情報を文字列に構成して統合クライアントアプリケーション３００に渡す役割がある。
【００２０】
交換はいくつかのセグメントで構成する。例えば、各セグメントには、タイトル（例えば、「ＨｅｌｐＩＤ」）および／または値としての文字列（例えば、「＜ＨｅｌｐＩＤ＞」）を含むことができる。値としての文字列はセグメントに関連するカテゴリを識別し、カテゴリは統合クライアントアプリケーション３００内のセグメントに関連するユーザインターフェース要素の視覚的外観を構成する際に使用される。ＨｅｌｐＩＤセグメントにおいて、値はデータの文字列を含むことができる。メソッドリストセグメントなど別の例では、値には、メソッドをメソッドの名称にマッピングして、その後のメソッドの呼び出しを可能にすることができる、メソッドの名称とメソッドのアドレスとの複数のペアを含むことができる。ブラウザベースのアプリケーション２００は、ブラウザベースのアプリケーション２００に関連するウェブページ内に含まれるジャバスクリプトのメソッド「ｗｉｎｄｏｗ．ｅｘｔｅｒｎａｌ．Ｅｘｐｏｓｅ（ｓｅｇｍｅｎｔＳｔｒｉｎｇ）；」のようなメソッドを呼び出すことにより、セグメントを統合クライアントアプリケーション３００に渡すことができる。
【００２１】
本発明の実施形態と一貫性を持って、データおよび機能は、ＨＴＭＬを拡張させて、それらのデータおよび機能を呈示するための追加的なタグを追加することにより、呈示させることもできる。ウェブページは、どのデータおよび／または機能をＨＴＭＬ内に呈示させるのかを特定することができ、統合クライアントアプリケーション３００はこれらのタグをパース（解析）することができる。次に、統合クライアントアプリケーション３００は、関連するアクションを、そのツールバー、コンテキストメニュー、および／または、ＵＩリボン２６５などのタグにより特定される他のコントロールに対して呈示することができる。タグのシンタックスには例えば以下のものを含む。
＜Ｔｏｏｌｂａｒ＞  
＜ｂｕｔｔｏｎ  ｎａｍｅ＝“Ｇｅｎｅｒａｔｅ  ａ  ｒｅｐｏｒｔ”  ｏｎｃｌｉｃｋ＝“ＧｅｎｅｒａｔｅＲｅｐｏｒｔ（）”／＞  
＜／Ｔｏｏｌｂａｒ> 
【００２２】
ツールバータグ内に、ＧｅｎｅｒａｔｅＲｅｐｏｒｔなどのデータおよび機能を統合クライアントアプリケーション３００に対して呈示することができる。タグはどのコントロールがそれを表すかを特定することもできる。上記の例においては、ＨＴＭＬがパースされた後、ボタンが統合クライアントアプリケーション３００のリボンＵＩ２６５に追加される。統合クライアントアプリケーション３００のユーザは、ＵＩリボン２６５内の「報告を作成する」のボタン（例えば、統合ＵＩ要素３１０（Ａ））をクリックして、ブラウザベースのアプリケーション２００に報告を生成させることができる。加えて、ブラウザベースの機能を呼び出す前および／または後に、呼び出し事前および／または事後の機能性が統合クライアントアプリケーション３００により実行される。
【００２３】
統合クライアントアプリケーション３００が呼び出すアクションまたはメソッドは、ブラウザベースのアプリケーション２００により実行される。そして、ブラウザベースのアプリケーション２００は、成功／失敗の結果および／または追加的なデータを含む完了通知を統合クライアントアプリケーション３００に送ることもできる。
【００２４】
図４は、アプリケーションの統合を提供するための本発明の実施形態と一貫性を持つ方法４００に含まれる全体的な段階を記載するフローチャートである。方法４００は、図５を参照して以下でより詳細に説明するようなコンピュータ装置５００を使用して実行される。方法４００の段階を実行する方法は、以下でさらに詳細に説明する。方法４００は、開始ブロック４０５にて開始され段階４１０に進み、そこでコンピュータ装置５００がクライアントアプリケーションを初期化し、ブラウザベースのアプリケーションに接続する。例えば、クライアント１１０は、クライアントアプリケーション２５０を初期化する要求をユーザから受け取る。そして、クライアントアプリケーション２５０は、クライアントアプリケーション２５０の構成に関連するＵＲＬなどのウェブの場所に従って、ブラウザベースのアプリケーション２００に接続する。
【００２５】
段階４１０から、方法４００は段階４１５に進み、そこでコンピュータ装置５００は、ブラウザベースのアプリケーションが任意の呈示されるデータおよび／または機能を含むかどうかを判定する。例えば、ブラウザベースのアプリケーション２００は、ジャバスクリプトのメソッドを実行して、データおよび／または機能をクライアントアプリケーション２５０に対して呈示する。本発明の実施形態と一貫性を持って、クライアントアプリケーション２５０は、ブラウザベースのアプリケーション２００のウェブページをパースして、任意の呈示されるデータおよび／または機能を識別する。
【００２６】
呈示される要素が段階４１５にて識別された場合、方法４００は段階４２０に進み、そこでコンピュータ装置５００は、ユーザインターフェース要素をクライアントアプリケーションに追加する。例えば、クライアントアプリケーション２５０は、ブラウザベースのアプリケーション２００の呈示される機能に関連する複数の統合ＵＩ要素３１０（Ａ）乃至（Ｂ）を追加し、統合クライアントアプリケーション３００のユーザインターフェースが得られる。統合クライアントアプリケーション３００は、一貫性のあるユーザ経験を統合クライアントアプリケーション３００のユーザに提供するために、クライアントアプリケーション２５０に関連する視覚的な様式を統合ＵＩ要素３１０（Ａ）乃至（Ｂ）に適用する。
【００２７】
段階４２０から、または、呈示されるデータおよび／または機能が段階４１５で識別されない場合、方法４００は段階４２５に進み、そこでコンピュータ装置５００は、任意の追加のウェブページおよび／またはブラウザベースのアプリケーションがクライアントアプリケーション２００に関連するかどうかを判定する。関連する場合、方法４００は、段階４１５に戻り、他のページ／アプリケーションのそれぞれが、統合クライアントアプリケーション３００に統合させるデータおよび／または機能を呈示しているかどうかを判定する。
【００２８】
呈示されるデータ／機能について、ブラウザベースのページ／アプリケーションにそれ以上アクセスする必要がなくなると、方法４００は、段階４３０に進み、そこでコンピュータ装置５００は、呈示される機能を実行する要求を受け取る。例えば、ユーザは、統合ＵＩ要素３１０（Ａ）を選択して報告を生成する。
【００２９】
方法４００は次に、段階４３５に進み、そこでコンピュータ装置５００は、任意の実行前の機能が定義されるかどうかを判定する。例えば、統合クライアントアプリケーション３００は、統合ＵＩ要素３１０（Ａ）に関連する呈示される機能を実行する前に、財務アプリケーションにおいて全ての未決の送金が完了したことを検証する等の機能を定義する。
【００３０】
実行前の機能が定義される場合、方法４００は段階４４０に進み、そこでコンピュータ装置５００は実行前の機能を実行する。例えば、統合クライアントアプリケーション３００は、上述の検証機能を呼び出す。本発明の実施形態と一貫性を持って、実行前の機能が失敗すると、方法４００は段階４７０にて終了し、ユーザに対して、エラーおよび／または失敗の通知などのメッセージを表示する。
【００３１】
段階４４０にて実行前の機能を実行した後、または、実行前の機能が段階４３５で定義されないと判定される場合、方法４００は、段階４４５に進み、そこでコンピュータ装置５００は、呈示される機能をブラウザベースのアプリケーションが実行することを要求する。例えば、統合クライアントアプリケーション３００は、呈示される機能を呼び出す要求をブラウザベースのアプリケーション２００に送る。本発明の実施形態と一貫性を持って、統合クライアントアプリケーション３００は、呈示される機能を実行する要求を受け取ることに加えておよび／またはその代わりに、ブラウザベースのアプリケーションにより呈示されるデータへの変更を受け取るべく動作することができる。統合クライアントアプリケーション３００は、従って、段階４４５にて、ブラウザベースのアプリケーション２００にデータに対する変更を通知することができ、ブラウザベースのアプリケーション２００は、変更されたデータをブラウザベースのアプリケーション２００に関連するデータストアに保存する。
【００３２】
段階４４５から、方法４００は段階４５０に進み、そこでコンピュータ装置５００は、呈示される機能の呼び出しに関連する結果を受け取る。例えば、ブラウザベースのアプリケーション２００は、機能の実行に関連する成功／失敗のメッセージおよび／または追加的なデータを統合クライアントアプリケーション３００に送る。
【００３３】
段階４５０から、方法４００は段階４５５に進み、そこでコンピュータ装置５００は、ユーザに対して呈示される機能の呼び出しに関連する通知を表示する。例えば、統合クライアントアプリケーション３００は、アイコン、テキスト表示、ダイアログボックスおよび／または呈示される機能の実行が完了したことを示す他のユーザインターフェース要素を表示し、また、通知内に規定されるアクションが成功したか失敗したかを示す。
【００３４】
次に、方法４００は段階４６０に進み、そこでコンピュータ装置５００は、任意の実行後の機能が定義されるかどうかを判定する。例えば、統合クライアントアプリケーション３００は、統合ＵＩ要素３１０（Ａ）に関連する呈示される機能の実行後に、ログエントリの作成などの機能を定義する。
【００３５】
実行後の機能が定義される場合、方法４００は段階４６５に進み、そこでコンピュータ装置５００は実行後の機能を実行する。例えば、統合クライアントアプリケーション３００は上述のロギング機能を呼び出す。段階４６５にて実行後の機能を実行した後、または、実行後の機能が定義されていないと段階４６０にて判定される場合、方法４００は段階４７０にて終了される。
【００３６】
本発明と一貫性を持つ実施形態には、アプリケーションの統合を提供するためのシステムが含まれる。システムは、メモリ記憶装置およびメモリ記憶装置に連結されるプロセシングユニットを備える。プロセシングユニットは、第１のアプリケーションの実行、第１のアプリケーションから第２のアプリケーションへの接続、第２のアプリケーションに関連する少なくとも１つの機能性の識別、および少なくとも１つの機能性に関連するユーザインターフェース要素の第１のアプリケーション内における表示、を行うべく動作する。プロセシングユニットはさらに、少なくとも１つの機能性に関連するアクションカテゴリの識別、および視覚的外観のアクションカテゴリに関連するユーザインターフェース要素への割り当て、を行うべく動作する。例えば、呈示されるデータがヘルプトピックを含む場合、プロセシングユニットは、ヘルプトピックをヘルプメニューの場所に割り当てること、および／または、ヘルプトピックにアクセスするべく動作可能なＵＩ要素にクエスチョンマークアイコンを割り当てる。
【００３７】
本発明と一貫性と持つ別の実施形態には、アプリケーションの統合を提供するためのシステムが含まれる。システムは、メモリ記憶装置およびメモリ記憶装置に連結されるプロセシングユニットを備えることができる。プロセシングユニットは、第１のアプリケーションの初期化、および、少なくとも１つの第２のアプリケーションが呈示される要素を含むかどうかの判定、を行うべく動作する。少なくとも１つの第２のアプリケーションが呈示される要素を含む場合、プロセシングユニットは、第１のアプリケーションのユーザインターフェース内に、少なくとも１つの第２のアプリケーションの呈示される要素を第１のアプリケーションのユーザが利用可能であるという表示を示すべく動作する。
【００３８】
本発明と一貫性と持つさらに別の実施形態には、アプリケーションの統合を提供するためのシステムが含まれる。システムは、メモリ記憶装置およびメモリ記憶装置に連結されるプロセシングユニットを備える。プロセシングユニットは、クライアントベースのアプリケーションから少なくとも１つのブラウザベースのアプリケーションへの接続、少なくとも１つのブラウザベースのアプリケーションに関連する少なくとも１つの呈示される機能の識別、少なくとも１つの呈示される機能に関連するユーザインターフェース要素のクライアントベースのアプリケーション内における表示、少なくとも１つの呈示される機能を実行する要求の受け取り、および、クライアントベースのアプリケーションが少なくとも１つの呈示される機能に関連する実行前の機能を含むかどうかの判定、を行うべく動作する。クライアントベースのアプリケーションが、実行前の機能を含む場合、プロセシングユニットは、実行前の機能を実行するべく動作する。次に、プロセシングユニットは、少なくとも１つの呈示される機能を実行する要求を少なくとも１つのブラウザベースのアプリケーションに送ること、少なくともブラウザベースのアプリケーションによる少なくとも１つの呈示される機能を実行する要求に関連する結果を少なくとも１つのブラウザベースのアプリケーションから受け取ること、クライアントベースのアプリケーションのユーザに対して受け取った結果に関連する通知を表示すること、および、クライアントベースのアプリケーションが少なくとも１つの呈示される能に関連する実行後の機能を含むかどうかの判定を行う。クライアントベースのアプリケーションが少なくとも１つの呈示される機能に関連する実行後の機能を含む場合、プロセシングユニットは、実行後の機能を実行するべく動作する。
【００３９】
図５はコンピュータ装置５００を含むシステムのブロック図である。本発明の実施形態と一貫性を持って、上述のメモリ記憶装置およびプロセシングユニットは、図５のコンピュータ装置５００などのコンピュータ装置に実装される。ハードウェア、ソフトウェア、またはファームウェアの任意の適切な組み合わせを使用してメモリ記憶装置およびプロセシングユニットを実装することができる。例えば、メモリ記憶装置およびプロセシングユニットは、コンピュータ装置５００、またはいずれかの他のコンピュータ装置５１８とコンピュータ装置５００の組み合わせ、を用いて実装される。上述のシステム、装置、およびプロセッサは例であり、他のシステム、装置およびプロセッサが、本発明の実施形態と一貫性を持って、上述のメモリ記憶装置およびプロセシングユニットを備えることができる。
【００４０】
図５を参照すると、本発明の実施形態と一貫性のあるシステムには、コンピュータ装置５００などのコンピュータ装置が含まれる。基本的構成において、コンピュータ装置５００には、少なくとも１つのプロセシングユニット５０２およびシステムメモリ５０４が含まれる。コンピュータ装置の構成およびタイプによって、システムメモリ５０４には、揮発性（例えば、ＲＡＭ（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ））、不揮発性（例えば、ＲＯＭ（ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ））、フラッシュメモリ、または任意の組み合わせが含まれるが、これに限定されない。システムメモリ５０４にはオペレーティングシステム５０５、１つまたは複数のプログラミングモジュール５０６を含んで良く、および、クライアントアプリケーション５０７を含むことができる。オペレーティングシステム５０５は、例えば、コンピュータ装置５００の操作の制御に好適である。一実施形態において、プログラミングモジュール５０６にはウェブブラウザアプリケーション５２０が含まれる。さらに、本発明の実施形態は、グラフィックライブラリ、他のオペレーティングシステム、または任意の他のアプリケーションプログラムと連動して実践されて良く、任意の特定のアプリケーションまたはシステムに限定されない。本基本構成は、図５においてそれらの構成要素によって点線５０８内に例示される。
【００４１】
コンピュータ装置５００は、追加的な特徴または機能性を有する。例えば、コンピュータ装置５００は、例えば、磁気ディスク、光ディスク、またはテープなどの追加的なデータ記憶装置（着脱可能および／または着脱不可能）を含むこともできる。そのような追加的な記憶装置は、図５において着脱可能記憶装置５０９および着脱不可能記憶装置５１０によって例示される。コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラムモジュールまたは他のデータなどの情報を記憶するための任意の方法または技術で実装される、揮発性および不揮発性、着脱可能および着脱不可能な媒体が含まれる。システムメモリ５０４、着脱可能記憶装置５０９および着脱不可能記憶装置５１０は全て、コンピュータ記憶媒体の例（すなわち、メモリ記憶装置）である。コンピュータ記憶媒体には、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ（ｅｌｅｃｔｒｉｃａｌｌｙ  ｅｒａｓａｂｌｅ  ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ）、フラッシュメモリもしくは他のメモリ技術、ＣＤ−ＲＯＭ、ＤＶＤ（ｄｉｇｉｔａｌ  ｖｅｒｓａｔｉｌｅ  ｄｉｓｋ）もしくは他の光記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶装置、または、情報を記憶するために使用可能であり、および、コンピュータ装置５００がアクセス可能である任意の他の媒体が含まれるが、これに限定されない。任意のそのようなコンピュータ記憶媒体は、装置５００の一部とすることができ、一時的でない記憶媒体を含むことができる。コンピュータ装置５００はまた、キーボード、マウス、ペン、音声入力装置、タッチ入力装置、などの入力装置（複数可）５１２を有する。ディスプレイ、スピーカ、プリンタ、などの出力装置（複数可）５１４も含まれる。上述の装置は例であり、他の装置を使用することができる。
【００４２】
コンピュータ装置５００には、分散コンピュータ環境におけるネットワーク、例えば、イントラネットまたはインターネットなどを介して、装置５００が他のコンピュータ装置５１８と通信することを可能にすることができる通信接続５１６も含まれる。通信接続５１６は通信媒体の一例である。通信媒体は典型的には、コンピュータ可読命令、データ構造、プログラムモジュール、または、搬送波もしくは転送機構などの変調データ信号の他のデータによって、具現化されて良く、任意の情報配信媒体を含む。用語「変調データ信号」は、情報を信号に符号化する様式で設定または変更された１つまたは複数の特徴を有する信号を記述する。制限ではなく例として、通信媒体には、有線ネットワークまたは直接有線接続などの有線媒体、ならびに、音響、無線周波数（ＲＦ）、赤外線、および他の無線媒体などの無線媒体が含まれる。本明細書で使用される用語「コンピュータ可読媒体」は、記憶媒体および通信媒体の両方を含むことができる。
【００４３】
上記で述べたように、多数のプログラムモジュールおよびデータファイルをシステムメモリ５０４に記憶させることができ、オペレーティングシステム５０５も含まれる。プロセシングユニット５０２上で実行される一方、プログラミングモジュール５０６（例えば、ウェブブラウザアプリケーション５２０）は、例えば、上述の方法４００の１つまたは複数の段階を含む処理を実行することができる。上述の処理は例であり、プロセシングユニット５０２は他の処理を実行しても良い。本発明の実施形態に従って使用することができる他のプログラミングモジュールには、電子メールおよび連絡先アプリケーション、ワープロアプリケーション、スプレッドシートアプリケーション、データベースアプリケーション、スライドプレゼンテーションアプリケーション、描画またはコンピュータ支援のアプリケーションプログラム、などが含まれる。
【００４４】
概して、本発明の実施形態と一貫性を持って、プログラムモジュールには、ルーチン、プログラム、コンポーネント、データ構造、および、特定のタスクを実行することができる、または、特定の抽象データ型を実装することができる他のタイプの構造が含まれる。さらに、本発明の実施形態は、ハンドヘルド装置、マルチプロセッサシステム、マイクロプロセッサベースまたはプログラム可能家庭用電化製品、ミニコンピュータ、メインフレームコンピュータ、等を含む他のコンピュータシステム構成を用いて実践される。本発明の実施形態は、通信ネットワークを介してリンクされるリモート処理装置によってタスクが実行される分散コンピュータ環境において実践されても良い。分散コンピュータ環境では、プログラムモジュールがローカルおよびリモートのメモリ記憶装置の両方に配置される。
【００４５】
さらに、本発明の実施形態は、個別の電子的要素、論理ゲートを含むパッケージ化または統合化された電子チップを備える電気回路内、マイクロプロセッサを利用する回路内、または、電子的要素またはマイクロプロセッサを含む単一のチップ上、において実践される。本発明の実施形態は、例えば、機械的、光学、流体、および量子学的な技術を含むがこれに限定されないＡＮＤ、ＯＲおよびＮＯＴなどの論理演算を実行することが可能な他の技術を使用して実践されても良い。加えて、本発明の実施形態は、汎用コンピュータ内でまたは任意の他の回路もしくはシステムにおいて、実践される。
【００４６】
本発明の実施形態は、例えば、コンピュータプロセス（方法）、コンピュータシステムとして、または、コンピュータプログラム製品もしくはコンピュータ可読媒体などの製造品として、実装される。コンピュータプログラム製品は、コンピュータシステムが可読であり、および、コンピュータプロセスを実行するための命令のコンピュータプログラムを符号化する、コンピュータ記憶媒体とすることができる。コンピュータプログラム製品はまた、コンピュータシステムが可読であり、および、コンピュータプロセスを実行するための命令のコンピュータプログラムを符号化する、搬送波上の伝搬信号とすることもできる。従って、本発明は、ハードウェアおよび／またはソフトウェア（ファームウェア、常駐のソフトウェア、マイクロコードなどを含む）において、具現化される。換言すれば、本発明の実施形態は、命令実行システムが使用するための、または命令実行システムと関連した媒体において具現化される、コンピュータが使用可能またはコンピュータ可読のプログラムコードを有するコンピュータが使用可能またはコンピュータ可読の記憶媒体上の、コンピュータプログラム製品という形式をとっても良い。コンピュータが使用可能またはコンピュータが可読の媒体は、命令実行システム、器具または装置が使用するため、または命令実行システム、器具または装置に関連したプログラムを含む、記憶する、伝達する、伝搬するまたは転送することが可能な任意の媒体としても良い。
【００４７】
コンピュータが使用可能またはコンピュータが可読の媒体は、例えば、電子、磁気、光、電磁、赤外線または半導体の、システム、器具、装置または伝搬媒体としても良いがこれに限定されない。さらに具体的なコンピュータ可読媒体の例（包括的でない一覧）として、コンピュータ可読媒体に含まれるものには以下のものがある。すなわち、１つまたは複数の配線を有する電気的接続、携帯用コンピュータディスク、ＲＡＭ（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）、ＲＯＭ（ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ）、ＥＰＲＯＭ（ｅｒａｓａｂｌｅ  ｐｒｏｇｒａｍｍａｂｌｅ  ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ）、光ファイバ、および携帯用ＣＤ−ＲＯＭ（ｃｏｍｐａｃｔ  ｄｉｓｃ  ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ）。ここで、コンピュータが使用可能またはコンピュータが可読の媒体は、プログラムが印刷される紙または別の適切な媒体であっても良く、何故なら、プログラムが、例えば、紙または別の媒体を光学走査することにより電気的に取り込まれ、その後、コンパイルされ、解釈され、または、必要に応じて適切な様式で他の方法で処理され、そしてコンピュータメモリに記憶させることができるからである。
【００４８】
本発明の実施形態は、例えば、本発明の実施形態に従って方法、システムおよびコンピュータプログラム製品のブロック図および／または操作上の例を参照して上述される。ブロック内に示される機能／動作は、任意のフローチャートに示されるものとは異なる順番で発生することができる。例えば、連続して図示される２つのブロックは、関係する機能性／動作に依存して、実際にはほぼ同時に実行されることもあり、または、そのブロックが逆の順番で実行されることもあり得る。
【００４９】
本発明の特定の実施形態について記載されたが、他の実施形態が存在しても良い。さらに、本発明の実施形態はメモリおよび他の記憶媒体に記憶されるデータに関連するものとして記載されたが、データは、ハードディスク、フロッピーディスクもしくはＣＤ−ＲＯＭのような補助記憶装置、インターネットからの搬送波、または他の形式のＲＡＭもしくはＲＯＭなどの他のタイプのコンピュータ可読媒体に対して記憶または読み込みが行われても良い。さらに、開示される方法の段階は、本発明から逸脱することなく、段階の再順序付けおよび／または段階の挿入または削除を含む任意の様式で修正されても良い。
【００５０】
本明細書に含まれるコード内の著作権を含む全ての権利は本出願人に与えられるもので、本出願人の財産である。本出願人は、本明細書に含まれるコード内の全ての権利を保持および保有し、その素材の再現は、許可された特許の再現に関連する場合のみ再現が許可され他の目的では許可されない。
【００５１】
明細書には例が含まれる一方、本発明の範囲は以下の請求項により示される。さらに、明細書は構造的な特徴および／または方法論的な動作に特有の言語で記載されたが、請求項は上述されたその特徴または動作に限定されない。むしろ、上述された特有の特徴および動作は本発明の実施形態の例として開示される。
【図１】
2013528859.tif 000003
【図２Ａ】
2013528859.tif 000004
【図２Ｂ】
2013528859.tif 000005
【図３】
2013528859.tif 000006
【図４】
2013528859.tif 000007
【図５】
2013528859.tif 000008
【国際調査報告】
2013528859.tif 000009
2013528859.tif 000010