(57)【要約】  アップグレード制御チェックが提供され得る。ユーザーは、少なくとも１つのアップグレードが利用可能であることが通知され得る。ユーザーから少なくとも１つのアップグレードの選択物を受信することに応答して、少なくとも１つのアップグレードが既存のコンポーネントと競合するかどうかを決定するためにチェックが行われ得る。競合が検出されないならば、アップグレードは遂行され得る。競合が確かに存在するならば、修復が試行され得る。
2014532948.tif 000002
【特許請求の範囲】
【請求項１】
アップグレード制御チェックを提供するための方法であって、
少なくとも１つのアップグレードが利用可能であることをユーザーに通知するステップと、
前記ユーザーから前記少なくとも１つのアップグレードの選択物を受信するステップと、
前記少なくとも１つのアップグレードがコンポーネントと競合するかどうかを決定するステップと、
前記少なくとも１つのアップグレードが前記コンポーネントと競合しないと決定することに応答して、前記アップグレードを遂行するステップと
を含む方法。
【請求項２】
前記少なくとも１つのアップグレードが前記コンポーネントと競合するかどうかを決定するステップが、前記少なくとも１つのアップグレードが重大なエラーレベルを含むかどうかを決定するステップを含む、請求項１に記載の方法。
【請求項３】
前記少なくとも１つのアップグレードが前記重大なエラーレベルを含むと決定することに応答して、前記アップグレードを遂行する以前に前記コンポーネントを修復することを試行するステップ
をさらに含む、請求項４に記載の方法。
【請求項４】
前記コンポーネントを修復することを試行するステップが成功したかどうかを決定するステップと、
前記コンポーネントを修復することを試行するステップが成功しなかったと決定することに応答して、前記アップグレードの遂行を中止するステップと
をさらに含む、請求項３に記載の方法。
【請求項５】
アップグレード制御チェックを提供するためのシステムであって、
メモリー記憶装置と、
前記メモリー記憶装置に結合される処理ユニットであって、
少なくとも１つのアプリケーションコンポーネントのアップグレードを遂行するためのユーザーからの命令を受信するように、
前記ユーザーに関連するデータのセットとの競合を前記アップグレードが含むかどうかを決定するように、
前記ユーザーに関連するデータの前記セットとの競合を前記アップグレードが含むと決定することに応答して、前記ユーザーに関連するデータの前記セットを修復するように、
前記ユーザーに関連するデータの前記セットのコピーを生成するように、
データの前記セットの前記コピーに前記アップグレードを適用するように、
前記ユーザーにデータの前記セットの前記アップグレードされたコピーへのアクセスを提供するように、
前記ユーザーからデータの前記セットの前記アップグレードされたコピーの承認を受信するように、および、
データの元のセットを削除するように
動作可能である処理ユニットと
を備えるシステム。
【請求項６】
前記処理ユニットが、前記アップグレードが利用可能であることを前記ユーザーに通知するようにさらに動作可能である、請求項５に記載のシステム。
【請求項７】
前記処理ユニットが、中で前記アップグレードを遂行すべき時間枠を前記ユーザーに提供するようにさらに動作可能である、請求項６に記載のシステム。
【請求項８】
前記処理ユニットが、
中で前記アップグレードを遂行すべき前記時間枠が経過したかどうかを決定するように、および、
中で前記アップグレードを遂行すべき前記時間枠が経過したと決定することに応答して、前記ユーザーから前記アップグレードを遂行するための要求を受信することなく前記アップグレードを遂行するように
さらに動作可能である、請求項７に記載のシステム。
【請求項９】
前記処理ユニットが、
データの前記セットの前記修復が成功したかどうかを決定するように、および、
データの前記セットの前記修復が成功しなかったと決定することに応答して、データの前記セットとの前記競合を前記ユーザーに通知するように
さらに動作可能である、請求項８に記載のシステム。
【請求項１０】
実行されるときにアップグレード制御チェックを提供するための方法を遂行する命令のセットを記憶するコンピューター可読媒体であって、命令の前記セットにより実行される前記方法が、
アプリケーションコンポーネントに対する少なくとも１つのアップグレードが利用可能であることをユーザーに通知するステップであって、前記少なくとも１つのアップグレードが、以下のもの、すなわち、前記アプリケーションコンポーネントの機能性に対するアップグレード、前記アプリケーションコンポーネントに関連するユーザーインターフェイスに対するアップグレード、および、データのセットのデータ記憶スキーマーに対するアップグレードの少なくとも１つに関連する、通知するステップと、
前記ユーザーから前記少なくとも１つのアップグレードの選択物を受信するステップと、
前記ユーザーに関連するデータパーティションのコピーを生成するステップと、
前記少なくとも１つのアップグレードに関連する複数のアップグレードルールの少なくとも１つが、前記アプリケーションコンポーネントの現在の態様と前記アプリケーションコンポーネントのアップグレードされた態様との間の競合を含むかどうかを決定するステップと、
前記少なくとも１つのアップグレードに関連する複数のアップグレードルールの前記少なくとも１つが、前記アプリケーションコンポーネントの前記現在の態様と前記アプリケーションコンポーネントの前記アップグレードされた態様との間の競合を含むと決定することに応答して、
前記競合を前記ユーザーに通知するステップと、
前記少なくとも１つのアップグレードに関連する複数のアップグレードルールの前記少なくとも１つが、前記アプリケーションコンポーネントの前記現在の態様と前記アプリケーションコンポーネントの前記アップグレードされた態様との間の競合を含むと決定することに応答して、
前記データパーティションの前記コピー内の前記競合を修復することを試行するステップと、
前記ユーザーに関連する前記データパーティションの前記コピー上で前記少なくとも１つのアップグレードを遂行するステップと、
前記ユーザーに前記データパーティションの前記アップグレードされたコピーへのリンクを提供するステップと、
前記データパーティションの前記アップグレードされたコピーを前記ユーザーが承認するかどうかを決定するステップと、
前記アップグレードされたコピーを前記ユーザーが承認すると決定することに応答して、前記ユーザーに関連する元のデータパーティションを削除するステップと
を含むコンピューター可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、安全性チェックおよびプレビューを伴うサーバーアップグレードに関する。
【背景技術】
【０００２】
[001]アップグレードのプレビューおよび安全性チェックが提供され得る。従来のシステムでは共有コンピューターシステムに対するアップグレードは、情報技術スペシャリストが、アップグレードスケジュールの細かな（ｇｒａｎｕｌａｒ）制御を伴わないシステム全体の更新を強制するときに行われる。共有システム内のコンポーネントは通常、内部でのデータおよびオブジェクトの整合性および持続性を提供するために同時にアップグレードされなければならず、したがって細かな手法ではアップグレードされ得ない。加えてそのようなアップグレードは、同じアップグレードセッション内でアップグレードされる必要があるコンポーネントがより多くなるにつれて、より長い継続時間、および結果として生じる停止をもたらす。一部の状況では共有システムのアップグレードは、エンドユーザーが、アップグレードの完全な影響を確認することを可能にせず、または、エンドユーザーのアクセス可能なツールが、既知の問題点が発見される場合にアップグレードを中止させることを可能にしない。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
安全性チェックおよびプレビューを伴うサーバーアップグレードを提供する。
【課題を解決するための手段】
【０００４】
[002]この概要は、下記の詳細な説明においてさらに説明される概念の選択物を、単純化された形式で紹介するために提供されるものである。この概要は、請求される主題の主要な特徴または本質的な特徴を識別することは意図されない。この概要は、請求される主題の範囲を限定するために使用されることもまた意図されない。
【０００５】
[003]アップグレード制御チェックが提供され得る。ユーザーは、少なくとも１つのアップグレードが利用可能であることが通知され得る。ユーザーから少なくとも１つのアップグレードの選択物を受信することに応答して、少なくとも１つのアップグレードが既存のコンポーネントと競合するかどうかを決定するためにチェックが行われ得る。競合が検出されないならば、アップグレードは遂行され得る。競合が確かに存在するならば、修復が試行され得る。
【０００６】
[004]前述の全体的な説明および以下の詳細な説明の両方は、例を提供し、単に説明的なものである。したがって前述の全体的な説明および以下の詳細な説明は、制限的であるとみなされるべきではない。さらに特徴または変形形態が、本明細書に記載されるものに加えて提供され得る。例えば実施形態は、詳細な説明において説明される様々な特徴の組み合わせおよび部分的組み合わせに向けられたものであり得る。
【０００７】
[005]本開示に組み込まれ、本開示の一部を構成する付随する図面が、本発明の様々な実施形態を例示する。
【図面の簡単な説明】
【０００８】
【図１】[006]動作環境のブロック図である。
【図２】[007]アップグレード制御チェックを提供するための方法のフローチャートである。
【図３】[008]コンピューティングデバイスのブロック図である。
【発明を実施するための形態】
【０００９】
[009]以下の詳細な説明は、付随する図面を参照する。可能な限り、同じ参照番号が、同じまたは同様の要素を参照するために、図面および以下の説明において使用される。本発明の実施形態が説明され得る一方で、修正、適合、および他の実装が可能である。例えば代用、追加、または修正が、図面内に例示される要素に対して行われ得るとともに、本明細書で説明される方法は、開示される方法に対して段階を代用する、並べ替える、または追加することにより修正され得る。したがって以下の詳細な説明は、本発明を限定しない。
【００１０】
[010]アップグレード制御チェックによって、共有コンピューターシステム・コンポーネントの細かな選択物が、情報技術スペシャリストの援助なしにアップグレードされることが可能になり得る。コラボレーションサービスなどの共有サービスのユーザーは、リアルタイムでの利用可能なアップグレードに同意する（ｏｐｔ  ｉｎ）ことが可能である。そのようなアップグレードは、新しいユーザーインターフェイス、エクスペリエンス・コンポーネント、および／または、データベースなどの共有オブジェクトを含み得る。さらにアップグレードの細かな制御によって、共有システムは、以前の性能および新しいアップグレードされた性能の両方がユーザー選定ごとに利用可能であり得るように、以前のアップグレード前の繰り返し、およびアップグレードされたバージョンの両方を提供することが可能になり得る。
【００１１】
[011]アップグレードに対する増大した制御が、ユーザーの既存のデータのコピーを生成し、そのコピーにアップグレードを適用することを結果としてもたらし得る。このことによってユーザーは、非破壊的な容量の中でアップグレードの影響をプレビューし評価することが可能になり得る。アップグレード制御チェックは、潜在的なアップグレードの問題点をユーザーに通知する、ルールベースの能力を使用することが可能である。ルールは、発見された問題領域をエンドユーザーが修整することを援助し、アップグレードエラーの可能性を低減することが可能である。
【００１２】
[012]アップグレード制御チェックは、システムが稼働し続ける間に、相互に異なる時間に共有オブジェクトのサブセットのアップグレードを遂行する能力を提供し得る。ユーザーは、データの自分自身のパーティションおよびオブジェクトを、セルフサービス同意を基準として、ならびに、それらのデータパーティションおよびオブジェクトを、システムがエンドユーザーにより使用されている間にアップグレードすることが可能である。チェックは、アップグレードの前に潜在的な問題点を検出する能力をさらに提供することが可能であり、ユーザーが、アップグレードプロセスに携わる前に自己修復することを可能にし得る。
【００１３】
[013]図１は、ユーザーワークステーション１１０を備える、アップグレード制御チェックを提供するための動作環境１００のブロック図である。ユーザーワークステーション１１０は、データ処理アプリケーション１１５を備え得るとともに、ネットワーク１２５を介してサーバー１２０と対話するように動作可能であり得る。データ処理アプリケーション１１５は、例えば文書処理、スプレッドシート、プレゼンテーション、および／または他の生産性アプリケーションを含み得る。例えばユーザーワークステーション１１０は、サーバー１２０により提供されるマルチユーザー・コラボレーションアプリケーション１３０に接続するように動作可能であり得るものであり、サーバー１２０は、ユーザーワークステーション１１０からのユーザーの要求を受信し処理することが可能である。ユーザーワークステーション１１０は、モニターおよび／またはタッチスクリーンなどのディスプレイデバイス１４０に、アプリケーションデータおよび／またはユーザーインターフェイスを出力するように動作可能であり得る。ユーザーワークステーション１１０は、例えば、コンピューター、ラップトップ、携帯電話および／もしくはＩＰ電話、タブレット、ゲームコンソール、ならびに／または他のデバイスなどの電子通信デバイスを備え得る。ユーザーワークステーション１１０は、キャプチャーデバイス１５０に結合される場合があり、キャプチャーデバイス１５０は、カメラおよび／またはマイクによってなどで、ユーザーを記録し、ユーザーにより生じる話された言葉、モーション、および／またはジェスチャーをキャプチャーするように動作可能であり得る。ユーザーワークステーション１１０は、キーボード、タッチスクリーン、スタイラス、および／またはマウス（図示せず）によってなどで、ユーザーからの他の入力をキャプチャーするようにさらに動作可能であり得る。本発明の実施形態に整合して、キャプチャーデバイス１５０は、ユーザーの音声および／またはアクションを検出可能な、任意の音声および／またはモーション検出デバイスを備え得る。例えばキャプチャーデバイス１５０は、複数のカメラおよび複数のマイクを備えるＭｉｃｒｏｓｏｆｔ（登録商標）Ｋｉｎｅｃｔ（登録商標）モーションキャプチャーデバイスを備え得る。
【００１４】
[014]図２は、アップグレード制御チェックを提供するための本発明の実施形態に整合する方法２００に必然的に含まれる全体的な段階を記載するフローチャートである。方法２００は、図３に関して下記でより詳細に説明されるようなコンピューティングデバイス３００を使用して実装され得る。方法２００の段階を実装する方途が、下記でより詳細に説明される。方法２００は、開始ブロック２０５で始まり段階２１０に進行することが可能であり、段階２１０でコンピューティングデバイス３００は、アプリケーションコンポーネントに対する少なくとも１つのアップグレードが利用可能であることをユーザーに通知することが可能である。例えばユーザーは、アップグレードが利用可能であるという、アプリケーション内部でのアラート、および／または管理者からの電子メールを受信することが可能である。そのようなアップグレードは、アプリケーションコンポーネントの機能性に対するアップグレード、アプリケーションコンポーネントに関連するユーザーインターフェイス／エクスペリエンスに対するアップグレード、および／または、データのセットのデータ記憶スキーマーに対するアップグレードを含み得る。
【００１５】
[015]次いで方法２００は段階２１５に進むことが可能であり、段階２１５でコンピューティングデバイス３００は、ユーザーから少なくとも１つのアップグレードの選択物を受信することが可能である。例えばユーザーは、アップグレードが進行してほしいとユーザーが思うかどうかを問い合わせるダイアログボックスに肯定的に応答すること、および／または、利用可能なアップグレードのリストからアップグレードを選択することが可能である。
【００１６】
[016]次いで方法２００は段階２２０に進むことが可能であり、段階２２０でコンピューティングデバイス３００は、ユーザーに関連するデータパーティションのコピーを生成することが可能である。例えばコラボレーションアプリケーション１３０は、データおよび／または構成オプションのセット（複数可）を含む、ユーザーのワークスペースに関係するすべてのデータを複製することが可能である。そのようなコピーは、サーバー１２０上で利用可能なデータベースで生成され得る。本発明の実施形態に整合して、データパーティションのコピーは、ユーザーが自分の生産データセットにアップグレードを適用することに決める場合などでは、必要でない場合がある。そのような判断は、例えば、ユーザーインターフェイスに対する表面的なアップグレードに関して、または、アップグレードが他のデータセットに関してすでに評価されている場合に行われ得る。
【００１７】
[017]次いで方法２００は段階２２５に進むことが可能であり、段階２２５でコンピューティングデバイス３００は、アップグレードが既存のコンポーネントおよび／またはデータセットと競合し得るかどうかを決定することが可能である。例えば複数のアップグレードルールが、既存のコンポーネントがアップグレードと非互換であるかどうか、ユーザーのデータが、不安定である、破損状態にある、もしくは、アップグレードに起因してデータ損失という結果になり得るフォーマットであるかどうか、および／または、アップグレードによりサポートされないカスタマイズオプション（例えば、データ表示テンプレートおよび／またはローカライズ／言語オプション）をユーザーが適用しているかどうかを評価することが可能である。そのような競合は、情報提供（例えば、一部のメニューオプションが移動したことをユーザーに情報提供すること）から、警告（例えば、ユーザーのデータが、アップグレードを開始する以前に保存されていない）にまで、エラー（例えば、特定のデータが、アップグレードの後に破損状態になり得る、および／またはアクセス不可能になり得る）にまでわたる異なるレベルに関連する場合がある。すべてのそのような競合は、ユーザーおよび／またはサーバー１２０の管理者によるレビューのためにログ記録され得る。
【００１８】
[018]アップグレード競合が段階２２５で検出されるならば、方法２００は段階２３０に進むことが可能であり、段階２３０でコンピューティングデバイス３００は、競合をユーザーに通知することが可能である。例えばコラボレーションアプリケーション１３０および／またはデータ処理アプリケーション１１５は、ディスプレイデバイス１４０上にダイアログボックスを表示して、ユーザーに競合に関する注意喚起をすることが可能である。本発明の実施形態に整合して、そのような通知は、アップグレードを進行させるためのユーザーの認証を要求する場合があり、および／または、ユーザーのデータの現在のセットに直接ではなく、ユーザーのデータ／環境のコピーにアップグレードが適用されることを推奨する場合がある。
【００１９】
[019]次いで方法２００は段階２３５に進むことが可能であり、段階２３５でコンピューティングデバイス３００は、データパーティション内の競合を修復することを試行することが可能である。例えばコラボレーションアプリケーション１３０は、ユーザーのデータに対する未保存の変更があればそれらを保存することが、および／または、新しいスキーマーに準拠するためにデータベース内のデータを再構築することを試行することが可能である。
【００２０】
[020]段階２３５で競合を修復することを試行した後に、または、競合が段階２２５で検出されなかったならば、方法２００は段階２４０に進むことが可能であり、段階２４０でコンピューティングデバイス３００は、ユーザーに関連するデータパーティション上で少なくとも１つのアップグレードを遂行することが可能である。例えば、新しいユーザーインターフェイスがユーザーに表示され得る、ならびに／または、データ処理アプリケーション１１５および／もしくはコラボレーションアプリケーション１３０の機能性が修正され得る。本発明の実施形態に整合して、サーバー１２０は、ユーザーのデータ／ユーザーインターフェイス／エクスペリエンスに対するアップグレードを遂行することが可能であり、一方でサーバー１２０のユーザーおよび／または他のユーザーは、コラボレーションアプリケーション１３０に関連するドキュメントおよび／またはデータを基に作業し続ける。このアップグレードは、ユーザーの元のデータセット上で、および／または、段階２２０で生成されたデータセットのコピー上で遂行され得る。
【００２１】
[021]次いで方法２００は段階２４５に進むことが可能であり、段階２４５でコンピューティングデバイス３００は、ユーザーにデータパーティションのアップグレードされたコピーへのリンクを提供することが可能である。例えばコラボレーションアプリケーション１３０は、ｗｅｂブラウザーによって、および／または、データ処理アプリケーション１１５を介して、コピーされたデータを表示するためにユニフォーム・リソース・ロケーター（ＵＲＬ）を提供することが可能である。このＵＲＬは、元のデータへのアクセスを提供し得る別のＵＲＬとは異なり得る。このことによってユーザーが、データおよび／またはユーザーインターフェイスのアップグレード前のバージョンをアップグレードされたバージョンと比較することが可能になり得る。上記で段階２２０に関して説明されたような、データセットのコピーが作製されなかった場合では、段階２４５はスキップされ得る。
【００２２】
[022]次いで方法２００は段階２５０に進むことが可能であり、段階２５０でコンピューティングデバイス３００は、アップグレードされたコピーに関するユーザーのフィードバックを受信することが可能である。例えばコラボレーションアプリケーション１３０は、データパーティションのアップグレードされたコピーをユーザーが承認するかどうかを決定することが可能である。そうであるならば、ユーザーに関連する元のデータパーティションは削除され得る。ユーザーは、正しくアップグレードされていない可能性がある、および／または、アップグレードにより破損状態になった可能性がある、ユーザーのデータの一部および／またはすべてを識別することもまた可能である。ユーザーは、コピー内のデータを訂正し、アップグレードされたバージョンを続けること、および／または、元の状態のデータへの変更を行い、アップグレードプロセスを再試行することが可能である。次いで方法２００は、段階２６０で終了し得る。
【００２３】
[023]本発明に整合する実施形態は、アップグレード制御チェックを提供するためのシステムを備え得る。システムは、メモリー記憶装置と、メモリー記憶装置に結合される処理ユニットとを備え得る。処理ユニットは、少なくとも１つのアップグレードが利用可能であることをユーザーに通知するように、ユーザーから少なくとも１つのアップグレードの選択物を受信するように、および、少なくとも１つのアップグレードがコンポーネントと競合するかどうかを決定するように動作可能であり得る。少なくとも１つのアップグレードがコンポーネントと競合しないと決定することに応答して、処理ユニットは、アップグレードを遂行するように動作可能であり得る。
【００２４】
[024]本発明に整合する別の実施形態は、アップグレード制御チェックを提供するためのシステムを備え得る。システムは、メモリー記憶装置と、メモリー記憶装置に結合される処理ユニットとを備え得る。処理ユニットは、少なくとも１つのアプリケーションコンポーネントのアップグレードを遂行するためのユーザーからの命令を受信するように、および、ユーザーに関連するデータのセットとの競合をアップグレードが含むかどうかを決定するように動作可能であり得る。ユーザーに関連するデータのセットとの競合をアップグレードが含むと決定することに応答して、処理ユニットは、ユーザーに関連するデータのセットを修復するように動作可能であり得る。処理ユニットは、ユーザーに関連するデータのセットのコピーを生成するように、データのセットのコピーにアップグレードを適用するように、ユーザーにデータのセットのアップグレードされたコピーへのアクセスを提供するように、ユーザーからデータのセットのアップグレードされたコピーの承認を受信するように、および、データの元のセットを削除するようにさらに動作可能であり得る。
【００２５】
[025]本発明に整合するさらに別の実施形態は、アップグレード制御チェックを提供するためのシステムを備え得る。システムは、メモリー記憶装置と、メモリー記憶装置に結合される処理ユニットとを備え得る。処理ユニットは、アプリケーションコンポーネントに対する少なくとも１つのアップグレードが利用可能であることをユーザーに通知するように、ユーザーから少なくとも１つのアップグレードの選択物を受信するように、ユーザーに関連するデータパーティションのコピーを生成するように、および、少なくとも１つのアップグレードに関連する複数のアップグレードルールの少なくとも１つが、アプリケーションコンポーネントの現在の態様とアプリケーションコンポーネントのアップグレードされた態様との間の競合を含むかどうかを決定するように動作可能であり得る。少なくとも１つのアップグレードに関連する複数のアップグレードルールの少なくとも１つが、アプリケーションコンポーネントの現在の態様とアプリケーションコンポーネントのアップグレードされた態様との間の競合を含むと決定することに応答して、処理ユニットは、競合をユーザーに通知するように、および、データパーティションのコピー内の競合を修復することを試行するように動作可能であり得る。処理ユニットは、ユーザーに関連するデータパーティションのコピー上で少なくとも１つのアップグレードを遂行するように、ユーザーにデータパーティションのアップグレードされたコピーへのリンクを提供するように、データパーティションのアップグレードされたコピーをユーザーが承認するかどうかを決定するように、および、アップグレードされたコピーをユーザーが承認すると決定することに応答して、ユーザーに関連する元のデータパーティションを削除するようにさらに動作可能であり得る。
【００２６】
[026]図３は、コンピューティングデバイス３００を含むシステムのブロック図である。本発明の実施形態に整合して、前述のメモリー記憶装置および処理ユニットは、図３のコンピューティングデバイス３００などのコンピューティングデバイス内に実装され得る。ハードウェアー、ソフトウェアー、またはファームウェアーの任意の適した組み合わせが、メモリー記憶装置および処理ユニットを実装するために使用され得る。例えばメモリー記憶装置および処理ユニットは、コンピューティングデバイス３００、または、コンピューティングデバイス３００と組み合わせた他のコンピューティングデバイス３１８の任意のものによって実装され得る。前述のシステム、デバイス、およびプロセッサーは例であり、他のシステム、デバイス、およびプロセッサーが、本発明の実施形態に整合して、前述のメモリー記憶装置および処理ユニットを備えることが可能である。さらにコンピューティングデバイス３００は、上記で説明されたような動作環境３００を備え得る。本明細書で説明される方法は、他の環境で動作することが可能であり、コンピューティングデバイス３００に限定されない。
【００２７】
[027]図３を参照すると、本発明の実施形態に整合するシステムは、コンピューティングデバイス３００などのコンピューティングデバイスを含み得る。基本構成ではコンピューティングデバイス３００は、少なくとも１つの処理ユニット３０２とシステムメモリー３０４とを含み得る。コンピューティングデバイスの構成およびタイプに応じて、システムメモリー３０４は、揮発性（例えばランダム・アクセス・メモリー（ＲＡＭ））、不揮発性（例えば読み取り専用メモリー（ＲＯＭ））、フラッシュメモリー、または任意の組み合わせを備え得るが、それらに限定されない。システムメモリー３０４は、オペレーティングシステム３０５、１つまたは複数のプログラミングモジュール３０６を含み得るとともに、コラボレーションアプリケーション１３０を含み得る。例えばオペレーティングシステム３０５は、コンピューティングデバイス３００の動作を制御するのに適したものであり得る。さらに本発明の実施形態は、グラフィックスライブラリー、他のオペレーティングシステム、または任意の他のアプリケーションプログラムと関連して実践され得るものであり、いかなる個別のアプリケーションまたはシステムにも限定されない。この基本構成が、破線３０８内部のコンポーネントにより図３に例示される。
【００２８】
[028]コンピューティングデバイス３００は、追加的な特徴または機能性を有し得る。例えばコンピューティングデバイス３００は、例えば磁気ディスク、光ディスク、またはテープなどの追加的なデータ記憶デバイス（リムーバブルおよび／または非リムーバブル）もまた含み得る。そのような追加的な記憶装置が、リムーバブル記憶装置３０９および非リムーバブル記憶装置３１０により図３に例示される。コンピューティングデバイス３００は、通信接続３１６もまた包含し得るものであり、通信接続３１６によってデバイス３００は、分散コンピューティング環境内のネットワーク、例えばイントラネットまたはインターネットを介してなどで、他のコンピューティングデバイス３１８と通信することが可能になり得る。通信接続３１６は通信媒体の１つの例である。
【００２９】
[029]本明細書ではコンピューター可読媒体という用語は、コンピューター記憶媒体を含み得る。コンピューター記憶媒体は、コンピューター可読命令、データ構造、プログラムモジュール、または他のデータなどの情報の記憶のために、任意の方法または技術で実装される、揮発性および不揮発性の、リムーバブルおよび非リムーバブルの媒体を含み得る。システムメモリー３０４、リムーバブル記憶装置３０９、および非リムーバブル記憶装置３１０はすべて、コンピューター記憶媒体例（すなわちメモリー記憶装置）である。コンピューター記憶媒体は、情報を記憶するために使用され得る、および、コンピューティングデバイス３００によりアクセスされ得る、ＲＡＭ、ＲＯＭ、電気的消去可能読み取り専用メモリー（ＥＥＰＲＯＭ）、フラッシュメモリーもしくは他のメモリー技術、ＣＤ−ＲＯＭ、デジタル・バーサタイル・ディスク（ＤＶＤ）もしくは他の光記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶デバイス、または任意の他の媒体を含み得るが、それらに限定されない。任意のそのようなコンピューター記憶媒体は、デバイス３００の一部であり得る。コンピューティングデバイス３００は、キーボード、マウス、ペン、サウンド入力デバイス、タッチ入力デバイス等のような入力デバイス（複数可）３１２をさらに有し得る。ディスプレイ、スピーカー、プリンター等のような出力デバイス（複数可）３１４もまた含まれ得る。前述のデバイスは例であり、他のものが使用される場合がある。
【００３０】
[030]本明細書ではコンピューター可読媒体という用語は、通信媒体もまた含み得る。通信媒体は、キャリアー波または他のトランスポート機構などの変調されたデータ信号の形で、コンピューター可読命令、データ構造、プログラムモジュール、または他のデータにより実施され得るものであり、任意の情報配信媒体を含む。用語「変調されたデータ信号」は、１つまたは複数の特性が、信号内に情報をエンコードするような様式でセットまたは変更される信号を表し得るものである。例として、および限定としてではなく、通信媒体は、有線ネットワークまたは直接有線接続などの有線媒体、ならびに、アコースティック、無線周波数（ＲＦ）、赤外線、および他のワイヤレス媒体などのワイヤレス媒体を含み得る。
【００３１】
[031]上記で述べられたように、オペレーティングシステム３０５を含めて、いくつかのプログラムモジュールおよびデータファイルがシステムメモリー３０４内に記憶され得る。処理ユニット３０２上で実行する間、プログラミングモジュール３０６は、上記で説明されたようなプロセスおよび／または方法を遂行することが可能である。前述のプロセスは例であり、処理ユニット３０２は他のプロセスを遂行することが可能である。本発明の実施形態によって使用され得る他のプログラミングモジュールは、電子メールおよび連絡先アプリケーション、文書処理アプリケーション、スプレッドシートアプリケーション、データベースアプリケーション、スライドプレゼンテーションアプリケーション、描画またはコンピューター支援アプリケーションプログラム等を含み得る。
【００３２】
[032]一般に本発明の実施形態に整合して、プログラムモジュールは、個別のタスクを遂行し得る、または個別の抽象データ型を実装し得る、ルーチン、プログラム、コンポーネント、データ構造、および他のタイプの構造を含み得る。さらに本発明の実施形態は、ハンドヘルドデバイス、マルチプロセッサーシステム、マイクロプロセッサーベースまたはプログラマブルな消費者向け電気機器、ミニコンピューター、メインフレームコンピューター等々を含む、他のコンピューターシステム構成によって実践され得る。本発明の実施形態は、通信ネットワークによってリンクされるリモート処理デバイスによりタスクが遂行される、分散コンピューティング環境内でもまた実践され得る。分散コンピューティング環境内でプログラムモジュールは、ローカルおよびリモートの両方のメモリー記憶デバイス内に配置され得る。
【００３３】
[033]さらに本発明の実施形態は、別個の電子的要素を備える電気回路、論理ゲートを包含するパッケージ化もしくは集積された電子チップ、マイクロプロセッサーを利用する回路内で、または、電子的要素もしくはマイクロプロセッサーを包含する単一のチップ上で実践され得る。本発明の実施形態は、力学、光学、流体、および量子の技術を含むが、それらに限定されない、例えばＡＮＤ、ＯＲ、およびＮＯＴなどの論理演算を遂行可能な他の技術を使用してもまた実践され得る。加えて本発明の実施形態は、汎用コンピューター内部で、または、任意の他の回路もしくはシステム内で実践され得る。
【００３４】
[034]例えば本発明の実施形態は、コンピュータープロセス（方法）、コンピューティングシステムとして、または、コンピュータープログラム製品もしくはコンピューター可読媒体などの製品（ａｒｔｉｃｌｅ  ｏｆ  ｍａｎｕｆａｃｔｕｒｅ）として実装され得る。コンピュータープログラム製品は、コンピューターシステムにより可読であり、コンピュータープロセスを実行するための命令のコンピュータープログラムをエンコードする、コンピューター記憶媒体であり得る。コンピュータープログラム製品は、コンピューティングシステムにより可読であり、コンピュータープロセスを実行するための命令のコンピュータープログラムをエンコードする、キャリアー上の伝達される信号でもあり得る。したがって本発明は、ハードウェアーの形で、および／または、ソフトウェアー（ファームウェアー、常駐ソフトウェアー、マイクロコード等を含む）の形で実施され得る。換言すれば本発明の実施形態は、命令実行システムによる、または命令実行システムに関しての使用のために、コンピューター使用可能またはコンピューター可読のプログラムコードが媒体内で実施される、コンピューター使用可能またはコンピューター可読の記憶媒体上のコンピュータープログラム製品の形式をとり得る。コンピューター使用可能またはコンピューター可読の媒体は、命令実行システム、装置、もしくはデバイスによる、または、命令実行システム、装置、もしくはデバイスに関しての使用のために、プログラムを包含、記憶、通信、伝達、またはトランスポートし得る任意の媒体であり得る。
【００３５】
[035]コンピューター使用可能またはコンピューター可読の媒体は、例えば、電子、磁気、光学、電磁気、赤外線、または半導体の、システム、装置、デバイス、または伝達媒体であり得るが、それらに限定されない。より具体的なコンピューター可読媒体例（網羅的ではないリスト）、コンピューター可読媒体は以下のもの、すなわち、１つまたは複数の配線を有する電気接続、ポータブル・コンピューター・ディスケット、ランダム・アクセス・メモリー（ＲＡＭ）、読み取り専用メモリー（ＲＯＭ）、消去可能プログラマブル読み取り専用メモリー（ＥＰＲＯＭまたはフラッシュメモリー）、光ファイバー、および、ポータブル・コンパクト・ディスク読み取り専用メモリー（ＣＤ−ＲＯＭ）を含み得る。コンピューター使用可能またはコンピューター可読の媒体は、プログラムが印刷される紙または別の適した媒体である場合さえあり、その理由はプログラムが、例えば紙もしくは他の媒体の光学スキャンによって電子的にキャプチャーされ、次いでコンパイルされ、解釈され、または適した様式で別様に処理され、必要であるならば、次いでコンピューターメモリー内に記憶され得るからというものであるということに留意されたい。
【００３６】
[036]本発明の実施形態は、システム・オン・チップ（ＳＯＣ）によって実践され得るものであり、その場合、上記で例示されたコンポーネントの各々および／または多くは、単一の集積回路上に集積され得る。そのようなＳＯＣデバイスは、１つまたは複数の処理ユニット、グラフィックスユニット、通信ユニット、システム仮想化ユニット、および様々なアプリケーション機能性を含み得るものであり、それらのユニットおよび機能性のすべては、単一の集積回路としてチップ基板上に集積され得る（または「書き込まれ得る」）。ＳＯＣによって動作する場合、動作環境１００の任意のコンポーネントを仕立てること、および／または、そのコンポーネントと対話することに関する本明細書で説明された機能性は、単一の集積回路（チップ）上でコンピューティングデバイス／システムの他のコンポーネントとともに集積される特定用途向け論理によって動作し得る。
【００３７】
[037]例えば本発明の実施形態は、本発明の実施形態による方法、システム、およびコンピュータープログラム製品の、ブロック図および／または動作例示を参照して上記で説明されている。ブロック内に記される機能／行為は、任意のフローチャートに示されるような順序から外れて行われる場合がある。例えば、必然的に含まれる機能性／行為に応じて、連続して示される２つのブロックが実際には実質的に並行的に実行される場合があり、またはブロックは時には逆の順序で実行される場合がある。
【００３８】
[038]本発明の特定の実施形態が説明されたが、他の実施形態が存在し得る。さらに本発明の実施形態は、メモリーおよび他の記憶媒体内に記憶されたデータに関連するように説明されたが、データは、ハードディスク、フロッピー(登録商標)ディスク、もしくはＣＤ−ＲＯＭのような２次記憶デバイス、インターネットからのキャリアー波、または、他の形式のＲＡＭもしくはＲＯＭなどの、他のタイプのコンピューター可読媒体上に記憶される、またはそれらのコンピューター可読媒体から読み出される場合もある。さらに、開示された方法の段階は、本発明から逸脱することなく、段階を並べ替えること、および／または、段階を挿入もしくは削除することを含めて、任意の様式で修正され得る。
【００３９】
[039]本明細書に含まれるコードにおいての著作権を含むすべての権利は、出願人に帰属し、出願人の所有権である。出願人は、本明細書に含まれるコードにおいてのすべての権利を保持および留保し、付与される特許の再現に関してのみであり、他の目的に対してではなく、材料を再現するための許可を付与する。
【００４０】
[040]本発明の特定の実施形態が説明されたが、他の実施形態が存在し得る。本明細書は例を含むが、本発明の範囲は、以下の特許請求の範囲により指示される。さらに本明細書は、構造的特徴および／または方法論的行為に対しての具体的な文言で説明されたが、特許請求の範囲は、上記で説明された特徴または行為に限定されない。むしろ、上記で説明された具体的な特徴および行為は、本発明の実施形態に対する例として開示されるものである。
【図１】
2014532948.tif 000003
【図２】
2014532948.tif 000004
【図３】
2014532948.tif 000005
【国際調査報告】
2014532948.tif 000006
2014532948.tif 000007