(57)【特許請求の範囲】
【請求項１】
コンピューティング装置と対話する際のユーザの可能性の高い使用法コンテキストを前記コンピューティング装置が判定することであって、前記可能性の高い使用法コンテキストを判定することは、前記コンピューティング装置が前記コンピューティング装置のタッチ画面を介したジェスチャを用いたユーザの対話をサポートするように構成されているときに、コンテンツ消費コンテキストを前記可能性の高い使用法コンテキストとして選択することを備え、前記コンピューティング装置がカーソル制御周辺装置又はキーボードを用いたユーザの対話をサポートするように構成されているときに、生産性使用法コンテキストを前記可能性の高い使用法コンテキストとして選択することを備える、ことと、
前記判定されたユーザの可能性の高い使用法コンテキストに基づいて、前記コンピューティング装置が、ユーザインターフェースの表示領域内でアプリケーションランチャーを動的にサイズ調整することであって、前記アプリケーションランチャーは、ユーザから受け取られた入力に応答して出力されるように構成されている、ことと、
それぞれのアプリケーションに対応するユーザインターフェースにナビゲートするために選択可能な前記アプリケーションの複数の表現を含めることと、
を備え、
前記アプリケーションランチャーを動的にサイズ調整することは、前記アプリケーションの前記複数の表現のうち少なくとも１つを追加または削除するためのユーザ入力が受け取られることに応答して、自動的にかつユーザが介在せずに、前記アプリケーションランチャーを横方向および縦方向の両方で動的にサイズ調整し直すことを含む、方法。
【請求項２】
前記アプリケーションランチャーが、前記コンピューティング装置のオペレーティングシステムによって管理されるファイル階層のルートレベルにあるホーム画面として構成され、前記ホーム画面が、ユーザによって連続的にスクロール可能である、請求項１に記載の方法。
【請求項３】
前記アプリケーションランチャーが、前記コンピューティング装置の機能の１つまたは複数の表現を含むように構成される、請求項１に記載の方法。
【請求項４】
前記アプリケーションランチャーが、タスクバーの中で前記アプリケーションランチャーの表現を選択することを伴う、前記ユーザから受け取られる入力に応答して出力されるように構成される、請求項１に記載の方法。
【請求項５】
前記アプリケーションランチャーが、前記コンピューティング装置により実行可能なアプリケーションの１つまたは複数のユーザインターフェースの上に重なる層として表示されるように構成され、前記アプリケーションランチャーが、前記１つまたは複数のユーザインターフェースと同時に視認可能である、請求項１に記載の方法。
【請求項６】
前記アプリケーションの前記表現のうち少なくとも１つが、それぞれの前記アプリケーションを起動することなく、前記それぞれの前記アプリケーションに関連付けられた通知を表示するように構成される、請求項１に記載の方法。
【請求項７】
前記アプリケーションランチャーを動的にサイズ調整する前記ステップが、前記複数の表現のサイズを動的にサイズ調整することを含む、請求項１に記載の方法。
【請求項８】
前記判定するステップは、前記コンピューティング装置への周辺装置の取り付け、前記コンピューティング装置に対する周辺装置の物理的配置、３次元空間における前記コンピューティング装置の向きもしくは動き、または、前記ユーザインターフェースを表示するために使用される表示装置の前記表示領域のサイズに基づく、請求項１に記載の方法。
【請求項９】
前記アプリケーションランチャーが、前記コンピューティング装置のオペレーティングシステムの一部として管理される、請求項１に記載の方法。
【請求項１０】
コンピューティング装置であって、
ユーザインターフェースを表示するための利用可能な表示領域を有する表示装置と、
少なくとも部分的にハードウェアとして実装された１つまたは複数のモジュールとを備え、
前記１つまたは複数のモジュールはアプリケーションランチャーを公開するように構成され、
前記アプリケーションランチャーは、
前記コンピューティング装置と対話する際のユーザの可能性の高い使用法コンテキストを判定することであって、前記可能性の高い使用法コンテキストを判定することは、前記コンピューティング装置が前記コンピューティング装置のタッチ画面を介したジェスチャを用いたユーザの対話をサポートするように構成されているときに、コンテンツ消費コンテキストを前記可能性の高い使用法コンテキストとして選択することを備え、前記コンピューティング装置がカーソル制御周辺装置又はキーボードを用いたユーザの対話をサポートするように構成されているときに、生産性使用法コンテキストを前記可能性の高い使用法コンテキストとして選択することを備える、ことと、
前記判定されたユーザの可能性の高い使用法コンテキストに基づいて、ユーザインターフェースの表示領域内でアプリケーションランチャーを動的にサイズ調整することであって、前記アプリケーションランチャーは、前記ユーザインターフェースの表示領域内で横方向及び縦方向の両方で動的にサイズ調整し直すことが可能である、ことと、
を行うように構成されており、
前記アプリケーションランチャーは、それぞれのアプリケーションに対応するユーザインターフェースにナビゲートするために選択可能な前記アプリケーションの複数の表現を含み、
前記アプリケーションランチャーは、アプリケーションの前記複数の表現のうち少なくとも１つを追加または削除するためのユーザ入力が受け取られることに応答して、前記１つまたは複数のモジュールにより、自動的にかつユーザが介在せずに、横方向および縦方向の両方で動的にサイズ調整し直すことが可能である、コンピューティング装置。
【請求項１１】
前記ユーザ入力が、ピン留めまたはピン留め解除動作である、請求項１０に記載のコンピューティング装置。
【請求項１２】
前記アプリケーションの前記表現のうち少なくとも１つが、それぞれの前記アプリケーションを起動することなく、前記それぞれの前記アプリケーションに関連付けられた通知を表示するように構成される、請求項１０に記載のコンピューティング装置。
【請求項１３】
ユーザ入力は、動的なサイズ調整の基準として、前記アプリケーションランチャーに含められるべき複数の表現のグループの列又は行の数を指定する、請求項１０に記載のコンピューティング装置。
【請求項１４】
ユーザ入力は、前記アプリケーションランチャーを横方向及び縦方向にサイズ調整するための前記アプリケーションランチャーの境界とのユーザの対話を含むドラッグアンドドロップ操作である、請求項１０に記載のコンピューティング装置。
【請求項１５】
オペレーティングシステムの前記アプリケーションランチャーの動的なサイズ調整は、別のオペレーティングシステムのアプリケーションランチャーとのユーザの対話に部分的に基づいている、請求項１０に記載のコンピューティング装置。
【請求項１６】
前記別のオペレーティングシステムは、前記コンピューティング装置上で実行されているオペレーティングシステムの前回のバージョン、前記コンピューティング装置のユーザの代わりに別のコンピューティング装置で実行されているもの、又は前記コンピューティング装置のユーザに関連する別のコンピューティング装置で実行されているものである、請求項１５に記載のコンピューティング装置。
【請求項１７】
コンピューティング装置であって、
表示装置と、
処理装置と、
前記表示装置上にアプリケーションランチャーを出力するように前記処理装置によって実行可能なオペレーティングシステムを保持するように構成されたメモリと、を備え、
前記オペレーティングシステムは、
前記コンピューティング装置と対話する際のユーザの可能性の高い使用法コンテキストを判定することであって、前記可能性の高い使用法コンテキストを判定することは、前記コンピューティング装置が前記コンピューティング装置のタッチ画面を介したジェスチャを用いたユーザの対話をサポートするように構成されているときに、コンテンツ消費コンテキストを前記可能性の高い使用法コンテキストとして選択することを備え、前記コンピューティング装置がカーソル制御周辺装置又はキーボードを用いたユーザの対話をサポートするように構成されているときに、生産性使用法コンテキストを前記可能性の高い使用法コンテキストとして選択することを備える、ことと、
前記コンピューティング装置と対話する際のユーザの可能性の高い使用法コンテキストを判定することに応答して、前記アプリケーションランチャーの前記コンテンツ消費コンテキストと前記アプリケーションランチャーの前記生産性使用法コンテキストとの間の切り替えを生じさせることと、
前記判定された可能性の高い使用法コンテキストに基づいて、前記コンピューティング装置によってユーザインターフェースの表示領域内でアプリケーションランチャーを動的にサイズ調整することと、
を行うように構成されており、
前記アプリケーションランチャーは、それぞれのアプリケーションに対応するユーザインターフェースにナビゲートするために選択可能な前記アプリケーションの複数の表現を含み、
前記アプリケーションランチャーを動的にサイズ調整することは、前記アプリケーションの前記複数の表現のうち少なくとも１つを追加または削除するためのユーザ入力が受け取られることに応答して、自動的にかつユーザが介在せずに、前記アプリケーションランチャーを横方向および縦方向の両方で動的にサイズ調整し直すことを含む、コンピューティング装置。
【請求項１８】
前記判定することは、前記コンピューティング装置への周辺装置の取り付け、前記コンピューティング装置に対する周辺装置の物理的配置、３次元空間における前記コンピューティング装置の向き又は動き、又は、ユーザインターフェースを表示するために使用される前記表示装置の表示領域のサイズに基づく、請求項１７に記載のコンピューティング装置。
【発明の詳細な説明】
【背景技術】
【０００１】
[0001]  コンピューティング装置は、従来、特定の設定向けに特化されたコンピューティング装置との種々のユーザ対話をサポートするために、様々な固有の方式で構成されていた。例えば、コンピューティング装置は、モバイルの使用法をサポートするように構成されることがあり、したがって、バッテリ、携帯可能なサイズ、およびユーザの片手または両手で対話するように構成されたユーザインターフェースを備えることにより、その使用法のために最適化されていた。同様に、コンピューティング装置は、伝統的なデスクトップＰＣなどの非モバイル用途のために構成される場合もあり、デスクトップＰＣは比較的サイズが大きく、キーボードやカーソル制御装置など、デスクトップ設定でユーザ対話を支援するように構成された装置を含んでいる。
【発明の概要】
【０００２】
[0002]  現在では、様々な設定における使用をサポートし、その結果様々な使用法のシナリオの対話をサポートできるコンピューティング装置も入手可能になっている。そのようなコンピューティング装置の例としては、タブレット、および多大な計算リソースを備えることによりその装置を様々な異なる対話を行うのに適したものにする他の構成が挙げられる。しかし、従来技術は、通例、単一の設定とそれに対応する使用法のシナリオ向けに特化されたユーザ対話にユーザを制限しており、そのため、他の設定で使用された場合に、装置との対話が制限されることがあった。
米国特許出願公開第２０１３／００８０８９０号明細書には、構成可能なユーザインターフェースが開示されている。
国際公開第２０１３／０１０１５４号には、コンテキストベースのメニューのランチャーが開示されている。
【０００３】
[0003]  アプリケーションランチャーのサイズ調整技術が記載される。１つまたは複数の実装において、コンピューティング装置と対話する際のユーザの可能性の高い使用法コンテキストが、コンピューティング装置によって判定される。判定されたユーザの可能性の高い使用法コンテキストに基づいて、コンピューティング装置が、ユーザインターフェースの表示領域内でアプリケーションランチャーを動的にサイズ調整する。アプリケーションランチャーは、ユーザから受け取られた入力に応答して出力されるように構成され、それぞれのアプリケーションに対応するユーザインターフェースにナビゲートするために選択可能なアプリケーションの複数の表現を含んでいる。
【０００４】
[0004]  １つまたは複数の実装において、コンピューティング装置は、ユーザインターフェースを表示するための利用可能な表示領域を有する表示装置と、少なくとも部分的にハードウェアとして実装された１つまたは複数のモジュールとを備える。１つまたは複数のモジュールは、アプリケーションランチャーを公開するように構成され、アプリケーションランチャーは、表示装置の利用可能な表示領域内で横方向および縦方向の両方で動的にサイズ調整し直すことが可能であり、それぞれのアプリケーションに対応するユーザインターフェースにナビゲートするために選択可能な、アプリケーションの複数の表現を含んでいる。
【０００５】
[0005]  １つまたは複数の実装において、コンピューティング装置は、表示装置と、処理システムと、表示装置上にアプリケーションランチャーの出力を生じさせるために処理システムによって実行可能なオペレーティングシステムを維持するように構成されたメモリとを備える。オペレーティングシステムは、コンピューティング装置と対話する際のユーザの可能性の高い使用法コンテキストを判定するのに応答して、アプリケーションランチャーの消費型（consumptive）モードと、アプリケーションランチャーの生産型（productive）モードと間の切り替えを生じさせるように構成される。
【０００６】
[0006]  この概要は、下記の詳細な説明でさらに説明する概念の抜粋を簡略化した形態で紹介するために提供される。この概要は、特許請求の主題の主要な特徴もしくは必須の特徴を明らかにするものでも、または特許請求の主題の範囲を決定する助けとして使用すべきものでもない。
【０００７】
[0007]  添付図を参照して詳細な説明を記載する。図では、参照番号の一番左の数字が、その参照番号が最初に出現する図を識別する。説明および図において異なる事例で同じ参照番号を使用する場合は、同様または同一の項目を示唆する場合がある。
【図面の簡単な説明】
【０００８】
【図１】[0008]本明細書に記載されるアプリケーションランチャーのサイズ調整技術を行うように構成された例示的実装にある環境の図である。
【図２】[0009]生産型の使用法コンテキストで使用するために構成された図１のアプリケーションランチャーを示す例示的実装の図である。
【図３】[0010]２つの列をサポートする図２のアプリケーションランチャーを示す例示的実装の図である。
【図４】[0011]列内のグループ分けをサポートする図３のアプリケーションランチャーを示す例示的実装の図である。
【図５】[0012]図４のグループを２列の形式で活用するアプリケーションランチャーの動的なサイズ調整を示す例示的実装の図である。
【図６】[0012]図４のグループを２列の形式で活用するアプリケーションランチャーの動的なサイズ調整を示す例示的実装の図である。
【図７】[0013]単一の列内でのグループ分けをサポートする図１のアプリケーションランチャーを示す例示的実装の図である。
【図８】[0014]図１のアプリケーションランチャーが用いることが可能な追加的な形式を示す例示的実装の図である。
【図９】[0015]図１のコンピューティング装置のランチャーモジュールが、コンピューティング装置と対話中のユーザの使用法コンテキストの指標に応答してアプリケーションランチャーを動的にサイズ調整する例示的実装の図である。
【図１０】[0016]コンピューティング装置に取り付けられた状態にあり、そのため生産型の使用法コンテキストの可能性が高いことを示す周辺装置を示す例示的実装の図である。
【図１１】[0017]可能性の高い使用法コンテキストの判定が、アプリケーションランチャーを動的にサイズ調整するための基準として利用される例示的実装における手順を示す流れ図である。
【図１２】[0018]図１〜図１１を参照して説明した任意種類のコンピューティング装置として実装されて、本明細書に記載される技術の実施形態を実装することができる例示的装置の様々な構成要素の図である。
【発明を実施するための形態】
【０００９】
（概説）
[0019]  コンピューティング装置と対話するための従来の技術は、通例、モバイルコンピューティング装置によってモバイル動作をサポートするなど、単一の使用法シナリオのために最適化されている。その結果、それらの技術は、そのようなコンピューティング装置を介して利用できるようになりつつある、増え続ける機能の範囲に対処していなかった。
【００１０】
[0020]  アプリケーションランチャーのサイズ調整技術が記載される。１つまたは複数の実装において、アプリケーションランチャーは、幅広い機能をサポートするために利用できる、動的なサイズ調整をサポートするように構成される。上記の説明を続けると、例えば、コンピューティング装置は、装置と対話する際のユーザの可能性の高い使用法コンテキストの判定を行うことができ、使用法コンテキストは、手に持って対話するために最適化された消費型のコンテキストであるか、または例えばカーソル制御装置やキーボードなどの周辺装置と対話するために最適化された生産型のコンテキストであるかなどである。この判定は、図９に関連してさらに説明するように、様々な他の方式で行うことができる。
【００１１】
[0021]  判定がどのように行われるかに関係なく、その判定を、その後、アプリケーションランチャーを動的にサイズ調整するなど、コンピューティング装置の機能を動的に構成するための基準として使用することができる。アプリケーションランチャーは、例えば、消費型モードでユーザの手を使用した選択をサポートするためのアプリケーションの大きな表現を有するフル画面モードと、カーソル制御装置を使用して選択可能な表現も同じく小さい、より小さな全体ビューとを取ることがある。
【００１２】
[0022]  アプリケーションランチャーは、様々な他の方式でも動的にサイズ調整できる可能性がある。例えば、ユーザが、アプリケーションを表すタイルをピン留めまたはピン留め解除するなど、アプリケーションランチャー内のアプリケーションの表現の追加または削除を指定することができる。すると、コンピューティング装置は、アプリケーションランチャーを横方向および／または縦方向に動的にサイズ調整し直すことができる。さらに、ユーザが、行または列の数を指定したり、アプリケーションランチャーの境界線を「ドラッグアンドドロップ」するなど、アプリケーションランチャーのサイズを手動で指定する場合もある。そして、コンピューティング装置は、「そのサイズを尊重」することができ、指定されたサイズが一杯になると、アプリケーションランチャー内で連続的にスクロールすることによって、その他の表現にアクセスすることができる。ユーザが対話した他のアプリケーションランチャーをサイズの基準とするなどの追加的な機能も企図され、それについてのさらなる解説は、以下の項に関連して得ることができる。
【００１３】
[0023]  以下の解説では、本明細書に記載される技術を用いることが可能な例示的環境をまず説明する。次いで、その例示的環境ならびに他の環境の中で行うことができる例示的手順を説明する。したがって、例示的手順の実行は、例示的環境に制限されず、例示的環境は、例示的手順の実行に制限されない。
【００１４】
（例示的環境）
[0024]  図１は、本明細書に記載されるアプリケーションランチャーのサイズ調整技術を用いるように動作することが可能な例示的実装における環境１００の図示である。図示される環境１００は、コンピューティング装置１０２の例を含んでおり、コンピューティング装置１０２は、ユーザの片手または両手１０６で持つように構成された筺体１０４を有するモバイルコンピューティング装置（例えばタブレットまたは携帯電話）として図示されている。コンピューティング装置１０２の様々な他の構成も企図される。
【００１５】
[0025]  例えば、コンピューティング装置１０２は、図１２に関連してさらに説明するように、伝統的なコンピュータ（例えばデスクトップパーソナルコンピュータ、ラップトップコンピュータなど）、移動局、娯楽機器、ワイヤレス電話、タブレット、ネットブックなどとして構成される可能性がある。そのため、コンピューティング装置１０２は、かなり多くのメモリおよびプロセッサリソースを備えたフルリソース装置（例えばパーソナルコンピュータ、ゲームコンソール）から、メモリおよび／または処理リソースが限られた低リソース装置（例えば伝統的なセットトップボックス、手持ち型のゲームコンソール）まで及ぶ可能性がある。コンピューティング装置１０２は、コンピューティング装置１０２に１つまたは複数の動作を行わせるソフトウェアにも関係する場合がある。
【００１６】
[0026]  コンピューティング装置１０２は、表示装置１０８、処理システム１１０、およびコンピュータ可読記憶媒体の例をも含むものと図示されており、コンピュータ可読記憶媒体はこの例ではメモリ１１２である。メモリ１１２は、１つまたは複数の動作を行うために処理システム１１０によって実行可能なアプリケーション１１４を維持するように構成される。
【００１７】
[0027]  処理システム１１０は、その形成材料によっても、または内部で用いられる処理機構によっても制限されない。例えば、処理システム１１０は、システムオンチップ、プロセッサ、中央演算処理装置、処理コア、機能ブロックなど、半導体および／またはトランジスタ（例えば電子集積回路（IC））からなることができる。そのような文脈では、実行可能命令は、電子的に実行可能な命令であってよい。それに代えて、処理システム１１０の機構または処理システム１１０のための機構、およびしたがってコンピューティング装置の機構またはコンピューティング装置のための機構は、これらに限定されないが、量子コンピューティング、光学コンピューティング、機械的コンピューティング（例えばナノ技術を使用したもの）などを含み得る。また、単一のメモリ１１２が示されるが、ランダムアクセスメモリ（RAM）、ハードディスクメモリ、取り外し可能媒体メモリ、および他の種類のコンピュータ可読媒体など、幅広い種類および組み合わせのメモリが用いられてよい。
【００１８】
[0028]  コンピューティング装置１０２は、さらにオペレーティングシステム１１６を含むものと図示されている。オペレーティングシステム１１６は、コンピューティング装置１０２の下層の機能を、コンピューティング装置１０２で実行可能なアプリケーション１１４に対して抽象化するように構成される。例えば、オペレーティングシステム１１６は、処理システム１１９、メモリ１１２、ネットワーク、入出力、および／または表示装置１０８の表示機能などを抽象化して、その下層の機能が「どのように」実装されるのかを知ることなくアプリケーション１１４を書くことができるようにする。アプリケーション１１４は、例えば、描画がどのように行われるのかを理解せずに、オペレーティングシステム１１６にデータを提供して表示装置１０４によって描画させ表示させることができる。オペレーティングシステム１１６は、ファイルシステムの管理や、コンピューティング装置１０２のユーザによってナビゲートすることが可能なユーザインターフェースの管理など、様々な他の機能も表すことができる。
【００１９】
[0029]  オペレーティングシステム１１６は、コンピューティング装置１０２によってサポートされる様々な異なる入出力機能を処理するように構成することができる。したがって、オペレーティングシステム１１６は、コンピューティング装置１０２による入力の認識および／または出力の提供、ならびにそのような入力を検出するために使用される装置に関係する機能を備える。例えば、オペレーティングシステム１１６は、ジェスチャを識別し、そのジェスチャに対応する動作を行わせるなどするように構成されることがある。入力は、様々な異なる方式で、オペレーティングシステム１１０が処理するために検出される可能性がある。
【００２０】
[0030]  例えば、オペレーティングシステム１１０は、例えば、表示装置１０８のタッチ画面機能を使用して検出されるユーザの手１０６の指によるハードウェア装置とのタッチ対話を介して１つまたは複数の入力を受け取るように構成することができる。タッチ入力の認識をオペレーティングシステム１１６が活用して、コンピューティング装置１０２によって出力されるユーザインターフェースと対話することができ、ゲーム、アプリケーションと対話する、インターネットを閲覧する、コンピューティング装置１０２の１つまたは複数の設定を変更するなどが可能である。表示装置１０４とのタッチ対話を伴わない、様々な他のハードウェア装置も企図される。そのようなハードウェア装置の例には、カーソル制御装置（例えばマウス）、リモコン（例えばテレビのリモコン）、モバイル通信装置（例えば、コンピューティング装置１０２の１つまたは複数の動作を制御するように構成されたワイヤレス電話）、および他の装置が含まれる。
【００２１】
[0031]  オペレーティングシステム１１６は、ファイルシステムの管理や、コンピューティング装置１０２のユーザによってナビゲートすることが可能なユーザインターフェースの管理など、様々な他の機能も表すことができる。その例を、アプリケーションランチャー１２０（例えばスタート画面またはスタートメニュー）を実装する機能を表すランチャーモジュール１１８として図示しており、アプリケーションランチャー１２０の例が、図１のコンピューティング装置１０２の表示装置１０８のユーザインターフェース内に表示されている。
【００２２】
[0032]  アプリケーションランチャー１２０は、アイコン、タイル、テキスト記述など、複数のアプリケーション１１４の表現を含んでおり、様々な方式で構成することができる。アプリケーションランチャー１２０は、例えば、階層ファイル構造のルートレベルとして構成することができ、例えば、その他のレベルはそれぞれ、階層中でルートレベルより「下」にある。図示される例に示される表現は、コンピューティング装置１０２で実行するために、アプリケーション１１４のうち対応するものを起動するために選択することができる。そのようにして、ユーザは、ファイル構造内を容易にナビゲートして、関心のあるアプリケーション１１４の実行を開始することができる。他の構成も企図され、その例については以下で解説し、対応する図に示される。
【００２３】
[0033]  オペレーティングシステム１１６は、表現モジュール１２２も含むものと図示されている。表現モジュール１２２は、アプリケーション１１４の表現（例えばタイル、アイコンなど）およびアプリケーション１１４により消費可能なコンテンツを管理する機能を表し、表現の例がスタート画面に関して図示されている。事例によっては、これらの表現は、表現されたアプリケーション１１４を起動せずに表現の一部として表示できる通知を含むことがある。この機能は、表現の一部として含めるために通知１２６を管理するように構成された通知モジュール１２４として図示されている。
【００２４】
[0034]  例えば、気象アプリケーションの表現１２８は、名前と現在の気象状況、例えば「７２°」を示す通知を含むものと図示されている。このようにして、ユーザは、アプリケーションのそれぞれを起動してナビゲートすることなく、アプリケーション１１４に関係する情報を容易に見ることができる。特定のアプリケーション１１４の表現を示すが、ユーザのサービスとの関わり、例えばソーシャルネットワークサービス内の友達を参照するアプリケーションの表現など、アプリケーションの他の表現も企図される。
【００２５】
[0035]  １つまたは複数の実装において、通知１２６は、対応するアプリケーション１１４を実行せずに管理されることが可能である。例えば、通知モジュール１２４は、様々な異なるソースから通知１２６を受け取ることができ、そのようなソースには、ソフトウェア（例えばコンピューティング装置１０２によって実行される他のアプリケーション）や、ネットワーク１３４を介したウェブサービス１３２などがある。これは、アプリケーション１１４を通知モジュール１２４に登録して、通知がどこからどのように受け取られるのかを指定するのに応じて行われることができる。そして、通知モジュール１２４は、アプリケーション１１４を実行せずに、どのように通知１２６を表現の一部として表示するかを管理することができる。これにより、各アプリケーション１１４を実行せずに通知１２６を出力するので、バッテリ寿命およびコンピューティング装置１０２の性能を向上させることができる。
【００２６】
[0036]  この解説では、通知モジュール１２４をクライアントに組み込むことを説明したが、通知モジュール１２４の機能は様々な方式で実装することができる。例えば、通知モジュール１２４の機能は、全体または一部がウェブサービス１３２に組み込まれてもよい。例えば、通知モジュール１３０は、例えば通知モジュール１２４、１３０にアプリケーション１１４を登録することを通じて、他のウェブサービスから受け取られた通知を処理し、その通知をネットワーク１３４を通じてコンピューティング装置１０２に配信するために管理することができ、それにより、表現されたアプリケーション１１４を実行することなく、表現の一部として通知１２６を出力することができる。
【００２７】
[0037]  アプリケーションランチャー１２０は、様々な異なる方式で構成することができる。図示される例では、例えば、アプリケーションランチャー１２０は、消費型の使用法コンテキストで対話するために構成されている。このコンテキストでは、アプリケーションランチャー１２０は、手持ちの設定でユーザの手１０６によって入力されるジェスチャなど、手動の対話をサポートするように構成される。そのために、アプリケーションランチャー１２０は、実質的にフル画面ビューにサイズ調整され、フル画面ビューでは、表示装置１０８の利用可能な表示領域の大半がアプリケーションランチャー１２０によって利用されて、アプリケーション１１４の表現およびコンピューティング装置１０２の他の機能を表示する。アプリケーションランチャー１２０に含まれる表現も、ユーザの手１０６の指で効率的に選択できるようにサイズ調整される。
【００２８】
[0038]  アプリケーションランチャー１２０の出力は、様々な方式で開始させることができる。図示される例では、例えば、タスクバー１３６（例えばクイック起動バー）が、表示装置１０８のユーザインターフェース表示の縁に沿って表示されている。タスクバー１３６は、アプリケーションランチャー１２０の表現１３８を含む、機能の表現を含んでいる。アプリケーションランチャー１２０の表現１３８を選択すると、ランチャーモジュール１１８が、アプリケーションランチャー１２０をユーザインターフェースに表示する。タスクバー１３６は、コンピューティング装置１０２によって現在実行されているアプリケーション１１４（例えばアクティブに実行されているか、またはスリープ状態にある）の表現を含むように構成することもできる。
【００２９】
[0039]  図２は、生産型の使用法コンテキストで使用するために構成されたアプリケーションランチャー１２０を示す例示的実装２００を描いている。図示されるように、アプリケーションランチャー１２０の全体サイズは、図１の消費型の使用法コンテキスト時よりも生産型の使用法コンテキスト時の方が小さい。アプリケーション１１４の表現も、表示サイズがより小さい。そのようにすると、アプリケーションランチャー１２０の周辺の領域が、ユーザに依然として視認可能になる。例えば、アプリケーション１１４のユーザインターフェースを、アプリケーションランチャー１２０より下の層に表示することができ、アプリケーションランチャーが半透明の部分を含むことにより、アプリケーションユーザインターフェースの一部が、アプリケーションランチャー１２０（および図示されるように背景画像）などを通して視認できるようにすることができる。
【００３０】
[0040]  アプリケーションランチャー１２０はクローム領域２０２を含む。クローム領域２０２は、ユーザの名前、ならびにコンピューティング装置１０２を「オフ」にするために選択可能な機能、および、コンピューティング装置１０２で利用できるすべてのアプリケーション１１４の表現を含んだユーザインターフェースへとナビゲートするための「すべてのアプリ」機能を含む。
【００３１】
[0041]  アプリケーションランチャー１２０は、多機能ユーティリィ（MFU）２０４領域も含み、この領域２０４は、文書の閲覧、設定メニューへのアクセス、計算機アプリケーションなど、コンピューティング装置１０２のユーザインターフェースを介して選択できる機能（例えば「このPC」）の表現を含んでいる。ＭＦＵ２０４領域の隣には、アプリケーション１１４の表現を含んでいるタイルグリッド２０６があり、アプリケーション１１４の表現はこの例ではタイルとして構成されているが、アイコンなどの他の構成も企図される。タイルは、先に説明したように通知１２６を含んでおり、これを利用して、表現されたアプリケーション１１４を積極的に実行することなく、アプリケーションランチャー１２０内で非モーダル式にユーザに通知することができる。
【００３２】
[0042]  アプリケーション１１４の表現は、この例では２つの列としてタイルグリッド２０６内に配置され、列の中ではグループとして配置される。アプリケーションランチャー１２０のサイズは、様々な方式で指定することができる。例えば、ユーザが、ＭＦＵ２０２領域にある「設定」を介してアクセス可能な設定メニューで、アプリケーションランチャー１２０の列または行の数を指定することができる。別の例では、ユーザが、カーソル制御装置で制御されるカーソルを使用して行われるように図示されている、アプリケーションランチャー１２０の境界線と対話して、アプリケーションランチャーの横方向および縦方向のサイズを指定することができる。ジェスチャを使用することによるなど、他の例も企図される。さらに他の例では、ユーザが、アプリケーションランチャー１２０内に表示されたコントロール（例えばボタン）を使用することにより、種々のサイズの中から選択することができ、例えば、図１に示されるビューと図２に示されるビューを切り替えることができる。
【００３３】
[0043]  指定されると、ランチャーモジュール１１８は、この例ではユーザの選択を「尊重」するように構成されることができる。図２に示されるように、例えば、ユーザが、アプリケーションランチャー１２０のサイズを指定している。アプリケーションランチャー１２０の利用可能な表示領域が消費される（すなわちアプリケーション１１４の表現で「一杯」になる）と、アプリケーションランチャー１２０は、スクロール、例えば、この例ではタイルの部分的な表示２０８によって示されるように連続的な（例えばページごとに分割されない）「下方」へのスクロールをサポートすることができる。アプリケーションランチャー１２０の動的なサイズ調整は、様々な方式でランチャーモジュール１１８によって行われることが可能であり、その例を以下のように説明し、対応する図に示す。
【００３４】
[0044]  図３は、２つの列をサポートしている図２のアプリケーションランチャー１２０を示す例示的実装３００を描いている。これは、図２に示されるような生産型の使用法におけるアプリケーションランチャー１２０の構成の例である。アプリケーションランチャー１２０は、第１および第２の列３０２、３０４を含み、列の間には互いから区別するための隙間がある。第１および第２の列３０２、３０４は、アプリケーション１１４の表現およびそれらのアプリケーションに関係するコンテンツのグループ分けもサポートすることができ、その例を以下で説明する。
【００３５】
[0045]  図４は、列内のグループ分けをサポートする、図３のアプリケーションランチャー１２０を示す例示的実装４００を描いている。この例では、第１の列３０２は、表現の第１および第２のグループ４０２、４０４を含んでいる。第２の列３０４は、表現の単一のグループ４０６を含んでいる。このレイアウトがランチャーモジュール１１８によって活用することにより、アプリケーションランチャー１２０を動的にサイズ調整することができ、同様に、表現がアプリケーションランチャー１２０に追加される、またはそこから削除される時に、自動的にかつユーザが介在せずに、動的にアプリケーションランチャー１２０をサイズ調整し直すなど、アプリケーションランチャーの中にタイルを配置することができる。
【００３６】
[0046]  図５および図６は、図４のグループを２列の形式で活用するアプリケーションランチャー１２０の動的なサイズ調整を示す例示的実装５００、６００を描いている。タイルなどの表現は、様々な方式でアプリケーションランチャー１２０に追加または削除することができる。例えば、ユーザが、ユーザインターフェース内で「右クリック」するか、またはジェスチャ（例えばタイルの上で「下にスライド」）を行うことで、ランチャーモジュール１１８に、その表現をアプリケーションランチャー１２０に追加させること、および表現をアプリケーションランチャー１２０から削除させることができる。したがって、以下では、表現が追加され、アプリケーションランチャー１２０が継続的に増大していく例を説明するが、この順序を逆にして、アプリケーションランチャー１２０からの表現の削除を説明することもできる。
【００３７】
[0047]  図５の例示的実装５００は、第１、第２、および第３の段階５０２、５０４、５０６を含むものと図示されている。第１の段階５０２で、表現が第１のグループ４０２に追加される。このグループが一杯になると、アプリケーションランチャー１２０の単一の列の中で第２のグループ４０４が第１のグループ４０２に追加され、それによりアプリケーションランチャー１２０の全体サイズ、例えば、アプリケーションランチャー１２０を表示する際に消費される表示装置１０８の利用可能な表示領域の量が増大する。
【００３８】
[0048]  このプロセスは継続することができ、第１の列３０２の第１および第２のグループ４０２、４０４が一杯になると、先に説明したように単一のグループ４０６を有する第２の列３０４が追加される。このように、この例では、２列のレイアウトが指定されており、それを利用してアプリケーションランチャー１２０内に表現を配置している。このプロセスは継続することができ、アプリケーションランチャー１２０に追加された後続の表現は、それらの列の中でグループとして追加されていく。
【００３９】
[0049]  図６の第１および第２の段階６０２、６０４に示されるように、例えば、第１、第２、および第３のグループ４０２、４０４、および４０６が一杯になると、第１の列３０２の中で第１および第２のグループ４０２、４０４の下に第４のグループ６０６が追加される。同様に、第４のグループ６０６が一杯になると、第２の列３０４の第３のグループ４０６の下に第５のグループ６０８が追加される。このプロセスは継続することができ、先に説明したように、アプリケーションランチャー１２０の利用可能な表示領域が消費されると、スクロールの機能を利用して表現間をナビゲートすることができる。
【００４０】
[0050]  図７は、単一の列内でのグループ分けをサポートする図１のアプリケーションランチャー１２０を示す例示的実装７００を描いている。この例示的実装７００も、第１、第２、第３、および第４の段階７０２、７０４、７０６、７０８を使用して図示している。第１の段階７０２で、まず単一の列の中で単一の縦方向のグループ７１０を使用して、アプリケーション１１４の表現を配置する。これを利用すると、含む表現が少ないときに、アプリケーションランチャー１２０の表示の「コンパクトさ」を保つことができる。
【００４１】
[0051]  先と同様に、このグループ７１０が一杯になると、第２の段階７０４に示されるように第２のグループ７１２が列に追加されることができる。その後グループが一杯になると、追加的なグループ７１４、７１６が、それぞれ第３および第４の段階７０６、７０８に示されるように縦方向に追加されることができる。様々な他の例も企図され、それらについては以下でさらに解説し、対応する図に示している。
【００４２】
[0052]  図８は、図１のアプリケーションランチャー１２０が用いることが可能な追加的な形式を示す例示的実装８００を描いている。第１の例８０２では、３列の形式が示される。第２の例８０４は、第１の例８０２の３列の形式から４列の形式への拡張を示す。第３の例８０６は、表現が第２の列の下で、第３の列に対して追加される３列の配置を示す。このように、ランチャーに含めようとする表現の数に基づいて、アプリケーションランチャー１２０を動的にサイズ調整する際に、様々な異なるレイアウトをランチャーモジュール１１８に用いることができる。先に説明したように、ランチャーモジュール１２０は、使用法コンテキストに基づいてアプリケーションランチャー１２０を動的にサイズ調整することもでき、その例は以下のように説明され、対応する図に示される。
【００４３】
[0053]  図９は、図１のコンピューティング装置１０２のランチャーモジュール１１８が、コンピューティング装置１０２との対話中にユーザの使用法コンテキストの指標に応答してアプリケーションランチャーを動的にサイズ調整する例示的実装９００を描いている。この例示的実装は、アプリケーションランチャー１２０の第１および第２の例９０２、９０４を含む。
【００４４】
[0054]  第１の例９０２では、アプリケーションランチャー１２０は、ユーザが装置を手に持っている時に主としてユーザインターフェースとのタッチ対話をサポートするために利用されるなど、消費型の使用法コンテキストのために構成される。そのため、第１の例９０２におけるアプリケーションランチャー１２０は、実質的にフル画面ビューで図示しており、このビューでは、ランチャーにユーザインターフェース内での優位（中央部への表示）が与えられ、ユーザインターフェースの利用可能な表示領域の大部分を消費する。表現（例えばタイル）も、ユーザの手１０６の指を介したジェスチャ入力を介したユーザ選択をサポートするサイズになるように構成される。
【００４５】
[0055]  第２の例９０４では、アプリケーションランチャーの生産型の使用法コンテキスト構成が示される。図示されるように、アプリケーションランチャー１２０の全体サイズは、消費型の使用法コンテキストの例９０２よりもこの例９０４での方が小さい。アプリケーション１１４の表現も、より小さな表示サイズを有する。そのようにすると、先に説明したように、アプリケーションランチャー１２０の周辺の領域が、ユーザに依然として視認可能になる。
【００４６】
[0056]  ランチャーモジュール１１８は、この例では、コンピューティング装置と対話する際のユーザの可能性の高い使用法コンテキストの指標９０６に基づいて、アプリケーションランチャー１２０を動的にサイズ調整するように構成される。この指標９０６は様々な方式で生成される可能性がある。例えば、ユーザインターフェースを出力するために使用される表示装置１０８の利用可能な表示領域のサイズが、可能性の高い使用法コンテキストを示す場合がある。例えば１２インチ画面と対話するユーザは消費型の使用法コンテキストで対話している可能性が高いのに対して、３０インチ画面と対話しているユーザは、生産型の使用法コンテキストで、例えばデスクトップで対話している可能性が高い。さらに、表示装置１０８によってサポートされる機能も指標となる場合がある。例えば、表示装置１０８がタッチ画面をサポートしていないことは、生産型の使用法コンテキストでの対話を示す可能性がある。
【００４７】
[0057]  別の例で、指標９０６は、３次元空間内でのコンピューティング装置自体の向きまたは動きに基づいて生成されることがある。例えば、加速度計などを利用して、コンピューティング装置１０２が動きを示したかどうかを判定し、動きを示している場合は、ユーザが消費型の使用法コンテキストでコンピューティング装置１０２と対話している可能性が高く、それに対して、動きがないことは、生産型の使用法コンテキストを示している可能性がある。また、３次元空間内でのコンピューティング装置１０２の向きにより、ユーザが装置を手に持っており、したがって消費型のユーザ体験で対話している可能性が高いか、または装置を（例えばキックスタンドを使用して）表面に置いており、したがって生産型の使用法コンテキストで対話している可能性が高いかを示すことができる。周辺装置の使用も使用法コンテキストを示す場合があり、それについてのさらなる解説は以下で得ることができ、対応する図に示される。
【００４８】
[0058]  図１０は、コンピューティング装置に取り付けられた状態にあり、そのため生産型の使用法コンテキストの可能性が高いことを示す周辺装置を示す例示的実装１０００を描いている。この例では、キーボードとして構成された周辺装置１００２は、ユーザの片手または両手１０６を使用してコンピューティング装置１０２に脱着可能に取り付けできるように構成された接続部１００４を備える。接続部１００４は、例えば、コンピューティング装置１０２に効率的に脱着できる物理的および通信的結合をサポートするための磁石および物理的接触を含むことができる。
【００４９】
[0059]  そのため、ランチャーモジュール１１８は、周辺装置１００２が取り付けられたことを、ユーザが生産型の使用法コンテキストでコンピューティング装置１０２と対話していることを示す指標９０６として活用し、したがって、そのコンテキストのために構成されたアプリケーションランチャー１２０の例９０４の出力を生じさせることができる。周辺装置１００２がコンピューティング装置１０２から取り外されると、ランチャーモジュール１１８は、図９に示される消費型の使用法コンテキストのために構成されたアプリケーションランチャー１２０の第１の例９０２の出力を生じさせることができる。消費型の使用法コンテキストを示すユーザの手の指を使った対話と対比して、カーソル制御装置の使用（例えばコンピューティング装置１０２へのマウスのワイヤレス接続）を通じて、生産型の使用法コンテキストを介する対話を示すなど、他の例も企図される。
【００５０】
[0060]  コンピューティング装置１０２に対する装置（例えば周辺装置１００２）の向きも、可能性の高い使用法コンテキストを示す場合がある。この例における周辺装置１００２は、例えば、ヒンジ、例えば柔軟な布地製のヒンジの使用を通じて、コンピューティング装置１０２に対する回転の動きをサポートするように構成されている。そのようにすると、周辺装置１００２が保管のために表示装置のカバーの役割を果たすことができ、周辺装置１００２を、生産型の使用法コンテキストを示すタイピング構成に位置付けることができ、さらには、消費型の使用法コンテキストをサポートするためにコンピューティング装置１０２の筐体の後ろに位置付けることもでき、そのような事例で周辺装置１００２がコンピューティング装置１０２とのユーザの対話の邪魔にならないようにする。これらの向きは、周辺装置１００２および／またはコンピューティング装置１０２内のセンサを使用するなど、様々な方式で検出することができる。したがって、先に説明したように、ランチャーモジュール１１８は、可能性の高い使用法コンテキストを示す様々な指標９０６を受け取ることができ、その後、その指標を使用してアプリケーションランチャー１２０を動的にサイズ調整することができる。容易に明らかになるように、それらの技術の組み合わせをランチャーモジュール１１８によって利用してもよく、組み合わせの使用により、判定の見込まれる精度を高めることができる。上記および他の技術のさらなる解説は、以下の手順との関連で得ることができる。
【００５１】
（例示的手順）
[0061]  以下の解説では、先に説明したシステムおよび装置を利用して実装することが可能なアプリケーションランチャーのサイズ調整技術を説明する。それぞれの手順の態様は、ハードウェア、ファームウェア、もしくはソフトウェア、またはそれらの組み合わせとして実装することができる。手順は、１つまたは複数の装置によって行われる動作を規定するブロックの組として示され、それぞれのブロックによる動作を行うために、示される順序に必ずしも限定されない。以下の解説の一部では、上記で説明した例示的環境を参照する。
【００５２】
[0062]  図１１は、可能性の高い使用法コンテキストの判定が、アプリケーションランチャーを動的にサイズ調整するための基準として利用される例示的実装における手順１１００を描いている。コンピューティング装置と対話する際のユーザの可能性の高い使用法コンテキストが、コンピューティング装置によって判定される（ブロック１１０２）。使用法コンテキストは、例えば、先に説明したように、コンピューティング装置への周辺装置の取り付け、コンピューティング装置に対する周辺装置の物理的配置、３次元空間におけるコンピューティング装置の向きまたは動き、ユーザインターフェースを表示するために使用される表示装置の表示領域のサイズなどに基づくことができる。
【００５３】
[0063]  判定されたユーザの可能性の高い使用法コンテキストに基づいて、コンピューティング装置が、ユーザインターフェースの表示領域内でアプリケーションランチャーを動的にサイズ調整する。アプリケーションランチャーは、ユーザから受け取られた入力に応答して出力されるように構成され、それぞれのアプリケーションに対応するユーザインターフェースにナビゲートするために選択可能なアプリケーションの複数の表現を含んでいる（ブロック１１０４）。例えば、生産型または消費型の使用法コンテキストの判定を活用して、先に図９との関連で説明したように、アプリケーションランチャー１０２を生産型または消費型の使用法のためにサイズ調整することができる。様々な他の例も企図される。
【００５４】
（例示的なシステムおよび装置）
[0064]  図１２は、１２００に例示的なシステムの全体を図示しており、システムは、表現モジュール１２０が含まれることで図示されるように、本明細書に記載される様々な技術を実装することができる１つまたは複数のコンピューティングシステムおよび／または装置を表す例示的なコンピューティング装置１２０２を含む。コンピューティング装置１２０２は、例えば、サービス提供者のサーバ、クライアントに関連付けられた装置（例えばクライアント装置）、オンチップシステム、および／または、他の適切なコンピューティング装置もしくはコンピューティングシステムである可能性がある。
【００５５】
[0065]  図示された例示的コンピューティング装置１２０２は、処理システム１２０４、１つまたは複数のコンピュータ可読媒体１２０６、および１つまたは複数のＩ／Ｏインターフェース１２０８を含み、これらは通信的に相互と結合されている。図示していないが、コンピューティング装置１２０２はさらに、それらの様々な構成要素を互いと結合するシステムバスまたは他のデータおよびコマンド転送システムを含むことができる。システムバスは、種々のバス構造のいずれか１つまたは組み合わせを含むことができ、そのようなバス構造には、メモリバスもしくはメモリコントローラ、周辺バス、ユニバーサルシリアルバス、および／または、様々なバスアーキテクチャを利用するプロセッサバスもしくはローカルバスなどがある。制御線やデータ線など、様々な他の例も企図される。
【００５６】
[0066]  処理システム１２０４は、ハードウェアを使用して１つまたは複数の動作を行う機能を表す。したがって、処理システム１２０４は、プロセッサ、機能ブロックなどとして構成されることが可能なハードウェア要素１２１０を含むものと図示されている。これは、１種または複数の半導体を使用して形成された特定用途集積回路または他の論理装置としてのハードウェアの実装を含むことができる。ハードウェア要素１２１０は、その形成材料によっても、または内部で用いられる処理機構によっても制限されない。例えば、プロセッサは、半導体および／またはトランジスタ（例えば電子集積回路（IC））からなることができる。そのような文脈では、プロセッサ実行可能命令は、電子的に実行可能な命令であってよい。
【００５７】
[0067]  コンピュータ可読記憶媒体１２０６は、メモリ／記憶１２１２を含むものと図示されている。メモリ／記憶１２１２は、１つまたは複数のコンピュータ可読媒体に関連付けられたメモリ／記憶容量を表す。メモリ／記憶構成要素１２１２は、揮発性の媒体（ランダムアクセスメモリ（RAM）など）および／または不揮発性の媒体（読出し専用メモリ（ROM）、フラッシュメモリ、光ディスク、磁気ディスクなど）を含むことができる。メモリ／記憶構成要素１２１２は、固定媒体（例えばRAM、ROM、固定ハードドライブなど）、ならびに取り外し可能媒体（例えばフラッシュメモリ、取り外し可能ハードドライブ、光学ディスクなど）を含むことができる。コンピュータ可読媒体１２０６は、以下でさらに説明するように、様々な他の方式で構成することができる。
【００５８】
[0068]  入出力インターフェース１２０８は、ユーザがコマンドおよび情報をコンピューティング装置１２０２に入力することを可能にし、また、様々な入出力装置を使用してユーザおよび／または他の構成要素もしくは装置に情報が提示されることを可能にする機能を表す。入力装置の例には、キーボード、カーソル制御装置（例えばマウス）、マイクロフォン、スキャナ、タッチ機能（例えば物理的なタッチを検出するように構成された容量式または他のセンサ）、カメラ（例えば可視波長または赤外線周波などの不可視波長を用いて、タッチを伴わないジェスチャとして動きを認識することができる）などが含まれる。出力装置の例には、表示装置（例えばモニタやプロジェクタ）、スピーカ、プリンタ、ネットワークカード、触覚反応装置などが含まれる。したがって、コンピューティング装置１２０２は、下記でさらに説明するように様々な方式で構成されて、ユーザ対話をサポートすることができる。
【００５９】
[0069]  ソフトウェア、ハードウェア要素、またはプログラムモジュールの一般的な文脈で、各種の技術が本明細書に記載される場合がある。一般に、そのようなモジュールには、特定のタスクを行うか、または特定の抽象データ型を実装する、ルーチン、プログラム、オブジェクト、要素、構成要素、データ構造などが含まれる。本明細書で使用される用語「モジュール」、「機能」、および「構成要素」は、一般に、ソフトウェア、ファームウェア、ハードウェア、またはそれらの組み合わせを表す。本明細書に記載される技術の特徴はプラットフォーム非依存であり、つまり、それらの技術は、様々なプロセッサを備える様々な市販のコンピューティングプラットフォームで実装可能である。
【００６０】
[0070]  ここに記載されるモジュールおよび技術の実装は、何らかの形態のコンピュータ可読媒体に記憶するか、またはそのような媒体を通じて送信することができる。コンピュータ可読媒体は、コンピューティング装置１２０２によりアクセスできる様々な媒体を含むことができる。限定ではなく例として、コンピュータ可読媒体は、「コンピュータ可読記憶媒体」および「コンピュータ可読信号媒体」を含むことができる。
【００６１】
[0071]  「コンピュータ可読記憶媒体」は、単なる信号送信、搬送波、または信号自体に対して、情報の恒久的および／または非一時的な記憶を可能にする媒体および／または装置を指すことができる。したがって、コンピュータ可読記憶媒体は、非信号担持媒体を指す。コンピュータ可読記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、論理要素／回路、または他のデータなどの情報を記憶するのに適した方法または技術で実装された、揮発性および不揮発性、取り外し可能および取り外し不能の媒体ならびに／または記憶装置などのハードウェアを含む。コンピュータ可読記憶媒体の例としては、これらに限定されないが、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ、もしくは他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（DVD）、もしくは他の光学記憶、ハードディスク、磁気カセット、磁気テープ、磁気ディスク記憶、もしくは他の磁気記憶装置、または要求される情報を記憶するのに適し、コンピュータからアクセスできる他の記憶装置、有形の媒体、もしくは製造品が挙げられる。
【００６２】
[0072]  「コンピュータ可読信号媒体」は、ネットワークを介するなどして、コンピューティング装置１２０２のハードウェアに命令を送信するように構成された信号担持媒体を指す場合がある。信号媒体は、通例、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータを、搬送波、データ信号、または他の移送機構などの変調データ信号に具現化することができる。信号媒体は、任意の情報伝達媒体も含む。用語「変調データ信号」は、信号中に情報を符号化するように特性の１つまたは複数を設定または変化させた信号を意味する。限定ではなく例として、通信媒体は、有線ネットワークや直接有線接続などの有線媒体と、音響、ＲＦ、赤外線、および他の無線媒体などの無線媒体とを含む。
【００６３】
[0073]  先に説明したように、ハードウェア要素１２１０およびコンピュータ可読媒体１２０６は、１つまたは複数の命令を実行するなど、本明細書に記載される技術の少なくとも一部の態様を実装するためにいくつかの実施形態で用いることができる、ハードウェア形態で実装されたモジュール、プログラム可能装置論理、および／または固定装置論理を表す。ハードウェアは、集積回路もしくはオンチップシステム、特定用途集積回路（ASIC）、利用者書き換え可能ゲートアレイ（FPGA）、複雑プログラム可能論理装置（CPLD）、およびシリコンまたは他のハードウェアによる他の実装の構成要素を含むことができる。この文脈で、ハードウェアは、命令によって定義されるプログラムタスクおよび／またはそのハードウェアによって具現化される論理を行う処理装置、ならびに、実行のために命令を記憶するために利用されるハードウェア、例えば先に説明したコンピュータ可読記憶媒体として動作することができる。
【００６４】
[0074]  上述の組み合わせも、本明細書に記載される様々な技術を実装するために用いることができる。したがって、ソフトウェアモジュール、ハードウェアモジュール、または実行可能モジュールは、何らかの形態のコンピュータ可読記憶媒体に具現化された１つまたは複数の命令および／または論理として、および／または１つまたは複数のハードウェア要素１２１０により、実装することができる。コンピューティング装置１２０２は、ソフトウェアモジュールおよび／またはハードウェアモジュールに対応する特定の命令および／または機能を実装するように構成することができる。そのため、コンピューティング装置１２０２によりソフトウェアとして実行可能なモジュールの実装は、例えば、処理システム１２０４のコンピュータ可読記憶媒体および／またはハードウェア要素１２１０を使用することによるなど、少なくとも部分的にハードウェアで実現することができる。命令および／または機能は、１つまたは複数の製造品（例えば１つまたは複数のコンピューティング装置１２０２および／または処理システム１２０４）により実行可能／操作可能であり、それにより本明細書に記載される技術、モジュール、および例を実装することができる。
【００６５】
[0075]  図１２にさらに図示されるように、例示的システム１２００は、パーソナルコンピュータ（PC）、テレビ装置、および／またはモバイル装置でアプリケーションを実行する際に、継ぎ目のないユーザ体験にするためのユビキタスな環境を可能にする。サービスおよびアプリケーションは、アプリケーションを利用する、ビデオゲームをプレーする、ビデオを視聴するなどしながら１つの装置から次の装置に移行する時に、共通のユーザ体験のために３つの環境すべてで実質的に同じように動作する。
【００６６】
[0076]  例示的システム１２００では、中央のコンピューティング装置を通じて複数の装置が相互接続されている。中央のコンピューティング装置は、それら複数の装置に対してローカルであっても、または複数の装置から遠隔に位置してもよい。一実施形態では、中央のコンピューティング装置は、ネットワーク、インターネット、または他のデータ通信リンクを通じて複数の装置に接続された、１つまたは複数のサーバコンピュータのクラウドであってよい。
【００６７】
[0077]  一実施形態では、この相互接続アーキテクチャにより、複数の装置にまたがって機能をもたらして、その複数の装置のユーザに共通で継ぎ目のない体験を実現することができる。複数の装置は各々異なる物理的要件および能力を有する可能性があり、中央のコンピューティング装置は、プラットフォームを使用して、装置に合わせて特化されながらもすべての装置に共通である体験を装置にもたらすことができる。一実施形態では、対象とする装置のクラスが作成され、その包括的なクラスの装置に合わせて体験が特化される。装置のクラスは、それら装置の物理的特徴、使用法の種類、または他の共通の特性によって定義することができる。
【００６８】
[0078]  様々な実装で、コンピューティング装置１２０２は、コンピュータ１２１４、モバイル１２１６、およびテレビ１２１８の使用向けなど、様々な異なる構成をとることができる。そのような構成は各々、一般に構築および能力が異なり得る装置を含み、したがって、コンピューティング装置１２０２は、異なる装置クラスの１つまたは複数に従って構成することができる。例えば、コンピューティング装置１２０２は、パーソナルコンピュータ、デスクトップコンピュータ、マルチ画面コンピュータ、ラップトップコンピュータ、ネットブックなどを含む、コンピュータ１２１４クラスの装置として実装できる。
【００６９】
[0079]  コンピューティング装置１２０２は、携帯電話、携帯型音楽プレーヤ、携帯型ゲーム装置、タブレットコンピュータ、マルチ画面コンピュータなどのモバイル装置を含む、モバイル１２１６クラスの装置として実装される場合もある。コンピューティング装置１２０２は、日常的な視聴環境では一般的に大型の画面を備えるか、または大型の画面に接続された装置を含む、テレビ１２１８クラスの装置として実装される場合もある。そのような装置には、テレビ、セットトップボックス、ゲームコンソールなどがある。
【００７０】
[0080]  本明細書に記載される技術は、そのようなコンピューティング装置１２０２の様々な構成によってサポートされることが可能であり、本明細書に記載される技術の具体例に限定されない。この機能は、下記で説明するように、プラットフォーム１２２２を介して「クラウド」１２２０を経由するなど、すべてまたは一部が分散システムの使用を通じて実装されることも可能である。
【００７１】
[0081]  クラウド１２２０は、リソース１２２４のプラットフォーム１２２２を含むか、および／またはそれを表す。プラットフォーム１２２２は、クラウド１２２０のハードウェアリソース（例えばサーバ）およびソフトウェアリソースの下層の機能を抽象化する。リソース１２２４は、コンピューティング装置１２０２から遠隔にあるサーバでコンピュータ処理が実行されている間に利用される可能性のあるアプリケーションおよび／またはデータを含むことができる。リソース１２２４は、インターネットを通じて、および／または、セルラーネットワークやＷｉ−Ｆｉネットワークなどの加入者ネットワークを通じて提供されるサービスも含むことができる。
【００７２】
[0082]  プラットフォーム１２２２は、リソースおよび機能を抽象化して、コンピューティング装置１２０２を他のコンピューティング装置に接続することができる。プラットフォーム１２２２は、リソースのスケーリングを抽象化する働きもすることができ、それにより、プラットフォーム１２２２を介して実装されるリソース１２２４に対する発生した需要に、対応するレベルのスケールを提供する。したがって、相互接続される装置の実施形態では、本明細書に記載される機能の実装は、システム１２００全体に分散させることができる。例えば、機能は、一部をコンピューティング装置１２０２で実装すると共に、クラウド１２２０の機能を抽象化するプラットフォーム１２２２を介しても実装することができる。
【００７３】
結論
[0083]  本発明について、構造的特徴および／または方法論的動作に固有の術語で説明したが、添付の特許請求の範囲に定義される本発明は必ずしも記載される具体的な特徴または動作に限定されないことを理解されたい。むしろ、具体的な特徴または動作は、特許権が請求される本発明を実施する例示的形態として開示される。
【図１】
0006637483.tif 000002
【図２】
0006637483.tif 000003
【図３】
0006637483.tif 000004
【図４】
0006637483.tif 000005
【図５】
0006637483.tif 000006
【図６】
0006637483.tif 000007
【図７】
0006637483.tif 000008
【図８】
0006637483.tif 000009
【図９】
0006637483.tif 000010
【図１０】
0006637483.tif 000011
【図１１】
0006637483.tif 000012
【図１２】
0006637483.tif 000013