(57)【要約】【課題】ネットワーク構成のコンピュータ処理システムで遠隔ソースからアプリケーション及び第２の情報をクライアント・コンピュータに表示するためにインタラクティブ・リンクを配信する方法及びシステムを提供する。【解決手段】クライアント・コンピュータの要求に応答して、第１の通信接続を介して、コンピュータ・プログラムが組み込まれた情報コンテンツを検索し、アプリケーション・サーバへの第２の通信接続を確立するために組み込まれたコンピュータ・プログラム・コードを実行し、第２の通信接続を介してアプリケーション及び第２の情報を表示するプレゼンテーション情報を含む第１の情報を検索する。更に、第１の情報を検索してアプリケーション及び第２の情報を必要によって表示するために第２の通信接続を選択的に再確立するためのインタラクティブ・リンクを格納する。【選択図】図１
2011165209.tif 000002
【特許請求の範囲】
【請求項１】
複数のクライアント・コンピュータと複数のホスト・コンピュータとを有するネットワーク構成のコンピュータで、アプリケーションを表示するシステムにおいて、
アプリケーション・サーバにオペレーティング・システム環境情報を送信し、アプリケーション・サーバから１つ以上のコンテンツを表示するための表示指令を受信し、１つ以上のイベントをアプリケーション・サーバに送信し、アップデートされた表示に用いるプレゼンテーション情報に応じてアプリケーションと１つ以上のアップデートされたコンテンツを表示するためにアップデートされた表示に用いるプレゼンテーション情報をアプリケーション・サーバから受信し、そしてアプリケーションの動作状態を維持することが可能なクライアント装置において表示を行うクライアントと、
アプリケーション、１つ以上のコンテンツ、それに１つ以上のアップデートされたコンテンツをオペレーティング・システム環境情報に基づいて表示するために、表示のために用いられるプレゼンテーション情報を表示を行うクライアントに送信し、アプリケーション特有のビジネス論理を１つ以上のイベントに基づいて、クライアント・プレイヤーに送るためのアップデートされた表示指令を生成することが可能な、アプリケーション・サーバを含むアプリケーションを表示するシステム。
【請求項２】
オペレーション・サーバが表示を行うクライアントの動作状態を維持可能な請求項１記載のアプリケーションを表示するシステム。
【請求項３】
オペレーション・サーバが１つ以上のデフォルト・データ値を維持可能な請求項１記載のアプリケーションを表示するシステム。
【請求項４】
特定のデフォルト・データ値はアプリケーション特有のビジネス論理のパラメータである請求項３記載のアプリケーションを表示するシステム。
【請求項５】
複数のクライアント・コンピュータと複数のホスト・コンピュータとを有するネットワーク構成のコンピュータで、アプリケーションを表示する方法において、
クライアント・オペレーティング・システム環境情報をアプリケーション・サーバに送信可能である、表示を行うクライアントからアプリケーション・サーバへの接続を初期化する段階と、
表示指令と１つ以上のコンテンツをアプリケーション・サーバから表示を行うクライアントに送信する段階であって、表示指令はオペレーティング・システム環境情報に基づいており、表示を行うクライアントにアプリケーションと１つ以上のコンテンツを表示指令できる段階と、
表示を行うクライアントからアプリケーション・サーバに１つ以上のイベントを送信する段階と、そして
１つ以上のイベントに基づいてアプリケーション特有のビジネス論理をアプリケーション・サーバで実行してアップデートされた表示指令と１つ以上のアップデートされたコンテンツを表示を行うクライアントにアプリケーションとともに送信する段階と、
を含むアプリケーションを表示する方法。
【請求項６】
初期化は表示を行うクライアントに関する情報をアプリケーション・サーバに送信することを含む請求項５記載のアプリケーションを表示する方法。
【請求項７】
特定イベントの送信はユーザイベントの送信を含む請求項５記載のアプリケーションを表示する方法。
【請求項８】
表示を行うクライアントに関する動作状態情報を格納する段階を含む請求項５記載のアプリケーションを表示する方法。
【請求項９】
表示を行うクライアントが実行している装置に動作状態情報を格納する段階を含む請求項８記載のアプリケーションを表示する方法。
【請求項１０】
アプリケーション・サーバに動作状態情報を格納する段階を含む請求項８記載のアプリケーションを表示する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
優先権は、U.S.C.１１９（ｅ）により、１９９９年９月１４日に出願された、Louis M. Franco他の「クライアント/サーバ環境におけるアプリケーションの配信方法及びシステム」と題する同時係属仮出願第６０/１５３、９１７号に基づき、これと共に請求する。この仮出願の開示は、そのまま本書に引用されている。
著作権表示
この特許文書の開示部分は、著作権保護を受ける資料を含んでいる。この著作権者は、特許及び商標庁の特許ファイルまたは記録物にあるように、特許文書または特許の開示に関するいかなる者によるファクス複製に対し異議を申し立てることはないが、いかなる場合も著作権はすべて保有されている。
本発明は、概してコンピュータ処理システムに関するもので、特にネットワークの遠隔ソースに格納されたアプリケーション及び情報へのインタラクティブ・リンクを配信するための客体指向接近法に関するものである。
【背景技術】
【０００２】
全てのコンピュータ・システムの重要な関心は、人間ユーザとコンピュータとのインターフェースである。初期インターフェースの形態は、テキスト基盤であった。テキスト基盤インターフェースにおいては、ユーザは、キーボードでテキスト文字をタイピングすることによってコンピュータと通信をし、コンピュータは表示スクリーンまたはモニタにテキスト文字を表示することによってユーザと通信を行う。最近はグラフィック・ユーザ・インターフェース(GUI)がますます大衆化された。GUIにおいて、コンピュータは、テキストとイメージを含むグラフィックスをモニタ上に表示することによりユーザと通信し、ユーザは、テキスト命令をタイピングしたり、例えば、マウス、トラックボール、感圧パッド、電子スタイラスまたはペンなどのデバイスで表示されたイメージを操作することによりコンピュータとの通信を行う。
【０００３】
多くのGUIは、ウィンドウズ（登録商標）環境ウィンドウズ（登録商標）と呼ばれる動作環境で具現される。ウィンドウズ（登録商標）環境で、コンピュータモニタ上の表示は、電子「デスクトップ」として表現され、コンピュータ上で利用可能な各アプリケーション・プログラムは、デスクトップ上の「アイコン」として表現されて、コンピュータ上で運用される各アプリケーション・プログラムは「ウィンドウズ（登録商標）」として称されるモニタの領域に表示される１つ以上の電子「シート」として表現されることができる。
【０００４】
一般的に言えば、アプリケーション・プログラムは、イメージ、グラフィックまたはテキストをウィンドウズ（登録商標）領域内にドローイングしたり、「レンダリング」することで、ウィンドウズ（登録商標）を通じてユーザに情報を提供する。ユーザは、ポインティング・デバイスにより制御されるカーソルでウィンドウズ（登録商標）領域内のオブジェクトを選択することにより、または情報をキーボードでタイピングすることにより、アプリケーション・プログラムとの通信を行う。ウィンドウズ（登録商標）環境で、ユーザが簡単な方法でデスクトップの外観を配列したりカスタマイズできるように、オブジェクト及びウィンドウズ（登録商標）領域は、デスクトップの周囲で操作されたり移動され、大きさ及び外観の変更が可能である。ポインティング・デバイスを利用してオブジェクトをキャプチャし、１つのウィンドウズ（登録商標）領域から他のウィンドウズ（登録商標）領域に、または１つのウィンドウズ（登録商標）領域内からデスクトップ上の他の場所に移動するオブジェクトの操作を一般的に「ドラッグ・アンド・ドロップ」動作と称する。
【０００５】
前述したウィンドウズ（登録商標）環境は、通常的なコンピュータのオペレーティング・システムの一部である。オペレーティング・システムは、また通常に表示モニタ上にオブジェクトをレンダリングし、メモリーデバイス上に情報を格納して検索して、ファイル処理を遂行してネットワークとの通信を行うといった基本的なタスクをコンピュータ・システムが遂行できるようにするユーティリティ・プログラムを含む。アプリケーション・プログラムは、オペレーティング・システムと相互作用してユーザとの直接的なインターフェースを提供し、例えばワードプロセシングや他の特定タスクを遂行する等の更に高いレベルの機能をユーザに提供する。したがって、コンピュータは、表示モニタ上のオブジェクトの配列を含む、オペレーティング・システムとアプリケーション・プログラムの動作を調整するメカニズムを含む。
【０００６】
コンピュータ処理システムは、時々「クライアント/サーバ」構成のようなネットワーク上で実行される。クライアント/サーバ構成では、多数のパーソナル・コンピュータ、ワークステーション、携帯用及び/またはハンドヘルド型デバイス等(「クライアント」)が１つ以上のホスト・コンピュータ(「サーバ」)と接続して通信する。サーバは、ネットワークを通じてクライアントにより共有されるアプリケーション・プログラムに対するクライアントからの情報及び/または要求を処理する。最近、多くのローカル及び広域公衆及び私設ネットワークらが互いに接続して、通常インターネットと呼ばれる広域ネットワークのネットワークを形成する。インターネットは、ネットワーク上の個別的なノードまたはサイトに格納された豊かな情報及びサービスへのアクセスを許容する。インターネットにおける特に重要なサブセットがワールド・ワイド・ウェブまたは「ウェブ」である。ウェブは、インターネット通信にグラフィック性能を導入したものである。
【０００７】
一般的にウェブサイトと呼ばれるウェブ上のサイトは、例えばハイパ・テキスト・トランスポート・プロトコル(HTTP)のような特定通信プロトコル及びウェブ上のネットワーク接続を規定するための特定構文を含むユニホーム・リソース・ロケータ(URL)を利用して、共に接続されたり連結される。HTTPは、ユーザの主要な関心事を含むウェブサイトとユーザとの間の情報交換を可能にする。ユーザの側面では、ウェブは、色々なウェブサイトに存在する視認可能な文書またはウェブページの集合として現れる。ユーザは、通常、ウェブ・ブラウザと呼ばれるソフトウェアを実行することによってウェブページへのアクセスを行う。ユーザのコンピュータ上で運用されるウェブ・ブラウザは、ユーザの関心対象のウェブページを格納する特定ホスト・コンピュータ(すなわち、ウェブサーバ)に接続するための命令(希望のURLを含む)を伝送する。ハイパーリンクのようなリンクは、通信プロトコル下で生成される。リンクを選択してウェブブラウザを採用することにより、ユーザは、１つの文書から他の文書へ及び１つのウェブサイトから他のウェブサイトへの「航海」を行って、ウェブを通じて利用できる情報コンテンツ及びサービスをアクセスすることができる。
【０００８】
インターネットの利用が最も速い速度で増えていることの１つが、商業的な手段としてである。ウェブの利用で達成される全世界的なアクセスによって、ウェブは、販売中の製品及び/またはサービスを提供するウェブサイトを「ランチング 」することにより市場に進入することもできて、中小企業及び大企業のいずれにも理想的である。その結果、ウェブのユーザに利用可能な情報コンテンツ及びサービスは、相当量に達し、日ごとに益々成長している。
【０００９】
ウェブの成功にもかかわらず、ユーザ及び企業のいずれの立場においても問題点が存在する。例えば、ユーザは、ウェブ上の途方もない数のサイトから関心を持っているアイテムまたはサービスの位置を確認しなければならず、同様に企業も望みの顧客の関心を集めて維持するために競争者と自身を区別しなければならない。
【００１０】
サーチエンジンは、ユーザが関心を持っているコンテンツとサービスの位置を確認するのに役立つ。しかし、検索ツールで武装しているとしても、ウェブ上で現在動作している数万個のウェブサイトから、関心を持っている情報コンテンツ及びサービスの位置を確認して検索することは面倒なことである。検索結果は、通常、あまりにも多くのウェブサイトを提供するので、その結果を検討して検索範囲を狭めようという努力は、あまりにも面倒なことになる場合がある。
【００１１】
ウェブ上で自身の製品及び/またはサービスを区別するために、企業は、時々テレビ及び/または印刷広告のような通常媒体にウェブサイト名を広告する。また、企業は、多数の人気のあるウェブサイトに、費用が高く、視覚的に楽しませる広告が提供されるウェブ基盤ソリューションを採用することもできる。通常「バナー広告」と呼ばれる広告は、企業のウェブサイトへのリンクを含む。したがって、バナー広告が選択される場合、ユーザは、製品/サービスに関する追加情報が表示される企業ウェブサイトに移動するようになる。
【００１２】
関心を持っているサイトの位置を確認したり顧客を集めるための、現在のシステム及び方法の短所は、関心を持っているサイトへのリンクが表示されたり既に失ったページから作用しなければならないという点である。言い換えれば、従来のシステム及び方法は、他のウェブサイトへの静的なリンクを含むウェブサイトを提供する。ユーザが他のウェブサイトを見るのに関心があるならば、ユーザは、それにより航海したり、後に利用するためにサイトのURLを格納しなければならない。よく分かるように、ユーザが重要であったり、時間が敏感なタスクを遂行しながら現在のサイトから離れて他のサイトへのリンクに従うことが好ましくないこともある。その結果、潜在的に価値のあるマーケティングまたは販売機会が損失される場合もある。
【００１３】
現在表示されているウェブサイトのアドレス(URL)を格納するための方法が存在している。そうした１つの方法は「ブックマーク」と称される。一度生成されさえすれば、ブックマークは、特定のウェブサイトのURLを検索し、ユーザのブラウザを指向させてURLに該当するページを表示するようにする手段を提供する。ブックマークは、ユーザが関心を持っているサイトのURLを手動で入力したり、周知のリンクを通じてウェブサイトに到達するためにインターネットを通じて経路を再追跡(再航海)する必要性をなくしてくれる。しかし、ブックマークは、２つの面において制限的である。まず、ウェブページは、必ず表示された後に、ウェブページに対応するURLがブックマークとして格納できる。第二に、ブックマークは、ウェブサイトの以前の動作状態に関する情報を維持しない。例えば、ブックマークは、商業上取引を完了させるための様式のような、以前に表示されたウェブページをユーザにリターンさせることもできるが、様式により完成した情報は、通常格納されない。すなわち、「クーキー」と呼ばれる他の追跡方法を通じて情報が利用されないならば、完成された情報は、通常格納されない。クーキーは、一旦ブラウザが望みのウェブページを再ローディングし、その中に含まれたアプリケーションを発動させると、参照になる追跡情報をユーザ・コンピュータ上に維持する。一旦アプリケーションが実行されれば、以前に入力されてクーキーに格納された情報は、アプリケーションで復元できる。しかし、通常、クーキーは、時間に敏感で、ユーザが関心のあるサイトへの再航海を試みる前に満了する場合がある。また、クーキーは、元のトランザクションが発生したコンピュータ上のみに格納される。ユーザが他のコンピュータからサイトにアクセスするならば、追跡情報を利用できない。
【００１４】
したがって、選択された場合、ネットワークを通じて遠隔位置に格納されたアプリケーション及び/または情報を検索し、提供するインタラクティブ・リンクをユーザのコンピュータ上に格納する必要がある。また、アプリケーションがユーザのコンピュータに再度提供される時、アプリケーションの以前の動作状態を復元するための方法を含むインタラクティブ・リンクが必要である。
【先行技術文献】
【特許文献】
【００１５】
【特許文献１】米国仮出願第６０/１５３，９１７号
【発明の概要】
【発明が解決しようとする課題】
【００１６】
したがって、本発明の目的及び長所は、ネットワークを介して遠隔に格納したアプリケーション及び情報へのインタラクティブ・リンクを提供することである。
【課題を解決するための手段】
【００１７】
また、本発明の目的及び長所は、遠隔に格納したアプリケーション及び情報へのインタラクティブ・リンクのグラフィック表現を提供することにあり、グラフィック表現は、クライアント・コンピュータにダウンロードでき、遠隔に格納したアプリケーション及び情報を検索してクライアント・コンピュータに表示するように選択的に利用される。
更に、本発明の目的及び長所は、遠隔に格納したアプリケーション及び情報へのインタラクティブ・リンクのグラフィック表現を提供することにあり、グラフィック表現は、遠隔に格納したアプリケーション及び情報を選択的に検索して各クライアント・コンピュータに表示するための１つ以上のクライアント・コンピュータにダウンロードでき、かつ、その間で配信可能である。
【００１８】
更に、本発明の目的及び長所は、遠隔に格納したアプリケーション及び情報へのインタラクティブ・リンクのグラフィック表現を提供することにあり、遠隔に格納したアプリケーション及び情報を検索してクライアント・コンピュータに表示するように選択的に利用された場合には、アプリケーション及び情報の移転動作状態への復元が可能である。
【００１９】
また更に、本発明の目的及び長所は、遠隔に格納したアプリケーション及び情報へのインタラクティブ・リンクのグラフィック表現を提供することにあり、グラフィック表現は、クライアント・コンピュータにダウンロードでき、遠隔に格納したアプリケーション及び情報を識別するための商業的に識別可能な画面の様子を有している。
【００２０】
本発明の追加的な目的及び長所は、添付図面及びこれを参照した詳細な説明から更に明らかになる。
【００２１】
本発明の実施例に係る方法及び装置により前記目的及び長所が実現され、ネットワーク構造のコンピュータ処理システム内で遠隔ソースからアプリケーション及び情報を検索するためのインタラクティブ・リンクが提供される。
【００２２】
１つの実施例において、インタラクティブ・リンクを配信する方法は、第１の遠隔ソース(例えば、コンテンツ・プロバイダ)でその内部に組み合わせられたコンピュータ・プログラム・コードを有する情報コンテンツ(例えば、アプリケーション及び情報)を格納することを含む。この方法はコンテンツ・プロバイダへの第１の通信接続を介してシステムのクライアント・コンピュータにより情報コンテンツを検索することを含む。情報コンテンツの検索に応答して、この方法は、ネットワーク上で第２の遠隔ソース(例えば、アプリケーション・サーバ)への第２の通信接続を確立するための情報コンテンツに組み合わせられたコンピュータ・プログラム・コードをクライアント・コンピュータで実行すること及び第２の通信接続を介して遠隔に格納したアプリケーション及び情報をアプリケーション・サーバに提供することを含む。遠隔に格納したアプリケーションは、クライアント・コンピュータに関心を持っている機能を提供するためのアプリケーション・サーバで実行可能である。第２の通信接続を介して提供された情報は、遠隔に格納したアプリケーションの構成要素をレンダリングするための少なくとも１つの指令、構成要素内に表れるデフォルト・パラメータ及びデータ値及びアプリケーションへの入力を処理するためのアプリケーション専用ビジネス論理を含む。
【００２３】
また、この方法は、遠隔に格納したアプリケーション及び情報を必要によって呼び出して表示するためのアプリケーション・サーバへの第２の通信接続を選択的に再確立するためのインタラクティブ・リンクをクライアント・コンピュータ上に格納することを含む。
【００２４】
更に、方法は第１の通信接続を介して配信された情報コンテンツ内からインタラクティブ・リンクのグラフィック表現をクライアント・コンピュータにダウンロードし、クライアント・コンピュータの動作環境を示す情報及びアプリケーション・サーバのネットワーク・アドレスを含むファイルをグラフィック表現に関連して、グラフィック表現をクライアント・コンピュータに表示することを含む。グラフィック表現のダウンロードは、改善されたドラッグ・アンド・ドロップ操作により達成されるのが好ましい。
【００２５】
好ましい実施例によれば、インタラクティブ・リンクのグラフィック表現は、インタラクティブ・リンクにより呼び出されて遠隔に格納した各アプリケーション及び情報を識別するための情報及びグラフィック表現がインタラクティブ・リンクであるということを示すシンボルを含む。１つの実施例において、識別情報はアイコン及び遠隔に格納したアプリケーション及び情報の商業的に認識可能なブランド名を示すラベルのうち、少なくとも一方または両方を含み、シンボルは、ティアドロップ型シンボルである。
【００２６】
一旦、インタラクティブ・リンク及びグラフィック表現がダウンロードされれば、グラフィック表現を選択できる。選択に応答して、この方法はグラフィック表現に関連したファイルのコンテンツをアクセスし、インタラクティブ・リンクに関連した、遠隔に格納したアプリケーション及び/または情報を呼び出して表示するためのアプリケーション・サーバへの第２の通信接続を再確立することを含む。
【００２７】
また、他の実施例において、この方法は、特定ユーザのための遠隔に格納したアプリケーション及び/または情報の第１の動作状態を示す情報をアプリケーション・サーバに格納し、グラフィック表現の選択に応答して遠隔に格納したアプリケーション及び/または情報が特定ユーザに提供される時、第１の動作状態の情報を提供することを含む。
【００２８】
更に、他の実施例において、この方法は、次のクライアント・コンピュータにおいて遠隔に格納したアプリケーション及び情報を呼び出して表示するアプリケーション・サーバへの第２の通信接続を選択的に確立するために、次のクライアント・コンピュータの動作が可能なように次のクライアント・コンピュータにインタラクティブ・リンクの複写本を送信することを含む。この実施例において、ネットワーク構成コンピュータ処理システムのクライアント・コンピュータ間のインタラクティブ・リンクの送信を追跡するための情報を格納することもできる。
【００２９】
好ましい実施例において、ネットワーク構成コンピュータ処理システムは、インターネット接続を含み、クライアント・コンピュータは、遠隔に格納したアプリケーション及び情報へのリンクのためのデスクトップ基盤格納所及びリンクのためのインターネット基盤格納所を含む。したがって、インタラクティブ・リンクはデスクトップ基盤格納所またはインターネット基盤格納所に選択的に格納することもできる。他の方法としては、デスクトップ基盤格納所及びインターネット基盤格納所にリンクを格納する。
【００３０】
本発明によれば、コンピュータ処理システムは、以下のように構成されて動作する。このシステムは、各々がアプリケーション・コード、オペレーティング・システム・プログラム・コード及びその上で動作するプレゼンテーション・クライアント・プログラム・コードを含む複数のクライアント・コンピュータを含む。アプリケーション・プログラム・コードは情報コンテンツ、アプリケーション及びネットワークを介して遠隔に格納した情報を要求する。また、システムは、情報コンテンツを格納する第１のサーバ・コンピュータ(例えば、コンテンツ・プロバイダ)を含む。所定の情報コンテンツは、その内部に組み合わせられたコンピュータ・プログラム・コードを含む。コンテンツ・プロバイダは、クライアント・コンピュータからの要求に応答して情報コンテンツを配信する。第２のサーバ・コンピュータ(例えば、アプリケーション・サーバ)は、システム内に含まれる。アプリケーション・サーバは、クライアント・コンピュータで関心を持っている機能を提供するために呼び出されることもあるアプリケーションを格納する。また、アプリケーション・サーバは、アプリケーションの構成要素をレンダリングするための少なくともいずれかの指令、構成要素内に表れるデフォルト・パラメータ及びデータ値及びアプリケーションへの入力を処理するためのアプリケーション専用ビジネス論理を含むプレゼンテーション情報などの情報を格納する。
【００３１】
また、システムは要求するクライアント・コンピュータとアプリケーション・サーバ間の通信接続を含む。通信接続は、所定の情報コンテンツのうち、１つの最初の配信及びその内部に組み合わせられたコンピュータ・プログラム・コードの実行に応答して形成される。通信接続を利用するプレゼンテーション・クライアント・プログラム・コードは、要求するクライアント・コンピュータ上に遠隔に格納したアプリケーション及び情報の機能を提供する。通信接続は、遠隔に格納したアプリケーション及び情報の終了時に解除される。また、システムは、アプリケーション・サーバへの通信接続を選択的に再形成し、遠隔に格納したアプリケーション及び情報を再び呼び出して、要求するクライアント・コンピュータ上で遠隔に格納したアプリケーションの機能をまた表示するように、要求するクライアント・コンピュータに格納されるインタラクティブ・リンクを含む。
【００３２】
所定の情報コンテンツは、インタラクティブ・リンクを含むことが好ましい。クライアント・コンピュータ上に格納された場合、インタラクティブ・リンクはクライアント・コンピュータ上に提供される遠隔に格納したアプリケーション及び情報のグラフィック表現及びクライアント・コンピュータの動作環境を示す情報及びアプリケーション・サーバ・コンピュータのネットワーク・アドレスを有するファイルを含む。この好ましい実施例で、グラフィック表現は、グラフィック表現がインタラクティブ・リンクのものであることを示すシンボル及びアイコンと、遠隔に格納したアプリケーション及び商業的に認識可能な情報のブランド名を示すラベルのうちの少なくとも一つを含む。
【００３３】
また、他の実施例において、アプリケーション・サーバは、クライアント・コンピュータで特定ユーザに提供される遠隔に格納したアプリケーション及び情報の第１の動作状態を示す情報を格納するためのデータ格納所を含む。したがって、システムは、遠隔に格納したアプリケーション及び情報が同様であり、また１つのクライアント・コンピュータで特定ユーザに提供される時、データ格納所から以前動作の状態情報を検索し、配信して表示するデバイスを含む。
また、他の実施例において、システムは、次のクライアント・コンピュータでインタラクティブ・リンクの複写本を送信及び格納するデバイスを含む。リンクが格納された場合、遠隔に格納したアプリケーション及び情報を選択的に要求し、次のクライアント・コンピュータとアプリケーション・サーバ間の通信接続を形成するように、次のクライアント・コンピュータが動作可能である。システムは、クライアント・コンピュータ間のインタラクティブ・リンクの送信を追跡する情報を格納するデータ格納所を含む。
【図面の簡単な説明】
【００３４】
【図１】図１は、本発明の一実施例によって構築され動作するドロップレット使用可能クライアント／サーバ・システムの例を示すブロック図である。
【図２】図２は、本発明の一実施例に係るドロップレット使用可能アプリケーションを含むウェブページを示す。
【図３】図３は、本発明の一実施例によって動作するドロップレット使用可能クライアント・コンピュータとアプリケーション・サーバ間のメッセージのフローを示す単純化した流れ図である。
【図４Ａ】図４Ａは、本発明の一実施例に係る改善されたドラッグ・アンド・ドロップ動作を示す。
【図４Ｂ】図４Ｂは、本発明の一実施例に係る改善されたドラッグ・アンド・ドロップ動作を示す。
【図４Ｃ】図４Ｃは、本発明の一実施例に係る改善されたドラッグ・アンド・ドロップ動作を示す。
【図４Ｄ】図４Ｄは、本発明の一実施例に係る改善されたドラッグ・アンド・ドロップ動作を示す。
【図５】図５は、局所的に格納されたインタラクティブ・リンクの選択例及び対応するドロップレット使用可能アプリケーションの例示的な呼出し結果を示す。
【図６】図６は、特にイベントチャンネル通信方式が強調された場合における図１のシステムの簡略化したブロック図である。
【図７】図７は、従来のアプリケーション構造と比較したドロップレット使用可能アプリケーションの例示的な論理構造を示す。
【図８】図８は、本発明の一実施例によって構築され動作するドロップレット使用可能クライアント／サーバ・システム例の簡略化したブロック図である。
【発明を実施するための形態】
【００３５】
本発明の前記及び他の特徴は、添付図面を参照にした以下の詳細な説明を通じて、より明らかになる。
【００３６】
図面において相違する図面に現れて同一に付与された構成要素は、同一の要素を示すように意図したが、すべての図面に対する説明で参照されるものではない。
【００３７】
図１は、本発明によって構築され動作するクライアント／サーバ構成のコンピュータ処理システム１０の全体的な構造を示す。説明の目的上、図１は、ネットワークを通じてコンテンツ・プロバイダ３０及びアプリケーション・サーバ４０に動作できるように結合された１つのクライアント・コンピュータ２０を示す。しかし、本発明は、システム１０が２つ以上のホスト／サーバ・コンピュータにネットワーク５０を通じて動作できるように接続される複数のクライアント・コンピュータを含むと考えられる(図８を参照して後述する)。ここで、コンテンツ・プロバイダ３０及びアプリケーション・サーバ４０は、２つの分離されたコンピュータとして説明しているが、これらのコンピュータ３０及び４０が２つの論理的に分離された機能を行う同一な物理的コンピュータであり得ることも本発明の範囲に含まれる。望ましい実施例において、ネットワーク５０は、例えば、インターネット、イントラネットまたはエキストラネットのようなパケット・スイッチング・ネットワークである。ネットワーク５０がクライアント・コンピュータとサーバ・コンピュータ間の有線及び無線接続を有することも本発明の範囲に含まれることは明白である。
【００３８】
コンテンツ・プロバイダ３０は、例えば、ネットワーク５０を通じてユーザにより共有されるアプリケーション３２や情報３４のような情報コンテンツ３６に対するクライアント・コンピュータ２０からの要求をサービスする。本発明によれば、通信接続５２を通じてコンテンツ・プロバイダ３０によりクライアント・コンピュータ２０に配信される情報コンテンツ３６は、１つ以上のリンク６２及び「ドロップレッツ」（droplets）（登録商標）６４を含むことができる。例えば、クライアント・コンピュータ２０に配信される文書６０は、リンク６８及びドロップレット７０を含む。一部の実施例において、「ドロップレッツ」（droplets）（登録商標）は、クライアント・コンピュータ２０上で具現されるアプリケーションまたはアプリケーション・セットであり、参照符号８０で表示されたクライアント・コンピュータ２０のオペレーティング・システム及び(クライアント・コンピュータ２０に設置された)プレゼンテーション・クライアント２５と組み合わせて、情報４３を検索し、クライアント・コンピュータ２０上に遠隔格納されたアプリケーション４１の機能を提供するアプリケーション・サーバ４０と通信接続５４を確立する。以下では、「ドロップレッツ」（droplets）（登録商標）を含む情報コンテンツ３６を「ドロップレット使用可能」コンテンツと言う。
【００３９】
一実施例において、要求されたアプリケーション３２及び／または情報３４は、アプリケーション・サーバ４０上で遠隔実行されるアプリケーション４１によりクライアント・コンピュータ２０上に提供される機能を含む。すなわち、ドロップレット７０がクライアント・コンピュータ２０上で実行されることによって、アプリケーション４１は、ドロップレット７０により呼び出される。以下で詳細に説明するように、配信された情報コンテンツ３６内のリンク(例えば、リンク６８)は、選択される場合に情報４３を検索し、クライアント・コンピュータにアプリケーション４１の機能を表示するために、アプリケーション４１を呼び出すインタラクティブ・リンク７２としてクライアント・コンピュータ２０に局所的に格納されることができる。特に、アプリケーション４１により表示される機能の後続検索を行う場合、元来アプリケーション４１にリンク６８(今はインタラクティブ・リンク７２として局所的に格納される)を提供したアプリケーション３２及び／または情報３４に対する検索は不要である。むしろ、クライアント・コンピュータ２０で要求される機能を提供するように、アプリケーション・サーバ４０上でアプリケーション４１を直接呼び出して実行させるために、インタラクティブ・リンク７２を利用することができる。ドロップレット使用可能コンテンツ及びアプリケーションの初期及び後続検索は、以下でより詳細に説明する。
【００４０】
まず、「ドロップレッツ」（droplets）（登録商標）は、リンク６２及び「ドロップレッツ」（droplets）（登録商標）６４を含む情報コンテンツ３６、例えばリンク６８及びドロップレット７０を含む文書６０がクライアント・コンピュータ２０に配信される時に実行される。すなわち、ドロップレット７０が実行され、クライアント・コンピュータ２０にロードされたことをドロップレット・プレゼンテーション・クライアント２５に通知する。次に、ドロップレット７０は、ドロップレット・プレゼンテーション・クライアント２５及びクライアント・コンピュータ２０のオペレーティング・システム・ソフトウェアと組み合わせて、アプリケーション・サーバ４０への通信接続５４を確立する。リンク６８は、アプリケーション４１を呼び出し、ネットワーク５０上の遠隔位置に位置した情報４３を検索する情報コンテンツ３６内に表示されたインタラクティブ・リンクである。一旦通信接続５４が確立すると、ドロップレット７０は、起動メッセージをアプリケーション・サーバ４０に伝送する。ドロップレット７０からの起動メッセージの受信に応答して、アプリケーション・サーバ４０は、関連アプリケーション４１を実行し、アプリケーション機能及び情報４３をクライアント・コンピュータ２０に提供する。
【００４１】
本発明によれば、「ドロップレッツ」（droplets）（登録商標）(例えば、ドロップレット６４及び７０)は、ダイナミックで薄いアプリケーションである。すなわち、「ドロップレッツ」（droplets）（登録商標）は、通常、クライアント・コンピュータ２０上の動作環境を識別する情報と、接続されるアプリケーション・サーバ４０と、一旦接続されれば、要求された機能をクライアント・コンピュータ２０に配信するように運用されるサーバ４０上のアプリケーションとを含む。クライアント・コンピュータ２０上の動作環境を識別する情報は、ドロップレット使用可能コンテンツ３６を要求した特定のクライアント・コンピュータ２０のオペレーティング・システム及びハードウェア性能に関する情報をアプリケーション・サーバ４０に提供する。すなわち、複数のクライアント・コンピュータ２０は、コンピュータ・ワークステーション、パーソナル・コンピュータ及び例えばラップトップ及びノートブック・コンピュータ、パーム・パイロット及びインターネット使用可能無線電話のような携帯用デバイスを含むことができる。当業者に自明なように、これらの各デバイス・プラットホームは、異なるユーザ・インターフェースを含む。そうしたものとして、あらゆるクライアント・コンピュータ２０が例えば、フルカラーの高解像度グラフィックを提供できるものではない。要求するクライアント・コンピュータ２０の動作環境をアプリケーション・サーバ４０に提供することによって、アプリケーション・サーバ４０は、要求されたアプリケーション４１をクライアント・コンピュータ２０に表示するように情報４３を提供する。情報４３は、例えば、表示されたアプリケーション４１内のグラフィック・オブジェクトをレンダリングするための指令、アプリケーション４１内で表示されるデフォルト・パラメータまたはデータ値４４及びアプリケーション４１への入力を処理するためのアプリケーション専用ビジネス論理４６を含む。
【００４２】
本発明の一様態によれば、ドロップレット・アプリケーション開発者は、異なるインターフェース(UI)要求を有するクライアント・コンピュータに特定機能を提供するための各アプリケーションのドロップレット使用可能アプリケーションまたは支援バージョンを生成する。例えば、ドロップレット使用可能電子メール・アプリケーションは、第１のバージョンがフルカラーの高解像度グラフィックを提供する性能を有するパーソナル・コンピュータ上で動作し、第２のバージョンがテキスト処理性能のみを有するインターネット使用可能無線電話上で動作させるような、様々な方式で実行されることができる。この本発明の様態によれば、ドロップレットは、異なるクライアント環境中のひとつ及び、特にクライアントUI要求を、例えば、第１のバージョンを要求するパーソナル・コンピュータに、そして第２のバージョンを要求する無線電話に自動的に提供するアプリケーション・サーバ４０と通信する。他の方法としては、「ドロップレッツ」（droplets）（登録商標）は、クライアント・オペレーティング・システムまたは他の局所的に格納されたデータからUI要求を決定することができる。
【００４３】
「ドロップレッツ」（droplets）（登録商標）は、限定された量のデータを格納するので、すなわちアプリケーション・サーバ４０への接続(例えば、通信接続５４)を確立する情報のみを必要とするので、「ドロップレッツ」（droplets）（登録商標）は、クライアント・コンピュータ上で最少量の格納空間、例えば、多くても５００Ｋバイト程度を要求する。同様に、実行する間に、「ドロップレッツ」（droplets）（登録商標）は、多くても約２Ｍバイトヒップ(ダイナミックメモリー割当空間)程度を消費する。したがって、多数の「ドロップレッツ」（droplets）（登録商標）は、同時に実行される他のアプリケーションに対して利用可能なメモリーを顕著に減少させることなく、同時に実行されることができる。ドロップレット・プレゼンテーション・クライアント２５は、完全な設置に約１Ｍバイトのローカル格納容量を要求する。一旦ドロップレット・プレゼンテーション・クライアント２５が局所的に設置されれば、クライアント・コンピュータ２０は、ドロップレット使用可能にされる。
【００４４】
一実施例において、ドロップレット(例えば、ドロップレット７０）は、レンダリング命令、パラメータ及び／またはアプリケーション・サーバ４０から受信されたデフォルト情報(すなわち、命令４２及び値４４)を無視するデータ値を含むことができることは明白である。
【００４５】
クライアント・コンピュータ２０とアプリケーション・サーバ４０との間でドロップレット７０により開始される通信接続５４がトランスペアレントであるが望ましい。すなわち、要求された情報コンテンツ３６がクライアント・コンピュータ２０の表示デバイス上に配信され表示された場合、ドロップレット７０が実行され、プレゼンテーション・クライアント２５で通信接続５４を確立する。前述したように、情報コンテンツは、クライアント・コンピュータ２０に機能を表示するように呼び出される遠隔格納されたアプリケーション４１へのリンクを含むことができる。例えば、アプリケーション４１に含まれたウィンドウ、編集ボックス、ドロップダウン・リスト、チェック・ボックス、ボタン及び／またはラベルのような色々なグラフィック・オブジェクト(GUIオブジェクト)を表示し支援するプレゼンテーション情報４３が、クライアント・コンピュータ２０の表示デバイスまたはモニタ上に機能が表示される時、通信接続５４を通じて受信される。
【００４６】
図２は、クライアント・コンピュータ２０のデスクトップ上に表示される「ストック・ウォッチャ」という表題下のドロップレット使用可能アプリケーション１００を示す。この実施例において、ストック・ウォッチャ・アプリケーション１００は、「マイクロソフト・インターネット・エクスプローラ」（MICROSOFT Internet Explorer）（登録商標）ウェブ・ブラウザ・アプリケーションを用いて、全体的に参照番号１１０で示したようにウェブページ上のウィンドウ内に提供される。明らかなように、本発明は、ドロップレット使用可能アプリケーション、すなわちCDディスク、フロッピー（登録商標）ディスクまたは格納媒体などにより提供されたスタンドアロン・アプリケーション・プログラムのような非ウェブ基盤配信用の他のプレゼンテーション機構を考慮する。他の例示的な機構は、後述する。
【００４７】
周知のように、ウェブページ１０のようなウェブページは、ハイパーテキスト・マークアップ・ランゲージ(HTML)のようなソフトウェアを用いて構築される。ウェブページ(たとえば、ウェブページ１０)は、そのページ内の１つ以上の「ドロップレッツ」（droplets）（登録商標）の組み合わせによってドロップレットが使用可能にされる。ドロップレットは、例えばHTML言語の<applet>または<embed>のようなソフトウェア命令を用いて組み合わせることが望ましい。ウェブ・ブラウザがウェブページ１１０のようなドロップレット使用可能ウェブページ中に入ることによって、前述したように、ドロップレットのインスタンスが呼び出され、アプリケーション・サーバ４０との通信接続５４が開始される。したがって、ユーザがウェブページ１１０を航行することによって、ストック・ウォッチャ・アプリケーション１００と関連したドロップレットがウェブページ１１０中に入り実行される。ドロップレット・プレゼンテーション・クライアント２５と組み合わせられたドロップレットは、通信接続５４を通じてストック・ウォッチャ・アプリケーション１００を配信し、ウェブページ１１０内にアプリケーション１００を表示する。ウェブページ１００及びその対応するGUIオブジェクト、例えばテキスト・ボックス１２０、ドロップダウン・リスト１１４、無線ボタン１１６及び命令ボタン１１８がウェブページ１１０のロード時にウェブページ１１０内に表示されるので、一般にユーザがアプリケーション・サーバ４０に確立された通信接続５４を認識できないことは明白である。
【００４８】
ストック・ウォッチャ・アプリケーション１００は、ドロップレット・ハンドル１２０と呼ばれるオブジェクトを更に含む。図２は、アプリケーションのタイトルバー上にティアドロップ型アイコンを示す望ましい構成のドロップレット・ハンドル１２０を示す。詳細に後述するように、ドロップレット・ハンドルは、クライアント・コンピュータ２０上で選択されダウンロードされ、インタラクティブ・リンク(例えば、図１のリンク７２)をネットワーク５０を通じて遠隔格納されたドロップレット使用可能アプリケーション４１に格納するアイコン、グラフィックイメージ、またはテキスト列である。
【００４９】
本発明によれば、「ドロップレッツ」（droplets）（登録商標）は、多様なコンピュータハードウェア及びソフトウェアのプラットホーム上で実行されることができる包括的で普遍的なアプリケーションである。例えば、簡単に前述したように、ドロップレット使用可能クライアント／サーバ・システム１０は、インターネット環境で具現されることもできる。このような点から、ドロップレットは、ウェブページのロード時に呼び出されるダウンロード可能なジャバ・アプレット、アクティブＸコントロール、ジャバ、Ｃ＋＋または他の適切なプログラミング言語で書き込まれたブラウザ・プラグインまたは他のマルチメディア・オブジェクトを含むことができる。ウェブ基盤の具現において、「ドロップレッツ」（droplets）（登録商標）は、クライアント・コンピュータ２０で運用されるドロップレット・プレゼンテーション・クライアント２５及びウェブ・ブラウザと組み合わせて、アプリケーション・サーバ４０への通信接続５４を確立し、ウェブページ上にドロップレット使用可能アプリケーション４１及び情報４３を提供する。
【００５０】
また、「ドロップレッツ」（droplets）（登録商標）は、クライアント・コンピュータ２０に設置され実行されるスタンドアロン・ソフトウェア・アプリケーション内に含まれることもできる。アプリケーション・サーバ４０への接続がスタンドアロンの具現においてより望ましいので、「ドロップレッツ」（droplets）（登録商標）は、アプリケーション・サーバ４０への通信接続５４を確立するための性能及びスタンドアロン・アプリケーション内での利用のためのドロップレット使用可能アプリケーション４１及び情報４３を提供するための性能を含む。したがって、「ドロップレッツ」（droplets）（登録商標）、ドロップレット・プレゼンテーション・クライアント２５、クライアント・コンピュータ２０のローカル・オペレーティング・システム８０及びクライアント・コンピュータ２０上で実行されるウェブ・ブラウザまたはスタンドアロン・ソフトウェア・プログラムが組み合わせられて、例えばソケット接続またはHTTPトランザクションを送受信するような通常の手段を通じてアプリケーション・サーバ４０への通信接続５４を確立する。
【００５１】
当業者に自明なように、アプリケーション・サーバへの接続を確立する「ドロップレッツ」（droplets）（登録商標）、ドロップレット・プレゼンテーション・クライアント２５、クライアント・コンピュータ２０のローカル・オペレーティング・システム８０及びクライアント・コンピュータ２０で運用されるウェブ・ブラウザまたはスタンドアロン・ソフトウェア・プログラム間の組み合わせは、情報の通信及び共有及び多様な機能及びプログラミング・インターフェース(一般的にAPIと呼ばれる)を含む。すなわち、本発明の望ましい実施例において、標準オペレーティング・システム・インターフェースが利用されて、例えばウィンドウ管理、GUI及びマルチメディア・オブジェクト管理、ソケット及びネットワーク接続を確立するシステム・サービスの手順、及び遠隔実行されるアプリケーション、ドロップレット、局所的に実行されるアプリケーション及び基盤オペレーティング・システム間の一般的な任意の統合のようなクライアント・コンピュータ２０の特徴及び機能をアクセスし、生成し、制御し、操作する。
【００５２】
ウェブ基盤具現かスタンドアロン具現かにかかわらず、情報４３、すなわち配信されたドロップレット使用可能アプリケーション内でグラフィック・オブジェクトをレンダリングするための命令４２、ドロップレット使用可能アプリケーション４１内に表示されるデフォルト・パラメータまたはデータ値４４及びドロップレット使用可能アプリケーション４１への入力を処理するためのアプリケーション専用ビジネス論理４６が要求するクライアントの動作環境(例えば、クライアント・コンピュータのオペレーティング・システム、ユーザ・インターフェース及びハードウェア性能)に従ってアプリケーション・サーバ４０により提供される。
【００５３】
一実施例において、ユーザは、アプリケーション・サーバ４０への通信接続５４、例えばインターネット接続ができないか、又は接続しないことがより好ましい場合、アプリケーション・サーバ４０によりクライアント・コンピュータ２０に情報４３が提供され、次の利用のために格納される。本実施例において、例えば遠隔格納されたアプリケーション４１及び情報４３は、ダウンロードされ、クライアント・コンピュータ２０に局所的に設置されるか、又は格納される。局所的に設置されたアプリケーション４１は、前述したように、リンクを選択することによってクライアント・コンピュータ２０上に呼び出されて、実行されることができる。本発明の一様態において、アプリケーション・サーバ４０は、クライアント・コンピュータ２０の性能を評価し、クライアント・コンピュータ２０上のローカル設置のためのアプリケーション４１及び／または情報４３の全部または一部を自動的にダウンロードすることもできる。このような側面で、局所的に設置されたアプリケーション(例えば、ネイティブ実行可能な形態）は、少なくともその一部実行時にアプリケーション・サーバ４０からレンダリング命令４２、デフォルト・パラメータ４４またはアプリケーション専用論理４６を受信する必要なく実行されることができる。
【００５４】
本発明の一様態によれば、ドロップレット使用可能アプリケーション４１とアプリケーション・サーバ４０間の情報伝送のためのネットワーク通信プロトコルが規定される。プロトコルは、アクティブに動作するドロップレット使用可能アプリケーション４１のGUI構成要素のような構成要素と関連したイベントの特性がクライアント・コンピュータ２０とアプリケーション・サーバ４０との間で通信される多数のメッセージ・フォーマットを含む。メッセージ・フォーマットは、例えば、
１.イベント通知−GUIの構成要素の値または特性が変更されたことを知らせるクライアント・コンピュータ２０からアプリケーション・サーバ４０に伝送されるメッセージ。イベントは、例えば、テキスト・ボックスへのデータ・エントリ、GUIのドロップダウン・リスト及び無線及び命令ボタンのようなGUI構成要素の選択(クリック)を含む。また、メッセージは、電子メール・メッセージがドロップレット使用可能電子メール・アプリケーション内のホルダ内に移動するように、例えばドラッグ・アンド・ドロップ・イベントのような他のポインティング・デバイスまたはキーボード駆動アクションに応答して送信される。
２.更新命令−アプリケーション・サーバ４０上でアプリケーション・ドライバ、例えばドロップレット使用可能アプリケーションを支援するアプリケーション専用論理４６からクライアント・コンピュータ２０に伝送され、配信されたコンテンツ内のGUI構成要素のようなシステム１０のスクリーン構成要素内のアクションを要求するメッセージ。
３.ウィンドウ命令−通常的なウィンドウが開いているか閉じていること、又はドロップレット使用可能アプリケーションが標準ダイアローグ・セット(例えば、メッセージ・ボックス、質問ボックスまたはメニュー)のうち１つを表示すべきことを指定するアプリケーション・サーバ４０上のアプリケーション・ドライバからクライアント・コンピュータ２０に伝送されるメッセージ。ドロップレット使用可能アプリケーションは、ユーザがデスクトップ上のアクティブ・ウィンドウを手動で閉じたことを通知するウィンドウ命令を、アプリケーション・サーバ４０に送信することもできる。
４.ブラウザ命令−ドロップレット使用可能アプリケーションが含まれたクライアント・コンピュータ２０上で運用されるウェブ・ブラウザに指向されたメッセージ。ドロップレット使用可能アプリケーションがウェブ・ブラウザを含まないスタンドアロン・ソフトウェア・アプリケーション内に含まれた場合、これらのメッセージは、デフォルト・ブラウザに伝送される。
５.セッション命令−クライアント・コンピュータ２０とアプリケーション・サーバ４０間のセッションを開始し、維持するか終了させるために、クライアント・コンピュータ２０又はアプリケーション・サーバ４０から伝送されるメッセージ。
６.サービス・ディレクトリ・クライアント・コンピュータ２０にアプリケーション・サーバ４０で利用可能なサービスを通知するアプリケーション・サーバ４０により伝送されるメッセージ。サービス・ディレクトリ・メッセージを受信した使用可能なクライアント・コンピュータ２０は、ユーザにサービスのディレクトリを表示し、特定サービスに対するユーザの要求を処理するためのサーバに戻して伝送することができる。
【００５５】
前述した通信プロトコル及びメッセージ・フォーマットは、クライアント・コンピュータ上に表示されるアクティブ・ドロップレット使用可能アプリケーションのユーザ・インターフェースとGUI構成要素間のリアルタイム・プッシュ／プル・メッセージ・スキーム及びアプリケーション・サーバ４０からのインターフェースを支援するアプリケーション・ドライバを提供する。例えば、ストック・ウォッチャ・アプリケーション１００のような実行中のドロップレット使用可能アプリケーションは、発行エージェンシにより公表される時、取引のために利用可能な変更された株式価格や配当のようなリアルタイム情報を受信する。ユーザは、価格決定及び利用可能性情報を示すGUI構成要素のリフレッシュを手動で要求する必要なく、むしろクライアント・コンピュータは、ドロップレット使用可能アプリケーションがアプリケーション・サーバ４０上で運用される時、構成要素へのリアルタイム更新を受信する。
【００５６】
一実施例において、クライアント２０とサーバ４０との間に連続的な開放ソケット通信接続が維持され、それらが公表されることによって(プッシュ・トランザクション)リアルタイム更新を受信する。例えばファイア・ウォールまたはプロクシ・サーバ・保安プラットホームが連続的な開放ソケット接続を許容しない他の実施例では、クライアント・コンピュータ２０により更新に対する要求が周期的でアプリケーション・サーバ４０に送信される。自動擬似のリアルタイム・メッセージング戦略は、フルタイプのメッセージング・メカニズムを含む。システムは、まず更新情報のリアルタイム・プッシュを試みることによって、このような更新メッセージング・メカニズムを円滑に実行し、アプリケーション・サーバ４０が開放接続通信チャンネルを維持することを許容しないとしたら、サーバ４０は、周期的に更新情報を要求することによって、フルタイプのメッセージング・メカニズムを採用するようにクライアント・コンピュータ２０に通知する。前述した各メッセージング・スキームにおいて、クライアント・コンピュータ２０でのユーザは、情報のリフレッシュを手動で要求することなく、更新情報を受信する。
【００５７】
図３は、クライアント・コンピュータ２０とアプリケーション・サーバ４０との間に送信されるメッセージの典型的なシークエンスを示す図である。同図に示されたように、ドロップレット使用可能コンテンツ３６がクライアント・コンピュータ２０に配信される場合、クライアント・コンピュータ２０上で動作するドロップレットにより接続／始動メッセージ２００がアプリケーション・サーバ４０に送信される。始動メッセージ２００は、クライアント・コンピュータ２０上の動作環境、接続すべきアプリケーション・サーバ４０及び一旦接続された後、クライアント・コンピュータ２０にコンテンツを配信するように運用されるサーバ４０上のアプリケーションを識別する情報を含む。
【００５８】
前述したように、クライアント・コンピュータの動作環境を識別する情報は、クライアント・コンピュータのオペレーティング・システム及びハードウェアの性能にカスタマイズされたユーザ・インターフェースを有するドロップレット使用可能アプリケーションを提供するための手段をアプリケーション・サーバ４０に提供する。
【００５９】
アプリケーション・サーバ４０は、クライアント・コンピュータ２０上のドロップレット使用可能アプリケーション４１を提供する情報４３(例えば、レンダリング命令４２、デフォルト・パラメータ及び値４４等)を含むメッセージ２１０を伝送することによって、始動メッセージ２００に応答する。ウェブ基盤の具現において、ドロップレット使用可能アプリケーション４１は、メッセージ２１０がクライアント・コンピュータ２０に提供されることによって、アプリケーション・サーバ４０上で実行されることが望ましい。ドロップレット使用可能アプリケーション４１を実行してクライアント・コンピュータ２０にその機能を提供する間に、イベント及び更新情報を含むメッセージ２２０がクライアント・コンピュータ２０とアプリケーション・サーバ４０との間で反復的に通信される。これにより、ドロップレットは、クライアント・コンピュータ２０とアプリケーション・サーバ４０間のインタラクティブ通信環境を容易にする。
【００６０】
最後に、ウェブ基盤具現において、ドロップレット使用可能アプリケーションを含むウェブページが閉じているか、ユーザが他のページに航行する場合、そして、スタンドアロン具現においてスタンドアロン・ドロップレット使用可能アプリケーションが閉じているか終了した場合、終了セッション命令を含むメッセージ２３０がアプリケーション・サーバ４０に送信される。
【００６１】
通信プロトコル及び(前述した)メッセージ・フォーマットは、クライアント・コンピュータ２０とアプリケーション・サーバ４０間のリアルタイム通信を提供する。通信プロトコル及びメッセージング・フォーマットは、現在のアプリケーション状態と次のアプリケーション状態間の差異を規定する情報を送信することは明白である。ここで、前記情報は、純変化情報と呼ばれる。純変化情報を伝送することは、あらゆるスクリーンデータを伝送し、伝送したスクリーンデータから全体スクリーンを更に描くことと反対に、例えばスクリーン上の個別構成要素の状態変化を許容する。ただ純変化情報のみを送信することによって、例えば帯域幅及び送信時間のような通信資源が最適化される。これにより、ドロップレット使用可能アプリケーションは、最小ネットワーク帯域幅を通じて豊富なアプリケーション機能を配信し、広帯域ネットワークだけでなく薄いダイヤル−アップまたは無線ネットワークを通じて動作されることができる。また、遠隔ネットワークサイトから支援されるドロップレット使用可能アプリケーションは、アプリケーションがロードされ、クライアント・コンピュータ２０で局所的に実行されることのように、反応性として現れる。
【００６２】
前述したメッセージ・フォーマット及び一般メッセージング・シークエンスは、ドロップレット使用可能アプリケーション４１及びアプリケーション・サーバ４０により活用され、プレゼンテーション・クライアント２５及びローカル・オペレーティング・システム(例えば、オペレーティング・システム・ソフトウェア８０)と組み合わせて、クライアント・コンピュータ２０のデスクトップ上で以下の特徴と機能を支援する。
１.ドロップレット使用可能アプリケーション及び情報へのインタラクティブ・リンクのダウンロード、
２.ドロップレットのブランディング、
３.クライアント・マシン間でドロップレット使用可能アプリケーション／情報へのリンクの配信、
４.ドロップレット使用可能アプリケーション／情報のインスタンスの保障、
５.ドロップレット分散情報の追跡、
６. 遍在するイベントチャンネルの提供、
７.持続的な状態の維持、
８.デスクトップのウェブトップへのミラーリング、
９.ドロップレットの多重プラットホームの実行、
１０.保安特性
【００６３】
ドロップレット使用可能アプリケーション及び情報へのインタラクティブ・リンクのダウンロード
本明細書の背景部分で説明した通り、GUI(例えば、デスクトップまたはそのウィンドウ領域)上に表示されるオブジェクトは、GUI周囲で「ドラッグ・アンド・ドロップ」動作でキャプチャされ、移動することができる。本発明によれば、クライアント・コンピュータに配信される情報コンテンツ３６内のドロップレット使用可能アプリケーションへのリンク(例えば、ウェブページ上のバナー広告内に提供されるドロップレット使用可能アプリケーションへのリンク)は、ドラッグ・アンド・ドロップ動作を通じてクライアント・コンピュータにダウンロードされることができる。すなわち、配信された情報コンテンツ３６のバナー広告上に組み合わせられるドロップレット・ハンドル・オブジェクトは、例えばドロップレット・オブジェクトを選択し、クライアント・コンピュータのGUI周囲でハンドルを移動(ドラッギング)することでキャプチャされることができる。クライアント・コンピュータ上において所望の位置にある場合、ドロップレット・ハンドル・オブジェクトが改善されたドラッグ・アンド・ドロップタイプの動作で局所的にロード(ドロップ)されることができる。
【００６４】
特に、本発明は、(１)ウェブページからデスクトップに、(２)第１のウィンドウ領域からファイルを受領する他のウィンドウ領域に、及び(３)ウェブページまたはウィンドウ領域からディレクトリ又は例えば「マイクロソフトウィンドウズ（登録商標）」（Microsoft Windows）（登録商標）オペレーティング・システム・ソフトウェアのスタート・メニューのようなアプリケーション・プログラムのメニューに、配信された情報コンテンツ３６内のドロップレット使用可能アプリケーションへのリンクのダウンロード(例えば、ドラッギング及びドロッピングを支援する。したがって、局所的に格納されたリンクが選択され、誘発されて、アプリケーション・サーバ４０で実行されるドロップレット使用可能アプリケーションにより提供される機能及び情報をクライアント・コンピュータ２０上に必要に応じて提供する。
【００６５】
図４Ａ〜図４Ｄを参照してダウンロード動作の望ましい実施例を開示する。図４Ａに示されたように、ドロップレット使用可能ストック・ウォッチャ・アプリケーション１００’は、そのタイトルバー上に配置され、ティアドロップ型アイコン１２０’として表示される選択可能なドロップレット・ハンドル・オブジェクトを含む。ポインティング・デバイス(図示せず)は、ポインティング・フィンガを持つ手で表示されるカーソル３００をアイコン１２０’上に位置させる。アイコン１２０’は、例えばポインティング・デバイス(例えば、左側マウスボタン)と関連したボタンを押すことによって選択される。ウィンドウ１１０’から例えばクライアント・コンピュータ２０のデスクトップの一部３１０にカーソル３００を移動させることによって、選択されたアイコン１２０’は、ストック・ウォッチャ・アプリケーション１００’を示すウィンドウ１１０’からGUI上の他の位置に移動（例えば、ドラッグ）される（図４Ｂ及び図４Ｃ）。次に、ポインティング・デバイスを離脱させて、ストック・ウォッチャー・アプリケーション１００’のグラフィック表現３２０をデスクトップの部分３１０上に位置させる（ドロップ）ことで、アイコン１２０’が解除される（図４Ｄ）。
【００６６】
以上では、ドロップレット使用可能アプリケーション及び情報へのインタラクティブ・リンクのダウンロードを望ましくはドラッグ・アンド・ドロップ動作を含むものとして図４Ａ〜図４Ｄを参照して説明したが、本発明は、ドロップレット使用可能アプリケーションへのリンクをダウンロードするための他の手段を考えられることが明白である。例えば、ドロップレット使用可能アプリケーションへのリンクは、リンクを示すグラフィック・オブジェクトをダウンロードするメニュー命令を出すか、または“CTRL”“ALT”及び“D”のようなクライアント・コンピュータ２０でのキーボードのキーの組み合わせを押すことによって、クライアント・コンピュータにダウンロードされることができる。
【００６７】
一実施例において、カーソル３００を利用して、インタラクティブ・リンク中の一方のクライアント・コンピュータ２０へのダウンロードを２つの方法のうち一つで開始する。第一に、図４Ａ〜図４Ｄを参照して説明したように、ポインティング・デバイスを操作することによって、カーソル３００がリンクを示すオブジェクト、すなわちアイコン１２０’上に配置される。アイコン１２０’が選択され、ダウンロードが開始される時、カーソル３００の視覚的特性が変更される。すなわち、ポインティング・フィンガを持つ手（図４Ａ）がカーソル３０２に変形され、縮めた手がティアドロップ型ドロップレット・シンボルを取り囲む（図４Ｂ）。アイコン１２０’のキャプチャを更に説明すれば、アイコン１２０’も例えば空き円のシンボル１２２に変形される。前述したように、ポインティング・デバイスのボタンを押し、カーソル３０２を操作することによって、カーソル３０２がデスクトップ周囲で移動する。一旦リンクがクライアント・コンピュータ２０上の所望の位置、例えばデスクトップ上に存在すれば（図４Ｃ）、ポインティング・デバイスのボタンを解除することによって、リンクがクライアント・コンピュータにロードされる。マウスボタンを外すことによって一旦リンクが解除されれば、リンクは、クライアント・コンピュータ２０にロードされる（図４Ｄ）。カーソル３０２及びアイコン１２２の前述した視覚的表現は、ただ例示的なもので、例えば、選択された場合、オブジェクトが反対映像で現れ、フレームがオブジェクト周囲で描かれるか、「ハンドル」が選択されたオブジェクトの複数のコーナーで現れることのように、選択されたカーソル及びアイコンの他の視覚的表現を考えることができることは明白である。
【００６８】
第二に、ポインティング・デバイスを用いて、カーソルをアイコン１２０’に位置させ、ポインティング・デバイス上のボタンを押し下げ、解除することにより、アイコン１２０’が選択されることができる。当業者に周知のように、オブジェクト(オブジェクトをクリックするという)上に押す及び解除の動作を行うことは、オブジェクトを押圧し、その状態を維持しながら移動することとは別の動作である。クリック動作に応答して、サブメニュー(通常ポップアップ・メニューという)が現在のカーソル位置に現れる。ポップアップ・メニューは、例えばデスクトップやデスクトップ上のウィンドウへのリンクをダウンロードするためのオプションリストを含む。ダウンロードのためのオプションリストは、多様な方式で現れることが明白である。すなわち、ポップアップ・メニューに表示されるリストの各オプションは、動作を説明するテキスト(例えば、「デスクトップへのダウンロード」、「スタート・メニューへのダウンロード」等)、無線ボタンやチェック・ボックスまたはグラフィック・アイコンのようなコントロールが引き続くテキスト・ラベルで表示されることができる。各アイテムは、特定ダウンロード動作を呼び出すように動作可能である。
【００６９】
本発明の一様態によれば、ドロップレット使用可能アプリケーション、すなわちストック・ウォッチャ・アプリケーション１００のグラフィック表現３２０は、アプリケーション及びアプリケーションがドロップ可能であるということを示すシンボルを識別するための情報を含む。図４Ｄで、例えば、グラフィック表現３２０は、チャート・アイコン３２２及び「ストック・ウォッチャ」という表題のラベル３２４として図示される。表現３２０は、選択された場合、表現３２０がドロップレット使用可能アプリケーション、すなわちストック・ウォッチャ・アプリケーション１００’を呼び出すことを示すための「ティアドロップ」シンボル３２６を含む。したがって、グラフィック表現３２０は、遠隔格納されたストック・ウォッチャ・アプリケーション１００’へのリンクである。望ましくは、グラフィック表現３２０及び特にそのアプリケーション識別部は、ブランディング情報を含む。ドロップレット使用可能アプリケーション及び情報コンテンツのグラフィック表現のブランディングは、詳細に後述する。
【００７０】
ストック・ウォッチャ・アプリケーション１００は、単一のドロップレット・ハンドル・オブジェクト、すなわちティアドロップ形状アイコン１２０を含むが、ドロップレット使用可能アプリケーション及び情報コンテンツは、遠隔格納されたアプリケーションの色々な機能的及び情報的特性を呼び出すための１つ以上のダウンロード可能なアイテム(リンク)を含み得ることが明白である。アイテム(リンク)は、選択された場合、ドロップレット使用可能アプリケーションを呼び出すか、ネットワーク上の遠隔位置からドロップレット使用可能情報を検索するアイコン、イメージまたはテキスト列である。
【００７１】
当業者なら自明なように、ダウンロード(例えば、改善されたドラッグ・アンド・ドロップ)動作は、クライアント・コンピュータ２０のオペレーティング・システム８０と相互作用する段階(標準オペレーティング・システムAPIルーチン)を含む。相互作用は、ドラッグ中にポインティング・デバイスの追跡及びファイルがドロップのターゲット上に生成されるように要求することを許容する。ドロップされた場合、ファイル(例えば、図１のファイル７４）がインタラクティブ・リンク(例えば、図１のリンク７２)と関連される。ファイルは、以下に説明するように、リンクが選択された場合、アプリケーション・サーバ４０への通信接続５４を再確立するための情報を含む。
【００７２】
本発明によれば、図５に示すように、インタラクティブ・リンクの選択は、ドロップレット使用可能アプリケーション及び／または情報を呼び出し、例えば、グラフィック表現３２０の選択は、ストック・ウォッチャ・アプリケーション１００を呼び出す。すなわち、表現３２０(リンク)を選択して、ストック・ウォッチャ・アプリケーション１００を支援するドロップレットがトリガリングされ、クライアント・コンピュータ２０上で再実行される。ドロップレットは、ドロップレット・プレゼンテーション・クライアント２５及びローカル・オペレーティング・システム８０と組み合わせて、ドロップレット使用可能ストック・ウォッチャ・アプリケーション１００の機能を呼び出して表示するために、アプリケーション・サーバ４０への通信接続５４を再確立する。
【００７３】
ダウンロード動作中に生成されるファイルがアクセスされ、表現動作を支援する。図１に示すように、各ファイル７４は、ダウンロード動作の結果として各リンク７２に関連され、例えば、リンク１はファイル１に、リンク２はファイル２に各々関連される。一旦接続が行われれば、ファイル７４は、クライアント・コンピュータ２０上の動作環境を識別するための情報、接続されるアプリケーション・サーバ４０の実体、及びストック・ウォッチャ・アプリケーション１００(または他のコンテンツ）をクライアント・コンピュータ２０に提供するように運営されるサーバ・アプリケーションを含む。好ましくは、ダウンロード可能なアイテム(リンク）をクライアント・コンピュータ２０に配信された情報コンテンツ３６に組み合わせるパラメータによりファイルの詳細／コンテンツが決定される。すなわち、例えばティアドロップ形状アイコン１２０をストック・ウォッチャ・アプリケーション１００に付加するのに利用する命令は、任意のダウンロード動作中に生成されるべきファイルの規定を含み、ローカル・クライアント・コンピュータ上にストック・ウォッチャ・アプリケーション１００へのインタラクティブ・リンクをロードする。
【００７４】
一実施例において、ファイル７４は、アプリケーション・サーバ４０の位置、サーバ４０上で運営されるアプリケーション、アプリケーション・サーバ４０及びクライアント・コンピュータ２０に対するマシン・ローカル・アドレス、ポート(プロセス間の相互マシン通信を支援するバッファ)、及びドロップレット・タイプ(例えば、HTML、ジャバ・アプレット、マルチメディア・オブジェクト等）を含む。前述のように、ファイル７４は、グラフィック表現３２０のプレゼンテーションを支援する情報(例えば、レンダリング情報、ラベル、ウィンドウ定義)を含むことができる。ファイル７４内に含まれたプレゼンテーション情報は、アプリケーション・サーバ４０により提供されるデフォルト情報を無視する。
【００７５】
他の実施例において、ファイル７４は、元のドロップレット使用可能情報コンテンツを配信したコンテンツ・プロバイダ３０の位置(アドレス)を含む。特定条件下で、例えば通信接続５４を確立する場合のエラー、ドロップレット、ドロップレット・プレゼンテーション・クライアント２５及びローカル・オペレーティング・システム８０は、組み合わせて通信接続５２を再確立し、元来リンク７２を提供した情報コンテンツ３６の再配信を要求する。
【００７６】
したがって、本発明は、遠隔ドロップレット使用可能アプリケーション及び／または情報へのリンクを局所的に格納するためのメカニズムを提供する。例えば、図２は、ドロップレット使用可能ストック・ウォッチャ・アプリケーション１００を表示するウェブページ１１０を示す。図４Ａから図４Ｄ及び図５を参照すれば、前述のように、ストック・ウォッチャ・アプリケーション１００へのドロップレット・ハンドル１２０(リンク)がウェブページ１１０からダウンロードされ、クライアント・コンピュータ２０のデスクトップの一部３１０上にグラフィック表現３２０として局所的に格納される。当業者であれば分かるように、例えばポインティング・デバイスで表現３２０をダブル・クリックすることにより、リンクのグラフィック表現３２０が選択される。一旦選択されれば、リンクはローカル・オペレーティング・システム８０によりドロップレット使用可能アプリケーションを支援するドロップレットを呼び出すことができる。すなわち、ドロップレットは、ドロップレット・プレゼンテーション・クライアント２５及びローカル・オペレーティング・システム８０と組み合わせて、関連ファイルにアクセスし、ストック・ウォッチャ・アプリケーション１００を再表示するための情報を再配信するために、アプリケーション・サーバ４０への通信接続５４を再確立する。特に、ストック・ウォッチャ・アプリケーション１００は、クライアント・コンピュータ２０にアプリケーション１００を局所的にロードさせず、そして元のストック・ウォッチャ・アプリケーション１００をユーザに提供したウェブページ１１０に戻って再航海することなくても、実際にアプリケーション・サーバ４０で再実行されて、クライアント・コンピュータ２０にストック・ウォッチャ・アプリケーション１００の機能を再表示する。アプリケーションを局所的に格納したり、所望のアプリケーションを含むウェブページを再航海する必要性を除去することにより、本発明は、遠隔アプリケーションを呼び出し、遠隔格納された情報を検索するための従来のプロセスにおける２つの短所を回避する。
【００７７】
ドロップレットのブランディング
本発明によれば、グラフィック表現３２０及び特にそのアプリケーション識別部は、ブランディング情報を含む。ブランディング情報は、例えばアプリケーションまたはアプリケーションを支援する組織の名前、及びアプリケーションまたは組織のロゴ或いはなじみのあり、かつ確認が容易な他のシンボルを含む。一般的に言わば、組織は、顧客の心理に一定レベルの品質及び価値の表示を確立する目的で組織の物品及び／またはサービスのセットを独特に識別させるのにブランディング情報を利用する。ブランディングは、一般的に電子商取引(例えば、インターネット基盤取引)において重要なもので、ウェブ上で顧客が類似の製品及びサービスを提供する多くの競争会社から信頼性ある企業を見つけて、比較選択することを可能にする。
【００７８】
ドロップレット使用可能アプリケーション及び情報コンテンツのグラフィック表現をブランディングすることにより、支援又は後援する組織は、例えばインターネット上に、そしてダウンロード時にはクライアント・コンピュータ２０上に、商業的に価値ある存在を確立することができる。本発明によれば、局所的に格納されたインタラクティブ・リンクが遠隔格納されたアプリケーション及び情報を呼び出すように提供されるだけでなく、リンクは、例えば会社の商号及び／またはロゴのような商業上のイメージと似ているように、視覚的にカスタマイズされることができる。
【００７９】
一実施例において、例えば「マイクロソフトウィンドウズ（登録商標）」（MICROSOFT Windows）（登録商標）オペレーティング・システム下で実行される場合、デスクトップは、特定のファイルタイプに対するアイコンを付与するカスタム・コード・ライブラリを利用できる機能を支援する。システム１０は、この性能を利用して「ウィンドウズ（登録商標）」（Windows）（登録商標）下でアプリケーション専用アイコンを付与する。「ウィンドウズ（登録商標）」（Windows）（登録商標）において、アイコン情報は、ファイルに格納されることができる。デスクトップがアイコンを描く必要がある場合、ファイル内のアイコン情報をアクセスするライブラリ関数を呼び出す。ライブラリ関数は、ファイルを読み取り、その内部のデータからアイコンを構築し、ブランディング情報(存在する場合)を追加し、イメージのレンダリングのためにデスクトップにリターンする。したがって、ドロップレット使用可能アプリケーション及び／または情報のために、ファイルが全てのアイコンに対して維持される。例えば、ファイルは、少なくともドロップレット使用可能シンボル(図４Ｄのティアドロップ・シンボル３２６）を含み、一実施例で、前述したダウンロード(例えば、改善されたドラッグ・アンド・ドロップ)動作を実行した結果としてファイルがサーバ４０からダウンロードされ、アイコン情報がファイル７４内に含まれる。
【００８０】
他の実施例において、例えば、「マッキントッシュ  マックＯＳ」（MACINTOSH MacOS）（登録商標）オペレーティング・システム下で実行される場合、クライアント・オペレーティング・システムは、各ファイルに対する独特のアイコンを実質的に支援する。このようなプラットホーム上で、ファイルが初めて生成される場合、例えば改善されたドラッグ・アンド・ドロップ動作の最終段階としてアイコンが割り当てられる。一部の状況では、例えばレンダリング情報を含むファイルが両立不可能なシステムからコピーされるかドラッグされた場合、適切なアイコンが初期に規定されないこともある。かかる状況で、クライアントがドロップレット使用可能アプリケーションを呼び出す場合、「マックＯＳ」（MacOS）（登録商標）は、ファイル内のカスタム・アイコンの存在についてチェックする。アイコンが存在しない場合、ファイル内のアイコン情報からひとつを生成する。
【００８１】
本発明の他の様態において、ドロップレット使用可能アプリケーションは、「スキン」されることができる。すなわち、特定のドロップレット使用可能アプリケーションに対するユーザ・インターフェースの「ルック・アンド・フィール(look and feel)」は、アプリケーションと、ネットワーク内で運用中の他のアプリケーションとを区別させる審美的に魅力があるか、商業的にブランディングされた視覚的及び聴覚的特性を含む。視覚的及び聴覚的特性は、例えば特徴的カラー、テキストフォント、制御レイアウト、コントロールのグラフィックまたは関連サイズ及びスペーシングを含む。「スキン」は、広告またはプロモーションメッセージ、及び例えば映画のシーン、ビデオゲームや配景のような気に入りのアイテムを反映することができる。追加的に、スキンは、コントロール及びラベルの特性を可変させて、特定のドロップレット使用可能アプリケーションの多重言語プレゼンテーションを提供することができる。すなわち、スキニングは、例えば英語、スペイン語、ドイツ語、イタリア語などのようないろいろな言語でアプリケーションが提供されることを可能にする。
【００８２】
本発明によれば、スキンは、ドロップレット使用可能アプリケーションのコーディングやビジネス論理（すなわち、Ｃ＋＋、ジャバ、ビジュアル・ベーシックまたは変更不要のアプリケーションを開発するのに利用される他のコーディング)の変化を要求することなくても、リアルタイムで選択されて適用されることができる。したがって、スキンは、所定のドロップレット使用可能アプリケーションのユーザ・インターフェースが１つの実行(例えば、ウェブサイト)から他の実行にカスタマイズ(例えば、「自家ラベリング」)されることを可能にする。すなわち、カスタマイズされたユーザ・インターフェースは、ドロップレット使用可能アプリケーションの各インスタンスを所望の外観と感じを与える商業的に(ブランディングされた)または審美的に魅力のあるインターフェースとして構成することができる。カスタマイズ／またはスキンを選択する能力は、ドロップレット使用可能アプリケーションのディベロッパー、ウェブサイトのウェブマスタ、またはエンドユーザの指示下に提供されることができる。
【００８３】
一実施例において、ドロップレット使用可能アプリケーションの機能として適用されるスキンは、コンテンツ・プロバイダ３０に維持される利用可能なスキンのライブラリから選択され、クライアント・コンピュータ２０に提供される。その後、選択されたスキンに対する参照がダウンロードされ、クライアント・コンピュータ２０に局所的に格納されたリンク内に維持される。また、ドロップレット使用可能アプリケーションがクライアント・コンピュータ２０に表示される時、所定のスキンが含まれるように、アプリケーション・サーバ４０でスキンを予め規定することもできる(例えば、ユーザの嗜好を無視するハードコーディング)。
【００８４】
ユーザ間のドロップレットの伝達
本発明の一様態によれば、ユーザと各クライアント・コンピュータとの間でドロップレットを伝達することができる。例えば、ドロップレット使用可能クライアント／サーバ・システム１０は、「ドロップレット」（droplet）（登録商標）及び遠隔格納されたドロップレット使用可能アプリケーション及び／または情報への関連リンクを含むメッセージを伝送する能力、例えば電子メール・メッセージを構成する能力を含む。好ましくは、メッセージは、受信人が受信マシンのプラットホームに関係なく「ドロップレット」（droplet）（登録商標）を運用することができ、ドロップレット使用可能アプリケーションや情報をアクセスできることを実質的に保障するように構築される。
【００８５】
例えば、第１のユーザは、ドロップレット使用可能バナー広告をウェブサイトから自身のデスクトップにダウンロードすることができる。ドロップレット使用可能バナー広告は、例えばウェブサイトを後援している実体に重要な情報調査(例えば、マーケティング調査)を行うためのアプリケーションを含むことができる。調査の完了の代りに、後援している実体は、ウェブサイト上で購買可能な一部の商品に対してディスカウントされた価格を提供することができる。第１のユーザは、ディスカウントされた価格を魅力的な提案だと考え、したがって同僚に提案をパスしたがる。本発明によれば、ドロップレット使用可能バナー広告、droplet（登録商標）、及び調査を支援する遠隔格納されたアプリケーション及び／または情報(ドロップレット使用可能調査アプリケーション及び／または情報)へのリンクを含むメッセージが生成される。メッセージは、第１のユーザの同僚に伝送される。同僚の性能、又はより正確には同僚により利用されるクライアント・コンピュータによって、ドロップレット使用可能調査アプリケーション及び／または情報が直ちにアクセスされ、同僚により利用されることができる。
【００８６】
本発明において、システム１０は、同僚のクライアント・コンピュータ（以下では受信者コンピュータと称する）上でアプリケーションを伝送し運用するための３つの可能な方式のうち、少なくとも１つを含む。好ましい実施例において、３つの方式は、それぞれ例えば、リンクを伝送するメッセージ内に含まれ、受信者コンピュータの性能に応じて、３つの方式中のひとつを採用して、成功的にアプリケーションを受信することができる。
【００８７】
まず、伝送メッセージ(例えば、電子メール・メッセージ)は、ファイル・フォーマットのドロップレット使用可能アプリケーション及び／または情報を添付として含むことができる。受信者コンピュータがドロップレット使用可能であれば、すなわちドロップレット・プレゼンテーション・クライアント２５が局所的に設置されたクライアント・コンピュータ２０と同一の方式で動作するとしたら、添付は、周知のファイルタイプとして現れ、受信者は、ドロップレット使用可能アプリケーション及び／または情報ファイルを直ちに開くことができる。一旦開けば、ドロップレット使用可能調査アプリケーションへのリンクが受信者コンピュータ上にダウンロード(例えば、ドラッグ・アンド・ドロップ)されることができる。その結果、ファイル添付がデスクトップまたは受信者コンピュータの他の位置(例えば、スタート・メニュー)にコピーされる。一旦ダウンロードされると、リンク(例えば、リンクのグラフィック表現３２０)が選択され、アプリケーション・サーバ４０への通信接続５４を開始させることによって、ドロップレット使用可能調査アプリケーション及び／または情報が前述のように実行されたり検索されたりすることができる。
【００８８】
受信者コンピュータがドロップレット使用可能しない第２の実施例では、ドロップレット使用可能調査アプリケーション及び／または情報は、ウェブページへのハイパ・テキスト・リンクを含むメッセージ(例えば、電子メール・メッセージ)を伝送することによって、各部分間に伝送することが可能となる。ウェブページは、ウェブ・ブラウザをランチングし、受信者コンピュータのドロップレット使用可能なリング処理を通じてユーザを案内するためのリンクを含む。すなわち、ウェブ・ブラウザは、ドロップレット・プレゼンテーション・クライアント２５及びドロップレット使用可能調査アプリケーション及び／または情報へのリンクをダウンロードするための指令を受信する。
【００８９】
第３実施例において、ドロップレット使用可能調査アプリケーション及び／または情報を伝送するメッセージ(例えば、電子メール・メッセージ)は、その組み合わせられたオブジェクトとしてドロップレット使用可能アプリケーション及び／または情報を含むウェブページへのリンクを含む。この方法は、受信者が自らサイトを航海する必要なく関心あるウェブサイトに確実に導くことを除いては、ストック・ウォッチャ・アプリケーション１００を参照して前述したドロップレット使用可能アプリケーション及び情報を検索する方法と類似している。この実行は、受信者により利用されるウェブ・ブラウザがジャバ・アプレットをホストする能力を持っていると仮定する。
【００９０】
図８は、本発明によって構成され動作するドロップレット使用可能クライアント／サーバ・システム６００の簡略化したブロック図である。特に、図８は、複数のクライアント・コンピュータ６０２-６０８からのドロップレット使用可能アプリケーション及び情報に対する要求をサービスしている２つのホスト・コンピュータ(例えば、コンテンツ・プロバイダ３０及びアプリケーション・サーバ４０)を示す。ドロップレット使用可能アプリケーション及び情報は、ホスト・コンピュータ３０及び４０から直接クライアント・コンピュータに提供されるか、ドロップレット及びアプリケーションと情報へのリンクが他のクライアント・コンピュータから配信される。直接的なホストからクライアントへの配信処理は、以上で詳細に説明したので、クライアント・コンピュータ６０２-６０８の間及びこれらにより、ドロップレット及びリンクを配信する処理を参照すればよい。
【００９１】
図８において、クライアント・コンピュータ６０８は、コンテンツ・プロバイダ３０から情報コンテンツを(メッセージ６１０を通じて)要求する。これに応答して、コンテンツ・プロバイダ３０は、例えばリンク６３２及びその中に組み合わせられたdroplet（登録商標）を含む要求された情報コンテンツ６３０を(メッセージ６１２を通じて)提供する。受信時、droplet（登録商標）６３４がクライアント・コンピュータ６０８上で実行され、ドロップレット・プレゼンテーション・クライアント及びローカル・オペレーティング・システム(図示せず)と組み合わせて、アプリケーション・サーバ４０への通信接続６１４を確立する。また、アプリケーション・サーバ４０は、クライアント・コンピュータ６０８にアプリケーションを提供するための情報を含んで、ドロップレット使用可能アプリケーションの機能を(通信接続６１４を介して)提供する。上記で詳細に説明したように、このプロセスは、ドロップレット使用可能アプリケーション及び／または情報の機能をクライアント・コンピュータに提供する第１の方法を示す。
【００９２】
また、図８は、ドロップレット、及びドロップレット使用可能アプリケーション及び／または情報へのリンクが各クライアント・コンピュータ６０２-６０８により間でこれらにより配信される第２のメカニズムを示している。例えば、クライアント・コンピュータ６０８にダウンロードされるリンク６３２及びドロップレット６３４は、メッセージ６１６を通じてクライアント・コンピュータ６０６に配信される。一旦受信されて格納されると、リンク６３２及びドロップレット６３４(リンク６３２及びドロップレット６３４がクライアント・コンピュータ６０６に直接ダウンロードされないことを示すために、点線で表示する)が選択され、アプリケーション・サーバ４０への通信接続６１８を確立することによって、アプリケーションを提供するためのドロップレット使用可能アプリケーション及び情報をクライアント・コンピュータ６０６に伝達することができる。同様に、リンク６３２及びドロップレット６３４は、クライアント・コンピュータ６０６からメッセージ６２０を通じてクライアント・コンピュータ６０４に、そしてクライアント・コンピュータ６０４からメッセージ６２２を通じてクライアント・コンピュータ６０２に各々伝達することができる。明らかなように、リンク及びドロップレットのパッシングは、クライアント・コンピュータのユーザがドロップレット使用可能アプリケーション及び／または情報に対するリンク及びドロップレットを元来提供したコンテンツ・プロバイダ３０を航海する必要なく、ドロップレット使用可能アプリケーション及び／または情報の検索を容易にする。いろいろな側面で、プレゼンテーションのための第２のメカニズムは、グループを有する各クライアント・コンピュータが個別的に航海して、リンクの独特なインスタンス及びドロップレット使用可能アプリケーションのドロップレットをダウンロードする第１のメカニズムより一層有利な方法、つまりクライアント・コンピュータグループ間でネットワークアプリケーション及び情報を共有する方法を提供する。
【００９３】
ドロップレット使用可能アプリケーション及び／または情報の保安
ここに概略的に説明されたように、ドロップレット使用可能アプリケーション及び／または情報へのリンクが選択されてネットワーク上で遠隔位置に格納されたアプリケーション及び／または情報の固有なインスタンスを呼び出す。言い換えれば、ドロップレット使用可能アプリケーションの実行またはドロップレット使用可能情報の検索のための各要求は、要求されたアプリケーション及び／または情報の個別的なコピー(インスタンス)を提供することによって満たされる。
【００９４】
しかし、本発明の一様態によれば、ドロップレット使用可能アプリケーション及び／または情報の保安が維持され、個別的に識別可能なインスタンスは、多重クライアント・コンピュータ間で共有され背信されることができる。すなわち、本発明は、ここでグローバル固有識別フィールド(GUID)と呼ばれる固有識別フィールドを有するドロップレット使用可能アプリケーションの識別符号付きインスタンスを提供する。識別符号付きインスタンスは、一つ以上のクライアント・コンピュータ間に配信され、識別符号付きインスタンス内からアクセスされて格納された情報は、ドロップレット使用可能アプリケーションの識別符号付き(識別フィールドの特定)インスタンスを呼び出すクライアント・コンピュータのみにより変形されることができる。識別符号付きインスタンスは、実質的に保安が維持されるので、GUIDフィールドの値を知っているユーザのみが保安が維持されたドロップレット使用可能アプリケーション及び／または情報の個別的なインスタンスを具体的に要求しアクセスすることができる。
【００９５】
例えば、クライアント／サーバ・システム１０は、保安維持されるか、識別符号が付与され、ドロップレット使用可能した写真アルバムアプリケーションを含む。第１のユーザは、個人写真に写真アルバムアプリケーションの固有に識別可能なインスタンス-GUIDフィールドがGUID１の値を有する-を入力する。第１のユーザの写真イメージは、写真アルバムアプリケーションの全てのインスタンスのように遠隔ネットワーク位置に格納される。写真アルバムアプリケーションを要求する第２のユーザは、アプリケーションの固有に識別可能な他のインスタンスを受信し、第２のユーザが写真アルバムアプリケーションの第１のユーザのインスタンスに対応するGUIDフィールドの値を提供しないと、第１のユーザの写真を見ることができない。本発明は、GUIDフィールドをユーザに提供するいくつかの方法を考案することができる。
【００９６】
一実施例において、第１のユーザは、写真アルバムアプリケーションを更に他のユーザ、例えば第３のユーザに背信する。すなわち、第１のユーザは、GUIDフィールド値が「GUID１」である写真アルバムアプリケーションの固有に識別可能なインスタンスへのリンク及びドロップレットを含む電子メール・メッセージを構成する。リンクは、ダウンロード可能であり、写真アルバムアプリケーションの固有なインスタンスを選択的に呼び出すための「GUID１」値のGUIDフィールドを含む。このように、第１のユーザは、他人(例えば、第２のユーザ)が見ることを実質的に禁止しながら、個人写真へのアクセスを第３のユーザに許容する。
【００９７】
他の実施例において、第１のユーザは、GUIDフィールドを見て、これを第２、第３または両方のユーザに直接伝達することができる。識別符号付きドロップレット使用可能アプリケーションを要求する場合、システム１０は、アプリケーションの新しいインスタンスまたは保安されたインスタンスを希望するかについてユーザ(例えば、第２または第３のユーザ)に質問する。保安されたインスタンスが要求されると、システム１０は、ユーザに指示して、保安されたアプリケーションに対応する識別フィールド値(例えば、GUID１)を入力するようにする。
【００９８】
ドロップレット分散情報の追跡
前述のように、ドロップレットの各インスタンスは、グローバル固有識別フィールド(GUID)と関連がある。図８を参照すれば、参照符号６４０で示したデータ格納所は、ドロップレット使用可能アプリケーション及び／または情報の使用と関連した追跡の情報６４２を格納するために、アプリケーション・サーバ４０に維持される。データ格納所６４０は、例えばGUID及びドロップレット使用可能アプリケーション及び／または情報に対するリンク及びドロップレットを受信した各クライアント・コンピュータ２０に関する情報を含むデータベース、ファイル、リンクリスト、または類似格納特性を含む。
【００９９】
データ格納所６４０内の追跡の情報６４２をアクセスして検索することによって、要求時、ドロップレット分散データが提供されることができる。ドロップレット分散データは、ドロップレット使用可能アプリケーション及び／または情報のリンク及びドロップレットがシステム６００を通じて取られた経路を識別する。したがって、データは、例えばウェブサイトやスタンドアロンプログラムに組み合わせられたものからクライアント・コンピュータに直接アクセスされ、ダウンロードされるものだけでなく、一つのユーザ、またはクライアント・コンピュータから他のものに伝送される(例えば電子メール・メッセージを通じて伝送される)リンク及びドロップレットを識別する。
【０１００】
追跡の情報６４２は、例えばプロモーションキャンペーンの相対的成功を追跡する等の色々な目的に利用されることができる。追跡の情報６４２は、多数のユーザにドロップレット使用可能アプリケーションが特定の元来ユーザから到達したということを通知するために使用することができる。
【０１０１】
追跡の情報６４２は、特定のドロップレット使用可能アプリケーションの使用様態を詳細化する情報を更に含む。例えば、追跡の情報６４２は、ドロップレット使用可能アプリケーションに対応するリンク及びドロップレットがクライアント・コンピュータにダウンロードされた時(例えば、時間及び日付)、アプリケーションが呼び出された回数及び各回数の時間、セッション中に利用されたアプリケーション機能の種類、一つのアプリケーションがクライアント・コンピュータのデスクトップ上でアクティブに維持され見える時間、アプリケーションが他のアプリケーションにより目立たなくなるか、最小化される回数、及びドロップレット使用可能アプリケーションのリンク及び／またはドロップレットがクライアント・コンピュータから削除又は消される時期に関する情報を含む。
【０１０２】
一般的に言えば、ドロップレット使用可能アプリケーションまたはドロップレット使用可能マーケティングアプリケーション(調査)を提供するウェブサイトの商人または後援している実体は、このような追跡の情報を用いて、例えばユーザの利用パターンを決定するか、又は所定時間の間そのコンピュータに常駐するドロップレット使用可能アプリケーション(例えば、特定在庫品のアイテムを有するドロップレット使用可能ショッピングアプリケーション)に対応するドロップレット及びリンクを有するユーザに対してプロモーションの目標選定をする。目標として選ばれたプロモーションは、例えばディスカウントされた価格を提供し、クライアントが在庫品のアイテムを購買するようにする決定を誘導する。
【０１０３】
好ましくは、商人または後援している実体に提供される追跡の情報は、匿名である(例えば、特定ユーザを名前やマシンアドレスにより具体的に識別しない)。しかも、追跡の情報は、前述した通信プロトコル及びメッセージ・フォーマットを活用することによって、リアルタイムで提供することができる。
【０１０４】
更に、追跡の情報は、ドロップレット・アプリケーションディベロッパーにより活用されて、ドロップレットの性能を最適化したり、ドロップレット使用可能アプリケーションを有する特定の機能に関するユーザの関心度を評価する。
【０１０５】
遍在するイベントチャンネルの提供
図６に示す本発明の一様態において、クライアント／サーバ・システム１０は、システム１０の全てのクライアントに情報を伝送するためのイベントチャンネル４００、特定のドロップレット使用可能アプリケーションのリンク及びドロップレットをダウンロードした全てのクライアントまたは特定のクライアント・コンピュータ、例えばクライアント・コンピュータ２０を含む。情報は、イベントの発生を通知するためにユーザに伝送される例えば、サウンド、イメージ、テキストまたは任意の組み合わせを含む。ユーザへの通知は、リアルタイムで、又は規則的に定められた所定の時間で行われる(イベントの発生時)。
【０１０６】
一実施例において、例えばドロップレット使用可能電子メール・アプリケーションが提供される。このような実施例において、イベントチャンネル４００を通じてメッセージが伝送されて、ユーザに電子メール・メッセージの受信を通知する。イベントチャンネル４００は、電子メール・アプリケーションがアクティブに実行されているか否かに対するメッセージの受信を許容する。好ましくは、電子メール・アプリケーションがアクティブに実行されていない場合、ユーザのクライアント・マシンのデスクトップ上で電子メール・アプリケーションに関連したアイコン(例えば、ストック・ウォッチャー・アプリケーション１００用のアイコン３２０)を明るくするかきらきらと輝かせることによって、イベントチャンネルは、ユーザにメッセージの受信を通知する。このような側面で、ドロップレットプレゼンテーション・クライアントは、警告アプリケーションを含む。警告アプリケーションは、前述のように、例えば「電子メールが受信された」のような通知メッセージ等のメッセージに対してクライアント・コンピュータ２０でイベント受信バッファ４２０を周期的に評価する。受信されたメッセージに応答して、警告アプリケーションは、例えばユーザ・インターフェースの特徴を活用して、アイコンをきらきらと輝かせたり声を出したり、ポップアップメッセージやメニューをランチングすることにより、クライアント・コンピュータのユーザに警告する。他の方法では、MICROSOFT Windows（登録商標）環境で、メッセージが受信されたことを示すインエンベロープシンボルまたはアイコンがデスクトップの「ツールトレー」部分３４０に提供される(図５)。
【０１０７】
イベントチャンネル４００の実行は、クライアント・コンピュータ、中央イベントサーバ及びネットワーク５０に散在されたアプリケーション・サーバの組み合わせを必要とする。図６で、他の実行戦略が考えられることは明らかであるが、中央イベントサーバがコンテンツ・プロバイダ３０内に実行される。コンテンツ・プロバイダ３０は、各アプリケーション・サーバ、例えばアプリケーション・サーバ４０に作動的に結合されたイベント伝送バッファ４１０及び各クライアント・コンピュータ内のイベント受信バッファ、例えばクライアント・コンピュータ２０内のイベント受信バッファ４２０を含む。
【０１０８】
一実施例において、クライアント・コンピュータ、中央イベントサーバ及びアプリケーション・サーバに対するプラットホーム専用ソフトウェアは、そのドロップレット使用可能バージョンへのリンクを通じて局所的に設置したりアクセスすることができる。クライアント・コンピュータ上で、ソフトウェアは、ユーザがそのイベント受信バッファ４２０へのサーバプリケーションのアクセスを個別的に付与することを許容する。また、クライアントソフトウェアは、イベントヒストリーのビューを提供し、この際、クライアントが以前に伝送された情報(サウンド、イメージ、テキストまたはその任意の組み合わせ)を更に呼び出すことができるようにする。
【０１０９】
先ず、アプリケーション(例えば、アプリケーション・サーバ４０上で実行されるドロップレット使用可能アプリケーション４１）が一つ以上のユーザにより権限が付与されると、アプリケーション４１は、中央イベントサーバの伝送バッファ４１０にメッセージ(例えば、アプリケーション・サーバ４０からコンテンツ・プロバイダ３０へのメッセージ４３０)を伝送することによって、イベントをポストする。メッセージ４３０は、例えばイベントを受信すべきユーザまたはユーザを識別する情報だけでなく、ポストされたイベントの詳細を含む。次に、メッセージは、中央イベントサーバによりイベントチャンネル４００を通じて特定のクライアントに配信される。
【０１１０】
好ましくは、ユーザは、アプリケーションから由来するイベント情報を選択することによって、アプリケーションを呼び出すことができる。追加的に、アプリケーション専用情報は、アプリケーション自体がアクティブであるか否かによって伝送することもできる。
【０１１１】
遍在イベントチャンネル４００は、ドロップレット使用可能アプリケーションプロバイダー、ディベロッパーまたは後援している実体がユーザ又はドロップレット使用可能アプリケーションのユーザに対して新たな又は改正されたコンテンツが利用可能であることを選択的に通知できるメカニズムを提供する。一実施例において、プロバイダー、ディベロッパーまたは後援している実体は、例えばアプリケーションの使用パターンに基づいてドロップレット使用可能アプリケーションの全てのユーザまたは特定のユーザに通知イベントを伝送することができる。他の実施例において、クライアント・コンピュータ２０のユーザは、所定時間のあいだイベントチャンネルをポーリングするか、又は別の方法で評価し、そこにロードされたドロップレット使用可能アプリケーションに関連した新たな又は改正された情報が利用可能であるか否かを決定する。
【０１１２】
ウェブサイト上に提供されるインタラクティブ、ドロップレット使用可能ショッピングアプリケーションの例において、ユーザは、アプリケーション及び在庫品のアイテムをそのデスクトップにダウンロードする。前述のように、追跡の情報は、ショッピングアプリケーションを後援している実体に提供することができる。購買決定が遅延されると、在庫品のアイテムに関連した価格決定及び可用性が変更されることができる。追跡の情報及びイベントチャンネル４００を活用することによって、改正された価格決定及び／または可用性情報を含む通知メッセージをユーザに伝送することができる。また、ショッピングアプリケーションを後援している実体が在庫品のアイテムに対するディスカウントされた価格を含む通知メッセージをイベントチャンネル４００を通じてユーザに伝送することによって、ユーザの購買に良い影響を与えることができる。本発明によれば、このようなイベントチャンネル４００を通じて伝送される目標選定されたプロモーションメッセージは、ショッピングアプリケーションが現在実行中であるか否かによってクライアント・コンピュータで受信されるはずである。
【０１１３】
持続的な状態の維持
本発明は、ドロップレット使用可能アプリケーションの以前の動作状態を再確立するための性能を提供する。例えば、ユーザがドロップレット使用可能アプリケーションを有するセッションを再確立する場合、アプリケーションの状態は、ユーザがセッションを終了した直前の時点に復元される。
【０１１４】
本発明によれば、アプリケーション・サーバ４０は、各ドロップレット使用可能アプリケーションの現在の動作状態に関する状態の情報４８をアプリケーション・サーバ４０像のデータ格納所６４０に維持する(図１及び図８)。状態の情報４８は、アプリケーションが終了した後に維持される。状態の情報４８は、特定のユーザに対する動作状態の情報４８がデータ格納所６４０から検索可能なように、ユーザ識別フィールドを含む。本発明は、ユーザがセッションを開始する以前に登録するサイン−オン(sign-on)手続または類似のメカニズムを考案することができることは明らかである。したがって、ユーザの動作セッションに対応する状態の情報は、ユーザＩＤ等により識別することができる。登録手続は、一般的に周知のように、手続の更なる詳細は、ここでは説明しない。そのような登録手続が本発明の範囲に属するということは明らかである。
【０１１５】
同一のユーザがドロップレット使用可能アプリケーションを再び呼び出す場合、ユーザが最後のセッションで実行した各アプリケーションに対応する状態の情報４８が検討され、再び呼び出されたアプリケーションに関連した状態の情報４８は、データ格納所６４０から検索する。ドロップレット使用可能アプリケーションがクライアント・コンピュータ２０に提供される時、検索された状態の情報４８がユーザに配信される。一実施例において、ユーザに対しては最終セッションに対応する状態の情報４８をロードするか否かのオプションが与えられる。状態の情報４８がアプリケーション・サーバ４０上で維持され、ユーザ登録情報への関連により識別可能な場合、状態の情報４８は、現在及び以前動作セッションが運用されたクライアント・コンピュータ２０に関係なく提供される。したがって、ユーザが他のクライアント・コンピュータからドロップレット使用可能アプリケーションを再び呼び出すとしても、以前状態の情報４８は、アクセス可能であり、要求時にユーザに提供することができる。
【０１１６】
例えば、図８を再び簡単に参照すれば、まず、ユーザは、クライアント・コンピュータ６９８に表示された会社内のパーソナル・コンピュータでストック・ウォッチャー・アプリケーション１００にログオンして(システム６００に登録して)呼び出す。このセッションの間、ユーザは、ストック・ウォッチャー・アプリケーション１００を提供するウィンドウのサイズを変更し、多数の個人の株式提案をストック・ウォッチャー・アプリケーション１００下で「注視」株式のリストに追加する。周知のように、状態の情報４８は、データ格納所６４０に格納され、ユーザの識別フィールドを参照することによってアクセスが可能である。ユーザは、アプリケーション１００の現在実行を終了し、クライアント・コンピュータ６０８をログオフする。以後、ユーザは、旅行中でも注視株式の状態に関しチェックする機会を有する。ユーザは、クライアント・コンピュータ６０６に表示された、例えばラップトップパーソナル・コンピュータのような携帯用電子デバイスからストック・ウォッチャー・アプリケーション１００を再び呼び出す。ユーザがクライアント・コンピュータ６０６でストック・ウォッチャー・アプリケーション１００へのリンクを以前に伝送したので、ユーザは、ストック・ウォッチャー・アプリケーション１００を検索するための通信接続６１８を確立することができる。本発明によれば、クライアント・コンピュータ６０８でアプリケーション１００の以前実行に対応する状態の情報４８は、データ格納所６４０から検索され、クライアント・コンピュータ６０６におけるユーザに提供される。その結果、ストック・ウォッチャー・アプリケーション１００を提供するサイズ調整されたウィンドウ及び新たに付加された個人株式の提案がユーザに提供される。したがって、本発明は、従来の状態追跡方法、例えば本明細書の背景部分で説明したクーキー技術の短所を克服する。前述のように、以前の状態の情報は、以前にセッションを呼び出したクライアント・コンピュータ２０に一般的に格納されるので、ユーザが同じアプリケーションを他方のクライアント・コンピュータで再び呼び出す場合、一方のクライアント・コンピュータでユーザにより呼び出されたアプリケーションに発生された変更が明白でないという点から従来の方法は限界を有する。
【０１１７】
好ましくは、動作セッション状態の情報４８は、オープンされたウィンドウとコントロールのサイズ及び位置、アプリケーション内のカーソルの位置、完了したり部分的に完了した任意のデータフィールド値、及び例えば以前セッション中にユーザにより選択された在庫品のデータフィールドまたはアイテムを含むことができる。好ましくは、アプリケーション・サーバ４０は、状態の情報４８を長時間格納デバイスに格納することによって、ユーザ活動の長時間遅延の責任を負うことができるように保障する。また、ドロップレット使用可能アプリケーションの完了状態を示す格納可能なパケット情報を生成するための標準APIが規定される。また、クライアント・コンピュータ６０２-６０８上で運用されるソフトウェアは、ウィンドウを生成し、選択を移動させる要求(前述した通信プロトコル下で行われる)に応答できなければならない。
【０１１８】
ユーザとドロップレット使用可能アプリケーション間の動作セッションがアクティブであり、ユーザが同一のドロップレット使用可能アプリケーションで他のセッションを確立しようと試みる場合、システム６００は、衝突を識別する。すなわち、試みられた新しいセッションを終了し、現在のセッションを維持するか、又は現在のセッションを終了し、新しいセッションを開始するかのオプションをユーザに提供するメッセージが伝送され、クライアント・コンピュータ６０２−６０８上に表示される。
【０１１９】
同時に発生する動作セッションを識別するために、システム６００(及びシステム１０)は、特定のユーザが既に特定のアプリケーションとオプンセッションを有していることを示すフラッグを格納する。ユーザが新しいアプリケーションへの接続を試みる場合、システム６００は、フラッグの値をチェックする。それが設定されれば、システム６００は、現在のセッションを終了すべきか、又は新しいセッションを生成するべきかに関する選択を提供する。ユーザが終了を選択すれば、システムは、終了したことを、運用中のアプリケーションに通知する。ユーザが新しいセッションの開始を選択すれば、システム６００は、選択を示すフラッグを格納する。フラッグは、セッションを固有に識別するタイムスタンプを含むことが好ましい。ユーザが接続を試み、多数のアクティブセッションが存在する場合、それらのうちいずれか一つを終了させることができるオプションがユーザに与えられる。
【０１２０】
ウェブトップへのデスクトップアプリケーションのミラーリング
本発明によれば、ウェブトップはアカウントの承認されたユーザにより通常利用されるドロップレット使用可能アプリケーション及び/または情報へのリンクを格納するためのパスワード保護されている個人格納所、例えばウェブサイト上のアカウントである。リンクはサーバのアドレス及びアカウント内のアプリケーション及び情報を支援下に、その上で実行されるプロセスの名前を含む。
【０１２１】
ドロップレット使用可能アプリケーション及び/または情報へのリンクがクライアント・コンピュータ２０にコピーされる場合、例えばウィンドウズ（登録商標）内でデスクトップに付加されたりデスクトップ上に表示されるメニューに付加される場合、リンクはまたユーザのウェブトップにコピーしたり"ミラーリング"できる。好ましくは、ミラーリングの様態はユーザの制御下にある。すなわち、ユーザはミラーリングがいつも発生したり、全く発生しなかったりメッセージが、ユーザにそれらがユーザのウェブトップへのリンクをミラーリングすることを望むか否かについて質問を指定できる。ユーザとの相互作用なしにウェブトップへのリンクをミラーリングするオプションが選択されれば、ウェブトップアカウントにアクセスするのに必要とする情報、すなわち承認されたユーザの名前及びパスワードはミラーリングプロセスによりインコーディングされる。
【０１２２】
好ましい実施例において、デスクトップ上にドロップレット使用可能アプリケーションまたは情報へのリンクを格納するために利用する方法に関わらず、ミラーリングプロセスが行われる。すなわち、ウェブページのドロップレット・ハンドルをドラッギングアウトしたり、それを付加するメニュー指令を選択することによりリンクがダウンロードされるか否かによってミラーリングを呼び出すことができる。一つの実施例において、ユーザはリンクをデスクトップに付加しないでそのウェブトップにリンクを記録するように選択できる。また、ミラーリングプロセスは他のサーバにより支援される同一のアプリケーションのインスタンスを区別する。ユーザがウェブトップアカウントを訪問する時、そのユーザに対して格納されたアプリケーションはグループで表示される。好ましくは、付加されたアプリケーションは"新しいアプリケーション"グループに自動に加える)。ユーザは新しいグループを生成し、好みによってアプリケーションを移動できるオプションを持つ。一つの実施例において、ウェブトップ上にはアプリケーションを特定ユーザの格納所に付加するためにユーザが登録できるウェブインターフェースがある。
【０１２３】
ドロップレットの多重プラットホームの実行
前述のように、ドロップレット使用可能クライアント・コンピュータ２０はドロップレットプレゼンテーション・クライアント２５を含む。本発明によれば、プレゼンテーション・クライアント２５はアプリケーション・サーバ４０から受信されたユーザ・インターフェーススペックを処理して、前述したメッセージ・フォーマット(例えば、イベント通知及びセッション指令)を活用してアプリケーション・サーバ４０にユーザ駆動イベントを戻してルーティングする普遍的なプラットホーム独立アプリケーション・プログラムである。
【０１２４】
ドロップレットプレゼンテーション・クライアント２５がプラットホーム独立的なので、ドロップレット・アプリケーションクライアント２５はウェブページまたはデスクトップ上で運用されるスタンドアロン・アプリケーションからダウンロードされるか否かによってドロップレット使用可能アプリケーションの全てのインスタンスを実行できる。しかし、ドロップレットプレゼンテーション・クライアント２５の実行は多様なハードウェア及びソフトウェアプラットホームによって相違する。例えば、ドロップレットプレゼンテーション・クライアント２５は他のベンダーの多数のウェブ・ブラウザと組み合わせられるように設計され、パーム・パイロット、インターネットイン使用可能無線電話、Netpliance（登録商標）、１-Openers（登録商標）、タブレットコンピュータなどのような非パーソナル・コンピュータプラットホームで動作する。プレゼンテーション・クライアント２５はWindows（登録商標）またはリヌクスオペレーティング・システムを運営するパーソナル・コンピュータ、アップルマッキントッシュ及びサン・ソラリスワークステーションのような多重コンピュータプラットホーム上で動作するように設計される。更に、サーバ・コンピュータ３０及び４０は例えばウィンドウズ（登録商標） NT及びユニックスサーバプラットホームのような多重ハードウェア及びソフトウェアプラットホーム上で動作する。
【０１２５】
ウェブ基盤実行(ウェブページ内)で、好ましくはドロップレットプレゼンテーション・クライアント２５はジャバ・アプレット、アクティブXコンポーネントとしてまたはブラウザ・プラグインとして実行される。これらの各実行技術はウェブページに組み合わせられるインターフェースを提供する。ドロップレットプレゼンテーション・クライアント２５を含めるのに利用するHTMLタグのパラメータは接続するサーバとプレゼンテーション・クライアント２５に要求したアプリケーションの種類を提供する。
【０１２６】
デスクトップ基盤の実行において、ドロップレットプレゼンテーション・クライアント２５は実行可能な標準ネイティブとして実行される。プレゼンテーション・クライアント２５はリンク、すなわちリンクに関連するファイルから、接続するサーバ及び要求するアプリケーションの種類をプレゼンテーション・クライアント２５に知らせる情報を受信する。
【０１２７】
保安の特徴
本発明によって構成されて動作するドロップレット使用可能クライアント/サーバ・システム１０はクライアント・コンピュータ２０とサーバ・コンピュータ、例えば３０及び４０の間で、前述したパスワード及び情報、すなわち通信プロトコル、メッセージ・フォーマット及びイベントチャンネル内から伝送された情報の暗号化保護された格納及び伝送のための保安性能を含む。
【０１２８】
実質的にパスワードの悪用を防止するために、MD５または類似の慣例を用いて、伝送する前にパスワードが処理される。同様に、パスワードを要求したアプリケーション内で、パスワードが暗号化されたチャンネル上でも普通のテキストで伝送されない場合にハッシングが行われる。パスワードをシステムにタイピングしなければならない場合、文字が隠蔽されて、すなわち各文字表示が星印で表示される。
【０１２９】
システム１０内で暗号化ルーチンが利用される。クライアントとサーバとの間の初期プロトコル交渉の一部として、サーバは伝送物の一部または皆の圧縮を指定できる。電力制限の処理が禁止されない場合には、システム１０は標準メカニズムとしてSSLを利用して共通キーを確立する。電力制限の処理命令を出す場合、例えばHTTPトンネルリングのような他のメカニズム及び暗号化アルゴリズムを代えることができる。代替アルゴリズムは保安及び検閲を受けて、主要アルゴリズムのように信頼性がなければならない。
【０１３０】
特定ドロップレット使用可能アプリケーション内での伝送メッセージングは、例えばドロップレット・アプリケーションの開発者またはアプリケーションのユーザのオプションで選択的に保障されたりされなかったりするのは明らかである。また、保安レベル、例えば１-ビット、３０-ビット、または１２８-ビット暗号化はリアルタイムで選択できる。すなわち、機密情報は保安チャンネルを通じて伝送でき、それよりは機密でない情報はちゃんと保安されていないチャンネルを通じて伝送される。当業者らに周知された通り、ネットワーク構成に課される制限及び保安レベルと、望みのネットワークの性能間には直接的な関係がある。
【０１３１】
ドロップレット使用可能アプリケーションの開発
当業者であれば、ドロップレット使用可能アプリケーションの開発は従来コンポーネント基盤アーキテクチャーを利用してGUIまたはデスクトップアプリケーションを開発することと類似である。うまく設計されたデスクトップアプリケーションはユーザ・インターフェース、ビジネス論理及びデータ格納機能をモジュールで処理するためにルーチンを分離させる。ユーザ・インターフェース、ビジネス論理及びデータ格納機能のモジュールへの分離は、他のプラットホーム間で更に大きい移動性を提供する。例えば、ビジネス論理及び/またはデータ格納モジュールに影響を及ぼさなく、ハードウェアの特定要求を担当するユーザ・インターフェースモジュールに変形を加えることができる。本発明に従って構築されたドロップレット使用可能アプリケーションは、アプリケーション開発にこのような階層化された方法とかモジュール接近法を含む。
【０１３２】
図７はドロップレット使用可能アプリケーション５５０と比較される従来のアプリケーション５００の論理階層を図示している。示すように、従来のアプリケーション５００はユーザ・インターフェース層５１０、ビジネス論理層５２０及びデータベースまたはデータ格納層５３０を含む。ドロップレット使用可能アプリケーション５５０はアプリケーション・サーバ上で実行されて呼び出されるクライアント・コンピュータに機能を提供するユーザ・インターフェース層５６０、ビジネス論理層５７０及びデータベース層５８０を含む。
【０１３３】
従来のアプリケーション５００及びドロップレット使用可能アプリケーション５５０のビジネス論理層５２０及び５７０とデータ格納層５３０及び５８０は実質的に同様である。アプリケーション５００及び５５０の階層化された接近法での差異点はドロップレット使用可能アプリケーション５５０のユーザ・インターフェース層５６０が二つのコンポーネント、すなわちクライアントユーザ・インターフェース５６２及びサーバユーザ・インターフェース５６４を含む点である。クライアントユーザ・インターフェース５６２はクライアント・コンピュータ２０上で実行されるに反して、サーバユーザ・インターフェース５６４はビジネス論理層５７０及びデータ格納層５８０と共にアプリケーション・サーバ４０上で実行される。サーバ論理層(５６４、５７０及び５８０)内のアプリケーション・ドライバは、アプリケーション・サーバ４０上で実行されるドロップレット使用可能アプリケーションがユーザのクライアント・コンピュータ２０で実行されているように、ユーザに見えるようにネットワーク通信プロトコル(すなわち、イベント通知メッセージ、更新及びウィンドウズ（登録商標） 指令メッセージ）を利用する。例えば、アプリケーション・ドライバはグラフィック・オブジェクトをレンダリングするための指令、デフォルト・パラメータ、またはドロップレット使用可能アプリケーション５５０内に表示されるデータ値をクライアントユーザ・インターフェース５６２に提供する。
【０１３４】
前述したモジュールまたは階層化された接近法を含むアプリケーションは現在のコードの実際の再記録なしにドロップレット使用可能アプリケーションとして再記録できることは明らかである。すなわち、現在のアプリケーションユーザ・インターフェース層は変形されるだけである。
【０１３５】
好ましくは、ドロップレット使用可能アプリケーションは、一旦クライアント・コンピュータにより局所的に呼び出されると、例えばアプリケーション・サーバ４０のように遠隔サーバ上のアプリケーション・ドライバの制御下でローディング及び運用されて、ダイナミックにローディング可能なライブラリとして採用される。ドロップレット使用可能アプリケーション及びアプリケーション・ドライバは、好ましくはジャバ、C++、ビジュアル・ベーシック、またはCOMまたはCORBAインターフェースを支援する他の等価のプログラミング言語で記録される。また、ドロップレット使用可能アプリケーションは始動時具体化され、アクティブの間、全てのプログラム情報を維持して、オブジェクトが破壊された場合にはアプリケーションを終了させるオブジェクトとして実行される。単一アプリケーション・サーバ内に多数のそういうオブジェクトを具体化することにより、サーバは同一なサーバから同一なアプリケーションの独立的インスタンスを運用する任意のユーザを支援できる。
【０１３６】
結論
本発明を、好ましい実施例と関連して説明して記述したが、当業者ならばよく分かるように、本発明の思想と範囲を外れなくても色々な修正と変形が可能だということが分かるはずである。例示を通じて及び前述のように、本発明の説明はネットワークを介して遠隔位置に格納されたアプリケーション及び/または情報へのインタラクティブ・リンクを提供する任意の特定方法で制限しようと意図したことではない。すなわち、ここに開示された特徴はインターネットとかウェブ基盤システムのアプリケーションに限定されないというのは明らかである。
【０１３７】
例えば、クライアント・コンピュータ２０はパーソナル・コンピュータ、ワークステーション、携帯またはハンドヘルドデバイスなどのような任意のタイプのコンピューティングデバイスになることができるというのは明らかである。好ましい実施例において、コンテンツ・プロバイダ３０及びアプリケーション・サーバ４０はデバイス間の有線及び無線の相互接続を有する、例えばインターネットのようなパケット・スイッチング・ネットワークを介して作動的に結合される。
【０１３８】
更に、本発明の好ましい実施例は２個のサーバ・コンピュータ、情報コンテンツを提供するためのコンテンツ・プロバイダ、及びレンダリング指令、デフォルトデータ値及びアプリケーション専用ビジネス論理を含むドロップレット使用可能アプリケーション及び情報を提供するためのアプリケーション・サーバを含む。一つのサーバ・コンピュータがこれらのサービス及び機能を提供することが本発明の範囲に含まれることは明らかである。すなわち、コンテンツ・プロバイダはレンダリング指令、デフォルトデータ値及びアプリケーション専用ビジネス論理を含むドロップレット使用可能アプリケーション及び情報を提供するためのハードウェア及びソフトウェアリソースを含むことができる。本実施例において、通信接続５２及び５４として前述した二つのネットワーク接続は、ここに説明された２個の論理関数を満たす限り、接続が物理的に行われることができる。
【０１３９】
したがって、添付された特許請求の範囲に提示された発明は前記提供された細部構造に限らず、当業者には明らかな他の修正及び変形は添付された特許請求の範囲に提示された本発明の思想及び範囲に含まれる。
【図１】
2011165209.tif 000003
【図２】
2011165209.tif 000004
【図３】
2011165209.tif 000005
【図４Ａ】
2011165209.tif 000006
【図４Ｂ】
2011165209.tif 000007
【図４Ｃ】
2011165209.tif 000008
【図４Ｄ】
2011165209.tif 000009
【図５】
2011165209.tif 000010
【図６】
2011165209.tif 000011
【図７】
2011165209.tif 000012
【図８】
2011165209.tif 000013