(57)【要約】【課題】クライアントコンピュータシステムにおけるソフトウェアの障害に対し、自動又は半自動的に技術サポートを提供するためのサービス方法を提供する。【解決手段】診断データ収集ソフトウェア２３は、クライアントコンピュータ上で実行されているアプリケーションソフトウェア２１における障害によってトリガされる。診断ソフトウェアによって収集されたデータは、サービスベンダのコンピュータシステムに送信される。ベンダシステム上で実行されている解析ソフトウェア３１が、診断データを解析し、推奨を生成する。推奨はベンダ管理のウェブサイト３５にポストされる。クライアントは、電子メールによって、推奨にアクセスするためのＵＲＬを知らされる。認証手続きの後で、クライアントは推奨にアクセスすることができる。推奨は、クライアントシステム１３にダウンロードされる、人間が読取可能な推奨及びファイルのいずれか又は両方を含み得る。【選択図】図１
2004348730.tif 000002
【特許請求の範囲】
【請求項１】
ベンダがクライアントコンピュータにサービスする方法であって、
前記クライアントコンピュータにおいて、診断データ収集ソフトウェアによりリアルタイム診断データ収集をトリガして診断データを生成するステップと、
前記クライアントコンピュータを含まないベンダコンピュータシステムに対し前記診断データを送信するステップと、
前記ベンダコンピュータシステムを使用して前記診断データを解析し、推奨を生成するステップと、
前記クライアントに対し前記推奨を伝達するステップと、
を含む方法。
【請求項２】
前記トリガすることが、ソフトウェア障害を検出すること、および該検出に応答して前記診断データ収集を自動的にトリガすること、を含む、請求項１に記載の方法。
【請求項３】
前記伝達するステップが、ウェブサイトに前記推奨をポストするステップを含む、請求項１に記載の方法。
【請求項４】
前記伝達するステップが、前記推奨にアクセスする方法に関する指示を前記クライアントに電子メール送信するステップをさらに含む、請求項３に記載の方法。
【請求項５】
前記ウェブサイトが、前記クライアントが該ウェブサイトにアクセスしようと試みる場合に、クライアント認証処理を実施する、請求項３に記載の方法。
【請求項６】
ベンダコンピュータシステムに存在する第１のコンピュータ読取可能媒体と、
前記第１のコンピュータ読取可能媒体に埋め込まれた第１のプログラムであって、クライアントのクライアントコンピュータシステムから診断データを受取り、該診断データを解析して推奨を生成し、該推奨を前記クライアントに伝達する、第１のプログラムと、
を具備するコンピュータプログラムセット。
【請求項７】
前記伝達することが、ウェブサイトに前記推奨をポストすること、および該推奨がポストされたことを前記クライアントに通知すること、を含む、請求項６に記載のコンピュータプログラムセット。
【請求項８】
前記クライアントコンピュータシステムに存在する第２のコンピュータ読取可能媒体と、
前記第２のコンピュータ読取可能媒体に埋め込まれた第２のプログラムであって、前記クライアントコンピュータシステムにおいて診断データを収集し且つ該診断データを前記ベンダコンピュータシステムに送信することによって、トリガイベントに応答する、第２のプログラムと、
をさらに具備する、請求項６に記載のコンピュータプログラムセット。
【請求項９】
前記トリガイベントがソフトウェア障害の検出である、請求項８に記載のコンピュータプログラムセット。
【請求項１０】
前記トリガイベントがコンピュータ構成変更の検出である、請求項８に記載のコンピュータプログラムセット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はコンピュータシステムに関し、詳細には、ベンダがクライアントコンピュータにサービスする方法に関する。本発明は、クライアントコンピュータの経済的かつ有効な自動および半自動サービスを提供する。
【背景技術】
【０００２】
現代の進歩の大部分は、基本的に命令の「ソフトウェア」プログラムに従ってデータを処理する「ハードウェア」マシンであるコンピュータに関連する。ソフトウェアプログラムは、概して極めて複雑であり、それは、一部はそれらの意図された機能のためであり、一部は種々のハードウェア構成で種々の他のソフトウェアプログラムとともに実行する必要があるためである。複雑性により、ソフトウェア障害はまれではない。社会のコンピュータに対する依存が増大しているため、かかる障害は重大な問題である。
【０００３】
プログラムが不安定に実行されるかまたはハングする場合に生ずる混乱を回避するために、目下、多くのプログラムおよびオペレーティングシステムはエラーメッセージを提供する。場合によっては、メッセージは単に、ユーザに対してエラーが発生したことを通知するのみであるが、ソフトウェア製品によっては、少なくともエラーに関する何らかの情報を提供する。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
より高度なソフトウェアは、エラーに対処するために推奨を行う。Ｍｉｃｒｏｓｏｆｔ Ｗｉｎｄｏｗｓ ＸＰ（ワシントン州RedmondのMicrosoft Corporationから入手可能）は、比較的有益なエラーメッセージを提供し、ユーザに対しソフトウェア障害に関するエラー報告をMicrosoftに送信するように勧める。Microsoftは、かかるエラー報告を収集する。それらは、ソフトウェアの将来のバージョンを開発する際に役立つ。しかしながら、エラー報告を送信することは、直接ユーザの利益にはならず、また、推奨により効果的に対処することができるエラーの範囲は非常に限られている。
【０００５】
多くの場合、ユーザは、ソフトウェア問題を解決するためにベンダの技術サポート要員に連絡をとらなければならない。顧客は、技術サポート要員への接触を待たなければならない場合が多い。技術サポート要員が、ユーザから問題の解決に関連する情報を取得することは困難である場合が多い。最後に、技術サポート担当者が利用可能な情報を使用して有望な解決法を提供することは困難である可能性がある。技術サポート担当者は別の要員の助けを求めなければならい場合が多く、より多くのベンダの資源が消費される。
【０００６】
コストを削減するために、多くのベンダは自動化された援助を提供する。これは、ファックスバックサービス、ウェブサイトまたは両方の形態をとることができる。メニューシステムによっては、ユーザがリストから問題を特定するのを助け、その後、サービスがユーザに対し推奨作業コースを提供するものもある。かかる自動化システムは、ベンダに対するコストを削減することができるが、ユーザ、特に知識のないユーザにはしばしば厄介である。また、メニュー方式システムによって考慮することができるあり得る構成の数は限られている。かかる自動システムが、最適な推奨を提供するために必要な詳細なデータを収集し使用することに対して、技術サポート担当者に匹敵することは困難である。また、多くのベンダは、クライアントがサポート関連情報にアクセスすることができるウェブサイトも提供する。しかしながら、かかるウェブサイトにおいて関連情報を見つけることは困難であり時間がかかる場合が多い。
【０００７】
ローカルに生成されたメッセージと、人間による技術サポートと、自動化された技術サポートと、の組合せでさえ、効率および便利さの点で改善されるべき多くの点が残されている。必要なことは、コンピュータソフトウェアに対し技術サポートを提供する改善された方法である。
【課題を解決するための手段】
【０００８】
本発明は、ベンダコンピュータシステムが、クライアントコンピュータシステムで収集されたデータに基づいて推奨を提案する、ソフトウェアサポートサービスを提供する。手作業で（たとえば、クライアントがソフトウェアの異常な挙動を通知した場合）またはソフトウェア障害あるいは構成変更の検出のような何らかのイベントに応答して、診断データ収集をトリガする。クライアントコンピュータシステムで実行する診断データ収集ソフトウェアは、障害が発生した時にその障害を予期または診断するために有用な文脈情報を収集する。その情報をベンダシステムに送信し、ベンダシステムは診断データを解析してクライアントに推奨を提供する。
【０００９】
好ましくは、ベンダは、インターネット、たとえばウェブサイトに推奨をポストする。解決法をポストすると、クライアントにたとえば電子メールで通知することができる。そして、クライアントは、好ましくはセキュリティのための認証（validation）プロセスを通してポストにアクセスする。ポストには、クライアント情報技術担当者が実施するステップとともに、クライアントコンピュータシステムにダウンロードすることができるソフトウェアパッチおよび更新が含まれてもよい。
【００１０】
最も類似する従来技術は、クライアントコンピュータ上で問題を診断し処置を推奨するソフトウェアの使用である。これに対して本発明は、情報をクライアントとベンダとの間で往復して送信しなければならないため欠点がある。これを十分に相殺するのは、ベンダがソフトウェアに発生する問題に関する情報を収集するに従い、ベンダ解析ソフトウェアを絶えず更新することができる、という事実である。ベンダソフトウェアは、クライアントソフトウェアが製造された時に知られていることによって制限される可能性はずっと低い。さらに、クライアントコンピュータは、ごくたまにしか使用されないエキスパート診断システムに対し資源を充てる必要がない。本発明はさらに、クライアントが、問題の診断が不適切であると考える場合に診断される問題の技術サポート要員へのエスカレーションを容易にすることにより、従来技術に対して利点を提供する。
【００１１】
本発明は、問題特定および問題解決を大幅に加速する。本発明を使用することにより、自身のシステムから情報を検索し収集しそれを技術サポート要員に送信する必要がないため、ソフトウェアサポートクライアントに対して時間および労力が省かれる。さらに、クライアントは、問題が発生した略直後に解決法情報を見ることができる。
【００１２】
初期の障害追跡労力に関与せず、且つ、クライアントに提供された解決法情報が問題を解決する場合はまったく関与しないため、技術サポート担当者に対しても時間および労力が省かれる。技術サポート担当者は、追加の支援を提供する必要がある場合、データ収集ソフトウェア２３によって収集された生データおよび解析ソフトウェア３１によって生成された解決法を即時入手して、その事例に取り組み始めることができる。収集されたデータの特性は、障害が発生した時間に関連するため、技術サポート要員は、最初により多くの問題を解決することができる。技術サポート要員は、リアルタイム障害データを期待することにより、クライアント環境が元の障害時から変化した場合に二度と発生する可能性のない問題を再現する必要のない可能性がある。本発明のこれらおよび他の特徴および利点は、図面を参照して以下の説明から明らかである。
【発明を実施するための最良の形態】
【００１３】
本発明によれば、図１に示すように、コンピュータサービスベンダＡＰ１は、ベンダコンピュータネットワーク１１を使用して、クライアント１５が操作するクライアントコンピュータシステム１３に対して自動サービスを提供する。クライアント１５は、人間の要員１７とコンピュータシステム１３とを含む会社である。コンピュータシステム１３は、アプリケーションプログラム２１と診断データ収集ソフトウェア２３とを実行するコンピュータを含むいくつかのコンピュータを含む。ベンダＡＰ１は、クライアント１５に対して診断データ収集ソフトウェアを提供する。
【００１４】
ベンダＡＰ１は、技術サポート要員２５を含む人間の要員を含む。ベンダコンピュータネットワーク１１は、診断データ解析プログラム３１と知識ベースソフトウェア３３とを同じコンピュータで実行するが、別法として、ベンダコンピュータネットワーク１１における別個のコンピュータで実行することも可能である。さらに、ベンダコンピュータネットワーク１１は、ウェブサイト３５とともに、インターネットエージェント３７（たとえば、「ボット（bots）」および「スパイダー」）を管理する。
【００１５】
クライアントシステム１３で実行中のアプリケーション２１にソフトウェア障害が発生すると、コンピュータサービス方法Ｍ１が開始される。ステップＳ０１において、障害を検出し、それに応じて、診断データ収集ソフトウェア２３を立ち上げる。ステップＳ０２において、診断データ収集ソフトウェア２３は、アプリケーション２１の性質と、障害の性質と、その障害が発生したコンピュータの全ソフトウェアおよびハードウェア構成と、に関する情報を収集する。ステップＳ０３において、収集したデータを、インターネットによりベンダネットワーク１１に送信する。
【００１６】
ステップＳ０４において、ベンダネットワーク１１は診断データを受信する。ステップＳ０５において、ベンダネットワーク１１で実行する診断解析ソフトウェア３１は、高度の人口知能アルゴリズムを使用して、クライアント１５に対して処置を推奨するために知識ベース３３から障害の原因および情報を特定する。推奨が確定すると、ステップＳ０６において、それをベンダウェブサイト３５にポストする。ステップＳ０７において、ベンダネットワーク１１は、クライアント１５に対し、推奨がポストされたことを通知し、その推奨にアクセスする指示を与える。
【００１７】
ステップＳ０８において、クライアント１５は通知を受信する。それに応じて、クライアント１５は、ステップＳ０９においてベンダウェブサイト３５にアクセスする。ウェブサイト上の情報を許可されていないアクセスから保護するために、ウェブサイト３５は、ステップＳ１０において認証手続きを実施する。認証が完了すると、ステップＳ１１において、クライアント１５は推奨にアクセスしそれを実施することができる。
【００１８】
方法Ｍ１では、トリガステップＳ０１の変形が可能である。好ましくは、データ収集ソフトウェアをアプリケーションにカスタム統合することにより、特定の障害が発生した場合に後者が前者を自動的にトリガすることができるようにする。データ収集ソフトウェアは、グラフィックユーザインタフェース（ＧＵＩ）を提供して、ユーザがデータ収集を手作業でトリガしソフトウェア問題に関する情報を直接提出することができるようにする。別法として、ソフトウェア障害を検出しデータ収集ソフトウェアをトリガするために、アクセサリアプリケーションを同時に実行していることも可能である。また、データ収集ソフトウェアが、バックグラウンドで実行するアクセサリアプリケーションであってもよく、それによりそれを別個に立ち上げる必要がない。
【００１９】
また、本発明では、いかなる障害も検出されない時にデータ収集をトリガすることが可能である。たとえば、自動データ収集は、構成変更を検出する時はいつでも発生してもよく、あるいは、スケジュールされたルーチンに基づいて発生してもよい。なお、ベンダは、異なるレベルのサービスを提供することができる。たとえば、クライアントによっては、障害が検出された場合のみの解析に限定してもよく、一方、障害検出および構成変更に限定されたクライアントがあってもよく、さらに、いつでも解析が可能なクライアントがあってもよい。
【００２０】
好ましくは、ステップＳ０２では、収集される情報が最新であることを確保するためにトリガ後データ収集を行う。しかしながら、本発明では、トリガの前に部分的または完全なデータ収集を行うことも可能である。たとえば、データ収集ソフトウェアは、アプリケーションと同時に実行される場合、予めデータを収集しエラーまたは他のイベントが検出されるとデータの送信のみを行ってもよい。また、データを予め収集し、たとえば登録日（register dates）において、データのいくつかが収集以来変更された可能性があるという指示のない限り、使用することができる。
【００２１】
収集されるデータは、カーネルまたはレジストリ設定ならびにシステムに常駐するアプリケーションおよびプロセスを含むクライアントシステムに関する情報を含むことができる。データはまた、アプリケーション２１に関する情報、たとえば、エラーログファイル、パッチ情報、構成ファイルおよびアプリケーション２１が生成する障害に関する文脈特有の情報を含むことができる。データ収集ソフトウェア２３はまた、クライアント特定ハンドルおよびクライアントの特定の連絡担当者に対する電子メールアドレス等のクライアント特有の情報を含む構成ファイルを含むことも可能である。さらに、データ収集ソフトウェア２３は、クライアント１５が、何のデータを収集するかおよび何のデータを送信するかを制御することができるようにする、ポリシーファイルを含むことができる。
【００２２】
データ送信ステップＳ０３では、アプリケーション２１を実行するコンピュータがインターネット接続を有する場合、収集されたデータを直接送信することができる。別法として、データを、インターネット接続を有するクライアントネットワーク上の別のコンピュータにルーティングすることも可能である。いずれの場合も、ポリシーファイルは、インターネットで診断データを送信する前にクライアント１５による手作業の介入を可能にするかまたは必要とすることができる。データ転送プロトコルは、柔軟性がありかつ安全であって、たとえばＨＴＴＰＳである。別法として、別の暗号化プロトコルを使用してもよい。データ転送を、ウェブサーバまたは仮想私設網を介して提供することも可能である。
【００２３】
本発明では、同時レベルの可用性を実現する。データを、ベンダネットワーク１１の協調サーバで受取ることができる。協調サーバを、エージェントベースソリューションおよび／またはＪ２ＥＥまたは．ＮＥＴアプリケーションサーバとして実施することができる。協調サーバは、複数の障害データダウンロードを同時に処理することができる（同じクライアントからまたは異なるクライアントから）。
【００２４】
クライアントデータの各セットに対し、ステップＳ０５で使用する解析ソフトウェア３１は、協調サーバからデータ（ステップＳ０２で収集された）を受取る。解析ソフトウェアは、本質的に統計的であってもよく、機械学習技術に基づいてもよく、人口知能ベース／事例ベースエキスパートシステムから構成されてもよく、あるいはそれらのいかなる組合せであってもよい。解析ソフトウェアはまた、文脈解析も含む。それは、異なるクライアントによって報告されるソフトウェアおよびイベントの進行中のベンダ評価の結果として継続的に更新される、知識ベース３３を参照する。知識ベース３３は、非構造化オブジェクト指向データベースである。別法として、ネイティブＸＭＬデータベース、リレーショナルデータベースまたは他の任意のデータベースを使用することができる。
【００２５】
解析ソフトウェア３１は、データを処理して問題のシグネチャを特定する。このために、ソフトウェアパッチ解析ツールまたはシステム解析ツール等の文脈特有の解析ツールを使用する。解析ソフトウェア３１はまた、一般的なコンテンツ収集ツールを使用してもよい（ベンダのサポートソリューションドキュメント、オンラインマニュアル、私的および公的ユーザフォーラムログ、技術サポートワークフローシステムケースログ、欠陥追跡システム、内部および外部サポートウェブサイト検索エンジンおよび多数の他のオンライン資源による、自動的な検索等）。
【００２６】
解析ソフトウェア３１が対処する問題のうちの１つは、アプリケーション２１が実行されているコンピュータに関連するハードウェアおよび他のソフトウェアとの互換性である。これらの項目は、ベンダ以外のソースから提供される場合が多いため、ベンダネットワーク１１は、アプリケーション２１をサービスすることに関する情報に対し第三者のオンライン資源を調べる。たとえば、解析ソフトウェア３１は、データベースクエリ、知的モバイルエージェント、スパイダー、ボットおよび内部ウェブサービスを使用することができる。
【００２７】
さらに、解析ソフトウェア３１は、障害データと解決法データとに適用される傾向解析を提供することにより、高レベル障害追跡または解決法情報を生成することができる。任意選択で、機械学習ソフトウェア（ニューラルネットワークおよび／またはサポートベクトルマシン等）を使用して、さらなる一般化をもたらすことができる。異なる人間の言語に適応するために、解析ソフトウェアは、必要に応じて入力される診断データと出力される推奨との動的翻訳を提供する。
【００２８】
推奨を含む解析報告を、知識ベース３３に格納し、ステップＳ０６においてウェブサイト３５の保護領域にポストする。推奨は、クライアントシステム１３にダウンロードされる、人間が読取可能な推奨およびファイルのいずれかまたは両方を含むことができる。これらのファイルはまた、人間に対する「リードミー（read me）」ファイルであっても、実行可能ファイルであっても、あるいは構成ファイルであってもよい。また、ソフトウェア障害に関するヒントを、技術サポートデータベースにおける特定の障害追跡コメントに結合することにより、追加の文脈特定情報を提供することも可能である。
【００２９】
ステップＳ０７およびＳ０８における通知は、連絡担当者に対する電子メールを含んでもよい。連絡要員は、クライアントにおける情報技術専門家またはそのグループであってもよい。通常は、通知が送信される電子メールアドレスを、クライアントの構成ファイルに格納する。別法として、この情報を、ベンダネットワーク１１におけるクライアント情報ベースに格納してもよい。通常、電子メールは、好ましくはステップＳ０６においてポストされた推奨に導く埋込みリンクにより、ＵＲＬを特定する。別法として、通知を、クライアントの携帯情報端末または携帯電話に行ってもよい。さらに、クライアントポリシーを使用して、通知がいかに行われるかまたはそれが実行されるか否かを指示してもよい。
【００３０】
ステップＳ０９およびＳ１０において、アクセスおよび認証が発生する。これらのステップを、図２および図１の両方においてクライアント１５とベンダウェブサイト３５との間の３つの線分矢印で示す。通常は、クライアントが認証なしに入ることができるＵＲＬを提供する。推奨が行われる実際のサイトに対するリンクを提供する。しかしながら、このリンクにアクセスすることにより、顧客識別情報に対する要求がトリガされる。識別情報は、推奨にアクセスすることができる前に要求される。これは、競争企業または他の無許可な者に対し、クライアントコンピュータシステム１３において発生する障害を知らせないようにすることを意図する。
【００３１】
ステップＳ１１において、クライアントは推奨を実施する。これには、通常は、人間１７が何らかの指示にしたがうことが必要である。この指示には、クライアントコンピュータにファイルをダウンロードすることが含まれてもよい。これは、更新、パッチ、さらなる指示等であってもよい。推奨は、問題を解決するように意図されてもよい。別法として、それらは、単にクライアントを、役に立つと考えられる情報の他のソースに向けるだけでもよい。さらに、ベンダ解析システムは、クライアントの障害の正確な原因を確定してもよい。この場合、ベンダシステムは、クライアントポリシーが許可する場合は、クライアント環境においてソフトウェアパッチを自動的にインストールしてもよい。クライアントポリシーは、自動パッチインストールのためのテストマシンを指定してもよく、あるいは、かかるパッチを、障害が発生した生産システムにインストールすることができることを指示してもよい。パッチが自動的にインストールされる場合、クライアントは、特に何が行われたかに関する通知を受取る。
【００３２】
クライアントは、それらに対して生成された解決法を使用することができないかまたは使用したくない場合、解析報告ウェブページにおいて、障害データを自動的にワークフロー事例に変換するオプションを選択することができる。技術サポート要員２５のサポート担当者が関与する。解析ウェブページはまた、推奨の有用性に関する情報を収集するために使用する顧客フィードバック部を含む。また、フィードバック情報に、解析システムの自動動的調整を駆動するために使用する自動傾向解析を適用する。
【００３３】
診断データ収集ソフトウェア２３と診断データ解析ソフトウェア３１とは、好ましくは同じエンティティによって共同開発される。この場合、両方とも、クライアント１５に診断データ収集ソフトウェアを提供するベンダＡＰ１によって開発される。別法として、第三者がクライアント１５に対する診断データ収集ソフトウェアとベンダＡＰ１に対する診断データ解析ソフトウェアとの両方を提供してもよい。さらに、診断データ収集ソフトウェアを、診断データ解析ソフトウェア３１を開発したエンティティ以外のエンティティによって開発または変更してもよい。
【００３４】
本発明は、アプリケーション２１の製造業者が第三者のベンダにサポートサービスを外注するかまたは現場内（組織内）サポートサービスに依存する場合のように、より複雑な業務形態を可能にする。その場合、製造業者は、第三者のベンダかまたは現場内のクライアントサポートグループに対し定期的な更新を提供することができる。本明細書で言及するソフトウェアはすべて、コンピュータ読取可能媒体で提供する。詳細な実施形態に対するこれらの他の変形および変更は、本発明によって提供され、その範囲は特許請求の範囲によって規定される。
【図面の簡単な説明】
【００３５】
【図１】本発明によるコンピュータサービス方法のブロック図である。
【図２】図１の方法のフローチャートである。
【符号の説明】
【００３６】
ＡＰ１：コンピュータサービスベンダ
１１：ベンダコンピュータネットワーク
１３：クライアントコンピュータシステム
１５：クライアント
１７：クライアント担当
２１：アプリケーションプログラム
２３：診断データ収集ソフトウェア
２５：技術サポート担当
３１：診断データ解析プログラム
３３：知識ベースソフトウェア
３５：ウェブサイト
３７：インターネットエージェント
【図１】
2004348730.tif 000003
【図２】
2004348730.tif 000004