(57)【要約】  集約した装置利用データを用いてユーザ・エクスペリエンスを向上させることは、コンピューティング装置および／または周辺装置などの装置についての集約した利用データを受け取ることを含む。装置に対する現在のユーザ・コンテクストが特定され、集約した利用データと現在のユーザ・コンテクストとに基づいて、向上したユーザ・インタフェースが生成される。
2010514013.tif 000002
【特許請求の範囲】
【請求項１】
１つまたは複数のプロセッサにより実行されるとき、前記１つまたは複数のプロセッサに、
装置に対する集約した利用データを受け取るステップと、
現在のユーザ・コンテクストを特定するステップと、
前記集約した利用データと前記現在のユーザ・コンテクストとに基づいて、向上したユーザ・エクスペリエンスを生成するステップと
を実施させる複数の命令を記憶した１つまたは複数のコンピュータ読み取り可能な記憶媒体。
【請求項２】
前記向上したユーザ・エクスペリエンスを生成するステップは、
前記集約した利用データと前記現在のユーザ・コンテクストとに基づいて、可能動作リストを生成し、
前記可能動作リストから、最も望ましいであろう動作を選択する
ことであることを特徴とする請求項１に記載の１つまたは複数のコンピュータ読み取り可能な記憶媒体。
【請求項３】
前記複数の命令はさらに、前記１つまたは複数のプロセッサに、前記可能動作リストの識別子を前記集約した利用データのソースに送信させて、前記集約した利用データに含めることを特徴とする請求項２に記載の１つまたは複数のコンピュータ読み取り可能な記憶媒体。
【請求項４】
前記複数の命令はさらに、前記１つまたは複数のプロセッサに、前記選択した最も望ましいであろう動作の識別子を前記集約した利用データのソースに送信させて、前記集約した利用データに含めることを特徴とする請求項２に記載の１つまたは複数のコンピュータ読み取り可能な記憶媒体。
【請求項５】
前記向上したユーザ・エクスペリエンスを生成するステップは、
前記集約した利用データと前記現在のユーザ・コンテクストとに基づいて、可能動作リストを生成し、
ユーザが最も望むであろうと決定された動作が、前記ユーザがあまり望まないであろうと決定された動作より目立って提示されるように、前記可能動作リストを再整列する
ことであることを特徴とする請求項１に記載の１つまたは複数のコンピュータ読み取り可能な記憶媒体。
【請求項６】
前記向上したユーザ・エクスペリエンスを生成するステップは、ユーザ・インタフェース内で使用される１つまたは複数の色を変更することであることを特徴とする請求項１に記載の１つまたは複数のコンピュータ読み取り可能な記憶媒体。
【請求項７】
前記向上したユーザ・エクスペリエンスを生成するステップは、ユーザ・インタフェースに埋め込まれたハイパーリンクを変更することであることを特徴とする請求項１に記載の１つまたは複数のコンピュータ読み取り可能な記憶媒体
【請求項８】
前記集約した利用データは、複数の装置の複数のユーザからの利用データを含むことを特徴とする請求項１に記載の１つまたは複数のコンピュータ読み取り可能な記憶媒体。
【請求項９】
装置に対する前記集約した利用データを受け取ることは、前記集約した利用データを集約サーバから受け取ることであることを特徴とする請求項１に記載の１つまたは複数のコンピュータ読み取り可能な記憶媒体。
【請求項１０】
前記装置はコンピューティング装置を含むことを特徴とする請求項１に記載の１つまたは複数のコンピュータ読み取り可能な記憶媒体。
【請求項１１】
前記装置は周辺装置を含むことを特徴とする請求項１に記載の１つまたは複数のコンピュータ読み取り可能な記憶媒体。
【請求項１２】
前記命令はさらに前記１つまたは複数のプロセッサに、
前記装置に接続された周辺装置から、前記周辺装置の通常動作中に取得した前記周辺装置に対する利用情報を表すデータを受け取るステップと、
前記利用情報をサーバに転送して、前記装置に対する前記集約した利用データに含めるステップと
を実施させることを特徴とする請求項１に記載の１つまたは複数のコンピュータ読み取り可能な記憶媒体。
【請求項１３】
前記装置は周辺装置であり、
前記複数の命令はコンピューティング装置の１つまたは複数のプロセッサにより実行され、
前記複数の命令は前記１つまたは複数のプロセッサに、前記周辺装置が前記コンピューティング装置に最初に接続されたとき識別、生成、および選択を実施させることを特徴とする請求項１に記載の１つまたは複数のコンピュータ読み取り可能な記憶媒体。
【請求項１４】
集約した利用データと現在のコンテクストとを受け取り、前記集約した利用データと前記現在のコンテクストとに少なくとも部分的に基づいて可能動作リストを生成するよう構成したリスト生成モジュールと、
前記可能動作リストを受け取り、前記可能動作リストから１つまたは複数の動作を選択するよう構成した動作選択モジュールと
を備えることを特徴とするシステム。
【請求項１５】
前記集約した利用データは、複数の装置の複数のユーザからの利用データを含むことを特徴とする請求項１４に記載のシステム。
【請求項１６】
前記複数の装置は、コンピューティング装置と周辺装置の両方を含むことを特徴とする請求項１５に記載のシステム。
【請求項１７】
前記システムに接続された周辺装置から、前記周辺装置の通常動作中に取得した前記周辺装置に対する利用情報を表すデータを受け取るように構成され、さらに、前記利用情報をサーバに転送して前記集約した利用データに含めるよう構成した利用データ制御モジュールをさらに備えることを特徴とする請求項１４に記載のシステム。
【請求項１８】
前記システムはコンピューティング装置に実装され、
前記リスト生成モジュールは前記周辺装置が前記コンピューティング装置に最初に接続されたとき前記可能動作リストを生成するようさらに構成され、
前記動作選択モジュールは前記周辺装置が前記コンピューティング装置に最初に接続されたとき前記１つまたは複数の動作を選択するようさらに構成されることを特徴とする請求項１４に記載のシステム。
【請求項１９】
複数の異なるユーザによる同じ装置タイプの複数の異なる装置の使用に関する集約した利用データを受け取るステップと、
前記装置タイプの装置に対する現在のコンテクストを特定するステップと、
前記受け取った集約した利用データと前記現在のコンテクストとに少なくとも部分的に基づいて向上したユーザ・インタフェースを自動的に生成するステップと
を備えることを特徴とする方法。
【請求項２０】
前記向上したユーザ・インタフェースを自動的に生成するステップは、前記受け取った集約した利用データと前記現在のコンテクストとに少なくとも部分的に基づいて１つまたは複数の動作を自動的に選択および実施するステップをさらに含むことを特徴とする請求項１９に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、集約した装置利用データを用いてユーザ・エクスペリエンスを向上させる方法およびシステムに関する。
【背景技術】
【０００２】
コンピュータは実質的に我々の生活のあらゆる領域で当たり前のものになっている。多種多様なコンピュータが存在し、それらを様々な方法によりアプリケーション、周辺装置等で構成し使用することができる。しばしば、コンピュータの動作中に、コンピュータが様々に応答しうることが発生する。例えば、アプリケーションを実行したとき、周辺装置をコンピュータに接続したとき等にコンピュータは様々な動作を実行することができる。これらの様々な動作はしばしば、実行すべき動作をユーザが選択可能な選択肢のリストとしてユーザに提示される。しかし、コンピュータのユーザは、その選択肢を理解できなかったり、自分の希望をコンピュータへどう伝えるのか分からない、といった理由で、実行すべき動作を選択する際、困難に直面する場合がある。従って、係る選択肢をユーザに提示する仕方を改善する方法があれば有益であるはずである。
【発明の概要】
【０００３】
本要約を、選択した概念を簡潔な形で紹介するために提示する。これらの概念は以下の「発明を実施するための形態」でさらに詳細に説明する。本要約により特許請求の範囲に記載した主題の主要な機能または本質的な機能を特定することは意図しておらず、本要約を特許請求の範囲に記載した主題の範囲を限定するために使用することも意図していない。
【０００４】
集約した装置利用データを用いてユーザ・エクスペリエンスを向上させる特定の態様に従って、装置に対する集約した利用データを受け取って現在のユーザ・コンテクストを特定する。その集約した利用データと現在のユーザ・コンテクストに基づいて、改善されたユーザ・エクスペリエンスが生まれる。
【図面の簡単な説明】
【０００５】
全図面を通じて、同じ番号を用いて類似機能を参照する。
【図１】集約した装置利用データを用いたユーザ・エクスペリエンスの向上を使用できるシステムの例を示す図である。
【図２】周辺装置の例を示すブロック図である。
【図３】コンピューティング装置の例を示すブロック図である。
【図４】集約サーバの例を示すブロック図である。
【図５】可能動作リストに基づく動作の自動選択を使用するシステムの例を示す図である。
【図６】集約した装置利用データを用いてユーザ・エクスペリエンスを向上させるプロセスの例を示す図である。
【図７】本明細書で論ずる集約した装置利用データを用いたユーザ・エクスペリエンスの向上を実装するために使用できる、一般的なコンピューティング装置の例を示す図である。
【発明を実施するための形態】
【０００６】
本明細書では集約した装置利用データを用いたユーザ・エクスペリエンスの向上を論ずる。コンピューティング装置および周辺装置などの複数の装置に対する装置利用データを当該コンピューティング装置により収集する。コンピューティング装置は利用データを１つ又は複数のサーバに伝送し、当該サーバは当該利用データを集約し、集約した利用データをコンピューティング装置に送信する。コンピューティング装置の現在のコンテクストが与えられると、集約した利用データを現在のコンテクストとともに使用して１つ又は複数の装置のユーザ・エクスペリエンスを向上させる。ユーザに対する可能動作リストから選択すること、ユーザ・インタフェース（ＵＩ）要素を整列すること、カラー・タギング（color tagging）を追加すること、および埋め込んだハイパーリンクを修正すること等の様々な方法でユーザ・エクスペリエンスを向上させることができる。
【０００７】
図１は、集約した装置利用データを用いたユーザ・エクスペリエンスの向上を使用できるシステム１００の例を示す図である。一般に、周辺装置１０２は、ユーザが周辺装置１０２を使用する際の利用データを収集する。周辺装置には、コンピューティング装置１０４に（例えば、有線接続または無線接続により）直接または（フラッシュ・メモリ・カードまたはポータブル・ハード・ディスクの転送により）間接的に接続できる幾つかの様々な装置が含まれる。周辺装置１０２を図１においてデジタル・カメラとして例示してあるが、当然のことながら装置１０２は、カムコーダ、記憶装置、ポータブル音楽プレイヤおよび／またはポータブル・ビデオ・プレイヤ、プリンタ、スキャナ、多機能マシン等のような他種の周辺装置であってもよいことは理解されよう。
【０００８】
収集した利用データは周辺装置１０２からコンピューティング装置１０４に転送される。コンピューティング装置１０４は、デスクトップ・コンピュータ、ハンドヘルド・コンピュータ、ラップトップ・コンピュータ、サーバ・コンピュータ、ゲーム・コンソール、娯楽システム等のような、種々のコンピューティング装置の何れかとすることができる。周辺装置１０２から収集した利用データに加えて、それぞれのコンピューティング装置１０４は、ユーザがコンピューティング装置１０４を使用する際のコンピューティング装置１０４自体に対する利用データも収集することができる。これは例えば、ユーザによる選択、実行したプログラム、ユーザとコンピューティング装置との間の（例えば、キーボード、マウス、リモート制御、音声コマンド、等による）相互作用、等を含むことができる。
【０００９】
コンピューティング装置１０４はこの利用データを１つ又は複数のサーバ１０６に転送する。サーバ１０６は種々のコンピューティング装置の何れかであり、コンピューティング装置１０４から受け取った利用データを集約するよう機能する。さらに、装置１０２（３）のような幾つかの周辺装置１０２は、随意にコンピューティング装置１０４を通さずに利用データを直接サーバ１０６にアップロードしてもよい。
【００１０】
様々な種類の周辺装置を様々なコンピューティング装置１０４に接続することができ、様々な種類の周辺装置を同一のコンピューティング装置１０４に接続することができる。さらに、様々な種類のコンピューティング装置（例えば、ラップトップ・コンピュータ、デスクトップ・コンピュータ、等）が存在することができる。様々な種類の周辺装置およびコンピューティング装置に対する利用データをサーバ１０６により分離し、当該様々な種類の周辺装置およびコンピューティング装置に対する利用データを装置タイプ別に一緒に集約することができる。ある特定の実施形態では、サーバ１０６はデータを装置のタイプ、ベンダ、またはモデル別に一緒に集約する。例えば、デジタル・カメラは一種の周辺装置であり、ベンダにより、およびそのベンダが用いる型番により一緒に集約することができる。他の実施形態では、サーバ１０６はデータを、装置のモデルとは無関係に、タイプにより一緒に集約する。例えば、デジタル・カメラに対する利用データを、デジタル・カメラのベンダまたはモデルとは無関係に、一緒に集約することができ、またはノートブック・コンピュータに対する利用データを、当該ノートブック・コンピュータのベンダまたはモデルとは無関係に、一緒に集約することができる。
【００１１】
さらに、抽象装置記述（abstract device description）をコンピューティング装置１０４および／またはサーバ１０６により使用して、特定の種類の装置に対する利用データを記憶することができる。この抽象装置記述は、特定の種類の装置に対する利用データを標準的な表現により記憶する（例えば、抽象装置記述はスキーマであることができる）。様々な抽象装置記述が通常は様々な種類の装置に使用される。例えば、デジタル・カメラ・タイプの装置に対して、抽象装置記述は、シャッター・ボタンが押下される度にカメラの設定を記憶するための「シャッター・ボタン」要素、カメラのメニューにアクセスする度に（もしあれば）選択されたメニュー項目を記述するデータを記憶するための「メニュー」要素、カメラのフラッシュの設定（例えば、オン、オフ、赤目軽減、等）を記述するデータを記憶するための「フラッシュ」要素、どのプリセット露出設定または撮影モードがユーザにより選択されているかを記述するデータを記憶するための「プリセット」要素などを含むことができる。
【００１２】
１つ又は複数の集約サーバ１０６は集約した利用データをコンピューティング装置１０４にも返す。集約データをコンピューティング装置１０４に戻すことにより、コンピューティング装置１０４は、利用データがコンピューティング装置の全てにより受け取られるという利益を得る。標準化されたモデルで記述される共通的な因子に沿って集約することにより、集約データは利用データの多様な個別データ・ポイントから生成される。同じ抽象的な因子を共有するデータを様々な種類の装置に渡って集約することもできる。所与のユーザに対し、様々な使用セッションに渡って、およびユーザに関係する様々な装置に渡って、集約を行うことができる。さらに、複数のユーザに共通なデータ・ポイントに来るサンプリングされたユーザ群に渡って、データを集約することができる。最後のデータ・ポイントの分析処理および抽出を、１つ又は複数の装置１０２および１つ又は複数のサーバ１０６の間で分散させることができる。これにより、以下でより詳細に論ずるように、コンピューティング装置１０４が使用する、より広範囲のデータが与えられる。
【００１３】
コンピューティング装置１０４は利用データを、周辺装置１０２および／またはコンピューティング装置１０４を使用する際のユーザ・エクスペリエンスを自動的に向上させるための基礎として使用する。ユーザに対する可能動作リストからの自動選択、ＵＩ要素の自動整列、カラー・タギングの自動追加、埋め込まれたハイパーリンクの自動修正、ユーザ選択肢の自動再優先化、等のような様々な方法でユーザ・エクスペリエンスを向上させることができる。例えば、ユーザが周辺装置１０２をコンピューティング装置１０４に接続すると、コンピューティング装置１０４は実施すべき動作を自動的に選択することができ、コンピューティング装置１０４は、ユーザが望む可能性が高い動作がより目だって（例えば、リストのより上位に、より大きいフォントもしくは別のフォントで、あるいは別の色で）表示されるように、実施できる可能動作リスト内で動作を自動的に再整列することができる、等である。この自動的な選択を行うために特定のコンピューティング装置１０４が使用する利用データは、単にその特定のコンピューティング装置１０４が（自身またはそれに接続した周辺装置１０２の何れかの利用から）収集した利用データであることができ、あるいは（例えば、集約サーバ１０６からコンピューティング装置１０４に返された）集約した利用データであることができる。
【００１４】
図２は、周辺装置２００の一例を示すブロック図である。周辺装置２００は図１の周辺装置１０２の何れかとすることができる。周辺装置２００は、コントローラ２０２、ファームウェアまたはソフトウェア２０４、およびメモリ２０６を含む。メモリ２０６は、動作中に周辺装置２００が使用するデータ（例えば、撮影した画像データ、印刷または記憶するため受け取ったデータ、等）である装置データ２０８を含む。メモリ２０６は、（フラッシュ・メモリ・カード、ポータブル・ハード・ドライブ、等のような周辺装置２００から容易に取り外せるように設計した）取外し可能メモリおよび／または（周辺装置２００内部に残るように設計した）取外し不能メモリを含むことができる。
【００１５】
ファームウェアまたはソフトウェア２０４は、周辺装置２００の機能を遂行するためにコントローラ２０２により実行される命令セットである。別個なものとして示してあるが、ファームウェアまたはソフトウェア２０４は場合によってはメモリ２０６の一部として含めることができる。具体的な機能は、周辺装置の特定タイプとその装置のベンダの希望とに基づいて様々であろう。ファームウェアまたはソフトウェア２０４の一部は利用データ・マネージャ２１０である。利用データ・マネージャ２１０は周辺装置２００の利用を監視し、その利用状況を利用データ２１２として記述するデータを記憶する。様々なデータの何れかを、周辺装置のタイプとその装置のベンダの希望とに応じて利用データ２１２として記憶することができる。例えば、周辺装置２００がデジタル・カメラである場合、利用データ２１２はそれぞれの撮影画像を記述するデータ（例えば、その時のフラッシュの設定、その時のシャッター速度、ユーザがデフォルト設定を上書きしたかどうか、ユーザがどのメニューにアクセスしたか、これらのメニューへアクセスしたときにユーザが何らかの設定を変更したかどうか、等）を含むことができる。
【００１６】
収集した利用データは、共通なスキーマ、および／または特定のベンダおよび／もしくはモデルに特有な利用データに従って収集した、汎用的なデータを含む。例えば、フラッシュの設定のような汎用的な利用データを、全てのデジタル・カメラに対する共通のスキーマに従って収集することができる。別の例として、デジタル・カメラの特定のベンダおよび／またはモデルに対する特定のメニュー設定を収集することもできる。集約した利用データとしてコンピューティング装置１０４に返される特定のベンダおよび／またはモデルに特有な任意の利用データは、その特定のベンダおよび／またはモデルではない装置に対するユーザ・エクスペリエンスを向上するときは、コンピューティング装置１０４により単純に無視される。
【００１７】
図３は、コンピューティング装置３００の一例を示すブロック図である。コンピューティング装置３００は図１のコンピューティング装置１０４の何れかとすることができる。コンピューティング装置３００は利用データ制御モジュール３０２、適応化モジュール３０４、匿名化モジュール３０６、および集約した利用データ３０８を含む。モジュール３０２〜３０６は一般に、プロセッサ（図３では不図示）により実行されるソフトウェアまたはファームウェアの命令を用いて実装される。
【００１８】
利用データ制御モジュール３０２は、コンピューティング装置３００に接続した周辺装置１０２から利用データを受け取り、その受け取った利用データを集約サーバ（例えば、図１のサーバ１０６）にアップロードする。利用データの受け取り方は、周辺装置のコンピューティング装置３００への接続のされ方に応じて様々である。周辺装置を例えば無線接続、ＩＥＥＥ１３９４ケーブル接続、ＵＳＢケーブル接続、等によって、直接コンピューティング装置３００に接続することができる。周辺装置を、例えばデータが記憶されるフラッシュ・メモリ・カードを周辺装置から取り外し、直接コンピューティング装置３００に接続させることによって、間接的にコンピューティング装置３００に接続することもできる。周辺装置をどのようにコンピューティング装置３００に接続するかに関わらず、周辺装置からの利用データを利用データ制御モジュール３０２に利用可能とする。
【００１９】
さらに、ある特定の実施形態では、利用データ制御モジュール３０２は、汎用的な利用データをベンダおよび／またはモデルに特有の利用データから分離する。汎用的な利用データ（同一もしくは異なるタイプの装置、および異なるベンダの装置、および／または異なるモデルの装置に共通な利用データ）は、任意の装置（またはそのタイプの任意の装置）を使用するときに、ユーザ・エクスペリエンスを変更するために使用する。ベンダおよび／またはモデルに特有な利用データを使用して、その特定のベンダおよび／またはモデルの装置のみのユーザ・エクスペリエンスを変更する。
【００２０】
ある特定の実施形態では、周辺装置は自身の識別子を記憶する。この識別子は、利用データ制御モジュール３０２が、受け取った利用データを正しいタイプの装置と関連付けることができるように、（例えば、シリアル番号またはプロビジョニング証明書により）周辺装置自身を一意に識別するか、または（例えば、製造者番号および型番により）周辺装置自身を概して特定するかの何れかである。これを、汎用的な利用データをベンダおよび／またはモデルに特有な利用データから分離することをサポートするための基礎として使用することができる。あるいは、周辺装置がコンピューティング装置３００に直接接続されていれば、当該周辺装置は自身をコンピューティング装置３００に対して特定することができる。周辺装置が自身をシリアル番号により特定する場合は、利用データ制御モジュール３０２は、データベース、またはそのシリアル番号を周辺装置のタイプにマッピングする他のレコードにアクセスすることができる。あるいは、このマッピングをコンピューティング装置３００ではなく図１の集約サーバ１０６により実施してもよい。さらに、マッピングを、装置のベンダまたはファームウェア・プロバイダによりファームウェア記述子（firmware descriptor）に入れた「インスタンス」データにより実施することができる。
【００２１】
受け取った利用データを、少なくとも一時的に、集約サーバへのアップロード前に記憶することもできる。利用データ制御モジュール３０２は、周辺装置１０２から利用データを受け取る際に、利用データ３０８を集約サーバにアップロードすることができるか、または複数の周辺装置１０２から利用データを（または同一の周辺装置から複数セットの利用データを）、１つ又は複数の周辺装置１０２から収集した利用データをアップロードする前に、収集することができる。ある特定の実施形態では、利用データは様々な装置に分散して、利用データを組み合わせたサンプルを提供することができる。例えば、別々のスキャナおよびプリンタの「コピー」利用の測定値を利用データ制御モジュール３０２により提供することができる。このタイプの利用データの集約は、複数の異なる周辺装置に及ぶが、特定のコンピューティング装置に特有である。
【００２２】
利用データ制御モジュール３０２は、コンピューティング装置３００および／または周辺装置１０２の利用に関する利用データも収集することができる。例えば、利用データ制御モジュール３０２は、周辺装置１０２をコンピューティング装置３００に接続しているときのユーザの動作（例えば、画像を即座に印刷した、ファイルをハード・ディスクに転送した、ファイルを光記憶媒体（例えば、ＣＤまたはＤＶＤ）に焼いた、等）に関する利用データを収集することができる。さらに、ユーザのコンピューティング装置３００との相互作用に関する利用データを、周辺装置が関わるかどうかに関係なく収集することができる。例えば、利用データ制御モジュール３０２は特定のプログラムを実行するときのユーザの動作、コンピューティング装置を起動または再起動したときにユーザが選択した実行プログラム、デフォルトの装置としてユーザが選択した特定の周辺装置（例えば、プリンタ）、等に関する利用データを収集することができる。この利用データの全ては、コンピューティング装置によって収集したか周辺装置によって収集したかに関わらず、利用データ制御モジュール３０２により集約サーバにアップロードされる。
【００２３】
集約サーバにアップロードされた利用データはコンピューティング装置３００および／または周辺装置１０２のユーザに対する個人データを含む場合もあれば含まない場合もある。係る個人データは、例えば、周辺装置１０２またはコンピューティング装置３００のシリアル番号、ユーザの名前、ユーザの電子メール・アドレス、ユーザの他の一意な識別子、等を含むことができる。アップロードされた利用データに個人データが含まれる場合、どの個人データが含まれるかは、周辺装置１０２またはコンピューティング装置３００のユーザからの入力に基づいて決定される。ユーザは、個人データがある場合、プライバシー・レベルを選択することによって、どの程度個人データを公開したいか選択することができる。プライバシー・レベルのレコードをコンピューティング装置３００および／または周辺装置１０２側で保持することができる。他の実施形態では、装置およびデータ・ポイントの汎用的な識別子を利用して、集中管理されたポリシーに基づいて利用データの集約をフィルタまたは制限するようにコンピューティング装置３００を構成する。
【００２４】
匿名化モジュール３０６が場合によってはコンピューティング装置３００に含まれる。匿名化モジュール３０６は、ユーザの選択したプライバシー・レベルに基づいて、任意の個人データを周辺装置１０２から受け取った利用データから削除する。例えば、プライバシー・レベルが周辺装置１０２のシリアル番号とユーザの名前をベンダにアップロードできることを示す場合、匿名化モジュール３０６により当該シリアル番号とユーザの名前を利用データ内に残すことができる。別の例として、プライバシー・レベルがベンダに送信される個人データはないことを示す場合、匿名化モジュール３０６は全ての個人データを利用データから削除する。あるいは、個人データを匿名化モジュール３０６ではなく集約サーバにより削除してもよい。
【００２５】
コンピューティング装置３００は、集約した利用データ３０８も記憶する。集約サーバは、複数の周辺装置１０２に対して複数のコンピューティング装置３００から受け取った利用データを（例えば、抽象的なスキーマに従って）集約し、その集約した利用データを、集約した利用データ３０８として当該データを記憶するコンピューティング装置３００に返す。このように、集約した利用データ３０８は、複数の異なるユーザが使用している複数の周辺装置から集約される。あるいは、コンピューティング装置３００は集約した利用データ３０８を、コンピューティング装置３００に接続した周辺装置１０２から受け取った唯一の利用データとして、コンピューティング装置３００によってコンピューティング装置３００のユーザから収集した唯一の利用データとして、コンピューティング装置３００によってコンピューティング装置３００の特定ユーザから収集した唯一の利用データとして、特定のユーザによってのみ使用される、周辺装置１０２から受け取った利用データとして、保持してもよい。このデータ集約は、多くの異なる周辺装置および／またはユーザに広がるものではないが、集約サーバに関して後述するのと同様な方法で実施されよう。
【００２６】
集約した利用データ３０８は一般に、様々な装置タイプに関連する様々な部分を含む。集約した利用データ３０８を様々な装置モデルに対する様々な部分に分離することで、当該様々な部分が使用可能な様々な装置に関連付けられるので、以下で詳述するように、適応化モジュール３０４によって装置のユーザ・エクスペリエンスをさらに向上させることができる。
【００２７】
適応化モジュール３０４は集約した利用データ３０８を、図１のコンピューティング装置３００および／または周辺装置１０２のユーザ・エクスペリエンスを向上させるための基礎として使用する。この向上には、例えば、コンピューティング装置３００のユーザおよび／または周辺装置１０２のユーザに対する可能動作リストから動作を自動的に選択することを含めることができる。例えば、ユーザが周辺装置１０２をコンピューティング装置３００に接続すると、適応化モジュール３０４は実施すべき動作を自動的に選択する。この向上プロセスを以下でより詳細に論ずる。
【００２８】
図４は、集約サーバ４００の一例を示すブロック図である。集約サーバ４００は、例えば図１の集約サーバ１０６とすることができる。集約サーバ４００は、利用データ制御モジュール４０２、匿名化モジュール４０４、集約モジュール４０６、および利用データ・データベース４０８を含む。モジュール４０２〜４０６は一般に、プロセッサ（図４には不図示）により実行されるソフトウェアまたはファームウェアの命令を用いて実装される。
【００２９】
利用データ制御モジュール４０２は利用データを図１のコンピューティング装置１０４から受け取る。受け取った利用データからユーザの個人データが削除されていない場合、匿名化モジュール４０４はユーザが選択したプライバシー・レベルに従って個人データを削除する。このプライバシー・レベルは一般に、コンピューティング装置１０４により集約サーバ４００に送信される。
【００３０】
集約モジュール４０６は利用データ制御モジュール４０２により受け取った利用データを集約し、その集約データを利用データ・データベース４０８に格納する。集約モジュール４０６は利用データを装置タイプで（一般には製造者およびモデルで）集約する。データを汎用的な装置クラスで集約することもできる。利用データが関連付けられる特定の装置タイプは一般に、集約サーバ４００により利用データとともに受け取られる。特定の装置タイプに対して利用データを集約することは、利用データが集約サーバ４００により収集される全てのユーザに渡って、そのタイプの装置の使用方式を維持することに関係する。この集約した利用データは、例えば、どのメニュー・オプションにアクセスされ、画像の撮影にどの設定が行われたか、何らかの露出プリセットが選択されたか、周辺装置をコンピューティング装置に接続したときにコンピューティング装置へのデータ転送に関して何を行ったか（例えば、画像を即座に印刷した、ファイルをハード・ディスクに転送した、ファイルを光記憶媒体（例えば、ＣＤまたはＤＶＤ）に焼いた、等）を含むことができる。このように、集約サーバが受け取った利用データの全ては、それぞれの装置タイプに対する単一の利用データ集合体に統合される。
【００３１】
利用データ制御モジュール４０２は、特定の装置タイプに対する集約した利用データもデータベース４０８から図１のコンピューティング装置１０２に返す。どの集約した利用データがコンピューティング装置に返されるかは様々でありうる。ある特定の実施形態では、集約サーバ４００は集約した利用データを、サーバ４００がそこから利用データを受け取った特定装置タイプに対する特定のコンピューティング装置１０２に返す。あるいは、集約サーバ４００は、自身がそれぞれのコンピューティング装置１０２に送信する、集約した利用データのデフォルトの集合体を有してもよい。あるいは、コンピューティング装置１０２は、受け取りたい特定の利用データを要求することができる（例えば、コンピューティング装置１０２は、コンピューティング装置に新規の周辺装置が接続されたことを検出し、その新規の周辺装置の装置タイプに対する集約した利用データを集約サーバ４００に要求することができる）。
【００３２】
図５は、可能動作リストに基づく動作の自動選択を使用するシステム５００の一例を示す図である。システム５００は、図３のコンピューティング装置３００のようなコンピューティング装置に実装される。例えば、システムを図３の適応化モジュール３０４として実装することができる。
【００３３】
システム５００を様々な方法で起動することができる。ある特定の実施形態では、オペレーティング・システムまたは別のアプリケーションがシステム５００を起動する。代替的な実施形態では、システム５００をユーザの要求で起動することができる。さらに、システム５００を、コンテクストの変更がある度に起動することができる。コンテクストとは、システム５００を実装するコンピューティング装置上で現在発生していることを指す。例えば、どの周辺装置がコンピューティング装置に接続されているか、いずれかの周辺装置が直近にコンピューティング装置に接続されたかどうか、どのアプリケーションがコンピューティング装置上で実行されているか、どのアプリケーションが直近にコンピューティング装置上で実行され始めたか、どのアプリケーションがコンピューティング装置上でまさに実行を停止したところか、等である。ある特定の実施形態では、コンテクストの変更がある度（例えば、アプリケーションが実行を開始する度、周辺装置をコンピューティング装置に接続する度、等）にシステム５００が起動される。
【００３４】
集約した利用データ５０２およびコンテクスト５０４はリスト生成モジュール５０６に入力され、リスト生成モジュール５０６は可能動作リスト５０８を生成する。集約した利用データ５０２は、例えば、図３のコンピューティング装置３００に記憶した集約した利用データ３０８である。コンテクスト５０４は、システム５００を実装するコンピューティング装置上で現在発生していることを指す。コンテクスト５０４は一般に、オペレーティング・システムまたは、システム５００を実装するコンピューティング装置のコンテクストを監視する別のアプリケーションにより与えられる。
【００３５】
リスト生成モジュール５０６は、集約した利用データ５０２とコンテクスト５０４に基づいて、可能動作リスト５０８を決定する。モジュール５０６は様々な方法のうち何れかにより可能動作リスト５０８を生成することができる。集約した利用データ５０２は、上記で論じたように、ユーザが装置を利用する方法を特定する。例えば、集約した利用データ５０２は、デジタル・カメラがコンピューティング装置に接続されたとき、ユーザがカラー・プリンタに直接画像を印刷したこと、画像をローカル・ハード・ドライブにコピーしたこと、画像をリモート記憶装置に保存したこと、または画像をオンラインの画像印刷サービスに転送したこと、の何れかを示すことができる。この利用データが与えられると、コンテクスト５０４が、システム５００を実装するコンピューティング装置にデジタル・カメラがちょうど接続されたことである場合、リスト生成モジュール５０６は、可能動作リスト５０８として、画像をコンピューティング装置に接続されたカラー・プリンタに直接印刷する動作、画像をコンピューティング装置のローカル・ハード・ディスクにコピーする動作、画像をコンピューティング装置に接続されたリモート記憶装置に保存する動作、および画像をオンラインの画像印刷サービスに転送する動作を生成することができる。
【００３６】
動作選択モジュール５１０は可能動作リスト５０８を受け取り、可能動作リスト５０８に基づいて、選択した動作５１２を出力する。動作選択モジュール５１０は、様々な方法で動作して、可能動作リストからどの動作が選択された動作５１２であるべきかを決定することができる。さらに、ある特定の実施形態では、リスト５０８のうちの複数の動作が、選択された動作５１２になりうる（例えば、上のデジタル・カメラの例に従うと、選択された動作は、画像をリモート記憶装置に保存すること、および画像をコンピューティング装置に接続されたカラー・プリンタに直接印刷することの両方になりうる）。
【００３７】
ある特定の実施形態では、動作選択モジュール５１０は選択された動作５１２に対して人工知能プロセスを使用する。人工知能プロセスは、例えば、集約した利用データ５０２から学習することができる。人工知能プロセスは集約した利用データ５０２を受け取り、集約した利用データ５０２に反映される他のユーザの動作から学習することができる。エキスパート・システム、ベイジアン・ネットワーク、ニューラル・ネットワーク、等のような様々な人工知能プロセスのうち何れかを使用することができる。
【００３８】
このように、システム５００は実施すべき動作を、システム５００を実装する装置のコンテクストと集約した利用データとに基づいて、自動的に選択する。集約した利用デ一夕を用いることで、システムは利用データが複数の異なるユーザから収集されるという利益を得る。さらに、一般に新規の装置には学習時間は必要ではない。当該装置は、新規のユーザについて特定のコンテクストに最初に遭遇したときも、集約した利用データに基づいて動作を自動的に選択することができる。
【００３９】
図６は、集約した装置利用データを用いてユーザ・エクスペリエンスを向上させるためのプロセス６００の一例を示す図である。プロセス６００を、例えば、図３の適応化モジュール３０４により実行することができ、ソフトウェア、ファームウェア、ハードウェア、またはそれらの組合せで実装することができる。
【００４０】
先ず、集約した利用データを受け取る（動作６０２）。上記で論じたように、この集約した利用データを複数のコンピューティング装置の複数のユーザから、または単一のコンピューティング装置の１又は複数のユーザから集約することができる。集約した利用データは、装置が様々なコンテクストでどのように利用されたかを反映する。集約した利用データはコンピューティング装置だけでなく１つまたは複数の周辺装置に対する利用データも含むことができる。
【００４１】
現在のユーザ・コンテクストも特定される（動作６０４）。現在のユーザ・コンテクストは、上記で論じたように、プロセス６００を実装する装置上で現在発生していることを指す。次に、向上したユーザ・エクスペリエンスを、集約した利用データと現在のユーザ・コンテクストに基づいて生成する（動作６０６）。
【００４２】
向上したユーザ・エクスペリエンスは様々な形態を取ることができる。ある特定の実施形態では、図５に関して上記で論じたように、可能動作リストが生成され、その可能動作リストから、最も望ましいであろう動作が選択されて実施される。上記で論じたように、動作リストを様々な方法で生成することができる。最も望ましいであろう動作は、プロセス６００を実装するシステムが、集約した利用データと現在のユーザ・コンテクストに基づいて、システムのユーザが最も実施を望むと思われる動作だと判定する動作である。これは、例えば、図５の選択された動作５１２である。
【００４３】
さらに、ある特定の実施形態では、生成された可能動作リストの識別子ならびに／または動作６０６で選択および実施された望ましい動作の識別子を集約サーバ（例えば、図１のサーバ１０６）に送信する。これは、集約サーバに送信でき、集約した利用データへ集約サーバが取り込むことができる追加の利用データである。
【００４４】
向上したユーザ・エクスペリエンスは他の形を取ることもできる。例えば、可能動作リストの動作の１つを自動的に選択および実施するのではなく、可能動作リストをユーザへの提示向けに再整列することができる。この再整列により、例えば、集約した利用データと現在のユーザ・コンテクストに基づいて、最もユーザが望むと思われると決定された動作が、ユーザがあまり望まないであろうと決定されたものよりも、リスト内で上位に（またはリスト内でより目立って）置かれることになるはずである。
【００４５】
別の例として、ユーザ・インタフェースのある特定の態様の色を変更することで、ユーザ・エクスペリエンスを向上することができる。例えば、集約した利用データと現在のユーザ・コンテクストに基づいて、様々な背景またはテキストの色を使用することができ、様々な色を用いて動作リスト内の様々な動作を表示することができ、様々な強調色を選択することができる、等である。
【００４６】
さらに別の例として、埋め込まれたハイパーリンクを変更することでユーザ・エクスペリエンスを向上することができる。例えば、集約した利用データと現在のユーザ・コンテクストに基づいて、（特定のヘルプまたは情報源のような）最も望ましいであろうデータ・ソースを特定するようにリンクを変更し、最もユーザが望むと思われると決定されたリンクが、ユーザがあまり望まないであろうと決定されたものよりも、上位に（またはより目立って）配置されるように、リンクを再配置することができる。
【００４７】
図７は、本明細書で論じた、集約した装置利用データを用いたユーザ・エクスペリエンスの向上を実装するために使用できる、一般的なコンピューティング装置７００の一例を示す図である。コンピューティング装置７００は図１の装置１０４もしくはサーバ１０６、または図１の周辺装置１０２とすることができる。コンピューティング装置７００はコンピューティング装置の一例に過ぎず、コンピューティング装置およびネットワーク・アーキテクチャの使用範囲または機能に関する限定を示唆することは意図していない。また、コンピューティング装置７００が、コンピューティング装置７００の例に示した任意の構成要素または構成要素の結合または組合せを含める（または排除する）ことに関するどのような要件を有するとも解釈すべきではない。
【００４８】
コンピューティング装置７００は、汎用コンピューティング装置であり、１つまたは複数のプロセッサまたは処理ユニット７０４、システム・メモリ７０６、およびプロセッサ７０４を含む様々なシステムの構成要素をシステム・メモリ７０６に接続するバス７０２を含むことができるがこれらに限らない。
【００４９】
バス７０２は、メモリ・バスまたはメモリ・コントローラ、周辺バス、加速グラフィックス・ポート、および様々なバス・アーキテクチャの何れかを用いたプロセッサまたはローカル・バスを含む、数種のバス構造の何れかのうち１つまたは複数を表す。例として、係るアーキテクチャは、ＩＳＡ（Industry Standard Architecture）バス、ＭＣＡ（Micro Channel Architecture）バス、エンハンストＩＳＡ（ＥＩＳＡ）バス、ＶＥＳＡ（Video Electronics Standards Association）ローカル・バス、およびメザニン・バスとしても知られるＰＣＩ（Peripheral Component Interconnects）バスを含むことができる。
【００５０】
システム・メモリ７０６は、ＲＡＭ（random access memory）のような揮発性メモリ、および／またはＲＯＭ（read only memory）のような不揮発性メモリの形のコンピュータ読取可能媒体を含む。
【００５１】
コンピューティング装置７００は、他の取外し可能／取外し不能、揮発性／不揮発性のコンピュータ記憶装置７０８を含むこともできる。例として、記憶装置７０８は、取外し不能で不揮発性の磁気媒体を読み書きするための１つまたは複数のハード・ディスク・ドライブ、取外し可能で不揮発性の磁気ディスク（例えば、「フロッピー（登録商標）・ディスク」）を読み書きするための磁気ディスク・ドライブ、ＣＤ、ＤＶＤ、または他の光媒体のような取外し可能で不揮発性の光ディスクを読み書きするための光ディスク・ドライブ、およびフラッシュ・メモリ装置、等であることができる。これらの１つ又は複数の記憶装置および関連するコンピュータ読取可能媒体は、コンピュータ読取可能な命令、データ構造、プログラム・モジュール、および／または他のデータのストレージをコンピューティング装置７００に提供する。
【００５２】
ユーザ・コマンドおよび他の情報を、キーボード、ポインティング・デバイス（例えば、マウス）、マイクロフォン、ジョイスティック、ゲーム・パッド、パラボラアンテナ、シリアル・ポート、ＵＳＢ（universal serial bus）、ＩＥＥＥ  １３９４バス、スキャナ、ネットワーク・インタフェースまたはアダプタ、モデム、等のような、１つまたは複数の入出力（Ｉ／Ｏ）装置７１０を介してコンピューティング装置７００に入力することができる。情報およびデータを、モニタ、プリンタ、ネットワーク・インタフェースまたはアダプタ、モデム、スピーカ、等のような１つまたは複数のＩ／Ｏ装置７１０を介してコンピューティング装置７００により出力することもできる。
【００５３】
本明細書で説明した、リソースに結び付く諸用語の実装を、１つまたは複数のコンピューティング装置により実行されるプログラム・モジュールのような、プロセッサ実行可能な命令またはコンピュータ実行可能な命令の一般的なコンテクストで説明することができる。一般に、プログラム・モジュールには、特定のタスクを実施するか特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造、等が含まれる。一般に、プログラム・モジュールの機能を様々な実施形態で望ましいように組み合わせることができ、または分散させることができる。
【００５４】
本明細書で説明した、リソースに結び付く諸用語の実装を、何らかの形態のコンピュータ読取可能媒体に記憶するか、それらの媒体に渡って送信することができる。コンピュータ読取可能媒体またはプロセッサ読取可能媒体は、コンピュータがアクセス可能な任意の利用可能媒体とすることができる。限定ではなく例として、コンピュータ読取可能媒体またはプロセッサ読取可能媒体は、「コンピュータ記憶媒体」および「通信媒体」を含むことができる。
【００５５】
「コンピュータ記憶媒体」には、コンピュータ読取可能命令、データ構造、プログラム・モジュール、または他のデータのような情報を記憶するための任意の方法または技術で実装した揮発性および不揮発性、取外し可能および取外し不能媒体が含まれる。コンピュータ記憶媒体には、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュ・メモリまたは他のメモリ技術、ＣＤ、ＤＶＤ（digital versatile disk）もしくは他の光記憶、磁気カセット、磁気テープ、磁気ディスク記憶もしくは他の磁気記憶装置、または所望の情報の記憶に使用可能でコンピュータによりアクセス可能な任意の他の媒体が含まれるがこれらに限らない。
【００５６】
「通信媒体」は一般にコンピュータ読取可能命令、データ構造、プログラム・モジュール、他のデータを、搬送波または他の伝送機構のような被変調データ信号で具現化する。通信媒体は任意の情報送達媒体も含む。「被変調データ信号」という用語は、１つまたは複数のその特性集合を有するか、情報をその信号内でエンコードするように変化した信号を意味する。限定ではなく例として、通信媒体は有線ネットワークまたは直接配線接続のような有線媒体、ならびに音響、ＲＦ、赤外線および他の無線媒体のような無線媒体を含む。上記の何れかから成る組合せもコンピュータ読取可能媒体の範囲に含まれる。
【００５７】
あるいは、これらのモジュールおよび技法の全てまたは一部をハードウェアまたはハードウェア、ソフトウェア、および／もしくはファームウェアの組合せで実装してもよい。例えば、１つまたは複数のＡＳＩＣ（application specific integrated circuit）またはＰＬＤ（programmable logic device）を設計またはプログラムして、フレームワークの１つまたは複数の部分を実装することができる。
【００５８】
本発明を構造的特長および／または方法論的動作に固有な言葉で説明したが、添付の「特許請求の範囲」で定義した本発明は必ずしも上述の特定の特徴または動作に限定されないことは理解されるべきである。むしろ、上述の特定の特徴および動作は「特許請求の範囲」を実装する形態の例として開示されている。
【図１】
2010514013.tif 000003
【図２】
2010514013.tif 000004
【図３】
2010514013.tif 000005
【図４】
2010514013.tif 000006
【図５】
2010514013.tif 000007
【図６】
2010514013.tif 000008
【図７】
2010514013.tif 000009
【国際調査報告】
2010514013.tif 000010
2010514013.tif 000011