(57)【要約】【課題】ソフトウェアの配布にかかる負荷を軽減することが可能な配布サーバを提供する。【解決手段】配信先サーバ決定部２０４は、複数の監視対象装置の中から、複数の端末装置のそれぞれに実装された実装ソフトウェアを更新する実行プログラムの配布先となる監視対象装置を決定する。更新プログラム配信部２０６は、配信先サーバ決定部２０４が決定した監視対象装置に、実行プログラムを送信する。情報生成部２０５は、実行プログラムを配信先サーバ決定部２０４が決定した監視対象装置から取得する旨の更新情報を作成する。更新情報配信部２０７は、その更新情報を、配信先サーバ決定部２０４が決定した監視対象装置と異なる監視対象装置に送信する。【選択図】図４
2008225878.tif 000002
【特許請求の範囲】
【請求項１】
複数の端末装置と、前記複数の端末装置と接続可能な配布サーバと、を含む配布システムであって、
前記配布サーバは、
配布用ソフトウェアを記憶するサーバ記憶部と、
前記複数の端末装置の中から前記配布用ソフトウェアの配布先となる端末装置を決定する決定部と、
前記決定部が決定した端末装置に前記配布用ソフトウェアを送信するソフトウェア配信部と、
前記配布用ソフトウェアを前記決定部が決定した端末装置から取得する旨の取得指示を作成する作成部と、
前記作成部が作成した取得指示を、前記決定部が決定した端末装置と異なる端末装置に送信する取得指示配信部と、を含み、
前記複数の端末装置のそれぞれは、
前記配布先サーバと通信する通信部と、
前記通信部が前記配布用ソフトウェアを受信した場合、該配布用ソフトウェアを記憶する端末記憶部と、
前記通信部が前記取得指示を受信した場合、該取得指示にて指示された端末装置の端末記憶部から前記配布用ソフトウェアを取得する入手部と、を含む、配布システム。
【請求項２】
請求項１に記載の配布システムにおいて、
前記配布用ソフトウェアは、前記複数の端末装置のそれぞれに実装された実装ソフトウェアを更新する更新用ソフトウェアであり、
前記サーバ記憶部は、前記実装ソフトウェアの最新バージョンを記憶し、
前記端末記憶部は、自装置に実装された実装ソフトウェアと自装置の識別情報とを記憶し、
前記複数の端末装置のそれぞれは、前記実装ソフトウェアのバージョンを判定し、該バージョンを前記識別情報と共に前記配布サーバに送信するバージョン送信部を含み、
前記配布サーバは、前記複数の端末装置のそれぞれから前記バージョンを前記識別情報と共に受信する受信部と、前記受信部が受信した識別情報ごとに、該識別情報と共に受信されたバージョンが前記サーバ記憶部内の最新バージョンと同じか否かを判定する判定部と、を含み、
前記決定部は、前記判定部が前記最新バージョンと異なると判定したバージョンと共に受信された識別情報の端末装置の中から、前記更新用ソフトウェアの配布先となる端末装置を決定し、
前記取得指示配信部は、前記取得指示を、前記判定部が前記最新バージョンと異なると判定したバージョンと共に受信された識別情報の端末装置の中の、前記決定部が決定した端末装置と異なる端末装置に送信する、配布システム。
【請求項３】
複数の端末装置と接続可能な配布サーバであって、
配布用ソフトウェアを記憶するサーバ記憶部と、
前記複数の端末装置の中から前記配布用ソフトウェアの配布先となる端末装置を決定する決定部と、
前記決定部が決定した端末装置に前記配布用ソフトウェアを送信するソフトウェア配信部と、
前記配布用ソフトウェアを前記決定部が決定した端末装置から取得する旨の取得指示を作成する作成部と、
前記作成部が作成した取得指示を、前記決定部が決定した端末装置と異なる端末装置に送信する取得指示配信部と、を含む配布サーバ。
【請求項４】
請求項３に記載の配布サーバにおいて、
前記配布用ソフトウェアは、前記複数の端末装置のそれぞれに実装された実装ソフトウェアを更新する更新用ソフトウェアであり、
前記サーバ記憶部は、前記実装ソフトウェアの最新バージョンを記憶し、
前記複数の端末装置のそれぞれから、該端末装置に実装された実装ソフトウェアのバージョンを該端末装置の識別情報と共に受信する受信部と、前記受信部が受信した識別情報ごとに、該識別情報と共に受信されたバージョンが前記サーバ記憶部内の最新バージョンと同じか否かを判定する判定部と、を含み、
前記決定部は、前記判定部が前記最新バージョンと異なると判定したバージョンと共に受信された識別情報の端末装置の中から、前記更新用ソフトウェアの配布先となる端末装置を決定し、
前記取得指示配信部は、前記取得指示を、前記判定部が前記最新バージョンと異なると判定したバージョンと共に受信された識別情報の端末装置の中の、前記決定部が決定した端末装置と異なる端末装置に送信する、配布サーバ。
【請求項５】
配布用ソフトウェアを記憶するサーバ記憶部を含む配布サーバと、前記配布サーバと接続可能な複数の端末装置と、を含む配布システムが行う配布方法であって、
前記配布サーバが、前記複数の端末装置の中から前記配布用ソフトウェアの配布先となる端末装置を決定する決定ステップと、
前記配布サーバが、前記決定された端末装置に前記配布用ソフトウェアを送信するソフトウェア配布ステップと、
前記配布サーバが、前記配布用ソフトウェアを前記決定された端末装置から取得する旨の取得指示を作成する指示作成ステップと、
前記配布サーバが、前記作成された取得指示を、前記決定された端末装置と異なる端末装置に送信する指示配布ステップと、
前記複数の端末装置のそれぞれが、前記配布用ソフトウェアを受信した場合、該配布ソフトウェアを記憶する記憶ステップと、
前記複数の端末装置のそれぞれが、前記取得指示を受信した場合、該取得指示にて指示された端末装置の端末記憶部から前記配布用ソフトウェアを取得する入手ステップと、を含む配布方法。
【請求項６】
請求項５に記載の配布方法において、
前記配布用ソフトウェアは、前記複数の端末装置のそれぞれに実装された実装ソフトウェアを更新する更新用ソフトウェアであり、
前記サーバ記憶部は、前記実装ソフトウェアの最新バージョンを記憶し、
前記複数の端末装置のそれぞれは、自装置に実装された実装ソフトウェアと自装置の識別情報とを記憶する記憶部を含み、
前記複数の端末装置のそれぞれが、前記実装ソフトウェアのバージョンを判定するバージョン判定ステップと、
前記複数の端末装置のそれぞれが、前記判定されたバージョンを前記識別情報と共に前記配布サーバに送信するバージョン送信ステップと、
前記配布サーバが、前記複数の端末装置のそれぞれから、前記バージョンを前記識別情報と共に受信するバージョン受信ステップと、
前記配布サーバが、前記受信された識別情報ごとに、該識別情報と共に受信されたバージョンが前記サーバ記憶部内の最新バージョンと同じか否かを判定する判定ステップと、
前記配布サーバが、前記最新バージョンと異なると判定されたバージョンと共に受信された識別情報の端末装置の中から、前記更新用ソフトウェアの配布先となる端末装置を決定する配布用端末決定ステップと、
前記配布サーバが、前記作成された取得指示を、前記最新バージョンと異なると判定されたバージョンと共に受信された識別情報の端末装置の中の、前記決定された端末装置と異なる端末装置に送信する取得指示配布ステップと、を含む配布方法。
【請求項７】
配布用ソフトウェアを記憶するサーバ記憶部を含み、複数の端末と接続可能な配布サーバが行う配布方法であって、
前記複数の端末装置の中から前記配布用ソフトウェアの配布先となる端末装置を決定する決定ステップと、
前記決定された端末装置に前記配布用ソフトウェアを送信するソフトウェア配布ステップと、
前記配布用ソフトウェアを前記決定された端末装置から取得する旨の取得指示を作成する指示作成ステップと、
前記作成された取得指示を、前記決定された端末装置と異なる端末装置に送信する指示配布ステップと、を含む配布方法。
【請求項８】
請求項７に記載の配布方法において、
前記配布用ソフトウェアは、前記複数の端末装置のそれぞれに実装された実装ソフトウェアを更新する更新用ソフトウェアであり、
前記サーバ記憶部は、前記実装ソフトウェアの最新バージョンを記憶し、
前記複数の端末装置のそれぞれから、該端末装置に実装された実装ソフトウェアのバージョンを、該端末装置の識別情報と共に受信するバージョン受信ステップと、
前記受信された識別情報ごとに、該識別情報と共に受信されたバージョンが前記サーバ記憶部内の最新バージョンと同じか否かを判定する判定ステップと、
前記最新バージョンと異なると判定されたバージョンと共に受信された識別情報の端末装置の中から、前記更新用ソフトウェアの配布先となる端末装置を決定する配布用端末決定ステップと、
前記作成された取得指示を、前記最新バージョンと異なると判定されたバージョンと共に受信された識別情報の端末装置の中の、前記決定された端末装置と異なる端末装置に送信する取得指示配布ステップと、を含む配布方法。
【請求項９】
配布用ソフトウェアを記憶するサーバ記憶部と、複数の端末とに接続されたコンピュータに、
前記複数の端末装置の中から前記配布用ソフトウェアの配布先となる端末装置を決定する決定手順と、
前記決定された端末装置に前記配布用ソフトウェアを送信するソフトウェア配布手順と、
前記配布用ソフトウェアを前記決定された端末装置から取得する旨の取得指示を作成する作成手順と、
前記作成された取得指示を、前記決定された端末装置と異なる端末装置に送信する指示配布手順と、を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェアを配布する配布システム、配布サーバ、配布方法およびプログラムに関する。
【背景技術】
【０００２】
ソフトウェアを利用者に配布するサービスがある。従来では、ソフトウェアがＣＤ―ＲＯＭなどの記録媒体に記録され、その記録媒体が利用者に配布されていた。
【０００３】
しかしながら、近年では、ソフトウェアが、通信ネットワークを介して、利用者の端末に配布されることが多くなっている。
【０００４】
このような技術は、例えば、特許文献１（特開２００１−２６５６０３号公報）に記載の自動振分ソフトウェア配布システムがある。
【０００５】
この自動振分ソフトウェア配布システムでは、サーバが、ソフトウェアと、そのソフトウェアの配布先である端末と、を対応付ける配布予定を作成する。サーバは、その配布予定に基づいて、そのソフトウェアをその配布先である端末に送信する。
【特許文献１】特開２００１−２６５６０３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
一つのサーバが、複数の端末にソフトウェアを配布する場合がある。このような場合、サーバは一度に多くのソフトウェアを配布するため、負荷が大きくなる。
【０００７】
本発明の目的は、ソフトウェアの配布にかかる負荷を軽減することが可能な配布システム、配布サーバ、配布方法およびプログラムを提供することである。
【課題を解決するための手段】
【０００８】
上記の目的を達成するために、本発明の配布システムは、複数の端末装置と、前記複数の端末装置と接続可能な配布サーバと、を含む配布システムであって、前記配布サーバは、配布用ソフトウェアを記憶するサーバ記憶部と、前記複数の端末装置の中から前記配布用ソフトウェアの配布先となる端末装置を決定する決定部と、前記決定部が決定した端末装置に前記配布用ソフトウェアを送信するソフトウェア配信部と、前記配布用ソフトウェアを前記決定部が決定した端末装置から取得する旨の取得指示を作成する作成部と、前記作成部が作成した取得指示を、前記決定部が決定した端末装置と異なる端末装置に送信する取得指示配信部と、を含み、前記複数の端末装置のそれぞれは、前記配布先サーバと通信する通信部と、前記通信部が前記配布用ソフトウェアを受信した場合、該配布用ソフトウェアを記憶する端末記憶部と、前記通信部が前記取得指示を受信した場合、該取得指示にて指示された端末装置の端末記憶部から前記配布用ソフトウェアを取得する入手部と、を含む。
【０００９】
また、本発明の配布サーバは、配布用ソフトウェアを記憶するサーバ記憶部を含む配布サーバと、前記配布サーバと接続可能な複数の端末装置と、を含む配布システムが行う配布方法であって、前記配布サーバが、前記複数の端末装置の中から前記配布用ソフトウェアの配布先となる端末装置を決定する決定ステップと、前記配布サーバが、前記決定された端末装置に前記配布用ソフトウェアを送信するソフトウェア配布ステップと、前記配布サーバが、前記配布用ソフトウェアを前記決定された端末装置から取得する旨の取得指示を作成する指示作成ステップと、前記配布サーバが、前記作成された取得指示を、前記決定された端末装置と異なる端末装置に送信する指示配布ステップと、前記複数の端末装置のそれぞれが、前記配布用ソフトウェアを受信した場合、該配布ソフトウェアを記憶する記憶ステップと、前記複数の端末装置のそれぞれが、前記取得指示を受信した場合、該取得指示にて指示された端末装置の端末記憶部から前記配布用ソフトウェアを取得する入手ステップと、を含む。
【００１０】
また、本発明の配布システムが行う配布方法は、配布用ソフトウェアを記憶するサーバ記憶部を含む配布サーバと、前記配布サーバと接続可能な複数の端末装置と、を含む配布システムが行う配布方法であって、前記配布サーバが、前記複数の端末装置の中から前記配布用ソフトウェアの配布先となる端末装置を決定する決定ステップと、前記配布サーバが、前記決定された端末装置に前記配布用ソフトウェアを送信するソフトウェア配布ステップと、前記配布サーバが、前記配布用ソフトウェアを前記決定された端末装置から取得する旨の取得指示を作成する指示作成ステップと、前記配布サーバが、前記作成された取得指示を、前記決定された端末装置と異なる端末装置に送信する指示配布ステップと、前記複数の端末装置のそれぞれが、前記配布用ソフトウェアを受信した場合、該配布ソフトウェアを記憶する記憶ステップと、前記複数の端末装置のそれぞれが、前記取得指示を受信した場合、該取得指示にて指示された端末装置の端末記憶部から前記配布用ソフトウェアを取得する入手ステップと、を含む。
【００１１】
また、本発明の配布サーバが行う配布方法は、配布用ソフトウェアを記憶するサーバ記憶部を含み、複数の端末と接続可能な配布サーバが行う配布方法であって、前記複数の端末装置の中から前記配布用ソフトウェアの配布先となる端末装置を決定する決定ステップと、前記決定された端末装置に前記配布用ソフトウェアを送信するソフトウェア配布ステップと、前記配布用ソフトウェアを前記決定された端末装置から取得する旨の取得指示を作成する指示作成ステップと、前記作成された取得指示を、前記決定された端末装置と異なる端末装置に送信する指示配布ステップと、を含む。
【００１２】
上記の発明によれば、配布用ソフトウェアが、配布先として決定された端末装置に送信される。また、その配布用ソフトウェアをその決定された端末装置から取得する旨の取得指示が、その決定された端末装置と異なる端末装置に送信される。
【００１３】
このため、サーバが複数の端末装置に配布用ソフトウェアを送信しなくてもよくなるため、ソフトウェアの配布にかかる負荷を軽減することが可能になる。
【００１４】
また、前記配布用ソフトウェアは、前記複数の端末装置のそれぞれに実装された実装ソフトウェアを更新する更新用ソフトウェアであり、前記サーバ記憶部は、前記実装ソフトウェアの最新バージョンを記憶し、前記端末記憶部は、自装置に実装された実装ソフトウェアと自装置の識別情報とを記憶し、前記複数の端末装置のそれぞれは、前記実装ソフトウェアのバージョンを判定し、該バージョンを前記識別情報と共に前記配布サーバに送信するバージョン送信部を含み、前記配布サーバは、前記複数の端末装置のそれぞれから前記バージョンを前記識別情報と共に受信する受信部と、前記受信部が受信した識別情報ごとに、該識別情報と共に受信されたバージョンが前記サーバ記憶部内の最新バージョンと同じか否かを判定する判定部と、を含み、前記決定部は、前記判定部が前記最新バージョンと異なると判定したバージョンと共に受信された識別情報の端末装置の中から、前記更新用ソフトウェアの配布先となる端末装置を決定し、前記取得指示配信部は、前記取得指示を、前記判定部が前記最新バージョンと異なると判定したバージョンと共に受信された識別情報の端末装置の中の、前記決定部が決定した端末装置と異なる端末装置に送信することが望ましい。
【００１５】
上記の発明によれば、更新用ソフトウェアを配布する端末装置が、最新バージョンと異なるバージョンの実装ソフトウェアが実装された端末装置から決定される。また、取得指示が、その最新バージョンと異なるバージョンの実装ソフトウェアが実装された端末装置の中の、その決定された端末装置と異なる端末装置に送信される。
【００１６】
このため、実装ソフトウェアを更新する必要のある端末装置にだけ、その実装ソフトウェアを更新する更新用ソフトウェアを配布することが可能になる。
【発明の効果】
【００１７】
本発明によれば、ソフトウェアの配布にかかる負荷を軽減することが可能になる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の実施例について図面を参照して説明する。
【００１９】
図１は、本発明の一実施例の配布システムを示したブロック図である。
【００２０】
図１において、配布システムは、監視対象装置１ないし４と、監視サーバ１０とを含む。なお、監視対象装置の数は、図１では、４だけだが、実際には、４に限らず適宜変更可能である。
【００２１】
また、監視対象装置１ないし４と、監視サーバ１０とは、通信ネットワーク（図示せず）を介して相互に接続可能である。
【００２２】
監視対象装置１ないし４は、例えば、ＰＣなどの端末装置である。
【００２３】
先ず、監視対象装置１ないし４の構成について説明する。図２は、監視対象装置１ないし４の構成の一例を示したブロック図である。
【００２４】
図２において、監視対象装置１ないし４は、端末記憶部１０１と、端末通信部１０２と、情報作成部１０３と、更新プログラム入手部１０４と、更新プログラム実行部１０５と、更新結果通報部１０６とを含む。
【００２５】
端末記憶部１０１は、自装置に実装された実装ソフトウェアと、自装置の装置名とを記憶する。
【００２６】
実装ソフトウェアは、ソフトウェア名と、設定情報とを含む。ソフトウェア名は、その実装ソフトウェアの名前であり、その実装ソフトウェアを特定する情報である。設定情報は、実装ソフトウェアの各種設定を示した情報であり、例えば、実装ソフトウェアのバージョンを含む。なお、実装ソフトウェアは、一つでもよいし、複数でもよいが、本実施例では、複数とする。
【００２７】
装置名は、識別情報の一例であり、自装置を特定する。
【００２８】
端末通信部１０２は、監視サーバ１０と通信する。具体的には、端末通信部１０２は、監視サーバ１０から、実行プログラムと、バージョン取得指示と、更新情報とを受信する。
【００２９】
実行プログラムは、実装ソフトウェアを更新する更新用ソフトウェアであり、実装ソフトウェアに応じて定められている。
【００３０】
バージョン取得指示は、実装ソフトウェアのバージョンを取得する旨の指示である。
【００３１】
更新情報は、実行プログラム名と、配布先サーバとなる監視対象装置の装置名とを含む情報であり、その実行プログラムをその装置名の配布先サーバから取得する旨の取得指示として用いられる。ここで、配布先サーバとなる監視対象装置は、監視サーバ１０にて決定される。なお、実行プログラム名は、実行プログラムの名前であり、その実行プログラムを特定する情報である。
【００３２】
情報作成部１０３は、端末通信部１０２がバージョン取得指示を受信すると、端末記憶部１０１内の複数の実装ソフトウェアからバージョン情報を作成する。バージョン情報では、実装ソフトウェアのバージョンがソフトウェア名ごとに対応付けられている。
【００３３】
具体的には、情報作成部１０３は、複数の実装ソフトウェアのそれぞれから、その実装ソフトウェアのバージョンを判定する。例えば、実装ソフトウェアがバージョンを含めば、そのバージョンをその実装ソフトウェアのバージョンと判定する。情報作成部１０３は、その判定したバージョンを、その実装ソフトウェアが含むソフトウェア名ごとに対応付けてバージョン情報を作成する。
【００３４】
図３は、バージョン情報の一例を示した説明図である。図３においてバージョン情報３００は、ソフトウェア３０１と、バージョン３０２とを含む。
【００３５】
ソフトウェア３０１は、実装ソフトウェアの名前である。バージョン３０２は、実装ソフトウェアのバージョンである。
【００３６】
図２に戻る。情報作成部１０３は、その作成したバージョン情報を、端末記憶部１０１内の装置名と共に監視サーバ１０に送信する。
【００３７】
端末通信部１０２が実行プログラムを受信した場合、更新プログラム入手部１０４は、その実行プログラムを端末記憶部１０１に記憶する。
【００３８】
また、端末通信部１０２が更新情報を受信した場合、更新プログラム入手部１０４は、端末通信部１０２が受信した更新情報にて指示された監視対象装置（配布先サーバ）の端末記憶部１０１から、その更新情報にて指示された実行プログラムを取得する。
【００３９】
更新プログラム実行部１０５は、端末通信部１０２が受信した実行プログラム、または、更新プログラム入手部１０４が取得した実行プログラムを実行して、その実行プログラムに対応した、端末記憶部１０１内の実装ソフトウェアを更新する。
【００４０】
更新結果通報部１０６は、更新プログラム実行部１０５の実行結果を監視サーバ１０に送信する。実行結果は、例えば、実装ソフトウェアの更新の成否を示す。
【００４１】
次に、監視サーバ１０の構成について説明する。図４は、監視サーバ１０の構成の一例を示したブロック図である。
【００４２】
図４において、監視サーバ１０は、データベース記憶部２０１と、サーバ通信部２０２と、バージョン比較部２０３と、配信先サーバ決定部２０４と、情報生成部２０５と、更新プログラム配信部２０６と、更新情報配信部２０７とを含む。
【００４３】
データベース記憶部２０１は、装置データベースと、ソフトデータベースとを記憶する。
【００４４】
装置データベースは、監視対象装置１ないし４のそれぞれの装置名を含む。
【００４５】
ソフトデータベースでは、実装ソフトウェアの最新バージョンと、その実装ソフトウェアを最新バージョンに更新する実行プログラムと、がソフトウェア名ごとに対応付けられている。実行プログラムは、その実行プログラム名を含む。なお、ソフトデータベースは、監視対象装置１ないし４のそれぞれに実装された全ての実装ソフトウェアのソフトウェア名を含む。
【００４６】
図５は、ソフトデータベースの一例を示した説明図である。
【００４７】
図５において、ソフトデータベース５００は、ソフトウェア５０１と、最新バージョン５０２と、最新実行プログラム５０３とを含む。
【００４８】
ソフトウェア５０１は、実装ソフトウェアの名前である。最新バージョン５０２は、その実装ソフトウェアの最新バージョンである。最新実行プログラム５０３は、その実装ソフトウェアを最新バージョン５０２に更新する更新用ソフトウェアである。
【００４９】
図４に戻る。サーバ通信部２０２は、監視対象装置１ないし４のそれぞれと通信する。具体的には、サーバ通信部２０２は、監視対象装置１ないし４のそれぞれから、バージョン情報を装置名と共に受信する。
【００５０】
バージョン比較部２０３は、バージョン取得指示を、監視対象装置１ないし４のそれぞれに送信する。なお、バージョン比較部２０３は、例えば、定期的に、そのバージョン取得指示を送信する。
【００５１】
バージョン比較部２０３は、サーバ通信部２０２が監視対象装置１ないし４のそれぞれから受信した装置名ごとに、以下の判定処理を行う。
【００５２】
具体的には、バージョン比較部２０３は、その装置名と共に受信されたバージョン情報内のソフトウェア名ごとに、そのソフトウェア名と対応付けられたバージョンと、データベース記憶部２０１内のそのソフトウェア名と対応付けられた最新バージンとを比較して、そのバージョンがその最新バージョンと同じか否かを判定する。
【００５３】
ここで、最新バージョンと異なるバージョンと対応付けられたソフトウェア名は、更新の必要のある実装ソフトウェアのソフトウェア名になる。
【００５４】
配信先サーバ決定部２０４は、バージョン比較部２０３にて最新バージョンと異なると判定されたバージョンと対応付けられたソフトウェア名ごとに、そのバージョンを含むバージョン情報と共に受信した装置名の監視対象装置の中から、そのソフトウェア名に対する配布先サーバを決定する。なお、ソフトウェア名に対する配布先サーバは、そのソフトウェア名とデータベース記憶部２０１内で対応付けられた実行プログラムの配布先となる監視対象装置である。
【００５５】
情報生成部２０５は、バージョン比較部２０３にて最新バージョンと異なると判定されたバージョンと対応付けられたソフトウェア名ごとに、そのソフトウェア名に対する更新情報を作成する。ソフトウェア名に対する更新情報は、データベース記憶部２０１内でそのソフトウェア名と対応付けられた実行プログラムをそのソフトウェア名に対する配布先サーバから取得する旨の取得指示であり、その実行プログラム名と、配布先サーバとなる監視対象装置の装置名を含む。
【００５６】
情報生成部２０５は、更新情報作成部２０５ａと、更新情報追加部２０５ｂとを含む。
【００５７】
更新情報作成部２０５ａは、バージョン比較部２０３にて最新バージョンと異なると判定されたバージョンのソフトウェア名ごとに、そのソフトウェア名と対応付けられた実行プログラム内の実行プログラム名を、データベース記憶部２０１から、そのソフトウェア名に対する更新情報として取得する。
【００５８】
更新情報追加部２０５ｂは、バージョン比較部２０３にて最新バージョンと異なると判定されたバージョンのソフトウェア名ごとに、配信先サーバ決定部２０４にてそのソフトウェア名に対する配布先サーバとして決定された監視対象装置の装置名を、更新情報作成部２０５ａにて作成されたそのソフトウェア名に対する更新情報に追加する。
【００５９】
これにより、そのソフトウェア名ごとに、そのソフトウェア名に対する更新情報が作成される。
【００６０】
更新プログラム配信部２０６は、バージョン比較部２０３にて最新バージョンと異なると判定されたバージョンと対応付けられたソフトウェア名ごとに、データベース記憶部２０１内でそのソフトウェア名と対応付けられた実行プログラムを、そのソフトウェア名に対する配布先サーバに送信する。
【００６１】
更新情報配信部２０７は、バージョン比較部２０３にて最新バージョンと異なると判定されたバージョンと対応付けられたソフトウェア名ごとに、そのソフトウェア名に対する更新情報を、そのバージョンを含むバージョン情報と共に受信された装置名の監視対象装置の中の、配信先サーバ決定部２０４が決定したそのソフトウェア名に対する配布先サーバ（監視対象装置）と異なる監視対象装置に送信する。
【００６２】
図６は、ある監視対象装置に送信される複数の更新情報の一例を示した説明図である。図６において、更新情報６００は、実行プログラム名６０１と、配布先サーバ６０２とを含む。
【００６３】
実行プログラム名６０１は、実行プログラムの名前である。配布先サーバ６０２は、実行プログラム名６０１を取得する監視対象装置の装置名である。
【００６４】
次に動作を説明する。
【００６５】
図７は、配布システムの動作例を説明するためのフローチャートである。
【００６６】
ステップＳ７０１では、バージョン比較部２０３は、バージョン取得指示を作成する。バージョン比較部２０３は、データベース記憶部２０１内の装置名を全て確認する。バージョン比較部２０３は、そのバージョン取得指示を、サーバ通信部２０２を介して、その全ての装置名の監視対象装置１ないし４のそれぞれの端末通信部１０２に送信する。
【００６７】
端末通信部１０２は、そのバージョン取得指示を受信すると、そのバージョン取得指示を情報作成部１０３に送信する。
【００６８】
情報作成部１０３は、そのバージョン取得指示を受信すると、端末記憶部１０１内の複数の実装ソフトウェアのそれぞれのバージョンを判定する。情報作成部１０３は、そのバージョンを、その実装ソフトウェアが含むソフトウェア名ごとに対応付けてバージョン情報を作成する。
【００６９】
情報作成部１０３は、バージョン情報を作成すると、端末記憶部１０１から装置名を取得し、その装置名と共に、そのバージョン情報を、端末通信部１０２を介して監視サーバ１０のサーバ通信部２０２に送信する。サーバ通信部２０２は、そのバージョン情報と共にその装置名を受信すると、ステップＳ７０２を実行する。
【００７０】
ステップＳ７０２では、サーバ通信部２０２は、そのバージョン情報をその装置名と共にバージョン比較部２０３に送信する。
【００７１】
バージョン比較部２０３は、そのバージョン情報と共にその装置名を受信すると、そのバージョン情報および装置名を対応付ける。
【００７２】
バージョン比較部２０３は、そのバージョン情報と共にその装置名を受信するたびに、上記の対応付けを行い、データベース記憶部２０１内の全ての装置名とバージョン情報とを対応付けると、その装置名ごとに、以下の判定処理を行う。
【００７３】
具体的には、バージョン比較部２０３は、その装置名と対応付けられたバージョン情報内のソフトウェア名ごとに、そのソフトウェア名と対応付けられたバージョンと、データベース記憶部２０１内のそのソフトウェア名と対応付けられた最新バージンとを比較して、そのバージョンがその最新バージョンと同じか否かを判定する。
【００７４】
バージョン比較部２０３は、少なくとも一つの装置名において、最新バージョンと異なるバージョンがあると、実装ソフトウェアを更新する必要があると判定し、ステップＳ７０３を実行する。一方、バージョン比較部２０３は、全ての装置名において、最新バージョンと異なるバージョンがないと、実装ソフトウェアを更新する必要がないと判定し、ステップＳ７０１を実行する。
【００７５】
ステップＳ７０３では、バージョン比較部２０３は、実装ソフトウェアを更新する必要のある監視対象装置の装置名を、その実装ソフトウェアのソフトウェア名ごとに対応付けた装置テーブルを作成する。
【００７６】
ここで、装置テーブル内の装置名は、最新バージョンと異なるバージョンを含むバージョン情報と対応付けられた装置名である。また、装置テーブル内のソフトウェア名は、最新バージョンと異なるバージョンと対応付けられたソフトウェア名である。
【００７７】
バージョン比較部２０３は、その装置テーブルを、更新情報作成部２０５ａと、配信先サーバ決定部２０４と、に送信する。
【００７８】
更新情報作成部２０５ａは、その装置テーブルを受信すると、その装置テーブル内のソフトウェア名ごとに、そのソフトウェア名と対応付けられた実行プログラム内の実行プログラム名を、そのソフトウェア名に対する更新情報として取得し、その更新情報をその装置テーブルに追加する。このとき、更新情報作成部２０５ａは、そのソフトウェア名に対する更新情報を、装置テーブル内のそのソフトウェア名に対応付ける。
【００７９】
更新情報作成部２０５ａは、その更新情報を追加した装置テーブルを更新情報追加部２０５ｂに送信する。更新情報追加部２０５ｂは、その装置テーブルを受信する。
【００８０】
一方、配信先サーバ決定部２０４は、その装置テーブルを受信すると、ステップＳ７０４を実行する。
【００８１】
ステップＳ７０４では、配信先サーバ決定部２０４は、その装置テーブル内のソフトウェア名ごとに、そのソフトウェア名と対応付けられた装置名の監視対象装置の中から、そのソフトウェア名に対する配布先サーバを決定する。配信先サーバ決定部２０４は、そのソフトウェア名に対する配布先サーバの装置名（以下、サーバ名と称する）を、そのソフトウェア名ごとに対応付けたサーバテーブルを作成する。
【００８２】
配信先サーバ決定部２０４は、そのサーバテーブルを、更新情報追加部２０５ｂと、更新プログラム配信部２０６と、に送信する。
【００８３】
更新情報追加部２０５ｂは、そのサーバテーブルを受信すると、そのサーバテーブル内のソフトウェア名ごとに、そのソフトウェア名と対応付けられたサーバ名を、その装置テーブル内のそのソフトウェア名と対応付けられた更新情報に追加する。
【００８４】
更新情報追加部２０５ｂは、ソフトウェア名を追加した装置テーブルを、更新情報配信部２０７に送信する。
【００８５】
一方、更新プログラム配信部２０６は、そのサーバテーブルを受信すると、ステップＳ７０５を実行する。
【００８６】
ステップＳ７０５では、更新プログラム配信部２０６は、そのサーバテーブル内のソフトウェア名ごとに、そのソフトウェアと対応付けられた実行プログラムをデータベース記憶部２０１から取得する。更新プログラム配信部２０６は、そのソフトウェア名ごとに、その実行プログラムを、そのソフトウェア名と対応付けられたサーバ名の監視対象装置の端末通信部１０２に、サーバ通信部２０２を介して送信する。
【００８７】
端末通信部１０２は、その実行プログラムを受信すると、その実行プログラムを更新プログラム入手部１０４に送信する。
【００８８】
更新プログラム入手部１０４は、その実行プログラムを受信すると、その実行プログラムを端末記憶部１０１に記憶し、その実行プログラムを更新プログラム実行部１０５に送信する。
【００８９】
更新プログラム実行部１０５は、その実行プログラムを受信すると、その実行プログラムを実行して、その実行プログラムに応じた、端末記憶部１０１内の実装ソフトウェアを更新する。更新プログラム実行部１０５は、その更新に成功すると、実行プログラム名および成功を示す実行結果を作成し、その更新に失敗すると、実行プログラム名および失敗を示す実行結果を作成する。
【００９０】
更新プログラム実行部１０５は、実行結果を作成すると、端末記憶部１０１から装置名を取得し、その実行結果と装置名とを、端末通信部１０２を介して監視サーバ１０に送信する。
【００９１】
また、更新情報配信部２０７は、更新情報追加部２０５ｂから装置テーブルを受信すると、その装置テーブル内の更新情報を、その更新情報と対応付けられた装置名の監視対象装置の中の、その更新情報が含むサーバ名の監視対象装置と異なる監視対象装置の端末通信部１０２に、サーバ通信部２０２を介して送信する。
【００９２】
端末通信部１０２は、その実行プログラムを受信すると、その実行プログラムを更新プログラム入手部１０４に送信する。
【００９３】
更新プログラム入手部１０４は、その実行プログラムを受信すると、ステップＳ７０６を実行する。
【００９４】
ステップＳ７０６では、更新プログラム入手部１０４は、その更新情報を受信すると、その更新情報内のサーバ名の監視対象装置の端末記憶部１０１にアクセスして、その監視対象装置の端末記憶部１０１から、その更新情報内の実行プログラム名の実行プログラムを取得する。更新プログラム入手部１０４は、その実行プログラムを更新プログラム実行部１０５に送信する。
【００９５】
更新プログラム実行部１０５は、その実行プログラムを受信すると、その実行プログラムを実行して、端末記憶部１０１内の実装ソフトウェアを更新する。更新プログラム実行部１０５は、その更新に成功すると、実行プログラム名および成功を示す実行結果を作成し、その更新に失敗すると、実行プログラム名および失敗を示す実行結果を作成する。
【００９６】
更新プログラム実行部１０５は、実行結果を作成すると、端末記憶部１０１から装置名を取得し、その実行結果と装置名とを、端末通信部１０２を介して監視サーバ１０に送信する。
【００９７】
なお、監視サーバ１０は、その実行結果および装置名を受信すると、その実行結果に応じた結果対応処理を行う。例えば、その実行結果が失敗を示すと、監視サーバ１０は、その実行結果が示す実行プログラム名の実行プログラム、または、その実行プログラム名の実行プログラムを含む更新情報を、その装置名の監視対象装置に送信する。
【００９８】
本実施例によれば、配信先サーバ決定部２０４は、監視対象装置１ないし４の中から、実行プログラムの配布先となる監視対象装置を決定する。更新プログラム配信部２０６は、配信先サーバ決定部２０４が決定した監視対象装置に、実行プログラムを送信する。情報生成部２０５は、実行プログラムを配信先サーバ決定部２０４が決定した監視対象装置から取得する旨の更新情報を作成する。更新情報配信部２０７は、その更新情報を、配信先サーバ決定部２０４が決定した監視対象装置と異なる監視対象装置に送信する。端末通信部１０２は、その実行プログラムまたは更新情報を受信する。端末記憶部１０１は、その実行プログラムを記憶する。更新プログラム入手部１０４は、その更新情報にて指示された監視対象装置の端末記憶部１０１から実行プログラムを取得する。
【００９９】
この場合、監視サーバ１０が複数の監視対象装置に実行プログラム（ソフトウェア）を送信しなくてもよくなるため、ソフトウェアの配布にかかる負荷を軽減することが可能になる。
【０１００】
また、本実施例では、サーバ通信部２０２は、監視対象装置１ないし４のそれぞれから、実装ソフトウェアのバージョンをその監視対象装置の装置名と共に受信する。バージョン比較部２０３は、その装置名ごとに、その装置名と共に受信したバージョンがデータベース記憶部２０１内の最新バージョンと同じか否かを判定する。配信先サーバ決定部２０４は、バージョン比較部２０３がその最新バージョンと異なると判定されたバージョンと共に受信された装置名の監視対象装置の中から、実行プログラムの配布先となる監視対象装置を決定する。更新情報配信部２０７は、更新情報を、バージョン比較部２０３がその最新バージョンと異なると判定したバージョンと共に受信された装置名の監視対象装置の中の、配信先サーバ決定部２０４が決定した監視対象装置と異なる監視対象装置に送信する。
【０１０１】
この場合、実装ソフトウェアを更新する必要のある監視対象装置にだけ、その実装ソフトウェアを更新する実行プログラムを配布することが可能になる。
【０１０２】
なお、以上説明した配布方法は、専用のハードウェアにより実現されるもの以外に、その方法を実現するためのプログラムを、コンピュータにて読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行するものであってもよい。コンピュータにて読み取り可能な記録媒体とは、フロッピーディスク、光磁気ディスク、ＣＤ−ＲＯＭ等の記録媒体、コンピュータシステムに内蔵されるハードディスク装置等の記憶装置を指す。さらに、コンピュータにて読み取り可能な記録媒体は、インターネットを介してプログラムを送信する場合のように、短時間の間、動的にプログラムを保持するもの（伝送媒体もしくは伝送波）、その場合のサーバとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含む。
【０１０３】
また、以上説明した実施例において、図示した構成は単なる一例であって、本発明はその構成に限定されるものではない。
【図面の簡単な説明】
【０１０４】
【図１】本発明の一実施例の配布システムを示したブロック図である。
【図２】監視対象装置の構成の一例を示したブロック図である。
【図３】バージョン情報の一例を示した説明図である。
【図４】監視サーバの構成の一例を示したブロック図である。
【図５】ソフトデータベースの一例を示した説明図である。
【図６】更新情報の一例を示した説明図である。
【図７】配布システムの動作を説明するためのフローチャートである。
【符号の説明】
【０１０５】
１〜４    監視対象装置
１０      監視サーバ
１０１    端末記憶部
１０２    端末通信部
１０３    情報作成部
１０４    更新プログラム入手部
１０５    更新プログラム実行部
１０６    更新結果通報部
２０１    データベース記憶部
２０２    サーバ通信部
２０３    バージョン比較部
２０４    配信先サーバ決定部
２０５    情報作成部
２０５ａ  更新情報作成部
２０５ｂ  更新情報追加部
２０６    更新プログラム配信部
２０７    更新情報配信部
【図１】
2008225878.tif 000003
【図２】
2008225878.tif 000004
【図３】
2008225878.tif 000005
【図４】
2008225878.tif 000006
【図５】
2008225878.tif 000007
【図６】
2008225878.tif 000008
【図７】
2008225878.tif 000009