(57)【要約】【課題】サーバ装置からクライアント装置にプログラムを配布するシステムにおける、クライアント装置の稼働環境の向上と、システム品質の向上を図る。【解決手段】各クライアント装置１０２は、バージョン構成データベース１０２ａにより、自装置で用いているプログラムの名称とバージョン番号および稼動実績を記憶装置に記憶しておき、プログラム更新制御機能１０２ｂにより、サーバ装置１０１から各プログラムのバージョン番号を取得して照合し、不一致であれば、サーバ装置から当該プログラムの最新版をダウンロードする。さらにプログラム状態監視機能１０２ｃにより、更新した最新版のプログラムを起動して正常ＥＯＦが検出されるまで監視し、異常コードが検出された場合はエラー情報をサーバ装置に送信し、サーバ装置からの当該プログラムの以降の配布を停止させ、かつ、エラー内容をサーバ装置からサーバ管理者に通知させる。【選択図】図１
2010026835.tif 000002
【特許請求の範囲】
【請求項１】
サーバ装置からネットワークを介してクライアント装置にプログラムを配布するプログラム配布処理システムであって、
上記クライアント装置は、プログラムされたコンピュータ処理手段として、
自装置で用いているプログラムの名称とバージョン番号および稼動実績を記憶する手段と、
起動時に上記サーバ装置にアクセスし、該サーバ装置から自装置で用いているプログラムのバージョン番号を取得して照合し、自装置の当該プログラムが最新であるか否かを判定する手段と、
該手段による判定の結果、自装置の当該プログラムが最新でなければ、サーバ装置から当該プログラムの最新版をダウンロードして、自装置内のプログラムを更新する手段と、
更新した最新版のプログラムを起動して当該プログラムの異常の有無を監視する手段と、
該手段により、起動した最新版のプログラムの異常を検出した場合に当該異常のエラー情報を生成して上記サーバ装置に送信する手段と
を具備し、
上記サーバ装置は、プログラムされたコンピュータ処理手段として、
上記クライアント装置からのエラー情報を受信する手段と、
受信したエラー情報をサーバ管理者に通知すると共に、当該プログラムの他のクライアント装置へのダウンロードを停止する手段と
を具備したことを特徴とするプログラム配布処理システム。
【請求項２】
請求項１に記載のプログラム配布処理システムであって、
上記サーバ装置は、各配布用のプログラムの名称とバージョン番号と共に、配布の可否を示すフラグ情報を対応付けたテーブル情報を記憶装置に記憶する記憶処理手段を具備し、
上記ダウンロードを停止する手段は、
上記クライアント装置から受信したエラー情報の対象であるプログラムの名称とバージョン情報と共に当該プログラムの配布禁止指示を上記記憶処理手段に通知し、該記憶処理手段が記憶装置に記憶している当該プログラムのフラグ情報を配布禁止を示す内容に変更させる手段と、各クライアント装置からプログラムのダウンロード要求を受けると、上記記憶装置に記憶している当該プログラムのバージョン番号と共にフラグ情報を返送する手段とを有し、
上記クライアント装置は、上記サーバ装置から、要求したプログラムのバージョン番号と共に当該プログラムの配布禁止を示すフラグ情報の返送を受けると、要求した当該プログラムのバージョン番号が不一致であっても、当該プログラムの配布要求を停止する手段を有する
ことを特徴とするプログラム配布処理システム。
【請求項３】
請求項１もしくは請求項２のいずれかに記載のプログラム配布処理システムであって、
上記クライアント装置における異常監視手段は、
更新した最新版のプログラムを起動してから予め定められた時間内に上記正常ＥＯＦが検出されなければ、
もしくは、
更新した最新版のプログラムを起動してから上記予め定められた時間内に、当該プログラムからの異常コードを検出すると、
当該プログラムの異常を示す上記エラー情報を生成する手段を有する
ことを特徴とするプログラム配布処理システム。
【請求項４】
サーバ装置からネットワークを介してクライアント装置にプログラムを配布する際の処理方法であって、
上記クライアント装置は、プログラムされたコンピュータ処理により、
自装置で用いているプログラムの名称とバージョン番号および稼動実績を記憶する手順と、
起動時に上記サーバ装置にアクセスし、該サーバ装置から自装置で用いているプログラムのバージョン番号を取得して照合し、自装置の当該プログラムが最新であるか否かを判定する手順と、
該手順による判定の結果、自装置の当該プログラムが最新でなければ、サーバ装置から当該プログラムの最新版をダウンロードして、自装置内のプログラムを更新する手順と、
更新した最新版のプログラムを起動して当該プログラムの異常の有無を監視する手順と、
該手順により、起動した最新版のプログラムの異常を検出した場合に当該異常のエラー情報を生成して上記サーバ装置に送信する手順と
を実行し、
上記サーバ装置は、プログラムされたコンピュータ処理により、
上記クライアント装置からのエラー情報を受信する手順と、
受信したエラー情報をサーバ管理者に通知すると共に、当該プログラムの他のクライアント装置へのダウンロードを停止する手順と
を実行することを特徴とするプログラム配布処理方法。
【請求項５】
請求項４に記載のプログラム配布処理方法であって、
上記サーバ装置は、プログラムされたコンピュータ処理により、
上記クライアント装置から受信したエラー情報の対象であるプログラムの名称とバージョン情報に当該プログラムの配布の許可もしくは禁止を示すフラグ情報を対応付けて記憶装置に記憶する手順と、
上記クライアント装置からプログラムのダウンロード要求を受けると、上記記憶装置に記憶している当該プログラムのバージョン番号と共に上記フラグ情報を返送する手順とを実行し、
上記クライアント装置は、プログラムされたコンピュータ処理により、
上記サーバ装置から、要求したプログラムのバージョン番号と共に返送されたフラグ情報が当該プログラムの配布を禁止することを示していれば、要求した当該プログラムのバージョン番号が不一致であっても、当該プログラムの配布要求を停止する手順を実行する
ことを特徴とするプログラム配布処理方法。
【請求項６】
請求項４もしくは請求項５のいずれかに記載のプログラム配布処理方法であって、
上記クライアント装置による異常の有無を監視する手順は、
更新した最新版のプログラムを起動してから予め定められた時間内に上記正常ＥＯＦが検出されなければ、もしくは、更新した最新版のプログラムを起動してから上記予め定められた時間内に、当該プログラムからの異常コードを検出すると、当該プログラムの異常を示す上記エラー情報を生成する手順を含む
ことを特徴とするプログラム配布処理方法。
【請求項７】
コンピュータに、請求項４から請求項６のいずれかに記載のプログラム配布処理方法における各手順を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介したクライアントサーバシステムにおけるプログラムの自動配布技術に係り、特に、効率的なプログラム配信と異常プログラムの配布回避を図るのに好適なプログラム自動配布処理技術に関するものである。
【背景技術】
【０００２】
従来、複数のコンピュータ装置で用いられるプログラムの更新（アップデート）を効率的に行う技術として、プログラムを供給する側のコンピュータから、利用する側の各コンピュータに、インターネット等のネットワークを介して更新されたプログラムを転送する技術が、例えば、特許文献１〜５等において開示されている。
【０００３】
例えば、特許文献５に記載の技術では、ネットワークを介してサーバ装置からクライアント装置にプログラムを自動配布する際、サーバ装置からクライアント装置に対してシステムバージョン情報を転送し、クライアント装置が保有するプログラムバージョン情報と一致しない場合に、サーバ装置からクライアント装置に対して最新バージョンのプログラムで更新を行っている。
【０００４】
しかし、このように、サーバ主導で更新作業を行う技術では、クライアント装置の起動停止時刻を、サーバ装置の配布作業時刻にあわせなければならず、クライアント装置側は、稼働時間の同期、調整が必要となり、不要な稼働を強いられることとなる。
【０００５】
また、従来のプログラム自動配布技術では、更新プログラムをクライアント装置に配布するところまでが一連の作業であり、配布したプログラムに異常が発生した場合、サーバ管理者が異常を検知し対応するまでにタイムロスが発生する。この間、異常を引き起こす可能性のあるプログラムが他のクライアント装置に配布され続けることとなり、クライアントサーバシステム全体の致命的な品質低下を招きかねない。
【０００６】
【特許文献１】特開２００６−５３６０９号公報
【特許文献２】特開２００５−９２３３０号公報
【特許文献３】特開２００３−１４０９０２号公報
【特許文献４】特開２００３−１４０９０５号公報
【特許文献５】特開平７−１２９４０７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
解決しようとする問題点は、従来の技術では、サーバ装置からネットワークを介してクライアント装置にプログラムの配布を制御する際に、クライアント装置の起動・停止時刻がサーバ装置側の起動・停止時刻に制約されてしまう点と、サーバ装置から配布された更新プログラムにエラー要因が含まれていた際に、これを適用したクライアント装置側において異常が検知された後も、サーバ管理者による配布停止が行われるまでの間にサーバ装置から他のクライアント装置へのプログラムの自動配布が継続されてしまい、システム全体の品質低下を招いてしまう点である。
【０００８】
本発明の目的は、これら従来技術の課題を解決し、クライアント装置の稼働環境の向上と、クライアントサーバシステムの品質の向上を図ることである。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、本発明では、サーバ装置に、更新プログラムの配布機能と共に、プログラム配布の可否を制御する配布制御機能を設け、配布制御機能においては、プログラムの名称とバージョン番号に、プログラム配布の可否を示す情報を関連付けて記憶管理する。さらに、この配布制御機能は、プログラム配布を停止した際には、その旨をサーバ管理者に通知する機能を有する。また、各クライアント装置には、更新プログラムの配布要求機能と当該更新プログラムの異常監視機能を設け、配布要求機能は、自装置内にあるプログラムの名称とバージョン番号および稼動実績を関連付けて記憶管理し、システム起動時にサーバ装置にアクセスして、自装置で用いているプログラムのバージョン番号を取得し、自装置内で記憶管理しているバージョン番号と照合して不一致の場合、サーバ装置から当該プログラムの最新版をダウンロードして、自装置内の当該プログラムを更新する。また、異常監視機能は、更新したプログラムの初回起動をチェックして、正常ＥＯＦが検出されるまで、当該プログラムにおける異常コードの有無の検出を行い、異常コードを検出した場合、直ちにエラー情報をサーバ装置に通知する。クライアント装置からのエラー情報を受信したサーバ装置は、配布制御機能により、当該プログラムの他のクライアント装置へのダウンロードを停止すると共に、当該エラー情報をサーバ管理者に通知する。
【発明の効果】
【００１０】
本発明によれば、各クライアント装置において、それぞれのクライアント装置で用いているプログラムの名称とバージョン情報および配布可否等の情報を保持し、プログラムの配布の要否を判定し、配布が必要な場合にのみ、クライアント装置側からサーバ装置に対して当該プログラムの配布を要求する構成としており、必要最小限のアクセスにより最新のプログラム環境を保つことが可能になる。また、本発明によれば、クライアント装置毎に任意のタイミングでプログラムのバージョンアップを行うことが可能となり、クライアント装置における稼働時間の削減、および、サーバ装置へのアクセス負荷の低減を図ることができる。さらに、本発明によれば、ダウンロードしたプログラムの異常を検知したクライアント装置からのサーバ装置へのフィードバックにより、サーバ装置での、異常を引き起こす可能性のあるプログラムの配布の即時中止、および、サーバ管理者への即時検知が可能となり、クライアントサーバシステムの品質低下を防ぐことができる。
【発明を実施するための最良の形態】
【００１１】
以下、図を用いて本発明を実施するための最良の形態例（実施例）を説明する。図１は、本発明に係るプログラム配布処理システムの構成例を示すブロック図である。
【００１２】
図１におけるプログラム配布処理システムは、ネットワーク（図中「ＮＷ」と記載）１００によりサーバ装置１０１と複数のクライアント装置１０２〜１０４が接続され、サーバ装置１０１からネットワーク１００を介して各クライアント装置１０２〜１０４にプログラムを配布するシステムである。
【００１３】
サーバ装置１０１とクライアント装置１０２〜１０４のそれぞれは、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、主メモリ、表示装置、入力装置、外部記憶装置等からなるコンピュータ装置であり、光ディスク駆動装置等を介してＣＤ−ＲＯＭ等の記憶媒体に記録されたプログラムやデータを外部記憶装置内にインストールした後、この外部記憶装置から主メモリに読み込みＣＰＵで処理することにより、本発明に関連する各処理を実行する機能を具備している。
【００１４】
すなわち、サーバ装置１０１は、プログラムされたコンピュータ処理を実行する機能として、バージョン管理データベース（図中「バージョン管理ＤＢ」と記載）１０１ａとバージョン管理情報更新機能１０１ｂを具備し、配布用ソース１０１ｃとして記憶装置に記憶したプログラムの管理処理および配布処理を実行する。
【００１５】
また、クライアント装置１０２〜１０３は、それぞれ、プログラムされたコンピュータ処理を実行する機能として、バージョン構成データベース（図中「バージョン構成ＤＢ」と記載）１０２ａ〜１０４ａとプログラム更新制御機能１０２ｂ〜１０４ｂ、プログラム状態監視機能１０２ｃ〜１０４ｃを具備している。
【００１６】
このような構成のサーバ装置１０１とクライアント装置１０２〜１０４からなるプログラム配布処理システムにおいて、各クライアント装置１０２〜１０４は、バージョン構成データベース１０２ａ〜１０４ａにより、自装置で用いているプログラムの名称とバージョン番号および稼動実績を記憶装置に記憶しておく。
【００１７】
そして、プログラム更新制御機能１０２ｂ〜１０４ｂにより、起動時にサーバ装置１０１にアクセスして、サーバ装置１０１から自装置で用いているプログラムのバージョン番号を取得し、バージョン構成データベース１０２ａ〜１０４ａで記憶管理している当該プログラムのバージョン番号と照合し、自装置の当該プログラムが最新であるか否かを判定し、判定の結果、自装置の当該プログラムが最新でなければ、サーバ装置１０１から当該プログラムの最新版をダウンロードして、自装置内のバージョン構成データベース１０２ａ〜１０４ａで記憶管理している当該プログラムを更新する。
【００１８】
さらに、プログラム状態監視機能１０２ｃ〜１０４ｃにより、更新した最新版のプログラムを起動して当該プログラムの異常の有無を監視し、起動した最新版のプログラムの異常コードを検出した場合、直ちに当該異常の内容を示すエラー情報を生成してサーバ装置１０１に送信する。尚、異常の有無の監視は、更新した最新版のプログラムを起動してから予め定められた時間内に正常ＥＯＦを検出するか否か、もしくは、更新した最新版のプログラムを起動してから予め定められた時間内に当該プログラムからの異常コードを検出するか否かにより行う。
【００１９】
サーバ装置１０１は、バージョン管理情報更新機能１０１ｂにより、クライアント装置１０２〜１０４からのエラー情報を受信すると、受信したエラー情報を、表示装置や音声出力装置等を介してサーバ管理者に通知すると共に、当該プログラムの他のクライアント装置へのダウンロードを停止する。
【００２０】
サーバ装置１０１のバージョン管理情報更新機能１０１ｂによる、プログラムのダウンロード停止は、バージョン管理データベース１０１ａにおいて記憶管理している当該プログラムに関する情報を操作することで行う。
【００２１】
すなわち、バージョン管理データベース１０１ａは、各クライアント装置１０２〜１０４におけるバージョン構成データベース１０２ａ〜１０４ａと同様、配布用ソース１０１ｃとして記憶管理している各配布用のプログラムの名称とバージョン番号および稼動実績と共に、配布の可否を示すフラグ（配布フラグ）を対応付けたテーブル情報を生成して記憶装置に記憶しており、バージョン管理情報更新機能１０１ｂは、クライアント装置１０２〜１０４から受信したエラー情報の対象であるプログラムの名称とバージョン情報と共に、当該プログラムの配布を禁止する情報（ＮＧ）を、バージョン管理データベース１０１ａに通知し、バージョン管理データベース１０１ａにおいて記憶管理している、当該プログラム配布フラグをＮＧに変更させる。
【００２２】
そして、バージョン管理情報更新機能１０１ｂは、各クライアント装置１０２〜１０４からプログラムのダウンロード要求を受けると、バージョン管理データベース１０１ａで記憶管理している当該プログラムのバージョン番号と共に配布フラグ（ＯＫ／ＮＧ）を返送する。
【００２３】
バージョン管理情報更新機能１０１ｂからの返送を受けた各クライアント装置１０２〜１０４は、要求した当該プログラムのバージョン番号が不一致で、かつ、配布フラグが「ＯＫ」であれば、新バージョンのプログラムのダウンロードを要求し、また、配布フラグが「ＮＧ」であれば、当該プログラムの配布要求を停止する。
【００２４】
以下、このような機能を具備したサーバ装置１０１とクライアント装置１０２〜１０４からなるプログラム配布処理システムの動作について、図２〜図５を用いて説明する。
【００２５】
図２は、図１におけるプログラム配布処理システムの処理動作例を示すフローチャートであり、図３は、図１におけるクライアント装置の本発明に関わる更新プログラム監視処理動作例を示すフローチャート、図４は、図１におけるサーバ装置の本発明に関わるプログラムバージョン管理処理動作例を示すフローチャート、図５は、図１におけるプログラム配布処理システムのプログラム配布制御処理動作例を示すフローチャートである。
【００２６】
図２においては、図１におけるクライアント装置１０２〜１０４のプログラム更新制御機能１０２ｂ〜１０４ｂによる、本発明に係る処理動作例を示しており、このプログラム更新制御機能１０２ｂ〜１０４ｂの処理動作目的は、各クライアント装置１０２〜１０４が、プログラムの更新制御の処理を行い、最新バージョンへ自動更新することである。そのための処理として、次の各ステップ（手順）での処理を実行する。
【００２７】
まず、システム初回起動時に、手順Ｓ２０１での処理において、クライアント装置１０２〜１０４よりサーバ装置１０１にアクセスし、バージョン管理データベース１０１ａに照会をかけ、自装置のバージョン構成データベース１０２ａ〜１０４ｂで記憶管理しているプログラムに関して、バージョン管理データベース１０１ａで管理している当該プログラムに関しての情報（バージョン番号、配布フラグＯＫ／ＮＧ）を取得する。
【００２８】
次に、手順Ｓ２０２での処理において、サーバ装置１０１から取得した当該プログラムのバージョン番号と自装置（クライアント装置１０２〜１０４のバージョン構成データベース１０２ａ〜１０４ａ）が保持する当該プログラムのバージョン番号とを比較する。
【００２９】
それぞれのバージョン番号が一致した場合は、そのまま、プログラム更新制御機能１０２ｂ〜１０４ｂの処理を終了するが、不一致の場合は、手順Ｓ２０３の処理に分岐し、当該プログラムの配布許可をチェックする。
【００３０】
ここで、バージョン管理データベース１０１ａにおいて、当該プログラムの配布フラグがＮＧで、配布禁止となっている場合、プログラム更新制御機能１０２ｂ〜１０４ｂの処理は終了するが、配布許可（ＯＫ）されている場合は、手順Ｓ２０４の処理において、サーバ装置１０１から最新バージョンの当該プログラムを取得する。
【００３１】
そして、手順Ｓ２０５の処理において、当該プログラムの更新を行い、その後、手順Ｓ２０６の処理において、最新のプログラム適用状況をバージョン構成データベース１０２ａ〜１０４ａに反映させ、プログラム更新制御機能１０２ｂ〜１０４ｂの処理を終了する。
【００３２】
図３においては、図１におけるクライアント装置１０２〜１０４のプログラム状態監視機能１０２ｃ〜１０４ｃの本発明に係る処理動作例を示しており、このプログラム状態監視機能１０２ｃ〜１０４ｃの処理動作目的は、各クライアント装置１０２〜１０４が、プログラム状態監視の処理を行い、最新バージョンの初回起動時の状態監視、および状態監視下で異常検知した際に最新バージョンの配布禁止をサーバ装置１０１へフィードバックすることである。そのための処理として、次の各ステップ（手順）での処理を実行する。
【００３３】
最新バージョンの適用後、ユーザによる当該プログラムの初回起動を契機に、手順Ｓ３０１の処理において、更新プログラムの状態監視を開始する。これにより、フィードバック処理を実施するかどうか判断する。
【００３４】
次に、手順Ｓ３０２の処理で、当該プログラムの終了状態をチェックする。ここでは、正常ＥＯＦが検出されるか否かで、当該プログラムの正常終了・異常終了を判別する。
【００３５】
正常ＥＯＦが検出された場合には、手順Ｓ３０３の処理に移り、当該プログラムの最新バージョン番号を自装置内のバージョン構成データベース１０２ａ〜１０４ａに反映させ、手順Ｓ３０７の処理に進み、更新プログラムの監視処理を終了する。
【００３６】
また、正常ＥＯＦが検出されなかった場合には、手順Ｓ３０４の処理に移り、当該プログラムを旧バージョンのものに変更するバージョンバック処理を実行し、手順Ｓ３０５の処理により、このバージョンバック処理の状況を自身のバージョン構成データベース１０２ａ〜１０４ａに反映させる。
【００３７】
そして、手順Ｓ３０６の処理において、当該バージョンバック処理に関してのエラー情報を生成して、サーバ装置１０１へ送信し、手順Ｓ３０７の処理に進み、更新プログラムの監視処理を終了する。
【００３８】
図４においては、図１におけるサーバ装置１０１のバージョン管理情報更新機能１０１ｂの本発明に係る処理動作例を示しており、このバージョン管理情報更新機能１０１ｂの処理動作の目的は、各クライアント装置１０２〜１０４へのプログラム配布制御を行うことである。そのための処理として、次の各ステップ（手順）での処理を実行する。
【００３９】
サーバ装置１０１は、クライアント装置１０２〜１０４からのエラー情報を受信すると、手順Ｓ４０１での処理により、バージョン管理データベース１０１ａにエラー情報を書き込み、当該プログラムの配布を禁止する。続いて、手順Ｓ４０２での処理により、異常検知のオペレータコールを実施し、サーバ管理者の介入を促す。
【００４０】
図５においては、図３における更新プログラム状態監視開始（手順Ｓ３０１）から更新プログラム状態監視終了（手順Ｓ３０７）までの処理、および、図４における監視プログラムの異常検知時のプログラム配布禁止（手順Ｓ４０１）までの本発明に係る処理例を示している。
【００４１】
バージョン構成テーブル３０１は、図１におけるクライアント装置１０２〜１０４のバージョン構成データベース１０２ａ〜１０４ａにより生成され管理されるものであり、バージョン管理テーブル３０２は、図１におけるサーバ装置１０１のバージョン管理データベース１０１ａにより生成され管理されるものである。
【００４２】
クライアント装置１０２〜１０４側で管理するバージョン構成テーブル３０１においては、適用プログラムに関する情報として、プログラム名称、バージョン番号、初回起動の有無を示す初回起動フラグ、および適用日付のそれぞれが対応付けて格納されている。
【００４３】
サーバ装置１０１で管理するバージョン管理テーブル３０２においては、プログラムの名称に対応付けて、バージョン番号、当該プログラムのダウンロード可否を示す配布フラグ、配布開始年月日、配布禁止の原因となったエラー情報（エラーを送信したクライアント装置１０２〜１０４名、エラー内容）が格納されている。
【００４４】
尚、バージョン構成テーブル３０１における適用日付、および、バージョン管理テーブル３０２における配布開始年月日とエラー情報は、異常検知時に、サーバ装置１０１の管理者（サーバ管理者）により参照される情報であり、本処理では使用しない。
【００４５】
クライアント装置１０２〜１０４は、プログラム起動時にプログラム名称をキーにバージョン構成テーブル３０１を照会し、初回起動フラグを取得する。初回起動フラグがスペースの場合、当該プログラムはクライアント装置１０２〜１０４において初回起動であるとみなし、図３における手順Ｓ３０１での処理、すなわち、更新プログラムの状態監視を開始する処理を実行する。
【００４６】
状態監視下において、更新プログラムの実行が正常終了した場合、図３における手順Ｓ３０３とＳ３０７での処理、すなわち、バージョン構成データベース１０２ａ〜１０４ａにおける正常更新処理を実行して、バージョン構成テーブル３０１における初回起動フラグにＥＯＦを書き込み、当該更新プログラムの状態監視を終了する。
【００４７】
一方、状態監視下において、更新プログラムの実行が異常終了した場合、図３における手順Ｓ３０４でのバージョンバック処理と、手順Ｓ３０５でのバーション構成テーブル３０１へのバージョンバック情報の反映処理を行った後、手順Ｓ３０６での処理、すなわち、サーバ装置１０１へのエラー情報の送信処理を実行する。
【００４８】
このエラー情報を受信したサーバ装置１０１は、バージョン管理情報更新機能１０１ｂにより、図５における手順Ｓ５０１における処理を実行して、バージョン管理テーブル３０３における当該プログラムの配布フラグにＮＧを書き込み、以降のプログラム配布を禁止する。
【００４９】
以上、図１〜図５を用いて説明したように、本例のプログラム配信処理システムでは、サーバ装置１０１に、更新プログラムの配布機能と共に、プログラム配布の可否を制御する配布制御機能（バージョン管理データベース１０１とバージョン管理情報更新機能１０１ｂ）を設け、バージョン管理データベース１０１において、プログラムの名称とバージョン番号に、プログラム配布の可否を示す情報（配布フラグ）を関連付けて記憶管理する。
【００５０】
そして、クライアント装置１０２〜１０４からのエラー情報を受信すると、バージョン管理情報更新機能１０１ｂは、バージョン管理データベース１０１ａにおける配布フラグをＮＧに更新して、以降の当該プログラムの配布を停止すると共に、当該プログラムの配布を停止した旨をサーバ管理者に通知する。
【００５１】
各クライアント装置１０２〜１０４には、更新プログラムの配布要求機能（バージョン構成データベース１０２ａ〜１０４ａとプログラム更新制御機能１０２ｂ〜１０４ｂ）と当該更新プログラムの異常動作の監視を行うプログラム状態監視機能１０２ｃ〜１０４ｃを設け、バージョン構成データベース１０２ａ〜１０４ａは、自装置内にあるプログラムの名称とバージョン番号および稼動実績を関連付けて記憶管理し、プログラム更新制御機能１０２ｂ〜１０４ｂは、システム起動時にサーバ装置１０１にアクセスして、バージョン管理データベース１０１ａから、自装置で用いているプログラムのバージョン番号を取得して、自装置のバージョン構成データベース１０２ａ〜１０４ａ内で記憶管理しているバージョン番号と照合し、不一致の場合、サーバ装置１０１から当該プログラムの最新版をダウンロードして、自装置内の当該プログラムを更新する。
【００５２】
さらに、プログラム状態監視機能１０２ｃ〜１０４ｃにより、更新したプログラムの初回起動をチェックして、当該プログラムの異常の有無を監視し、起動した最新版のプログラムの異常コードを検出した場合、直ちに当該異常の内容を示すエラー情報を生成してサーバ装置１０１に送信する。
【００５３】
尚、プログラム状態監視機能１０２ｃ〜１０４ｃによる更新プログラムにおける異常の有無の監視は、更新した最新版のプログラムを起動してから予め定められた時間内に正常ＥＯＦを検出するか否か、もしくは、更新した最新版のプログラムを起動してから予め定められた時間内に当該プログラムからの異常コードを検出するか否かにより行う。
【００５４】
クライアント装置１０２〜１０４からのエラー情報を受信したサーバ装置１０１は、バージョン管理情報更新機能１０１ｂにより、バージョン管理データベース１０１ａにおける配布フラグをＮＧに更新して、以降の当該プログラムの配布を停止すると共に、当該プログラムの配布を停止した旨をサーバ管理者に通知する。
【００５５】
このように、本例のプログラム配信処理によれば、各クライアント装置１０２〜１０４において、それぞれのクライアント装置１０２〜１０４で用いているプログラムの名称とバージョン情報および配布可否等の情報を保持し、プログラムの配布の要否を判定し、配布が必要な場合にのみ、クライアント装置１０２〜１０４側からサーバ装置１０１に対して当該プログラムの配布を要求する構成としており、必要最小限のアクセスにより最新のプログラム環境を保つことが可能になる。
【００５６】
また、本例によれば、クライアント装置１０２〜１０４毎に任意のタイミングでプログラムのバージョンアップを行うことが可能となり、クライアント装置１０２〜１０４における稼働時間の削減、および、サーバ装置１０１へのアクセス負荷の低減を図ることができる。
【００５７】
さらに、本例によれば、ダウンロードしたプログラムの異常を検知したクライアント装置１０２〜１０４からのサーバ装置１０１へのフィードバックにより、サーバ装置１０１での、異常を引き起こす可能性のあるプログラムの配布の即時中止、および、サーバ管理者への即時検知が可能となり、障害を居所化し、致命的な障害発生を防ぐことができ、クライアントサーバシステムの品質低下を防ぐことが可能となる。
【００５８】
尚、本発明は、図１〜図５を用いて説明した例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能である。例えば、本例では、クライアント装置１０２〜１０４の台数も３台に限るものではなく、より多くのクライアント装置を設けた構成としても良い。
【００５９】
また、クライアント装置１０２は直接ネットワーク１００に接続し、クライアント装置１０３，１０４はそれぞれＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を介してネットワーク１００に接続されている構成としているが、このようなネットワーク構成に制限されるものではなく、例えば、クライアント装置１０２〜１０４のそれぞれをＬＡＮで接続した構成としても良く、また、クライアント装置１０２〜１０４のそれぞれを直接ネットワーク１００に接続した構成としても良い。
【００６０】
また、本例では、サーバ装置１０１およびクライアント装置１０２〜１０４の構成として、キーボードや光ディスクの駆動装置の無いコンピュータ構成としても良い。また、本例では、光ディスクを記録媒体として用いているが、ＦＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ）等を記録媒体として用いることでも良い。また、プログラムのインストールに関しても、通信装置を介してネットワーク経由でプログラムをダウンロードしてインストールすることでも良い。
【図面の簡単な説明】
【００６１】
【図１】本発明に係るプログラム配布処理システムの構成例を示すブロック図である。
【図２】図１におけるプログラム配布処理システムの処理動作例を示すフローチャートである。
【図３】図１におけるクライアント装置の本発明に関わる更新プログラム監視処理動作例を示すフローチャートである。
【図４】図１におけるサーバ装置の本発明に関わるプログラムバージョン管理処理動作例を示すフローチャートである。
【図５】図１におけるプログラム配布処理システムのプログラム配布制御処理動作例を示すフローチャートである。
【符号の説明】
【００６２】
１００：ネットワーク、１０１：サーバ装置、１０１ａ：バージョン管理データベース、１０１ｂ：バージョン管理情報更新機能、１０１ｃ：配布用ソース、１０２〜１０４：クライアント装置、１０２ａ〜１０４ａ：バージョン構成データベース、１０２ｂ〜１０４ｂ：プログラム更新制御機能、１０２ｃ〜１０４ｃ：プログラム状態監視機能、３０１：バージョン構成テーブル、３０２：バージョン管理テーブル。
【図１】
2010026835.tif 000003
【図２】
2010026835.tif 000004
【図３】
2010026835.tif 000005
【図４】
2010026835.tif 000006
【図５】
2010026835.tif 000007