(57)【要約】  自動化されたデバイスウェブログ（「ブログ」）作成が説明される。コンピューティングデバイスに関連するデータが、自動的に収集され、サーバに対して送信される。収集されるデータは、それだけには限定されないが、コンフィギュレーションデータ、信頼性データ、ヘルスデータ、パフォーマンスデータ、ユーザにより入力される問題レポートなどを含むことができる。サーバは、コンピューティングデバイスに関連するユーザに対するプレゼンテーションのためのブログとしてデータをフォーマットし、そのコンピューティングデバイスに対してブログが作成される。
2009519541.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータにより実施される方法であって、
リモートコンピューティングデバイスに関連するデータを受信するステップ（９０２）と、
ユーザに対するプレゼンテーションのために前記データを自動的にフォーマットするステップ（９０８）と
を含むことを特徴とする方法。
【請求項２】
ユーザに対するプレゼンテーションのための前記データを自動的にフォーマットするステップは、時間順のウェブログ（ブログ）として前記データをフォーマットするステップを含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記リモートコンピューティングデバイスに関連する前記データは、コンピューティングデバイスパフォーマンスデータ、コンピューティングデバイスヘルスデータ、コンピューティングデバイス信頼性データ、コンピューティングデバイスコンフィギュレーションデータ、またはソフトウェアデータのうちの少なくとも１つを含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記コンピューティングデバイスパフォーマンスデータは、コンピュータブート時間、メモリ速度、ディスク速度、プロセッサ速度、ネットワーク速度、またはビデオカード速度のうちの少なくとも１つを含むことを特徴とする請求項３に記載の方法。
【請求項５】
前記コンピューティングデバイスヘルスデータは、アンチウイルスステータス、ファイアウォールステータス、ファイアウォールポリシーアップデートステータス、アンチウイルスシグネチャアップデートステータス、アンチスパイウェアステータス、データバックアップステータス、またはディスクフラグメンテーションステータスのうちの少なくとも１つを含むことを特徴とする請求項３に記載の方法。
【請求項６】
前記コンピューティングデバイス信頼性データは、コンピューティングデバイスのリブートの数、リブートの理由、コンピューティングデバイスのクラッシュの数、クラッシュの理由、ディスクヘルスステータスデータ、ＳＭＡＲＴディスク故障通知、可能性のある無効クラスタレイアウト通知、または不良ディスク通知のうちの少なくとも１つを含むことを特徴とする請求項３に記載の方法。
【請求項７】
前記コンピューティングデバイスコンフィギュレーションデータは、マザーボードブランド、マザーボードモデル、中央演算処理装置ブランド、中央演算処理装置モデル、マウスブランド、マウスモデル、キーボードブランド、キーボードモデル、ビデオカードブランド、またはビデオカードモデルのうちの少なくとも１つを含むことを特徴とする請求項３に記載の方法。
【請求項８】
前記ソフトウェアデータは、オペレーティングシステムデータ、オペレーティングシステムバージョン、オペレーティングシステムパッチステータス、ソフトウェアパッチインストレーションステータス、プロダクトアップデートバージョンステータス、ソフトウェアインストールレポート、ソフトウェアアンインストールレポート、またはスタートグループプログラムリストのうちの少なくとも１つを含むことを特徴とする請求項３に記載の方法。
【請求項９】
前記リモートコンピューティングデバイスに関連する前記データは、ユーザにより入力される問題レポートを含むことを特徴とする請求項１に記載の方法。
【請求項１０】
前記リモートコンピューティングデバイスに関連する前記データに対するアクセス権限を与えるべきユーザを示す許可データを受信するステップと、
前記リモートコンピューティングデバイスに関連する前記データにアクセスする要求を前記ユーザから受信するステップと、
前記リモートコンピューティングデバイスに関連する前記データに対するアクセス権限を前記ユーザに提供するステップと
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項１１】
前記リモートコンピューティングデバイスに関連する通知要求を識別するステップと、
通知を自動的に生成するステップと、
前記通知要求に基づいて前記通知を送信するステップと
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項１２】
前記通知要求は、前記リモートコンピューティングデバイスに関連するデータがアップデートされるときに、通知されるべきユーザを識別することを特徴とする請求項１１に記載の方法。
【請求項１３】
前記通知を送信するステップは、電子メール、インスタントメッセージ、ダイレクトソケット通信、ＨＴＴＰポーリング応答、ＸＭＬウェブサービスポーリング応答、自動化電話コール、電話テキストメッセージ、ポケットベルメッセージ、またはリアリーシンプルシンディケーション（ＲＳＳ）メッセージのうちの少なくとも１つを送信するステップを含むことを特徴とする請求項１１に記載の方法。
【請求項１４】
リモートコンピューティングデバイスに関連するデータを受信するように構成されるデバイス履歴データ収集サービス（７１０）と、
前記リモートコンピューティングデバイスに関連する前記データに対するアクセス権限が与えられるべき１人または複数のユーザを識別するデータを保持するように構成されるユーザ許可データストア（７１６）と、
前記１人または複数のユーザのうちの任意の者に対するプレゼンテーションのための前記受信データをフォーマットするように構成されるブログサービス（７１２）と
を備えることを特徴とするウェブベースのシステム。
【請求項１５】
前記デバイス履歴データ収集サービスは、さらに
前記リモートコンピューティングデバイスに関連する前記データに対するアクセス権限が与えられるべきユーザを識別するユーザ許可データを受信し、
前記受信されるユーザ許可データに基づいて前記ユーザ許可データストアをアップデートする
ように構成されることを特徴とする請求項１４に記載のウェブベースのシステム。
【請求項１６】
前記デバイス履歴データ収集サービスは、さらに
前記リモートコンピューティングデバイスに関連するデータが、アップデートされるときに通知されるべきユーザを識別する通知要求を受信するように構成されることを特徴とする請求項１４に記載のウェブベースのシステム。
【請求項１７】
前記ブログサービスは、さらに前記リモートコンピューティングデバイスに関連するデータがアップデートされていることをユーザに自動的に通知するように構成されることを特徴とする請求項１４に記載のウェブベースのシステム。
【請求項１８】
コンピュータ読取り可能命令を含む１つまたは複数のコンピュータ読取り可能媒体であって、前記命令は、実行されるときに、コンピュータシステムに
リモートコンピューティングデバイスのパフォーマンス、ヘルス、信頼性、またはコンフィギュレーションに関連するデータを受信させ（９０２）、
前記受信データをブログとしてフォーマットさせる（９０８）ことを特徴とする１つまたは複数のコンピュータ読取り可能媒体。
【請求項１９】
実行されるときに、前記コンピュータシステムに、さらに
前記ブログに対するアップデートについて通知されるべきユーザを識別するように、
ブログアップデート通知を生成させ、
前記ブログアップデート通知を前記ユーザに対して送信させるコンピュータ読取り可能命令をさらに含むことを特徴とする請求項１８に記載の１つまたは複数のコンピュータ読取り可能媒体。
【請求項２０】
実行されるときに、前記コンピュータシステムに
ユーザからの前記ブログにアクセスする要求を受信させ、
前記ユーザが、前記ブログにアクセスする許可を有するか否かを判断させ、
前記ユーザが、前記ブログにアクセスする許可を有する場合に、前記ユーザに前記ブログに対するアクセス権限を提供させるコンピュータ読取り可能命令をさらに含むことを特徴とする請求項１８に記載の１つまたは複数のコンピュータ読取り可能媒体。
【発明の詳細な説明】
【背景技術】
【０００１】
コンピュータは、コンピュータを用いて生ずる可能性のある問題の診断、および訂正に技術的に堪能でない多くの人々によって使用される。さらに、多くのコンピュータユーザは、アンチウイルスソフトウェア（ａｎｔｉ−ｖｉｒｕｓ  ｓｏｆｔｗａｒｅ）のようなアプリケーションをインストールすること、またはアップグレードすること、あるいはファイアウォール設定のようなセキュリティの設定を調整することを気楽にすることさえできない。これらのタイプのユーザのうちの多くは、これらのタイプの問題では、それらのユーザを支援する、もっと知識の豊富な友人、または家族を頼りにしている。
【発明の開示】
【発明が解決しようとする課題】
【０００２】
技術支援を提供する個人が、ソフトウェアインストレーション履歴（ｓｏｆｔｗａｒｅ  ｉｎｓｔａｌｌａｔｉｏｎ  ｈｉｓｔｏｒｙ）、パフォーマンス履歴（ｐｅｒｆｏｒｍａｎｃｅ  ｈｉｓｔｏｒｙ）、デバイスインストレーション／除去履歴（ｄｅｖｉｃｅ  ｉｎｓｔａｌｌａｔｉｏｎ／ｒｅｍｏｖａｌ  ｈｉｓｔｏｒｙ）、現在のコンピュータの問題などのデータにアクセスすることは、非常に役に立つ可能性がある。残念ながら、コンピュータの全体的な履歴と、その上で実行されるアクティビティ（ａｃｔｉｖｉｔｙ）を取得する中心となる場所（ｃｅｎｔｒａｌ  ｐｌａｃｅ）は存在しない。さらに、技術支援を提供する個人が、電話上でコンピュータユーザを助けようと試みている場合には、何らかのこの助けになる情報を取り出すために、コンピュータユーザに必要なステップを歩ませる（ｗａｌｋ  ｔｈｒｏｕｇｈ）ことは、非常に難しい可能性がある。
【課題を解決するための手段】
【０００３】
この概要は、詳細な説明において以下でさらに説明される簡略化された形式で、概念の選択を導入するために提供される。この概要は、特許請求の範囲の主題の主要な特徴または不可欠な特徴を識別するようには意図されず、また特許請求の範囲の主題の範囲を決定する際における助けとして使用されるようにも意図されてはいない。
【０００４】
後述する自動化デバイスブログ作成（ａｕｔｏｍａｔｅｄ  ｄｅｖｉｃｅ  ｂｌｏｇ  ｃｒｅａｔｉｏｎ）が、説明される。コンピューティングデバイス（ｃｏｍｐｕｔｉｎｇ  ｄｅｖｉｃｅ）に関連するデータ（例えば、パフォーマンスデータ（ｐｅｒｆｏｒｍａｎｃｅ  ｄａｔａ）、コンフィギュレーションデータ（ｃｏｎｆｉｇｕｒａｔｉｏｎ  ｄａｔａ）、ヘルスデータ（ｈｅａｌｔｈ  ｄａｔａ）、または信頼性データ）が、自動的に収集され、アップロードされる。問題記述など、ユーザにより入力されたデータもまた、収集されアップロードされる。コンピューティングデバイスに関連する収集されたデータは、ウェブログ（ｗｅｂ  ｌｏｇ）（「ブログ（ｂｌｏｇ）」）として自動的にフォーマットされ、そのときにはこのブログは、コンピューティングデバイスのユーザによってアクセスされ、簡単に読み取られることができる。コンピューティングデバイスのユーザは、他のユーザに、デバイスブログ（ｄｅｖｉｃｅ  ｂｌｏｇ）を閲覧して、例えばそのユーザがコンピューティングデバイスにより有している問題をトラブルシューティングする（ｔｒｏｕｂｌｅｓｈｏｏｔ）際に支援するための他のユーザの許可を与えることもできる。
【発明を実施するための最良の形態】
【０００５】
以下に説明されるような自動化デバイスブログ作成は、コンピューティングデバイスに関連する履歴データが、ユーザに対するプレゼンテーションのために自動的に収集され、自動的にフォーマットされるメカニズムを提供する。ブログは、一般的にウェブベースのジャーナル、またはある種の日記と考えられ、ここではユーザ（ブログ所有者）が、エントリ（ｅｎｔｒｙ）を書き込む。次いでエントリは、一般的に時間的な順序で表示される。自動的に作成されるデバイスブログは、本明細書において説明されるように、コンピューティングデバイスに関連する様々なタイプのデータを読みやすいフォーマットで提供する。データの一部分は、時間的な順序で提示することができるが、ブログのある一部分は、時間順でないデータを含むこともできる。コンピューティングデバイスに関連する様々なタイプの履歴データは、ブログを経由したプレゼンテーションのために収集することができる。そのような履歴データは、それだけには限定されないが、パフォーマンスデータと、ヘルスデータと、信頼性データと、コンフィギュレーションデータと、ユーザによりサブミットされたデータとを含むことができる。
【０００６】
以下の議論は、自動化デバイスブログ作成を対象としている。自動化デバイスブログ作成の特徴は、任意の数の異なるコンピューティング環境において実施することができるが、それらの特徴は、以下の例示の実施形態の場合について説明される。
【０００７】
図１は、自動化デバイスブログ作成を実施することができる例示のネットワーク環境１００を示している。コンピューティングデバイス１０２は、デバイス履歴データ（ｄｅｖｉｃｅ  ｈｉｓｔｏｒｙ  ｄａｔａ）１０４を収集し、インターネット１０８などのネットワークを経由してデバイス履歴データ１０４をウェブサーバ（ｗｅｂ  ｓｅｒｖｅｒ）１０６へと送信する。ウェブサーバ１０６は、ブログとしての後でのプレゼンテーションのためにデバイス履歴データ１０４を保持する。例えば、コンピューティングデバイス１０２のユーザ１１０は、インターネット１０８を経由してブログ要求１１２をウェブサーバ１０６へとサブミットすることができる。ブログ要求１１２に応じて、ウェブサーバ１０６は、インターネット１０８を経由してデバイスブログ１１４をコンピューティングデバイス１０２へと送信する。デバイスブログ１１４は、読みやすいフォーマットで、デバイス履歴データ１０４を提示する。一例のデバイスブログについては、図５を参照して以下でさらに詳細に説明される。
【０００８】
ウェブサーバ１０６は、単一のウェブサーバとして示されるが、１つまたは複数のサーバの組合せとして実施することもできる。例えば、デバイス履歴データ１０４は、最初にサーバ（必ずしもウェブサーバとは限らない）へとアップロードされることができ、このサーバは、そのデータをブログとして保持し、フォーマットするように構成される。次いでブログは、（ウェブサーバとして実施される）第２のサーバへと送信されることができ、この第２のサーバは、ブログ要求１１２を受信し、またそれに応じてブログを供給する（ｓｅｒｖｅ）ように構成される。したがって、このドキュメント全体を通して、ウェブサーバに対する言及は、説明される機能を提供するように構成することができる任意のサーバ、またはサーバの組合せを意味するように意図される。
【０００９】
図２は、１つのコンピューティングデバイスに関連するブログが、別のコンピューティングデバイスを経由してユーザによってアクセスされることができる例示のネットワーク環境２００を示している。図１の場合と同様に、コンピューティングデバイス１０２は、デバイス履歴データ１０４を収集し、インターネット１０８を経由してデバイス履歴データ１０４をウェブサーバ１０６へと送信する。ウェブサーバ１０６は、ブログとしての後でのプレゼンテーションのためにデバイス履歴データ１０４を保持する。例示の実施形態においては、ブログ要求２０２は、インターネット１０８を経由してコンピューティングデバイス２０４からウェブサーバ１０６へとサブミットされる。ブログ要求２０２を開始したユーザ２０６が、ブログを閲覧することが認可される場合、そのときにはブログ要求２０２に応じて、ウェブサーバ１０６は、インターネット１０８を経由してデバイスブログ１１４をコンピューティングデバイス２０４へと送信する。
【００１０】
例示の一実施形態においては、コンピューティングデバイス１０２の単一ユーザが、コンピューティングデバイス１０２の所有者として最初に確立される。コンピューティングデバイス１０２の所有者は、ブログに対するデフォルトアクセス権限（ｄｅｆａｕｌｔ  ａｃｃｅｓｓ）が与えられ、ブログに対する（恒久的または一時的な）アクセス権限が与えられることもできる任意の数の他のユーザを指定することができる。
【００１１】
図３は、ブログアップデート通知が、デバイスブログがアップデートされるときに自動的に生成される例示のネットワーク環境３００を示している。図１におけると同様に、コンピューティングデバイス１０２は、デバイス履歴データ１０４を収集し、インターネット１０８を経由してデバイス履歴データ１０４をウェブサーバ１０６へと送信する。ウェブサーバ１０６は、ブログとしての後でのプレゼンテーションのためにデバイス履歴データ１０４を保持する。例示の実施形態においては、ブログアップデート通知（ｂｌｏｇ  ｕｐｄａｔｅ  ｎｏｔｉｆｉｃａｔｉｏｎ）３０２が、生成され、ユーザ３０４に対して送信される。そのような実施形態により、ユーザ３０４は、コンピューティングシステム１０２における任意の変化について通知されることができるようになる。例えば、ユーザ３０４は、特定の会社についての技術サポートスタッフメンバ（ｔｅｃｈｎｉｃａｌ  ｓｕｐｐｏｒｔ  ｓｔａｆｆ  ｍｅｍｂｅｒ）とすることができ、またコンピューティングデバイス１０２は、ユーザ３０４がサポートを提供する会社のシステムとすることができる。代わりに、コンピューティングデバイス１０２は、パーソナルコンピュータとすることもでき、またユーザ３０４は、コンピュータをモニタし、インストールされるべき任意のアップデートを推奨することに合意している、ユーザ１１０の友人とすることもできる。
【００１２】
ウェブサーバ１０６は、幾通りもの方法でブログアップデート通知３０２を配信するように実施することができる。例えば、ブログアップデート通知３０２は、電子メールメッセージとして、インスタントメッセージ（ｉｎｓｔａｎｔ  ｍｅｓｓａｇｅ）として、あるいはリアリーシンプルシンディケーション（ｒｅａｌｌｙ  ｓｉｍｐｌｅ  ｓｙｎｄｉｃａｔｉｏｎ）（ＲＳＳ）などの加入サービスを経由して配信することができる。
【００１３】
図４は、自動化デバイスブログ作成が、コンピューティングデバイスの集まりについて実施することができる例示のネットワーク環境４００を示している。その例示の例においては、コンピューティングデバイス４０２（１）、４０２（２）、．．．、および４０２（Ｎ）は、いくつかの点で関連している。例えば、それらのコンピューティングデバイスは各々、同じユーザによって所有され、動作させられてもよく、あるいは特定のローカルエリアネットワーク（ｌｏｃａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ）に接続されていてもよい。デバイス履歴データは、インターネット４０４を経由してコンピューティングデバイス４０２の各々からウェブサーバ４０６へとアップロードされる。例えば、デバイス履歴データ４０８（１）は、コンピューティングデバイス４０２（１）からアップロードされ、デバイス履歴データ４０８（２）は、コンピューティングデバイス４０２（２）からアップロードされ、デバイス履歴データ４０８（Ｎ）は、コンピューティングデバイス４０２（Ｎ）からアップロードされる。ウェブサーバ４０６は、コンピューティングデバイスのおのおのからデバイス履歴データを集め、デバイスブログ４１０を生成し、このデバイスブログは、読みやすいフォーマットで、関連したコンピューティングデバイス４０２のすべてについての集められた履歴データを提供するようにフォーマットされる。そのような実施形態は、例えばホームネットワーク環境またはビジネスネットワーク環境の内部の多くのデバイスについての技術サポートを提供する個人にとって非常に有用なものとすることができる。
【００１４】
また図４に示されるように、ブログが自動的に作成することができるコンピューティングデバイスは、パーソナルコンピュータだけには限定されない。むしろ、ブログは、それだけには限定されないが、パーソナルコンピュータ、ラップトップコンピュータ、サーバコンピュータシステム、ポータブルコンピューティングデバイス、携帯情報端末（ｐｅｒｓｏｎａｌ  ｄｉｇｉｔａｌ  ａｓｓｉｓｔａｎｔ）（ＰＤＡ）、携帯電話、ポケットＰＣ、および他の任意のタイプのコンピューティングデバイスを含めて、任意のタイプのコンピューティングデバイスについて自動的に作成されることができる。任意のタイプのインターネット機能の有効なコンピューティングデバイスは、自動化デバイスブログ作成をサポートするように構成することができる。さらに、インターネット機能が有効でないコンピューティングデバイスもまた、そのデバイスが、インターネット可能にされているコンピューティングデバイスに接続され、それに対してデータを送信することができる場合には、自動化デバイスブログ作成をサポートするように構成することができる。例えば、インターネット可能にされていないＰＤＡは、デバイス履歴データを収集するように構成することができる。そのデバイス履歴データは、次いでＰＤＡシンチングオペレーション（ＰＤＡ  ｓｙｎｃｈｉｎｇ  ｏｐｅｒａｔｉｏｎ）中にパーソナルコンピュータに対してアップロードされることができる。次いでパーソナルコンピュータは、ＰＤＡに関連するブログの作成のためにＰＤＡのためのデバイス履歴データをアップロードすることができる。
【００１５】
図５は、本明細書中に説明されるように自動的に生成することができる例示のデバイスブログ５００の一部分を示している。例示のデバイスブログ５００は、ウェブページ（ｗｅｂ  ｐａｇｅ）（または複数のウェブページ）として提示され、デバイス識別エリア５０２、メニューエリア（ｍｅｎｕ  ａｒｅａ）５０４、およびブログ詳細エリア５０６を含んでいる。デバイス識別エリア５０２は、ブログが作成されているコンピューティングデバイスに関連する識別する情報をリストアップする。メニューエリア５０４は、ブログの他の一部分に対するリンクを含んでおり、このブログの他の一部分は、デバイス履歴データの一部分を異なるフォーマットで表示することができる。ブログ詳細エリア５０６は、デバイス履歴データから生成されるブログエントリ（ｂｌｏｇ  ｅｎｔｒｙ）をリストアップする。例えば、ブログエントリ５０８は、２００５年７月２５日にコンピューティングデバイスが、ヘルススコア（ｈｅａｌｔｈ  ｓｃｏｒｅ）を報告したことを示す。エントリの詳細は、デバイスファイアウォール（ｄｅｖｉｃｅ  ｆｉｒｅｗａｌｌ）がターンオンされていないことと、何らかのデータがバックアップされていないことを示す。ブログエントリ５１０は、７月２６日にユーザ（すなわち、「トビー（Ｔｏｂｙ）」）が、デバイスのビデオドライバ（ｖｉｄｅｏ  ｄｒｉｖｅｒ）がクラッシュしていることを報告したことを示す。ブログエントリ５１０は、報告された問題に関連するより多くの情報を含むブログの別のページに対するリンク５１２を含んでいる。他のページは、例えばユーザが、問題を診断し、またはそれを訂正することを助けるためにデバイスからの様々なリアルタイム統計データを要求することを可能にする一部のインタラクティブユーザインターフェース要素（ｉｎｔｅｒａｃｔｉｖｅ  ｕｓｅｒ  ｉｎｔｅｒｆａｃｅ  ｅｌｅｍｅｎｔ）を含むことができる。
【００１６】
メニューエリア５０４に戻ると、問題のリンクを選択することにより、ユーザがサブミットした問題のリストを提示する別のウェブページを表示させることができる。同様に、システムサマリーリンク（ｓｙｓｔｅｍ  ｓｕｍｍａｒｙ  ｌｉｎｋ）を選択することは、コンピューティングデバイスに関連する最新の収集されたステータスデータ（ｓｔａｔｕｓ  ｄａｔａ）をリストアップする別のウェブページを表示させることができる。そのようなステータスデータは、例えばインストールされた任意のファイアウォールソフトウェア、アンチウイルスソフトウェア、アンチスパイウェアソフトウェア（ａｎｔｉｓｐｙｗａｒｅ  ｓｏｆｔｗａｒｅ）についての現在のステータスを含むことができる。リストリンクを選択することにより、任意の数のデータリストを含むさらに別のウェブページを表示させることができ、このデータリストは、それだけには限定されないが、最後の５回のクラッシュ／ハング（ｈａｎｇ）のリスト、ユーザにより報告される問題のリスト、システムブート時間のリスト、マシン上にインストールされたソフトウェアのリスト、および／または自動スタートアップのために構成されるソフトウェアのリストを含むことができる。デバイスブログ５００は、今すぐ更新ボタン（ｕｐｄａｔｅ  ｎｏｗ  ｂｕｔｔｏｎ）５１４を含むこともできる。今すぐ更新ボタン５１４は、選択されるときに、たとえコンピューティングデバイスが、現在はデータをアップロードするようにスケジュールされていないとしても、ブログに関連するコンピューティングデバイスが、データアップロード（ｄａｔａ  ｕｐｌｏａｄ）を実行することをウェブサーバに要求させる。このようにして、ブログは、使用可能な最新データでアップデートすることができる。これは、ユーザがコンピューティングデバイスに対する変更を行い、次いでそれらの変更がコンピューティングデバイスのステータスに如何に影響を及ぼしているかを判断するためにブログをアップデートすることができるという点において、ユーザが設定を修正し、または問題を訂正しようと試みているときに有用とすることができる。
【００１７】
図６は、自動化デバイスブログ作成をサポートするように構成される例示のコンピューティングデバイス６００の選択コンポーネントを示している。コンピューティングデバイス６００は、プロセッサ６０２、ネットワークインターフェース（ｎｅｔｗｏｒｋ  ｉｎｔｅｒｆａｃｅ）６０４、およびメモリ６０６を含んでいる。ネットワークインターフェース６０４は、コンピューティングデバイス６００がインターネットを経由してウェブサーバにデータを送信することを可能にする。代わりに、ネットワークインターフェース６０４を有するのではなく、コンピューティングデバイス６００は、コンピューティングデバイス６００が、ネットワークインターフェースを含む別のタイプのコンピューティングデバイスと通信することを可能にする別のタイプのインターフェースを有することもできる。オペレーティングシステム６０８と、デバイス履歴データ収集アプリケーション６１０と、任意の数の他のアプリケーション６１２が、メモリ６０６に記憶され、プロセッサ６０２上で実行される。メモリ６０６は、それだけには限定されないが、ランダムアクセスメモリ（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）（ＲＡＭ）、ハードディスク、または着脱可能メモリ媒体など、任意のタイプまたは組合せのメモリを表す。
【００１８】
例示のデバイス履歴データ収集アプリケーション６１０は、ユーザインターフェースモジュール（ｕｓｅｒ  ｉｎｔｅｒｆａｃｅ  ｍｏｄｕｌｅ）６１４と、自動データ収集モジュール（ａｕｔｏｍａｔｉｃ  ｄａｔａ  ｃｏｌｌｅｃｔｉｏｎ  ｍｏｄｕｌｅ）６１６と、デバイス履歴データキャッシュ（ｄｅｖｉｃｅ  ｈｉｓｔｏｒｙ  ｄａｔａ  ｃａｃｈｅ）６１８と、ユーザ設定データストア（ｕｓｅｒ  ｓｅｔｔｉｎｇ  ｄａｔａ  ｓｔｏｒｅ）６２０とを含む。ユーザインターフェースモジュール６１４は、デバイス履歴データ収集アプリケーション６１０とのユーザインタラクション（ｕｓｅｒ  ｉｎｔｅｒａｃｔｉｏｎ）を可能にする。例えば、ユーザは、ユーザインターフェースモジュール６１４を介して様々なユーザ設定を指定し、このユーザ設定は、ユーザ設定データストア６２０に保持される。ユーザ設定は、例えば収集されるべきデータのタイプと、データ収集頻度（ｄａｔａ  ｃｏｌｌｅｃｔｉｏｎ  ｆｒｅｑｕｅｎｃｙ）と、データアップロード頻度（ｄａｔａ  ｕｐｌｏａｄ  ｆｒｅｑｕｅｎｃｙ）とを指定することができる。
【００１９】
自動データ収集モジュール６１６は、コンピューティングデバイス６００に関連する様々なタイプのデータを収集し、一般的に（必ずしもそうとは限らないが）バックグラウンドプロセス（ｂａｃｋｇｒｏｕｎｄ  ｐｒｏｃｅｓｓ）として実行される。例えば、コンピューティングデバイス６００が電源投入されるときに、デバイス履歴データ収集アプリケーション６１０は、バックグラウンドプロセスとして実行されるように起動することができる。収集されるべきデータは、プリセットすることができ、あるいはユーザ設定データストア６２０の中のデータによって指定することができる。収集されるデータは、デバイス履歴データキャッシュ６１８に書き込まれる。（デフォルトによるか、またはユーザ設定に基づくかのいずれかにより）収集されるデータの例は、それだけには限定されないが、スタートアップパフォーマンスデータ（ｓｔａｒｔｕｐ  ｐｅｒｆｏｒｍａｎｃｅ  ｄａｔａ）（すなわち、コンピュータがブートするためにどれだけ長く時間がかかるか）と、コンピュータヘルスレイティング（ｃｏｍｐｕｔｅｒ  ｈｅａｌｔｈ  ｒａｔｉｎｇ）（例えば、アンチウイルスステータス（ａｎｔｉｖｉｒｕｓ  ｓｔａｔｕｓ）、ファイアウォールステータス（ｆｉｒｅｗａｌｌ  ｓｔａｔｕｓ）、アンチウイルスシグネチャステータス（ａｎｔｉｖｉｒｕｓ  ｓｉｇｎａｔｕｒｅ  ｓｔａｔｕｓ）、アンチスパイウェアステータス（ａｎｔｉｓｐｙｗａｒｅ  ｓｔａｔｕｓ）、データバックアップステータス（ｄａｔａ  ｂａｃｋｕｐ  ｓｔａｔｕｓ）、必要とされるディスクデフラグメンテーション（ｄｉｓｋ  ｄｅｆｒａｇｍｅｎｔａｔｉｏｎ）など）と、コンピュータ信頼性データ（例えば、特定の期間中にマシンが何回リブートしているか、なぜマシンはリブートしているか、特定の期間中にマシンは何回クラッシュしているか、何がシステムクラッシュを引き起こしているかなど）と、使用可能なソフトウェアパッチ（ｓｏｆｔｗａｒｅ  ｐａｔｃｈ）と、パフォーマンス測定値（例えば、メモリ速度、ディスク速度、プロセッサ速度、ビデオカード（ｖｉｄｅｏ  ｃａｒｄ）速度など）と、コンフィギュレーションデータ（例えば、マザーボード（ｍｏｔｈｅｒｂｏａｒｄ）、中央演算処理装置、マウス、キーボード、ビデオカードなどの異なるハードウェアコンポーネント（ｈａｒｄｗａｒｅ  ｃｏｍｐｏｎｅｎｔ）のブランド／モデル）と、ソフトウェアインストレーション履歴データ（例えば、どのアプリケーション（ａｐｐｓ）がコンピューティングデバイス上にインストールされているか、いつアプリケーションが、追加され、かつ／またはコンピューティングデバイスから除去されたか）と、スタートアップグループデータ（ｓｔａｒｔｕｐ  ｇｒｏｕｐ  ｄａｔａ）（例えば、ユーザがログオンするたびに自動的に起動されるアプリケーションのリスト）とを含むことができる。ユーザにより報告される問題は、そのデバイス履歴データ収集アプリケーションに関連するユーザインターフェースを経由してユーザによってタイプ入力されるテキストエントリ（ｔｅｘｔ  ｅｎｔｒｙ）として収集することができる。ユーザにより報告される問題は、「私のマシンは、遅い」、「アウトルック（Ｏｕｔ���ｏｏｋ）は、私のＩＳＰからメールを取得していない」、「エクセル（Ｅｘｃｅｌ）中のピボットテーブル（ｐｉｖｏｔ  ｔａｂｌｅ）はどのように使用するのか？」などのエントリを含むことができる。デバイス履歴データキャッシュ６１８に記憶されるデータは、定期的に（例えば、時間ごとに、日ごとに、週ごとに、あるいは要求に応じて）ウェブサーバへとアップロードされる。
【００２０】
ユーザは、コンピューティングデバイス６００に関連するブログを閲覧し、かつ／またはそのブログと対話する許可が認可されるべき１人または複数のユーザを指定することもできる。そのようなユーザ許可は、一般的にブログに対するアクセスを管理するウェブサーバによって保持される。例示の一実施形態においては、ユーザは、ウェブサーバとのインターフェースを介してブログに関連する許可にアクセスし、修正することができる。代わりに、デバイス履歴データ収集アプリケーション６１０は、デバイスブログユーザ許可データストア（ｄｅｖｉｃｅ  ｂｌｏｇ  ｕｓｅｒ  ｐｅｒｍｉｓｓｉｏｎ  ｄａｔａ  ｓｔｏｒｅ）６２２を含むこともできる。そのような一実施形態においては、デバイスブログユーザ許可データストア６２２は、ウェブサーバによって保持されるユーザ許可のコピーを保持する。ユーザは、デバイスブログユーザ許可データストア６２２によって保持されるような許可を修正することができ、次いでこれらの修正は、デバイス履歴データキャッシュ６１８からのデータと一緒にウェブサーバへとアップロードすることができる。
【００２１】
図７は、自動化デバイスブログ作成をサポートするように構成される例示のウェブサーバ７００の選択コンポーネントを示している。図１を参照して上記されるように、ウェブサーバ７００は単一のデバイスとして示されるが、任意の数のサーバを表すことができ、これらのサーバは、全体として解釈されるときに説明される機能を実現する。ウェブサーバ７００は、プロセッサ７０２、ネットワークインターフェース７０４、およびメモリ７０６を含んでいる。ネットワークインターフェース７０４は、ウェブサーバ７００がインターネットを経由してデータを送信し受信することを可能にする。オペレーティングシステム７０８と、デバイス履歴データ収集サービス（ｄｅｖｉｃｅ  ｈｉｓｔｏｒｙ  ｄａｔａ  ｃｏｌｌｅｃｔｉｏｎ  ｓｅｒｖｉｃｅ）７１０と、ブログサービス（ｂｌｏｇ  ｓｅｒｖｉｃｅ）７１２とが、メモリ７０６に記憶され、プロセッサ７０２上で実行される。メモリ７０６は、それだけには限定されないが、ＲＡＭ、ハードディスク、着脱可能メモリ媒体など、任意のタイプまたは組合せのメモリデバイスを表す。
【００２２】
デバイス履歴データ収集サービス７１０は、１つまたは複数のコンピューティングデバイスからアップロードされる履歴データとユーザ許可データを受信する。デバイス履歴データ収集サービス７１０は、受信された履歴データをデバイス履歴データストア（ｄｅｖｉｃｅ  ｈｉｓｔｏｒｙ  ｄａｔａ  ｓｔｏｒｅ）７１４に書き込み、ブログユーザ許可データストア７１６を受信されたユーザ許可データを用いてアップデートする。ブログサービス７１２は、デバイス履歴データストア７１４に記憶されるデータを使用して、履歴データが受信されているコンピューティングデバイスに関連するデバイスブログ７１８を作成し、アップデートする。ブログサービス７１２は、ユーザからのブログ要求も受信する。特定のブログが要求されるときに、ブログサービス７１２は、要求しているユーザが要求されるブログにアクセスする許可を有することを検証するためにブログユーザ許可データストア７１６にアクセスする。デバイスブログに記憶することができるデータの慎重な扱いを要する性質に起因して、このセキュリティ対策は非常に重要である。例えば、誰がデバイスブログに対するアクセス権限を与えられたかについて制御が実行されなかった場合、ハッカーは、それらのデバイスブログにアクセスして、例えばファイアウォール保護のない、または期限切れのアンチウイルスシグネチャを有するコンピューティングデバイスを簡単に識別することができる。
【００２３】
例示の一実施形態においては、ブログサービス７１２は、特定のデバイスブログがアップデートされるときに、通知を自動的に生成し、配信するように構成されることもできる。例えば、図３を参照して上記されるように、特定のユーザは、特定のデバイスブログがアップデートされるときに、通知されることを望む可能性がある。代わりに、ユーザは、デバイスブログの中のある種のタイプのデータがアップデートされるときだけ、通知されることを望む可能性もある。例えば、ユーザは、ユーザが手動で問題を報告するときはいつでも通知されることを望む可能性もある。そのような一実施形態においては、ブログユーザ許可データストアは、どのユーザが自動通知を受信したいと望むかと、これらの通知が配信されるべき状況を示すデータを含むことができる。
【００２４】
自動化デバイスブログ作成を実施するための方法は、コンピュータ実行可能命令の一般的な場合について説明することができる。一般に、コンピュータ実行可能命令は、特定のファンクションを実行し、あるいは特定の抽象データ型を実施する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造、プロシージャなどを含んでいる。本方法は、通信ネットワークを介してリンクされるリモート処理デバイスによってファンクションが実行される分散コンピューティング環境において実行することもできる。分散コンピューティング環境において、コンピュータ実行可能命令は、メモリストレージデバイスを含めて、ローカルコンピュータストレージ媒体にもリモートコンピュータストレージ媒体にも配置することができる。
【００２５】
図８〜１０は、自動化デバイスブログ作成をサポートする例示の方法を示している。図８〜１０は、自動化デバイスブログ作成の特定の例であり、限定として解釈すべきものではない。本方法が説明される順序は、限定として解釈されるようには意図されず、任意の数の説明される方法ブロックは、本方法を実施するために任意の順序で組み合わせられることができる。さらに、本方法は、任意の適切なハードウェア、ソフトウェア、ファームウェア、またはそれらの組合せの形で実施することができる。
【００２６】
図８は、自動化デバイスブログ作成をサポートするためにコンピューティングデバイスにおいてデータを収集するための例示の方法８００を示している。ブロック８０２において、履歴データ収集アプリケーションは、起動される。例えば、コンピューティングデバイス６００が電源投入されるときに、デバイス履歴収集アプリケーション６１０は、バックグラウンドアプリケーション（ｂａｃｋｇｒｏｕｎｄ  ａｐｐｌｉｃａｔｉｏｎ）として起動される。代替実施形態においては、デバイス履歴収集アプリケーション６１０は、他の方法で、例えばフォアグラウンドアプリケーション（ｆｏｒｅｇｒｏｕｎｄ  ａｐｐｌｉｃａｔｉｏｎ）として起動されることもできる。
【００２７】
ブロック８０４において、デバイス履歴データは、自動的に収集される。例えば、自動データ収集モジュール６１６は、コンピューティングデバイス６００に関連する様々なタイプのデータを収集し、その収集されたデータをデバイス履歴データキャッシュ６１８に記録する。
【００２８】
ブロック８０６において、ユーザによりサブミットされるデバイス履歴データ、またはユーザによりサブミットされるユーザ許可データが受信されているか否かが判断される。例えば、デバイス履歴データ収集アプリケーション６１０は、ユーザがユーザインターフェースモジュール６１４を経由して問題レポートをサブミットしているか否か、またはユーザがデバイスブログユーザ許可データストア６２２に記憶されるデータをアップデートしているか否かを判断する。
【００２９】
ユーザによりサブミットされるデバイス履歴データまたはユーザ許可データが、受信されていない（ブロック８０６からの「Ｎｏ」ブランチの）場合、そのときには処理は、ブロック８１０に関して以下で説明されるように継続される。他方、ユーザによりサブミットされるデバイス履歴データまたはユーザ許可データが、受信されている（ブロック８０６からの「Ｙｅｓ」ブランチの）場合、そのときにはブロック８０８において、ユーザによりサブミットされるデータは、収集される。例えば、ユーザインターフェースモジュール６１４を介してユーザによりサブミットされる任意のデバイス履歴データは、デバイス履歴データキャッシュ６１８に書き込まれ、そしてユーザによりサブミットされる任意のユーザ許可データは、デバイスユーザ許可データストア６２２をアップデートするために使用される。
【００３０】
ブロック８１０において、特定のデータを収集する要求が受信されているか否かが判断される。例えば、ユーザは、ユーザインターフェースモジュール６１４を介して特定のデータが直接に収集され、即座にアップロードされるように要求をサブミットすることができる。同様に、デバイスブログを閲覧する個人は、ブログの対話式の一部分を介してアップデートされたデータについての要求をサブミットすることができ、データについての要求がウェブサーバからコンピューティングデバイスへと送信されるようにしている。
【００３１】
特定のデータを収集する要求が、受信されている（ブロック８１０からの「Ｙｅｓ」ブランチの）場合、そのときにはブロック８１２において、要求されるデータは、収集される。例えば、要求されるデータは、自動的に収集され、デバイス履歴データキャッシュ６１８に追加される。
【００３２】
ブロック８１４において、履歴データおよびユーザ許可データが、アップロードされる。例えば、コンピューティングデバイス６００は、デバイス履歴データキャッシュ６１８およびデバイスブログユーザ許可データストア６２２からインターネット上をウェブサーバへとデータを送信する。
【００３３】
他方、特定のデータを収集する要求が、受信されていない（ブロック８１０からの「Ｎｏ」ブランチの）場合、そのときにはブロック８１６において、デバイス履歴データをアップロードすべき時であるか否かが判断される。例えば、デバイス履歴データ収集アプリケーション６１０は、指定された間隔でデータを自動的にアップロードするようにプリセットすることができる。代わりに、デバイス履歴データ収集アプリケーション６１０は、デバイス履歴データキャッシュ６１８の中に現在ある任意のデータをアップロードするという要求を示す命令を受信することもできる。
【００３４】
デバイス履歴データをまだアップロードすべき時ではないと判断された（ブロック８１６からの「Ｎｏ」ブランチの）場合、そのときには処理は、ブロック８０４に関して上記されるように継続する。他方、デバイス履歴データをアップロードすべき時であると判断された（ブロック８１０からの「Ｙｅｓ」ブランチの）場合、そのときにはブロック８１４において、履歴データおよびユーザ許可データが、アップロードされる。例えば、コンピューティングデバイス６００は、デバイス履歴データキャッシュ６１８およびデバイスブログユーザ許可データストア６２２からインターネット上をウェブサーバへとデータを送信する。
【００３５】
図９は、デバイス履歴データに基づいてブログを生成するための例示の方法９００を示している。ブロック９０２において、データは、コンピューティングデバイスから受信される。例えば、ウェブサーバ７００は、インターネットを経由してコンピューティングデバイスからデータを受信する。
【００３６】
ブロック９０４において、受信データが、デバイス履歴データを含むか否かが判断される。例えば、デバイス履歴データ収集サービス７１０は、受信データが、データが受信された元のデバイスに関連する履歴データを含むか否かを判断する。
【００３７】
受信データが、デバイス履歴データを含まないと判断された（ブロック９０４からの「Ｎｏ」ブランチの）場合、そのときには処理は、ブロック９１４に関して以下で説明されるように継続される。受信データが、デバイス履歴データを含むと判断された（ブロック９０４からの「Ｙｅｓ」ブランチの）場合、そのときにはブロック９０６において、受信されたデバイス履歴データは、保持される。例えば、デバイス履歴データ収集サービス７１０は、その受信されたデバイス履歴データをデバイス履歴データストア７１４に書き込む。
【００３８】
ブロック９０８において、受信されたデバイス履歴データは、ブログとしてフォーマットされる。例えば、ブログサービス７１２は、デバイス履歴データストア７１４に記憶されるデータにアクセスし、そのデバイスに関連するデバイスブログ７１８を作成し、またはアップデートする。
【００３９】
ブロック９１０において、ブログアップデート通知が、要求されているか否かが判断される。例えば、ブログサービス７１２は、ブログユーザ許可データストア７１６の中のデータを検査して、デバイスブログにアクセスする許可を有する任意のユーザが、ブログがアップデートされるときに、通知されるように要求しているか否かを判断する。
【００４０】
ブログアップデート通知が、要求されていないと判断された（ブロック９１０からの「Ｎｏ」ブランチの）場合、そのときには処理は、ブロック９１４に関して以下で説明されるように継続される。他方、ブログアップデート通知が、要求されていると判断された（ブロック９１０からの「Ｙｅｓ」ブランチの）場合、そのときにはブロック９１２において、ブログアップデート通知が、生成され、配信される。例えば、ブログサービス７１２は、通知を生成し、そのような通知を要求している任意のユーザに対してその通知を送信する。通知は、例えば電子メールを経由して、インスタントメッセージとして、またはＲＳＳ通知として配信することができる。
【００４１】
ブロック９１４において、受信データが、ユーザ許可データを含むか否かが判断される。受信データが、ユーザ許可データを含まない（ブロック９１４からの「Ｎｏ」ブランチの）場合、そのときには処理は、ブロック９０２に関して上記されるように継続される。
【００４２】
受信データが、ユーザ許可データを含むと判断された（ブロック９１４からの「Ｙｅｓ」ブランチの）場合、そのときにはブロック９１６において、ブログユーザ許可データが、アップデートされる。例えば、デバイス履歴データ収集サービス７１０は、受信されたユーザ許可データを使用してブログユーザ許可データストア７１６をアップデートする。一代替実施形態においては、ブログユーザ許可データは、ここで説明されるように、アップロードされたデータを経由するのでなくて、ウェブページインターフェースを介してユーザによってアップデートすることができることが認識される。次いで処理は、ブロック９０２に関して上記されるように継続する。
【００４３】
図１０は、自動的に生成されたデバイスブログに対するユーザアクセスを可能にするための例示の方法１０００を示している。ブロック１００２において、デバイスブログにアクセスする要求が、受信される。例えば、ブログサービス７１２は、特定のデバイスブログにアクセスする要求を受信する。
【００４４】
ブロック１００４において、デバイスブログに対するアクセスを要求するユーザが、ブログにアクセスする許可を有するか否かが判断される。例えば、ブログサービス７１２は、ブログユーザ許可データストア７１６に記憶されるデータと、要求に関連するユーザ識別子を比較して、要求するユーザが、要求されるデバイスブログにアクセスする許可を有するかどうかを判断する。
【００４５】
要求するユーザが、要求されたデバイスブログにアクセスする許可を有さない（ブロック１００４からの「Ｎｏ」ブランチの）場合、そのときにはブロック１００６において、エラーメッセージ（ｅｒｒｏｒ  ｍｅｓｓａｇｅ）が、戻される。他方、要求するユーザが、要求されたデバイスブログにアクセスする許可を有する（ブロック１００４からの「Ｙｅｓ」ブランチの）場合、そのときにはブロック１００８において、要求されたデバイスブログは、戻される。
【００４６】
自動化デバイスブログ作成の実施形態が、構造上の特徴および／または方法に特有の言葉で説明されているが、添付の特許請求の範囲の主題は、必ずしも説明された特定の特徴または方法だけには限定されるとは限らないことが、理解されるべきである。むしろ、特定の特徴および方法は、自動化デバイスブログ作成の例示の実施形態として開示されている。
【図面の簡単な説明】
【００４７】
【図１】自動化デバイスブログ作成を実施することができる例示のネットワーク環境を示すブロック図である。
【図２】１つのコンピューティングデバイスに関連するブログが、別のコンピューティングデバイスに関連するユーザによってアクセスされることができる例示のネットワーク環境を示すブロック図である。
【図３】ユーザが、自動的に生成されたデバイスブログに対するアップデートについて自動的に通知される例示のネットワーク環境を示すブロック図である。
【図４】自動化デバイスブログ作成を、コンピューティングデバイスの集まりについて実施することができる例示のネットワーク環境を示すブロック図である。
【図５】自動的に生成することができる例示のデバイスブログの一部分を示す画像図である。
【図６】ブログを自動的に作成することができる例示のコンピューティングデバイスの選択コンポーネントを示すブロック図である。
【図７】自動的にデバイスブログを作成するように構成される例示のウェブサーバの選択コンポーネントを示すブロック図である。
【図８】自動化デバイスブログ作成をサポートするためにコンピューティングデバイスにおいてデータを収集するための例示の方法を示す流れ図である。
【図９】デバイス履歴データに基づいてブログを自動的に生成するための例示の方法を示す流れ図である。
【図１０】自動的に生成されたデバイスブログに対するユーザアクセスを可能にするための例示の方法を示す流れ図である。
【図１】
2009519541.tif 000003
【図２】
2009519541.tif 000004
【図３】
2009519541.tif 000005
【図４】
2009519541.tif 000006
【図５】
2009519541.tif 000007
【図６】
2009519541.tif 000008
【図７】
2009519541.tif 000009
【図８】
2009519541.tif 000010
【図９】
2009519541.tif 000011
【図１０】
2009519541.tif 000012
【国際調査報告】
2009519541.tif 000013
2009519541.tif 000014