(57)【要約】  安全なモバイル・コンピューティングを可能にする可動性装置プラットフォームで使用される可動性装置が提供される。図示される実施例では、典型的な可動性装置プラットフォームは、少なくとも１つのコンピューティング環境と通信インターフェースを介して通信し、安全なウェブ・サービスを処理して記憶するために動作する可動性装置、データ及びコンピューティング・アプリケーションをウェブ・サービスを使用して通信するために動作する通信ネットワーク、並びにウェブ・サービスを可動性装置に対して生成し、処理し、記憶し、通信し、暗号化するために動作する可動性装置管理サーバを含む。可動性装置は、処理装置、協働するコンピューティング環境とインターフェースするための可動性装置通信インターフェース、メモリ記憶装置ユニット、並びにウェブ・サービス及び／又はコンピューティング・アプリケーションを実行するために動作可能なオペレーティングシステムを含む。【特許請求の範囲】
【請求項１】
ウェブ・サービスを処理するための可動性装置であって、
少なくとも１つのウェブ・サービスを実行するために動作する処理装置、
前記可動性装置を少なくとも１つの協働するコンピューティング環境に接続する通信インターフェース、
前記処理装置と協働して、ウェブ・サービス・データ、及びトランザクション情報を記憶するメモリ記憶装置ユニット、並びに
少なくとも１つの暗号化されたウェブ・サービスを実行するために前記処理装置で動作可能なオペレーティングシステムを含むことを特徴とする可動性装置。
【請求項２】
フラッシュメモリ、通信インターフェース、自動制御装置、及び入力用周辺機器の何れかを含む周辺機器を受け入れて協働するために動作する周辺機器インターフェース・モジュールを更に含むことを特徴とする、請求項１に記載の可動性装置。
【請求項３】
前記処理装置に結合され、ウェブ・サービス処理の一部として利用されるＮＡＮＤフラッシュメモリを更に含むことを特徴とする、請求項１に記載の可動性装置。
【請求項４】
前記可動性装置が前記少なくとも１つの協働するコンピューティング環境と通信するときに、前記少なくとも１つの協働するコンピューティング環境にデスクトップ・コンピューティング環境を提供するために動作可能なモバイル・デスクトップ・コンピューティング・アプリケーションを更に含むことを特徴とする、請求項１に記載の可動性装置。
【請求項５】
前記可動性装置に対する参加ユーザの選択、及び設定をカスタマイズするために動作可能なユーザ管理モジュールを更に含むことを特徴とする、請求項４に記載の可動性装置。
【請求項６】
可動性装置が自動化された機器構成、及び前記少なくとも１つのコンピューティング環境との協働を開始することを可能にする前記オペレーティングシステムを用いて動作する自動実行モジュールを更に含むことを特徴とする、請求項１に記載の可動性装置。
【請求項７】
前記少なくとも１つのコンピューティング環境が、前記少なくとも１つのコンピューティング環境に固有のオペレーティングシステムを含むことを特徴とする、請求項６に記載の可動性装置。
【請求項８】
前記可動性装置の前記オペレーティングシステムが、前記少なくとも１つのコンピューティング環境に固有の前記オペレーティングシステムを制御することを特徴とする、請求項７に記載の可動性装置。
【請求項９】
ユーザ認証情報を使用して参加ユーザを認証するために動作するユーザ認証及び管理モジュールを更に含むことを特徴とする、請求項８に記載の可動性装置。
【請求項１０】
前記ユーザ認証情報が、ユーザ識別情報、及びユーザ・パスワード情報の何れかを含むことを特徴とする、請求項９に記載の可動性装置。
【請求項１１】
前記可動性装置を、協働する可動性装置管理サーバを用いて認証するために動作する可動性装置プラットフォーム認証及び検証モジュールを更に含むことを特徴とする、請求項１に記載の可動性装置。
【請求項１２】
前記可動性装置が前記可動性装置管理サーバと協働して、ウェブ・サービスを得ることを特徴とする、請求項１１に記載の可動性装置。
【請求項１３】
前記可動性装置を認証すると直ぐに、前記可動性装置管理サーバがウェブ・サービスを前記可動性装置に提供することを特徴とする、請求項１２に記載の可動性装置。
【請求項１４】
ウェブ・サービスを処理するために前記処理装置と協働するコプロセッサを更に含むことを特徴とする、請求項１に記載の可動性装置。
【請求項１５】
ウェブ・サービス・トランザクションを暗号化、及び復号化するために使用する暗号化モジュールを更に含むことを特徴とする、請求項１４に記載の可動性装置。
【請求項１６】
前記オペレーティングシステムが、種々のコンピューティング・アプリケーションを実行するために動作可能なＪａｖａ仮想マシン（ＪＶＭ）を更に含むことを特徴とする、請求項１に記載の可動性装置。
【請求項１７】
前記コンピューティング・アプリケーションが、電子メール・コンピューティング・アプリケーション、ワープロ・コンピューティング・アプリケーション、ブラウザ・コンピューティング・アプリケーション、モバイル・デスクトップ環境、表計算・コンピューティング・アプリケーション、及びウェブ・サービスとして提供される他のコンピューティング・アプリケーションの何れかを含むことを特徴とする、請求項１６に記載の可動性装置。
【請求項１８】
前記可動性装置で複数の作業領域を動作させることを可能にするために動作する作業領域モジュールを更に含むことを特徴とする、請求項１７に記載の可動性装置。
【請求項１９】
前記作業領域モジュールが、可動性装置認証情報を使用して各作業領域へのアクセスを制御するために動作することを特徴とする、請求項１８に記載の可動性装置。
【請求項２０】
各作業領域に対する構成情報が、前記メモリ記憶装置ユニットに記憶されることを特徴とする、請求項１９に記載の可動性装置。
【請求項２１】
ネットワーク化されたコンピューティング環境を介してウェブ・サービスと安全に通信するための方法であって、
ウェブ・サービスを処理するために動作可能な可動性装置を提供し、
前記可動性装置と協働する可動性装置管理サーバの間に通信リンクを介して通信を確立し、及び
前記可動性装置管理サーバによって提供された暗号化されたウェブ・サービスを、前記可動性装置において実行する諸ステップを含むことを特徴とする方法。
【請求項２２】
前記可動性装置を前記可動性装置管理サーバによって認証し、前記可動性装置が適切なアクセス権、及び前記可動性装置管理サーバによって提供された要求されたウェブ・サービスを受信する特権を有することを保証するステップを更に含むことを特徴とする、請求項２１に記載の方法。
【請求項２３】
前記可動性装置管理サーバから認証された可動性装置に、要求されたウェブ・サービスを伝達するステップを更に含むことを特徴とする、請求項２２に記載の方法。
【請求項２４】
前記可動性装置と協働するコンピューティング環境の間に通信リンクを確立するステップを更に含むことを特徴とする、請求項２１に記載の方法。
【請求項２５】
協働するコンピューティング環境でウェブ・サービスを安全に実行するためのシステムであって、
ウェブ・サービス、及び関連するウェブ・サービス・トランザクション・データを処理するための第１手段、
ウェブ・サービス、及び関連するウェブ・サービス・トランザクション・データを記憶するための第２手段、並びに
前記第１手段、及び前記第２手段を協働するコンピューティング環境に接続するための第３手段を含むことを特徴とするシステム。
【請求項２６】
前記システムを前記協働するコンピューティング環境を用いて認証するための第４手段を更に含むことを特徴とする、請求項２５に記載のシステム。
【請求項２７】
ウェブ・サービスを提供する可動性装置管理サーバと通信するための第５手段を更に含むことを特徴とする、請求項２６に記載のシステム。
【請求項２８】
前記第３手段を通して前記協働するコンピューティング環境でコンピューティング・アプリケーションを実行するための第６手段を更に含むことを特徴とする、請求項２５に記載のシステム。
【請求項２９】
協働するコンピューティング環境で動作させるために可動性装置を構成するための方法であって、
自動実行オペレーションを前記可動性装置で起動して、前記可動性装置が自らを自動的に構成して前記協働するコンピューティング環境に関連付けることを可能にし、
ユーザ認証情報を得て、
ユーザ認証情報を検証して、及び
正常にユーザ認証されると直ぐ、前記可動性装置が前記協働するコンピューティング環境と協働して、ウェブ・サービスを実行する諸ステップを含むことを特徴とする方法。
【請求項３０】
前記協働するコンピューティング環境で、電子メール、ワープロ、表計算、ブラウザ、デスクトップ環境、及びユーザ管理アプリケーションの何れかを含むコンピューティング・アプリケーションを実行するステップを更に含むことを特徴とする、請求項２９に記載の方法。
【請求項３１】
ウェブ・サービス、及び関連するウェブ・サービス・トランザクションを前記可動性装置で記憶するステップを更に含むことを特徴とする、請求項３０に記載の方法。
【請求項３２】
コンピュータに以下の方法を実行するように指示するためのコンピュータ読み取り可能な命令を有するコンピュータ読み取り可能な媒体であって、前記方法が、
自動実行オペレーションを前記可動性装置で起動して、前記可動性装置が自らを自動的に構成して前記協働するコンピューティング環境に関連付けることを可能にし、
ユーザ認証情報を得て、
ユーザ認証情報を検証して、及び
正常にユーザ認証されると直ぐ、前記可動性装置が前記協働するコンピューティング環境と協働して、ウェブ・サービスを実行する諸ステップを含むことを特徴とする媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、2003年09月29日に出願された米国特許仮出願第60/507,197号「GO-KEY SYSTEM」、第60/506,918号「GO-KEY ONLINE MUSIC SUBSCRIPTION AND DISTRIBUTION APPLICATION AND SERVICE」、第60/506,919号「GO-KEY E-MAIL APPLICATION AND SERVICE」、第60/506,925号「GO-KEY MOBILE DESKTOP ENVIRONMENT」、及び2004年01月23日に出願された第60/543,735号「MDMS」、第60/538,763号「OMNI FILE SYSTEM (OFS)」、第60/538,915号「UDDI DIRECTORY」、第60/538,767号「UDDI REPOSITORY」の利益を主張する。加えて、本願は、米国同時係属出願第XX/XXX,XXX号「MOBILITY DEVICE」、及び第XX/XXX,XXXX号「MOBILITY DEVICE PLATFORM」を参照する。
【０００２】
本発明の装置及び方法はモバイル・コンピューティング技術に関し、更に詳細には、通信ネットワーク及び可動性装置サーバを利用して安全なリモート・モバイル・コンピューティングを可能にする可動性装置に関する。
【背景技術】
【０００３】
企業及び個人は、同様に、コンピューティング環境の特徴として可動性をますます要求する。企業にとって、可動性は社員をバラバラな地理的位置に配置することを可能にし、企業がより良いサービスを顧客に提供することを可能にする。例えば、大規模な製薬会社は、営業社員を見込み客（例えば、医師）に近い「フィールド」に配置したい。その様な状況で、「フィールド」社員は、機密扱いの営業・マーケティング情報、及びコンピューティング・アプリケーションに安全な接続を介してアクセスしたい。現在のソリューションによって、これらの社員は、1日の終わりに企業ネットワークと安全なコンピュータ・ネットワーク接続（例えば、仮想専用ネットワーク）を通して「同期」する煩雑な仕事が残されることが多い。比較してみると、個人は、データ及びコンピューティング・アプリケーションに近づく機能、更に詳細には、インターネット通信の時代に「接続して」断続的にとどまる機能を可能にするコンピューティング環境に可動性を要求する。
【０００４】
モバイル・コンピューティングに対する必要性に対応して、コンピューティング環境製造業者は、人々がコンピューティング環境を路上で楽しむことを可能にする（例えば、スタンドアロンの、ネットワーク化された、及び／又は組み込み）モバイル・コンピューティング技術を開発した。その種のモバイル装置は、ユーザがファイル及びアプリケーションを常に「持ち運ぶ」ことを可能にすることを目的とする。可動性を提供しても、形状的因子、処理能力、及び携帯性において変化するときに、これらの装置は辛うじて有効である。その種の制限によって、ユーザは必要なファイル及びコンピューティング・アプリケーションの全てを持つことを保証する大型の携帯型コンピュータを苦労して持ち歩くことが多い。その種の慣習は、コンピューティング・システムの固有の（即ち、「装置中心」コンピューティングを利用する）設計を前提とする。
【０００５】
「装置中心」コンピューティングによって、ユーザはリモート通信アプリケーション（例えば、仮想専用ネットワーク）を介してファイルにリモートで安全にアクセスできるが、データ及びコンピューティング・アプリケーションを検索する大型の煩雑なコンピューティング手段をまだ持ち歩かなければならない。更に詳細には、装置中心コンピューティングによって、ユーザは企業コンピューティング要求に対する１つの装置（例えば、会社のパーソナル・コンピュータ、又はラップトップ・コンピュータ）を一般に支給され、１又は複数のコンピューティング環境を自宅に個人用として一般に有する。複数のコンピューティング環境を維持することにおいて、コンピュータ・ユーザは、個別の選択及び設定を多くの異なるコンピューティング環境の間で同期させる仕事を課される。その種の仕事はどうひいき目に見ても骨が折れ、コンピュータ・ユーザを多くの異なるコンピューティング環境の間で所望するデータ及び／又はコンピューティング・アプリケーションにアクセスできないままにすることが多い。
【０００６】
例えば、コンピュータ・ユーザは、彼（又は、彼女）の財務計画及び管理コンピューティング・アプリケーション（例えば、 Quicken, Microsoft Money）からの財務計画及び管理データを常に持ち、生じる支払い（例えば、失効した請求書）を処理したい。現在のソリューションによって、彼（又は、彼女）がこの所望するデータにアクセスできるように、コンピューティング・ユーザは財務計画、管理コンピューティング・アプリケーション、及びデータを（会社のコンピューティング施策及び手続きに違反する彼（又は、彼女）の会社のコンピュータを含む）各自のコンピューティング環境にインストールする。比較してみると、企業は解雇される従業員からの機密扱いの企業データへの全てのアクセスを効果的かつ直ちに終了させたい。装置中心コンピューティングに基づく現在の慣習では、従業員は彼らのコンピューティング環境（例えば、ラップトップ・コンピュータ、パーソナル・コンピュータ、携帯電話、又は携帯情報端末）を提出するように求められる。加えて、直ぐに解雇される従業員は、企業ユーザ・ディレクトリ情報を終了させることによって、企業データの使用を制限される。しかし、その種の装置を回収すること、及びアクセスを終了させることには固有の待ち時間が存在する。その種の待ち時間は、従業員がファイルを企業コンピューティング環境から後で使用するためにコピーすることを招く。そういうものであるから、既存の慣習では、機密扱いの企業データが改竄されるかもしれない。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上記のことから、既存の慣習の短所を克服する必要性が存在する。
【課題を解決するための手段】
【０００８】
安全なモバイル・コンピューティングを可能にする可動性装置プラットフォームで使用される可動性装置が提供される。図示される実施例では、典型的な可動性装置プラットフォームは、少なくとも１つのコンピューティング環境と通信インターフェースを介して通信し、安全なウェブ・サービスを処理して記憶するために動作する可動性装置、データ及びコンピューティング・アプリケーションをウェブ・サービスを使用して通信するために動作する通信ネットワーク、並びにウェブ・サービスを可動性装置に対して生成し、処理し、記憶し、通信し、暗号化するために動作する可動性装置管理サーバを含む。可動性装置は、処理装置、協働するコンピューティング環境とインターフェースするための可動性装置通信インターフェース、メモリ記憶装置ユニット、並びにウェブ・サービス及び／又はコンピューティング・アプリケーションを実行するために動作可能なオペレーティングシステムを含む。
【０００９】
オペレーションでは、可動性装置は、１又は複数の協働するコンピューティング環境と可動性装置通信インターフェースを通して協働する。可動性装置は、ユーザ認証情報を使用してユーザ認証に従事する。いったん認証されたら、可動性装置は少なくとも１つの協働するコンピューティング環境と可動性装置通信インターフェースを通して協働し、ウェブ・サービス及び／又はコンピューティング・アプリケーションを協働するコンピューティング環境で実行する。更に、可動性装置は、可動性装置管理サーバと協働して、少なくとも１つの協働するコンピューティング環境で実行するためのウェブ・サービス及び／又はコンピューティング・アプリケーションを得る。
【００１０】
本発明の装置及び方法の他の特徴が、以下に記載される。
【発明を実施するための最良の形態】
【００１１】
本発明の装置及び方法は、「ユーザ中心」アプローチをコンピューティング及びモバイル・コンピューティングに提供する。一般に、（企業又は個人の）現在のコンピューティング・ソリューションは、「装置中心」モデルを使用して設計される。装置中心モデルは、装置の割当て及び指定に基づいてユーザを管理し追跡することを目的とする。例えば、企業コンピューティングという状況では、企業コンピューティング環境は、多数のサーバ・コンピューティング環境、及び多数のクライアント・コンピューティング環境を含む。一般に、企業の各ユーザは、サーバ・コンピューティング環境に企業通信インターフェースを通して（又は、もしユーザが企業通信ネットワークに対してリモートであれば、仮想専用ネットワーク（ＶＰＮ）を通して）一般にネットワーク化されたクライアント・コンピューティング環境（例えば、パーソナル・コンピュータ、又はラップトップ・コンピュータ）を支給される。加えて、従来の企業コンピューティング環境では、ユーザの権利及び特権を企業データ及びコンピューティング・アプリケーションに関連付けるディレクトリ・サービス構造を通して、ユーザはユーザ識別情報及びパスワード情報を提供される。
【００１２】
その種の企業コンピューティング環境によって、もしユーザがネットワーク中をうろついて自分以外のコンピューティング環境にログオンしたら、個別の選択及び設定にアクセスしないように、ユーザは支給された彼（又は、彼女）のコンピューティング環境を彼（又は、彼女）の選択及び設定でカスタマイズすることを許可されるだけであることが多い。また、この問題は、選択及び設定（例えば、ブラウザ・ブックマーク、デスクトップのルック・アンド・フィール、色彩設計、アプリケーションのレイアウト、及びファイルに対するディレクトリ構造）を企業コンピューティング環境と個人のコンピューティング環境（例えば、自宅のコンピュータ）の間の同期を維持したい企業ユーザが同期を手動で実行することが多いときにも見られる。
【００１３】
更に、既存の企業コンピューティング環境によって、多数のクライアント・コンピューティング環境の管理は困難な仕事になった。現在、企業は、（数百ではない）数十単位の情報技術部門を雇用して、多くのユーザ及びコンピューティング環境をサポートしている。単なる物理的管理以上に、企業データの保全性及びセキュリティが、装置中心コンピューティング・モデルによって稼働させられる。その様な状況で、企業コンピューティング・ユーザは、機密扱いの企業データのコピー及び構成における自分の意志を放置することが多い。企業ファイル及びデータの無許可コピーをユーザにさせない仕事はどうひいき目に見ても困難なので、殆どの企業は見て見ぬふりをする。既存の慣習のその種の限定は、企業及び個人に対して同様に非常に高くつく。
【００１４】
本発明の装置及び方法は、「ユーザ中心」モデルを使用して設計された可動性装置を提供することによって既存の慣習の短所を改善することを目的とする。図示される実施例では、可動性装置は、１又は複数の協働するコンピューティング環境（例えば、パーソナル・コンピュータ、携帯情報端末、携帯電話、ネットワーク化されたコンピュータ、及び他のコンピューティング環境）と通信インターフェース（例えば、ユニバーサル・シリアル・バス（ＵＳＢ）、 IEEE 1394 通信インターフェース（FireWire）、 802.XX 通信インターフェース、 Bluetooth 通信インターフェース、パーソナル・コンピュータ・インターフェース、小型コンピュータ・シリアル・インターフェース、及び無線アプリケーション・プロトコル（ＷＡＰ）通信インターフェース）を通して通信するために動作する少なくとも１つの可動性装置（ＭＤ）を含む。加えて、可動性装置プラットフォームは、認証及び検証、並びにユーザ管理を協働する可動性装置及びそれらのユーザに提供するために動作する１又は複数の可動性装置管理サーバ（ＭＤＭＳ）を含む可動性装置プラットフォームの一部として使用するためのものである。
【００１５】
オペレーションでは、可動性装置は、ウェブ・サービスを処理するための１又は複数の作業領域を呼び出す１又は複数のコンピューティング環境と協働する。ウェブ・サービスは、ＭＤに近いデータ及びコンピューティング・アプリケーションから実行されるか、又はＭＤは１又は複数のＭＤＭＳと協働して所望するウェブ・サービスを得る。ＭＤＭＳは、要求中のＭＤが要求されたウェブ・サービスに対する権利及び特権を有することを認証するために動作する。加えて、ＭＤＭＳはサード・パーティ・ウェブ・サービス・プロバイダと協働して、要求されたウェブ・サービスを得る。その様な状況で、ＭＤＭＳは、ウェブ・サービスを非ＭＤ固有のウェブ・サービス形式からＭＤ固有のウェブ・サービス形式に変換するために機能する。ウェブ・サービスがＭＤＭＳから協働ＭＤへ通信するとき、ＭＤＭＳ及びＭＤは、ユーザ及び装置の認証情報及び検証情報を使用して１０２８ビット及び／又は２０５６ビット暗号化（例えば、ＰＫＩ暗号化）に従事する。ＭＤＭＳによってＭＤへ提供されたウェブ・サービスは、（限定されないが）コンピューティング・アプリケーション、及び所望するデータを含む。加えて、ＭＤはＭＤに近い参加ユーザのカスタマイズされた設定及び選択を記憶するために動作するので、ＭＤはユーザに対して常に利用可能である。
【００１６】
そういうものであるから、可動性装置によって、ユーザは任意の数の協働するコンピューティング環境を横断して、カスタマイズされた設定及び選択にアクセスできること、更に詳細には、（例えば、ウェブ・サービスとして提供されたような）コンピューティング・アプリケーション及びファイルに安全にアクセスできることを確信する。
［ウェブ・サービス］
【００１７】
一般に、ウェブ・サービス（又は、アプリケーション・サービス）と呼ばれる、通信ネットワーク（例えば、インターネット）を通して提供されるサービスが進歩している。同様に、その種のサービスを容易にする技術も進歩している。ウェブ・サービスは、アプリケーション（又は、エンドユーザ）によって使用されるために便利にパッケージされたビジネス論理プロセスを実行する情報源として定義される。次第に、ウェブ・サービスは、ネットワークを通して機能を提供する手段になってきた。一般に、ウェブ・サービスは、プログラム、及びエンド・ユーザのためのアプリケーション・サーバ（及び、他のネットワーク接続されたアプリケーション・プログラム）から利用可能にされるデータの組み合わせを含む。ウェブ・サービスは、記憶管理、及び顧客関係管理のようなサービスから更に限定されたサービス（例えば、株価の提供、及び競売への入札のチェック）まで及ぶ。
【００１８】
ウェブ・サービスの使用を定義して標準化することに焦点を合わせた活動は、ウェブ・サービス記述言語（ＷＳＤＬ）の開発を含む。ＷＳＤＬは、ウェブ・サービスを文書指向情報、又は手続き指向情報の何れかを含むメッセージで動作する１組のエンドポイントとして記述するための拡張マークアップ言語（ＸＭＬ）形式である。オペレーション及びメッセージは抽象的に記述され、具体的なネットワーク・プロトコル、及びエンドポイントを定義するメッセージ形式に結び付く。関連する具体的なエンドポイントは、抽象エンドポイント（サービス）と合体する。
【００１９】
現在、推奨されるウェブ・サービス利用モデルは、一般に以下のようである。
【００２０】
（１）サービスは、（サーバ・サイドと呼ばれることが多い）１つのサイトで実施されて展開される。
【００２１】
（２）サービスはＷＳＤＬを使用して記述され、手段（例えば、ＵＤＤＩ（Universal Description, Discovery, and Integration））を介して掲載される。ＵＤＤＩは、提供するウェブ・サービスによってインターネットに自らをリストする世界中のビジネスのためのＸＭＬに基づくレジストリである。
【００２２】
（３）クライアント・アプリケーションは、ウェブ・サービスを（クライアント・サイドと呼ばれることが多い）他のサイトにおいて、１又は複数のＷＳＤＬドキュメントを最初に逐次解釈することによって使用する。いったん逐次解釈されたら、クライアントは、関連するサービスの特性を理解できる。例えば、サービス特性は、サービスＡＰＩ仕様（例えば、（ａ）入力データ型、（ｂ）サービス入力データ形式、（ｃ）サービス・アクセス機構、又はスタイル（例えば、ＲＰＣ対メッセージング）、及び（ｄ）関連する符号化形式）を含む。
【００２３】
（４）クライアント・アプリケーションは、種々の特定のウェブ・サービスが理解する方法でデータを準備する。
【００２４】
（５）クライアント・アプリケーションは、特定のサービスを、サービスに対して指定された方法によって、例えば、関連するＷＳＤＬドキュメントで呼び出す。
【００２５】
入力データの形式、及びウェブ・サービスが呼び出される方法に対して、多くの相違点がウェブ・サービスの間に存在する。例えば、１つのアプリケーション・サービス・プロバイダが、単一の入力パラメータ（例えば、従来の都市名（例えば、 Salt Lake City に対して SLC））を要求するサービス（getCityWeather）を提供すると仮定する。その種のサービスを呼び出す傾向があるクライアント・アプリケーションが書き込まれることを要求するので、都市情報を抽出するために内部の（又は、アプリケーションによって出力された）データを解析することができる。実行時には、準備された記号は、 getCityWeather サービス・サイトに適切なＡＰＩを使用して伝わる。
【００２６】
しかし、他のアプリケーション・サービス・プロバイダが、２つの入力パラメータ（例えば、都市名、及び郵便番号）を要求する類似のサービスを提供すると仮定する。従って、もしクライアント・アプリケーションがこの第２のサービスを呼び出す予定があれば、クライアント・アプリケーションは、第２のサービスのデータを要求されたサービス入力パラメータに対して適切に解析して抽出する必要がある。従って、もし単一のアプリケーションが両方のサービスを呼び出す予定があれば、アプリケーションはサービス特有のＡＰＩ情報及び手続きを用いてハードコード化されなければならない。更に、もしアプリケーションが多数のサービスを呼び出す予定があれば、アプリケーションは（アプリケーションが呼び出す予定の）各々及び全てのサービスに関連するサービス特有のＡＰＩ情報及び手続きを用いてハードコード化しなければならない。
【００２７】
上で説明したように、種々のウェブ・サービスは類似の機能を提供するが、多くのやり方で異なる。本発明のシステム及び方法は、データをウェブ・サービス・プロバイダから受信して協働する可動性装置に対して固有のウェブ・サービス・モデルで提示するために動作するウェブ・サービス変換モジュールを（他の間に）含むモバイル装置管理サーバを有する可動性装置プラットフォームを提供することによって、その種の不均衡を改善することを目的とする。
［シンプル・オブジェクト・アクセス・プロトコル（ＳＯＡＰ）］
【００２８】
シンプル・オブジェクト・アクセス・プロトコル（ＳＯＡＰ）は、分散した環境で情報を交換するための軽快なＸＭＬに基づくプロトコルである。ＳＯＡＰは、情報交換の異なるスタイルをサポートする。即ち、
【００２９】
エンドポイントが手続き指向メッセージを受信し、相関する応答メッセージによって応答する、要求−応答処理を可能にするリモート・プロシージャ・コール・スタイル（ＲＰＣ）。
【００３０】
メッセージは送信されるが、送信者は即時の応答を期待しない（又は、待たない）、ビジネス（又は、他の型の）ドキュメントを交換する必要がある構成及びアプリケーションをサポートするメッセージ指向情報交換を含む。
【００３１】
一般に、ＳＯＡＰメッセージは、２つのデータ構造、ＳＯＡＰヘッダ、及びＳＯＡＰボディを含むＳＯＡＰエンベロープ、並びにそれらを定めるネーム空間についての情報を含む。ヘッダはオプションであり、存在するとき、ヘッダはＳＯＡＰボディで定められた要求についての情報を運ぶ。例えば、ヘッダは、トランザクション情報、セキュリティ情報、文脈情報、又はユーザ・プロファイル情報を含む。ボディはウェブ・サービス要求を含むか、又は要求にＸＭＬ形式で応答する。ＳＯＡＰメッセージの高レベル構造が、以下の図に示される。
【００３２】
（ウェブ・サービス要求、及び応答を運ぶために使用されるとき）ＳＯＡＰメッセージは、利用可能なウェブ・サービスのウェブ・サービス記述言語（ＷＳＤＬ）に従う。ＷＳＤＬは、ウェブ・サービスにアクセスするために使用されるＳＯＡＰメッセージ、その種のＳＯＡＰメッセージが交換されるプロトコル、及びこれらのウェブ・サービスがアクセスされるインターネット・ロケーションを記述できる。ＷＳＤＬ記述子はＵＤＤＩ、又は他のディレクトリ・サービスに存在でき、また機器構成、又は他の手段（例えば、ＳＯＡＰ要求応答のボディで）を介して提供できる。
【００３３】
要求及び応答を符号化するための標準的な方法を提供するＳＯＡＰ規格書（例えば、 http://www.w3.org で見出されるw3 SOAP規格書）が存在する。ＳＯＡＰ規格書は、メッセージ・ペイロードの構造及びデータ型をＸＭＬスキーマを使用して記述する。ＳＯＡＰがウェブ・サービスのメッセージ及び応答に対して使用される方法は以下のようである。
【００３４】
ＳＯＡＰクライアントが、ＳＯＡＰ規格書に従いサービスに対する要求を含むＸＭＬドキュメントを使用する。
【００３５】
ＳＯＡＰクライアントがドキュメントをＳＯＡＰサーバへ送信し、サーバで実行中のＳＯＡＰサーブレットがドキュメントを、例えば、ＨＴＴＰ又はＨＴＴＰＳを使用して処理する。
【００３６】
ウェブ・サービスがＳＯＡＰメッセージを受信し、メッセージをサービス呼出しとして要求されたサービスを提供するアプリケーションへ発送する。
【００３７】
サービスからの応答がＳＯＡＰサーバへ（ＳＯＡＰプロトコルを再び使用して）戻され、このメッセージが送信元ＳＯＡＰクライアントへ戻される。
【００３８】
ＳＯＡＰは本発明の装置及び方法のための通信プロトコルとして記載されているが、その種の記述は本発明の装置及び方法の単なる例示であり、種々の通信プロトコル及びメッセージ規格を利用できる。
［コンピューティング環境の例示］
【００３９】
図１は、本発明のシステム及び方法による典型的なコンピューティング・システム１００を示す。コンピューティング・システム１００は、多様なオペレーティングシステム１８０、及びオペレーティングシステム１８０で動作可能なコンピューティング・アプリケーション１８０’（例えば、ウェブブラウザ、及びモバイル・デスクトップ環境）を実行できる。典型的なコンピューティング・システム１００は、コンピュータ読み取り可能な命令によって主に制御され、コンピュータ読み取り可能な命令はソフトウェア（その種のソフトウェアが記憶されアクセスされる場所及び方法）の形態である。その種のソフトウェアは中央処理装置（ＣＰＵ）１１０の内部で実行され、データ処理システム１００を動作させる。多くの既知のコンピュータ・サーバ、ワークステーション、及びパーソナル・コンピュータでは、中央処理装置１１０は、マイクロプロセッサと呼ばれるマイクロ・エレクトロニクス・チップＣＰＵによって実施される。コプロセッサ１１５は（主ＣＰＵ１１０とは別の）オプションのプロセッサであり、追加の機能を実行するか、又はＣＰＵ１１０を補助する。ＣＰＵ１１０は、コプロセッサ１１５に相互接続１１２を介して接続される。１つの一般的な型のコプロセッサは浮動小数点コプロセッサ（又は、数値演算コプロセッサ）であり、浮動小数点コプロセッサは数値計算を汎用ＣＰＵ１１０よりも速く適切に実行するように設計される。
【００４０】
図示されるコンピューティング環境は単一のＣＰＵ１１０を含むように示されるが、その種の記述は単なる例示であり、コンピューティング環境１００は多数のＣＰＵ１１０を含んでもよい。加えて、コンピューティング環境１００は、通信ネットワーク１６０、又は他のデータ通信手段（図示されない）を介してリモートＣＰＵ（図示されない）のリソースを活用する。
【００４１】
オペレーションでは、ＣＰＵ１１０が命令をフェッチ、デコード、及び実行し、他のリソースへ／からコンピュータの主データ転送経路（システム・バス１０５）を介して情報を転送する。その種のシステム・バスは、構成要素をコンピューティング・システム１００の中で接続し、データ交換のための媒体を定める。一般に、システム・バス１０５は、データを送信するためのデータ・ライン、アドレスを送信するためのアドレス・ライン、及び割り込みを送信してシステム・バスを動作させるための制御ラインを含む。その種のシステム・バスの実施例は、ＰＣＩ（Peripheral Component Interconnect）バスである。今日の進歩したバスの中には、拡張カード、制御装置、及びＣＰＵ１１０によってバスへのアクセスを統制するバス裁定と呼ばれる機能を提供するものもある。これらのバスに付属し、調停してバスを占有する装置は、バスマスタと呼ばれる。また、バスマスタ・サポートは、マルチプロセッサ形態のバスが、プロセッサ及びサポート・チップを含むバスマスタ・アダプタの追加によって創出されることを可能にする。
【００４２】
システム・バス１０５に結合されたメモリ装置は、ランダム・アクセス・メモリ（ＲＡＭ）１２５、及び読出し専用メモリ（ＲＯＭ）１３０を含む。その種のメモリは、情報が記憶されて検索されることを可能にする回路を含む。一般に、ＲＯＭ１３０は、修正できない記憶データを含む。ＲＡＭ１２５に記憶されたデータは、ＣＰＵ１１０（又は、他のハードウェア装置）によって読み出し（又は、変更）可能である。ＲＡＭ１２５及び／又はＲＯＭ１３０へのアクセスは、メモリ制御装置１２０によって制御される。メモリ制御装置１２０は、命令が実行されるときに仮想アドレスを物理アドレスに変換するアドレス変換機能を提供する。また、メモリ制御装置１２０は、システム内部の複数プロセスを隔離し、システム・プロセスをユーザ・プロセスから隔離するメモリ保護機能を提供する。従って、通常は、ユーザ・モードで実行中のプログラムは、自らのプロセス仮想アドレス空間によってマッピングされたメモリのみにアクセスでき、プロセス間で共用するメモリが設定されるまで他のプロセスの仮想アドレス空間の内部のメモリにアクセスできない。
【００４３】
加えて、コンピューティング・システム１００は、ＣＰＵ１１０から周辺機器（例えば、プリンタ１４０、キーボード１４５、マウス１５０、及びデータ記憶ドライブ１５５）への命令伝達を担当する周辺機器制御装置１３５を含む。
【００４４】
（ディスプレイ制御装置１６３によって制御される）ディスプレイ１６５は、コンピューティング・システム１００によって生成された可視出力を表示するために使用される。その種の可視出力は、テキスト、グラフィックス、動画、及びビデオを含む。ディスプレイ１６５は、ＣＲＴに基づくビデオ・ディスプレイ、ＬＣＤに基づくフラット・パネル・ディスプレイ、ガス・プラズマに基づくフラット・パネル・ディスプレイ、タッチ・パネル、又は他のディスプレイ形態を用いて実施される。ディスプレイ制御装置１６３は、ディスプレイ１６５へ送信されるビデオ信号を生成するために必要な電子構成要素を含む。
【００４５】
更に、コンピューティング・システム１００は、コンピューティング・システム１００を外部通信ネットワーク１６０に接続するために使用されるネットワーク・アダプタ１７０を含む。通信ネットワーク１６０は、コンピュータ・ユーザにソフトウェア及び情報を電子的に伝達及び転送する手段を提供する。加えて、通信ネットワーク１６０は分散処理を提供し、分散処理は、複数のコンピュータ、及び作業負荷の分担（又は、作業の実行における協調的努力）を含む。図示されるネットワーク接続は典型的であり、コンピュータの間に通信リンクを確立する他の手段も使用してよい。
【００４６】
典型的なコンピュータ・システム１００は、本発明の装置及び方法が動作するコンピューティング環境の単なる例示であり、本明細書の記載と異なる構成要素及び機器構成を有するコンピューティング環境における本発明の装置及び方法の実施例が、種々の構成要素及び機器構成を有する種々のコンピューティング環境で実施されることを制限しない。
［コンピュータ・ネットワーク環境の例示］
【００４７】
上記のコンピューティング・システム１００は、コンピュータ・ネットワークの一部として展開できる。一般に、コンピューティング環境に対する上の記述は、ネットワーク環境の中で展開されたサーバ・コンピュータ及びクライアント・コンピュータの両方に適用される。図２は（クライアント・コンピュータと通信ネットワークを介して通信するサーバを有する）典型的なネットワーク化されたコンピューティング環境２００を示し、コンピューティング環境２００では、本発明の装置及び方法が利用される。図２に示されるように、サーバ２０５は、（有線又は無線ＬＡＮ、ＷＡＮ、イントラネット、エクストラネット、ピア・トゥ・ピア・ネットワーク、インターネット、又は他の通信ネットワークの何れか１つ、又は組み合わせである）通信ネットワーク１６０を介して、多数のクライアント・コンピューティング環境（例えば、タブレット・パーソナル・コンピュータ２１０、携帯電話２１５、電話２２０、パーソナル・コンピュータ１００、及び携帯情報端末２２５）と相互接続する。加えて、本発明の装置及び方法は、自動車コンピューティング環境（図示されない）、消費者コンピューティング環境（図示されない）、及びビル自動制御コンピューティング環境（図示されない）と通信ネットワーク１６０を介して協働する。例えば、通信ネットワーク１６０がインターネットであるネットワーク環境では、サーバ２０５は、多数の既知のプロトコル（例えば、ハイパーテキスト転送プロトコル（ＨＴＴＰ）、ファイル転送プロトコル（ＦＴＰ）、シンプル・オブジェクト・アクセス・プロトコル（ＳＯＡＰ）、又は無線アプリケーション・プロトコル（ＷＡＰ））を介した、クライアント・コンピューティング環境１００，２１０，２１５，２２０，２２５とのウェブ・サービスの処理及び相互通信のために動作可能な専用のコンピューティング環境サーバでもよい。各クライアント・コンピューティング環境１００，２１０，２１５，２２０，２２５は、１又は複数のコンピューティング・アプリケーション（例えば、ウェブブラウザ（図示されない）、又はサーバ・コンピューティング環境２０５へのアクセスを得るためのモバイル・デスクトップ環境（図示されない））をサポートするために動作可能なブラウザ・オペレーティングシステム１８０を備える。
【００４８】
オペレーションでは、ユーザ（図示されない）は、クライアント・コンピューティング環境で実行中のコンピューティング・アプリケーションと対話して、所望するデータ及び／又はコンピューティング・アプリケーションを得る。データ及び／又はコンピューティング・アプリケーションはサーバ・コンピューティング環境２０５に記憶され、協働するユーザとクライアント・コンピューティング環境１００，２１０，２１５，２２０，２２５を通して、典型的な通信ネットワーク１６０によって通信する。参加ユーザは、全体または一部がサーバ・コンピューティング環境２０５にウェブ・サービス・トランザクションを使用して収納された特定のデータ及びアプリケーションへのアクセスを要求する。これらのウェブ・サービス・トランザクションは、クライアント・コンピューティング環境１００，２１０，２１５，２２０，２２０と処理及び記憶のためのサーバ・コンピューティング環境の間で伝達される。サーバ・コンピューティング環境２０５は、ウェブ・サービスの生成、認証、暗号化、及び通信のためのコンピューティング・アプリケーション、プロセス、及びアプレットを収容し、他のサーバ・コンピューティング環境（図示されない）、サード・パーティ・サービス・プロバイダ（図示されない）、ネットワーク結合記憶装置（ＮＡＳ）、及び記憶領域ネットワーク（ＳＡＮ）と協働してその種のウェブ・サービス・トランザクションを実現する。
【００４９】
従って、本発明の装置及び方法は、ネットワークにアクセスして対話するためのクライアント・コンピューティング環境、及びクライアント・コンピューティング環境と対話するためのサーバ・コンピューティング環境を有するコンピュータ・ネットワーク環境で利用できる。しかし、可動性装置プラットフォームを提供する装置及び方法は、多様なネットワークに基づくアーキテクチャを用いて実施でき、従って、例示された実施例に限定されない。本発明の装置及び方法が、実施例を参照して更に詳細に記述される。
［可動性装置プラットフォーム構成要素］
【００５０】
図３は、典型的な可動性装置と図示される可動性装置プラットフォームの間の典型的な対話を示す。一般に、図３で示されるように、典型的な可動性装置プラットフォーム３００は、簡単には、選択された通信プロトコル（図示されない）で動作する通信インターフェース３０５を使用してクライアント・コンピューティング環境１００と協働する可動性装置３１０を含む。加えて、典型的な可動性装置プラットフォーム３００は、（図１の）通信ネットワーク１６０、及びサーバ・コンピューティング環境２０５を更に含む。
【００５１】
オペレーションでは、可動性装置は、クライアント・コンピューティング環境１００と通信インターフェース３０５を通して協働し、可動性装置３１０から起動して、ユーザとの対話のためにクライアント・コンピューティング環境１００で表示可能な１又は複数のコンピューティング・アプリケーション１８０’を実行する。コンピューティング・アプリケーション１８０’は、（限定されないが）従来のオペレーティングシステムのルック・アンド・フィールを提供するブラウザ・アプリケーション、ワープロ・アプリケーション、表計算、データベース・アプリケーション、ウェブ・サービス・アプリケーション、及びユーザ管理／選択アプリケーションを含む。加えて、可動性装置３１０は、サーバ・コンピューティング環境２０５とクライアント・コンピューティング環境１００を使用する通信ネットワーク１６０を介して協働し、データ及び／又はコンピューティング・アプリケーションをウェブ・サービスの形態で得る。
【００５２】
図４は、典型的な可動性装置４０５の図示される可動性装置プラットフォーム４００との相互作用を示す。図４に示されるように、典型的な可動性装置プラットフォーム４００は、可動性装置（ＭＤ）４０５、コンピューティング環境４１０、通信ネットワーク４３５、可動性装置管理サーバ（ＭＤＭＳ）４２０、及びサード・パーティ・ウェブ・サービス・プロバイダ４４０を含む。加えて、ＭＤ組立分解図に更に示されるように、ＭＤ４０５は、処理装置（ＰＵ）、オペレーティングシステム（ＯＳ）、記憶メモリ（ＲＡＭ／ＲＯＭ）、及びＭＤ通信インターフェースを更に含む。また、ＭＤＭＳ４２０は、変換エンジン４２５、ウェブ・サービス４３０、及び暗号化エンジン４４５を更に含む。
【００５３】
オペレーションでは、ＭＤ４０５は、コンピューティング環境４１５と、１又は複数のＭＤ構成要素ＰＵ，ＯＳ，ＲＡＭ／ＲＯＭ、及びＭＤ通信インターフェースを使用して、ＭＤ／コンピューティング環境通信インターフェース４１０を通して通信する。コンピューティング環境４１５と通信するとき、ＭＤ４０５は、（限定されないが）モバイル・デスクトップ環境、ユーザ・カスタマイズ及び認証管理プログラム、及びウェブ・サービス・アプリケーションを構成の一部として含む１又は複数のコンピューティング・アプリケーション（図示されない）を起動する。いったん形成されたら、ＭＤ４０５はコンピューティング環境４１５と更に協働して、１又は複数のウェブ・サービス（例えば、ウェブ・サービス・データ、及び／又はコンピューティング・アプリケーション）を処理する。その様な状況で、ＭＤ４０５はまた、ウェブ・サービス・データ及び／又はコンピューティング・アプリケーションに、協働ＭＤＭＳ４２０から通信ネットワーク４３５を使用して、その種のウェブ・サービスを処理することを要求する。その種の実施例では、ＭＤＭＳ４２０は、ＭＤ４０５を認証して、参加ユーザ（図示されない）及び可動性装置４０５が正しい特権を要求されたデータ及び／又はコンピューティング・アプリケーションに対して有することを保証するために動作する。
【００５４】
もし適切に認証されたら、ＭＤＭＳ４２０は、要求されたデータ及び／又はコンピューティング・アプリケーションを局所的にＭＤＭＳ４２０に配置し、その種の要求されたデータ及び／又はコンピューティング・アプリケーション（例えば、ウェブ・サービス）を提供してＭＤ４０５を通信ネットワーク４３５によって認証するために更に動作するか、又はサード・パーティ・サービス・プロバイダ４４０と協働して、要求されたウェブ・サービスを、認証されたＭＤ４０５に対する通信に対して得るために動作する。サード・パーティ・ウェブ・サービス・プロバイダ４４０と協働するとき、ＭＤＭＳ４２０は、サード・パーティ・ウェブ・サービス・プロバイダ４４０から起動するウェブ・サービス４３０を、ＭＤ固有の形式に変換エンジン４２５を使用して変換するために動作する。加えて、認証されたＭＤ４０５からのウェブ・サービスに対する要求が満足されるとき、ＭＤＭＳ４２０は、要求されたウェブ・サービスを、暗号化エンジン４４５を使用して暗号化するために動作する。
【００５５】
加えて、ＭＤＭＳ４２０は、選択された暗号化プロトコル（例えば、ＰＫＩ暗号化）を使用してファイル・システム（図示されない）と更に協働し、ＭＤ４０５への通信のために要求されたデータを得る。協働するファイル・システムは、（限定されないが）ファイル・アロケーション・テーブル（ＦＡＴ）ファイル・システム、及び新技術のファイル・システム（ＮＴＦＳ）を含む。
【００５６】
図５は、典型的なソフトウェア構成要素、及びそれらの典型的な可動性装置（ＭＤ）５００に対する対話のブロック図である。図５に示されるように、典型的な可動性装置５００は、可動性装置プレゼンテーションを、コンピューティング環境モジュール５０５、及び可動性装置オペレーティングシステム・モジュール５１０上に含む。ＭＤプレゼンテーション・モジュール及びＭＤオペレーティングシステム・モジュールは、ＨＴＴＰ通信インターフェースを介して動作可能なように結合される。更に、ＭＤプレゼンテーション・モジュール５０５は、アプリケーション・フレームワーク・サブモジュール５１５、アプリケーション・モデル５２０、デスクトップ環境５２５、及びアプリケーション５３０を含む。加えて、アプリケーション５５５、スキン５６０、及びテーマ５６５がＭＤプレゼンテーション・モジュールと協働して、協働するコンピューティング環境（図示されない）で１又は複数のプレゼンテーション（例えば、モバイル・デスクトップ環境）を創出するために使用されるデータを提供する。
【００５７】
更に、ＭＤオペレーティングシステム５１０は、Ｊａｖａ（登録商標）バイトコード・ローダ５３５、ハイパーテキスト転送プロトコル（ＨＴＴＰ）サーバ５４０、シンプル・オブジェクト・アクセス・プロトコル（ＳＯＡＰ）サーバ５４５、及び標準ライブラリ５５０を含む。加えて、ＳＯＡＰサービス５７０、Ｊａｖａ（登録商標）サーバ・ページ（ＪＳＰ）アプリケーション及びイメージ５７５、並びにライブラリ５８０は、データ及び機能をＭＤオペレーティングシステム５１０に提供し、可動性装置がウェブ・サービス（図示されない）処理して実行することを可能にする。
【００５８】
オペレーションでは、可動性装置５００はＭＤプレゼンテーション・モジュール５０５及びＭＤオペレーティングシステム・モジュール５１０を利用して、プレゼンテーション及び実行環境（例えば、モバイル・デスクトップ環境）を、協働するコンピューティング環境（図示されない）を用いて確立する。アプリケーション・フレームワーク５１５及びアプリケーション・モデル５２０は、可動性装置を通して協働するコンピューティング環境（図示されない）で動作するアプリケーションに対するパラメータ及び形状変数を提供するために動作する。デスクトップ５３０はモバイル・デスクトップ環境を提供して、ウェブ・サービス及び／又はコンピューティング・アプリケーションの実行を可能にする。アプリケーション５３０はアプリケーション・フレームワーク及びアプリケーション・モデルで働き、協働するコンピューティング環境で実行するための１又は複数のアプリケーションを可動性装置を通して提供する。追加データ・アプリケーション５５５は、協働するコンピューティング環境で可動性装置によって実行可能な追加アプリケーションである。スキン５６０及びテーマ５６５は、外観及び表示形状パラメータ、並びに可動性装置によって実行されるアプリケーション及びモバイル・デスクトップ環境のルック・アンド・フィールを参加ユーザがカスタマイズすることを可能にする設定を提供する。
【００５９】
ＭＤオペレーティングシステム・モジュール５１０は、可動性装置によってコンピューティング・アプリケーション及びウェブ・サービスが実行されるソフトウェア・アーキテクチャを提供するために動作する。Ｊａｖａ（登録商標）バイトコード・ローダ５３５は、Ｊａｖａ（登録商標）言語モジュールの処理を補助するために動作する。ＨＴＴＰサーバ５４０は、ＨＴＴＰ通信サービスを可動性装置に提供するために動作する。ＳＯＡＰサーバ５４５は、ＳＯＡＰオペレーションを可動性装置に提供するために動作する。標準的なライブラリ５５０は、プログラミング言語（即ち、Ｊａｖａ（登録商標））ライブラリを、種々のＪａｖａ（登録商標）コードをコンパイルし実行するのに使用するために提供する。ＳＯＡＰサービス５７０は、パラメータ及び形状値をＭＤオペレーティングシステム・モジュール５１０に提供して、ＳＯＡＰトランザクション（例えば、ウェブ・サービス）を処理する。ＪＳＰアプリケーション及びイメージは、追加データをＭＤオペレーティングシステム・モジュールに提供して、Ｊａｖａ（登録商標）サーバ・ページを処理する。ライブラリ５８０は、ＭＤオペレーティングシステム・モジュール５１０が使用するための追加のプログラミング・ライブラリを提供して、コンピューティング・アプリケーションの実行及びウェブ・サービスの処理をサポートする。
【００６０】
可動性装置が複数の協働するデータ、機能、及びオペレーションを受け入れて、ウェブ・サービスを処理し実行する補助ができることを図示するために、「mortis and tenon」配置を有するようにＭＤプレゼンテーション・モジュール５０５及びＭＤオペレーティングシステム・モジュール５１０の形が図示されていることを明記する。更に、これらのモジュール形は点線で囲まれ、その種のデータ、機能、及びオペレーションがモジュールの間で交換可能かつ移動可能であることを図示する。
【００６１】
更に、可動性装置５００は図示される形状、及び図示される構成要素を有するものとして図示されているが、その種の記載は種々の形状を有する種々の構成要素によって実現される本発明の装置及び方法の単なる例示であることを明記する。
【００６２】
図６は、図示される可動性装置のための典型的なハードウェア・アーキテクチャのブロック図である。図示されるように、可動性装置６００は、コンピューティング環境通信コネクタ６０５、通信インターフェース物理トランシーバ６１０、及び可動性装置コア６１５を含む。更に、可動性装置コア６１５は、通信インターフェース・コア６２０、処理装置プロセッサ６２５、ＲＡＭ／ＲＯＭ６３０、周辺機器インターフェース６３５、ＮＡＮＤフラッシュ６４０、及び暗号化モジュール６４５を含む。
【００６３】
オペレーションでは、可動性装置６００が、協働するコンピューティング環境（図示されない）とコンピューティング環境通信コネクタを通して通信する。物理的に接続されるので、可動性装置６００は協働するコンピューティング環境（図示されない）との通信に従事して、１又は複数のオペレーションを協働するコンピューティング環境（図示されない）で制御する。その様な状況で、データは、可動性装置６００と協働するコンピューティング環境（図示されない）の間で、通信インターフェース物理トランシーバ６１０を通して交換される。加えて、可動性装置は、データ、命令、サービス、及びオペレーションを、可動性装置コア６１５の通信インターフェース・コア６２０を通して処理する。通信インターフェース・コアにおいて、処理装置プロセッサ６２５は、ＲＡＭ／ＲＯＭ６３０、周辺機器インターフェース６３５、ＮＡＮＤフラッシュ６４０、及び暗号化モジュール６４５と協働して、協働するコンピューティング環境（図示されない）、又は協働するコンピューティング環境（図示されない）へ動作可能なように結合される協働する構成要素（例えば、協働する可動性装置管理サーバ）（図示されない）から起動するデータ、サービス、命令、及びオペレーションを処理する。
【００６４】
図示される実施例では、周辺機器インターフェース６３５が動作して、１又は複数の周辺機器の（限定されないが）フラッシュメモリ、自動制御装置、通信モジュール、及び入力用周辺機器（例えば、マウス、キーボード）を含む可動性装置６００への物理接続を可能にする。暗号化モジュール６４５は、可動性装置６００の処理装置プロセッサ６２５によって使用されるためのデータ、サービス、命令、及びアプリケーションを暗号化及び復号化するために動作する。
【００６５】
可動性装置６００は図示される形状、及び図示される構成要素を有するものとして図示されているが、その種の記載は種々の形状を有する種々の構成要素によって実現される本発明の装置及び方法の単なる例示であることを明記する。
【００６６】
図７は、図示される可動性装置、及び複数の作業領域のオペレーションを可能にする認証スタックのブロック図である。図示されるように、可動性装置７００は、作業領域７０５，７１０，７１５，７２０，７２５，７３０を含む。このことを図示するために、作業領域は、独立したユーザ認証情報、可動性装置認証情報、及び検証情報で動作する可動性装置の内部の独立したユーザ環境と考えられる。例えば、可動性装置は複数の作業領域をサポートし、１つは企業アプリケーション及びデータのための作業領域であり、１つは参加ユーザの個人的なゲーム・アプリケーション及びデータのための作業領域であり、１つは参加ユーザの個人的な買い物アプリケーション及びデータのための作業領域である。サービス及びアプリケーションを個々の作業領域に提供する協働する構成要素（例えば、可動性装置管理サーバ）によって作業領域が認証されるように、これら各作業領域に対して、可動性装置は独立した認証情報を維持する。
【００６７】
この状況では、図７は、それ自体が可動性装置に対するユーザ認証及び検証、作業領域（I）に対する暗号化キー、及び公開キー、並びに作業領域（I）に対する秘密キーを含む作業領域７０５を有する可動性装置７００を示す。同様に、作業領域７１０は、可動性装置に対するユーザ認証情報、及び検証情報、並びに作業領域（II）に対する公開キー、及び秘密キーを有する。図７に示されるように、同様のユーザ認証、及び公開／秘密キー・アーキテクチャが、作業領域（III）７１５、作業領域（IV）７２０から作業領域（n）７２５、及び作業領域（n+1）７３０に対して存在する。オペレーションでは、可動性装置７００は、彼(又は、彼女)がログインしてデータ、及びウェブ・サービスを処理する作業領域を参加ユーザ（図示されない）が選択することを可能にする。参加ユーザがログインする作業領域によって、１又は複数のユーザ認証／公開／秘密キー作業領域情報が使用される。
【００６８】
図８は、典型的な可動性装置の作業領域を示すブロック図である。図８に示されるように、可動性装置８０５は、１又は複数の作業領域８１０，８１５を実行するために動作可能なオペレーティングシステム８１０をサポートする。協働するコンピューティング環境８３０が作業領域（I）８２０をディスプレイ８３５に表示するように、作業領域が協働するコンピューティング環境８２０，８３０，８４０に提供される。同様に、協働するコンピューティング環境８４０は作業領域（III）８１７をディスプレイ８４５に表示し、協働するコンピューティング環境８２０は作業領域（II）８１５をディスプレイ８２５に表示する。図示されるように、可動性装置８０５は、（点線によって示されるように）参加ユーザに作業領域のグラフ図を、特定の作業領域を起動するために回転できる立方体として提示する。オペレーションでは、作業領域は、立方体を所望する作業領域に回転することによって選択され、適切な認証情報（例えば、ユーザ名、及びパスワード）を提供することによって動作させられる。
【００６９】
可動性装置は特定の形状（例えば、立方体）で提示される作業領域を有するものとして記載されているが、その種の記載は種々の形状を有する種々の構成要素によって実現される本発明の装置及び方法の単なる例示であることを明記する。
【００７０】
図９は、ウェブ・サービスを処理して実行するように構成されたときに、典型的な可動性装置６００によって実行される処理を示す。図示されるように、処理はブロック９００で始まり、可動性装置と協働するコンピューティング環境の間で通信が行われていたか否かを決定するチェックが実行されるブロック９０５に進む。もしブロック９０５におけるチェックが、通信が行われていなかったことを示したら、処理はブロック９００に戻り、そこから継続する。
【００７１】
しかし、もしブロック９０５において、可動性装置と協働するコンピューティング環境の間で通信が行われていたと決定されたら、ユーザを認証するためにチェックが実行されるブロック９１０に処理は進む。もしブロック９１０におけるチェックが、ユーザは正常に認証されていなかったことを示したら、エラーが発生するブロック９１５に処理は進む。次に、チェックがブロック９１７において実行され、認証が再度試みられるか否かを決定する。もしブロック９１７において認証が再度試みられることが決定されたら、処理はブロック９１０に戻り、そこから継続する。しかし、もしブロック９１７において認証が再度試みられないことが決定されたら、処理はブロック９２０に進んで終了する。
【００７２】
しかし、もしブロック９１０におけるチェックが、ユーザは認証されていたことを示したら、協働するコンピューティング環境での実行のためにモバイル・デスクトップ環境が起動されるブロック９２５に処理は進む。そこから、ブロック９３０において、可動性装置モバイル・デスクトップ環境への一体化のためのユーザ・カスタマイズ選択が、ユーザ認証情報を使用して検索される。次に、何れかの可動性装置モバイル・デスクトップ環境カスタマイズが変更されていたか否かを決定するためにチェックが実行されるブロック９３５に処理は進む。もしブロック９３５におけるチェックが、可動性装置デスクトップ環境設定に対する変更があったことを示したら、その種の変更が記憶されるブロック９４０に処理は進む。そこから、可動性装置がウェブ・サービスを要求しているか否かを決定するためにチェックが実行されるブロック９４５に処理は進む。もしブロック９４５におけるチェックが、ウェブ・サービスが実行されるべきであることを示したら、ウェブ・サービス要求が処理されるブロック９６０に処理は進み、ブロック９６５において実行される。そこから、処理はブロック９４５の入力に戻り、そこから継続する。
【００７３】
しかし、もしブロック９４５におけるチェックが、ウェブ・サービス要求が存在しないことを示したら、可動性装置が協働するコンピューティング・プラットフォームから切り離されているか否かを決定するためにチェックが実行されるブロック９５０に処理は進む。もしブロック９４５におけるチェックが、可動性装置が協働するコンピューティング・プラットフォームから切り離されていたことを示したら、処理はブロック９５５において終了する。しかし、もしブロック９５０におけるチェックが、可動性装置が切り離されていないことを示したら、処理はブロック９４５の入力に戻り、そこから継続する。また、もしブロック９３５におけるチェックが、可動性装置デスクトップ環境設定に対する変更がなかったことを示したら、処理はブロック９４５の入力に戻り、そこから継続する。
【００７４】
要約すると、本発明の装置及び方法は、可動性装置を提供する。しかし、本発明は、種々の変更、及び代替構造を受け入れる余地があることが分かる。本発明を本明細書に記載された特定の構造に限定する意図はない。逆に、本発明は、本発明の範囲内の全ての変更、代替構造、及び同等物をカバーする。
【００７５】
また、本発明が（有線、及び無線コンピュータ環境の両方を含む）多様なコンピュータ環境、部分的コンピューティング環境、及び現実の環境で利用されることを明記する。本明細書に記載された種々の技術は、ハードウェア、ソフトウェア、又は両方の組合せで利用される。本発明の技術は、プロセッサ、（揮発性、及び非揮発性メモリ、及び／又は記憶装置要素を含む）プロセッサによって読み取り可能な記憶媒体、少なくとも１つの入力装置、及び少なくとも１つの出力装置を含むプログラム可能なコンピュータを維持するコンピューティング環境で実施されることが好ましい。種々の命令セットと協働するコンピューティング・ハードウェア論理回路がデータに適用され、上記機能を実行し出力情報を生成する。出力情報は、１又は複数の出力装置に適用される。典型的なコンピューティング・ハードウェアによって使用されるプログラムは、コンピュータ・システムと対話するための高レベル手続き言語、又はオブジェクト指向プログラミング言語を含む種々のプログラミング言語で実施されることが好ましい。もし所望するなら、図示された本発明の装置及び方法は、アセンブリ言語、又は機械語で実施される。何れにしても、言語はコンパイラ型言語、又はインタープリタ型言語である。その種の各コンピュータ・プログラムは、記憶媒体（又は、記憶装置）が上記手続きを実行するためにコンピュータによって読み取られるときにコンピュータを設定して動作させるための一般の（又は、特定目的の）プログラム可能なコンピュータによって読み取り可能な記憶媒体（又は、記憶装置）（例えば、ＲＯＭ、又は磁気ディスク）に記憶されることが好ましい。また、本発明の装置は、コンピュータ・プログラムで構成されたコンピュータ読み取り可能な記憶媒体として実施されるとも考えられ、記憶媒体は、コンピュータを特定の予め定められた方法で動作させるように構成される。
【００７６】
以上、本発明の好ましい実施例について図示し記載したが、特許請求の範囲によって定められる本発明の範囲から逸脱することなく種々の変形及び変更がなし得ることは、当業者には明らかであろう。
【図面の簡単な説明】
【００７７】
図面を参照して、可動性装置プラットフォーム及び方法が更に記載される。
【図１】本発明の装置及び方法の実施例による典型的なコンピューティング環境のブロック図である。
【図２】本発明の装置及び方法による典型的なコンピューティング・ネットワーク環境のブロック図である。
【図３】本発明の装置及び方法による典型的なコンピューティング構成要素の間の対話を示すブロック図である。
【図４】本発明の装置及び方法による可動性装置プラットフォームの実施例のブロック図である。
【図５】本発明の装置及び方法による典型的な可動性装置のソフトウェア・アーキテクチャのブロック図である。
【図６】本発明の装置及び方法による典型的な可動性装置のハードウェア・アーキテクチャのブロック図である。
【図７】本発明の装置及び方法による典型的な可動性装置のためのユーザ及び装置認証スタックのブロック図である。
【図８】本発明の装置及び方法による典型的な可動性装置のための複数の作業領域の図示される実施例のブロック図である。
【図９】本発明の装置及び方法による典型的な可動性装置を構成するときに実行される処理の流れ図である。
【符号の説明】
【００７８】
１００      コンピューティング・システム
１０５      バス
１１０      中央処理装置（ＣＰＵ）
１１２      相互接続
１１５      コプロセッサ
１２０      メモリ制御装置
１２５      ランダム・アクセス・メモリ（ＲＡＭ）
１３０      読出し専用メモリ（ＲＯＭ）
１３５      周辺機器制御装置
１４０      プリンタ
１４５      キーボード
１５０      マウス
１５５      データ記憶ドライブ
１６０，４３５，５１９      通信ネットワーク
１６３      ディスプレイ制御装置
１６５      ディスプレイ
１７０      ネットワーク・アダプタ
１８０，５０４      オペレーティングシステム
１８０’      コンピューティング・アプリケーション
２００，４１０，４１５      コンピューティング環境
２０５      サーバ
２１０      タブレット・パーソナル・コンピュータ
２１５      携帯電話
２２０      電話
２２５      携帯情報端末
３００，４００      可動性装置プラットフォーム
３０５      通信インターフェース
３１０，４０５，５００，６００，７００      可動性装置（ＭＤ）
４２０      可動性装置管理サーバ（ＭＤＭＳ）
４２５      変換エンジン
４３０      ウェブ・サービス
４４０      サード・パーティ・ウェブ・サービス・プロバイダ
４４５      暗号化エンジン
５０５      ＭＤプレゼンテーション・モジュール
５１０      ＭＤオペレーティングシステム・モジュール
５１５      アプリケーション・フレームワーク
５２０      アプリケーション・モデル
５２５      デスクトップ環境
５３０      アプリケーション
５３５      Ｊａｖａバイトコード・ローダ
５４０      ＨＴＴＰサーバ
５４５      ＳＯＡＰサーバ
５５０      標準ライブラリ
５５５      アプリケーション
５６０      スキン
５６５      テーマ
５７０      ＳＯＡＰサービス
５７５      Ｊａｖａサーバ・ページ（ＪＳＰ）アプリケーション・イメージ
５８０      ライブラリ
６０５      コンピューティング環境通信コネクタ
６１０      通信インターフェース物理トランシーバ
６１５      可動性装置コア
６２０      通信インターフェース・コア
６２５      処理装置プロセッサ
６３０      ＲＡＭ／ＲＯＭ
６３５      周辺機器インターフェース
６４０      ＮＡＮＤフラッシュ
６４５      暗号化モジュール
７０５，７１０，７１５，７２０，７２５，７３０      作業領域
【図１】
2007507768.tif 000002
【図２】
2007507768.tif 000003
【図３】
2007507768.tif 000004
【図４】
2007507768.tif 000005
【図５】
2007507768.tif 000006
【図６】
2007507768.tif 000007
【図７】
2007507768.tif 000008
【図８】
2007507768.tif 000009
【図９】
2007507768.tif 000010
【国際調査報告】
2007507768.tif 000011
2007507768.tif 000012