(57)【要約】【課題】特別な管理サーバまたは機能を必要とせずに、アップデート作業の軽減およびアップデート作業の失敗のリカバリを可能にするソフトウェア更新装置および方法を提供する。【解決手段】ＭＦＰ機のソフトウェアが正常に更新された際に、各サブネット上の装置からＭＦＰ機と同機種のＭＦＰ機を探索し、そのＭＦＰ機のソフトウェアのバージョンを確認し、ソフトウェア配信可能な同機種のＭＦＰ機にソフトウェアを配信する。また、ソフトウェアに不具合が確認された場合はソフトウェアを配信したＭＦＰ機にソフトウェア更新の中止を指示する。また、ＭＦＰ機のソフトウェアが正常に更新されなかった場合は各サブネット上の装置からＭＦＰ機と同機種のＭＦＰ機を探索し、そのＭＦＰ機からソフトウェアを取得し、取得したソフトウェアを再更新する。【選択図】図１
2006178892.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続する装置のソフトウェア更新を制御するソフトウェア更新装置において、
前記装置のソフトウェア更新を制御するソフトウェア更新手段と、
前記装置において更新用ソフトウェアが正常に更新された際に、前記ネットワーク上の各種装置から該装置と同機種の装置を探索する同機種探索手段と、
前記同機種探索手段で探索した同機種の装置に前記更新用ソフトウェアを配信するソフトウェア配信手段と
を具備することを特徴とするソフトウェア更新装置。
【請求項２】
前記同機種探索手段で探索した同機種の装置に関する装置テーブルを作成する装置テーブル作成手段
を更に具備し、
前記同機種探索手段は、
前記探索した同機種の装置から該装置の情報を取得し、
前記装置テーブル作成手段は、
前記同機種探索手段が取得した同機種の装置の情報を前記装置テーブルに記録する
ことを特徴とする請求項１記載のソフトウェア更新装置。
【請求項３】
前記ソフトウェア配信手段は、
前記装置テーブルに基づき、前記装置と前記同機種の装置とのバージョンを比較し、同一のバージョンと判定した同機種の装置に前記更新用ソフトウェアを配信する
ことを特徴とする請求項２記載のソフトウェア更新装置。
【請求項４】
前記ソフトウェア配信手段で前記更新用ソフトウェアを配信した同機種の装置から該更新用ソフトウェアの更新結果を受信する更新結果受信手段
を更に具備し、
前記ソフトウェア配信手段は、
前記更新結果が失敗である場合、更新を失敗した同機種の装置に前記更新用ソフトウェアを再配信する
ことを特徴とする請求項１記載のソフトウェア更新装置。
【請求項５】
前記ソフトウェア配信手段は、
前記更新用ソフトウェアを配信した同機種の装置に対して該更新用ソフトウェアの更新を所定の時間が経過するまで待機するように指示する
ことを特徴とする請求項１記載のソフトウェア更新装置。
【請求項６】
前記所定の時間が経過する前に前記装置が更新した更新用ソフトウェアに不具合が発見された場合、前記ソフトウェア配信手段が該更新用ソフトウェアを配信した同機種の装置に対して該更新用ソフトウェアの更新の中止を指示する更新指示手段
を更に具備することを特徴とする請求項５記載のソフトウェア更新装置。
【請求項７】
ネットワークに接続する装置のソフトウェア更新を制御するソフトウェア更新装置において、
前記装置のソフトウェア更新を制御するソフトウェア更新手段と、
前記装置のソフトウェア更新履歴に関する更新履歴テーブルを作成する更新履歴テーブル作成手段と、
前記装置において更新用ソフトウェアが正常に更新されなかった際に、前記ネットワーク上の各種装置から該装置と同機種の装置を探索し、該探索した同機種の装置から該装置の情報を取得する同機種探索手段と、
前記同機種探索手段で探索した同機種の装置の情報に関する装置テーブルを作成する装置テーブル作成手段と、
前記更新履歴テーブルと前記装置テーブルとに基づき、所望のバージョンのソフトウェアを有する同機種の装置を確認し、該確認した同機種の装置から該ソフトウェアを取得するソフトウェア取得手段と
を具備し、
前記ソフトウェア更新手段は、
前記ソフトウェア取得手段で取得した所望のバージョンのソフトウェアを前記装置に更新させる
ことを特徴とするソフトウェア更新装置。
【請求項８】
前記所望のバージョンのソフトウェアを有する同機種に対してソフトウェア更新の禁止を指示する
ことを特徴とする請求項７記載のソフトウェア更新装置。
【請求項９】
前記ソフトウェア取得手段は、
前記所望のバージョンのソフトウェアの更新が失敗した場合、該ソフトウェアを有する同機種の装置から該ソフトウェアを再取得し、
前記ソフトウェア更新手段は、
前記ソフトウェア取得手段で再取得した所望のバージョンのソフトウェアを前記装置に再更新させる
ことを特徴とする請求項７記載のソフトウェア更新装置。
【請求項１０】
ネットワークに接続する装置のソフトウェア更新を制御するソフトウェア更新装置において、
前記装置のソフトウェア更新を制御するソフトウェア更新手段と、
前記装置において更新用ソフトウェアを更新する前に、前記ネットワーク上の各種装置から全機装置と同機種の装置を探索する同機種探索手段と、
前記同機種探索手段で探索した同機種の装置に前記装置が有する更新前ソフトウェアを送信するソフトウェア送信手段と、
前記装置において更新用ソフトウェアが正常に更新されなかった際に、前記ソフトウェア送信手段で前記更新前ソフトウェアを送信した同機種の装置から該更新前ソフトウェアを取得するソフトウェア取得手段と
を具備し、
前記ソフトウェア更新手段は、
前記ソフトウェア取得手段で取得した更新前ソフトウェアを前記装置に更新させる
ことを特徴とするソフトウェア更新装置。
【請求項１１】
前記同機種探索手段で探索した同機種の装置に関する装置テーブルを作成する装置テーブル作成手段
を更に具備し、
前記同機種探索手段は、
前記探索した同機種の装置から該装置の情報を取得し、
前記装置テーブル作成手段は、
前記同機種探索手段が取得した同機種の装置の情報を前記装置テーブルに記録する
ことを特徴とする請求項１０記載のソフトウェア更新装置。
【請求項１２】
前記ソフトウェア取得手段は、
前記更新前ソフトウェアの更新が失敗した場合、該更新前ソフトウェアを有する同機種の装置から該更新前ソフトウェアを再取得し、
前記ソフトウェア更新手段は、
前記ソフトウェア取得手段で再取得した更新前ソフトウェアを前記装置に再更新させる
ことを特徴とする請求項１０記載のソフトウェア更新装置。
【請求項１３】
ネットワークに接続する装置のソフトウェアの更新を制御するソフトウェア更新方法において、
前記装置に更新用ソフトウェアを更新させ、
前記装置において前記更新用ソフトウェアが正常に更新された際に、前記ネットワーク上の各種装置から該装置と同機種の装置を探索し、
該探索した同機種の装置に前記更新用ソフトウェアを配信する
ことを特徴とするソフトウェア更新方法。
【請求項１４】
前記探索した同機種の装置から該装置の情報を取得し、
該取得した同機種の装置の情報を装置テーブルに記録する
ことを特徴とする請求項１３記載のソフトウェア更新方法。
【請求項１５】
前記装置テーブルに基づき、前記装置と前記同機種の装置とのバージョンを比較し、同一のバージョンと判定した同機種の装置に前記更新用ソフトウェアを配信する
ことを特徴とする請求項１４記載のソフトウェア更新方法。
【請求項１６】
前記更新用ソフトウェアを配信した同機種の装置から該ソフトウェアの更新結果を受信し、
該受信した更新結果が失敗である場合、更新を失敗した同機種の装置に前記更新用ソフトウェアを再配信する
ことを特徴とする請求項１３記載のソフトウェア更新方法。
【請求項１７】
前記更新用ソフトウェアを配信した同機種の装置に対して該更新用ソフトウェアの更新を所定の時間が経過するまで待機するように指示する
ことを特徴とする請求項１３記載のソフトウェア更新方法。
【請求項１８】
前記所定の時間が経過する前に前記装置が更新した更新用ソフトウェアに不具合が発見された場合、該更新用ソフトウェアを配信した同機種の装置に対して該更新用ソフトウェアの更新の中止を指示する
ことを特徴とする請求項１７記載のソフトウェア更新方法。
【請求項１９】
ネットワークに接続する装置のソフトウェア更新を制御するソフトウェア更新方法において、
前記装置に更新用ソフトウェアを更新させ、
前記装置のソフトウェア更新履歴に関する更新履歴テーブルを作成し、
前記装置において更新用ソフトウェアが正常に更新されなかった際に、前記ネットワーク上の各種装置から該装置と同機種の装置を探索し、
該探索した同機種の装置から該装置の情報を取得し、
該取得した同機種の装置の情報に関する装置テーブルを作成し、
前記更新履歴テーブルと前記装置テーブルとに基づき、所望のバージョンのソフトウェアを有する同機種の装置を確認し、
該確認した同機種の装置から前記所望のバージョンのソフトウェアを取得し、
該取得した所望のバージョンのソフトウェアを前記装置に更新させる
ことを特徴とするソフトウェア更新方法。
【請求項２０】
前記所望のバージョンのソフトウェアを有する同機種に対してソフトウェア更新の禁止を指示する
ことを特徴とする請求項１９記載のソフトウェア更新方法。
【請求項２１】
前記所望のバージョンのソフトウェアの更新が失敗した場合、該ソフトウェアを有する同機種の装置から該ソフトウェアを再取得し、
該再取得した所望のバージョンのソフトウェアを前記装置に再更新させる
ことを特徴とする請求項１９記載のソフトウェア更新方法。
【請求項２２】
ネットワークに接続する装置のソフトウェア更新を制御するソフトウェア更新方法において、
前記装置において更新用ソフトウェアを更新する前に、前記ネットワーク上の各種装置から全機装置と同機種の装置を探索し、
該探索した同機種の装置に前記装置が有する更新前ソフトウェアを送信し、
前記装置に全機更新用ソフトウェアを更新させ、
前記装置において更新用ソフトウェアが正常に更新されなかった際に、前記更新前ソフトウェアを送信した同機種の装置から該更新前ソフトウェアを取得し、
該取得した更新前ソフトウェアを前記装置に更新させる
ことを特徴とするソフトウェア更新方法。
【請求項２３】
前記探索した同機種の装置から該装置の情報を取得し、
該取得した同機種の装置の情報を装置テーブルに記録する
ことを特徴とする請求項２２記載のソフトウェア更新方法。
【請求項２４】
前記更新前ソフトウェアの更新が失敗した場合、該更新前ソフトウェアを有する同機種の装置から該更新前ソフトウェアを再取得し、
該再取得した更新前ソフトウェアを前記装置に再更新させる
ことを特徴とする請求項２２記載のソフトウェア更新方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェア更新装置および方法に関し、特に、ネットワークを介して接続する画像処理装置本体およびそれに接続する周辺機器のソフトウェアを更新するソフトウェア更新装置および方法に関する。
【背景技術】
【０００２】
最近の通信および情報処理システム等では、システムの特性変更を行うためにプログラムの更新を適時実施する場合が多い。
【０００３】
例えば、アップデートを管理するホストを中心として更新用ファイルを配信して結果を管理することで、作業者は個々の装置にアップデート作業を行う必要がなく、作業を軽減することができるＰＯＳシステムがある（例えば、特許文献１参照。）。
【０００４】
また、例えば、アップデートしたバージョンで障害が発生する場合を考慮して二重化した記憶装置を持つことで、万が一アップデートにより障害が発生した場合はバックアップされたソフトウェアに切り替えて運転を継続するプログラム障害自律復旧システムがある（例えば、特許文献２参照。）。
【特許文献１】特開平５−１８３６０６号公報
【特許文献２】特開平１０−１０５４０７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、上記特許文献１に記載の技術では、プリンタ、マルチファンクションプリンタ等が設置されるネットワーク環境では、必ずしも管理サーバを設置できるとは限らず、また、外部にある管理サーバに接続できるとは限らないため、必ずしも顧客の環境に合わせたアップデート装置を提供できるとは限らない。
【０００６】
また、上記特許文献２に記載の技術では、記憶装置の二重化によりコストの増大を招き、更に切り替えに複雑な機構を必要とするという問題点がある。
【０００７】
そこで、本発明は、上記問題点を鑑みて、特別な管理サーバまたは機能を必要とせずに、アップデート作業の軽減およびアップデート作業の失敗のリカバリを可能にするソフトウェア更新装置および方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、請求項１の発明は、ネットワークに接続する装置のソフトウェア更新を制御するソフトウェア更新装置において、前記装置のソフトウェア更新を制御するソフトウェア更新手段と、前記装置において更新用ソフトウェアが正常に更新された際に、前記ネットワーク上の各種装置から該装置と同機種の装置を探索する同機種探索手段と、前記同機種探索手段で探索した同機種の装置に前記更新用ソフトウェアを配信するソフトウェア配信手段とを具備することを特徴とする。
【０００９】
また、請求項２の発明は、請求項１の発明において、前記同機種探索手段で探索した同機種の装置に関する装置テーブルを作成する装置テーブル作成手段を更に具備し、前記同機種探索手段は、前記探索した同機種の装置から該装置の情報を取得し、前記装置テーブル作成手段は、前記同機種探索手段が取得した同機種の装置の情報を前記装置テーブルに記録することを特徴とする。
【００１０】
また、請求項３の発明は、請求項２の発明において、前記ソフトウェア配信手段は、前記装置テーブルに基づき、前記装置と前記同機種の装置とのバージョンを比較し、同一のバージョンと判定した同機種の装置に前記更新用ソフトウェアを配信することを特徴とする。
【００１１】
また、請求項４の発明は、請求項１の発明において、前記ソフトウェア配信手段で前記更新用ソフトウェアを配信した同機種の装置から該更新用ソフトウェアの更新結果を受信する更新結果受信手段を更に具備し、前記ソフトウェア配信手段は、前記更新結果が失敗である場合、更新を失敗した同機種の装置に前記更新用ソフトウェアを再配信することを特徴とする。
【００１２】
また、請求項５の発明は、請求項１の発明において、前記ソフトウェア配信手段は、前記更新用ソフトウェアを配信した同機種の装置に対して該更新用ソフトウェアの更新を所定の時間が経過するまで待機するように指示することを特徴とする。
【００１３】
また、請求項６の発明は、請求項５の発明において、前記所定の時間が経過する前に前記装置が更新した更新用ソフトウェアに不具合が発見された場合、前記ソフトウェア配信手段が該更新用ソフトウェアを配信した同機種の装置に対して該更新用ソフトウェアの更新の中止を指示する更新指示手段を更に具備することを特徴とする。
【００１４】
また、請求項７の発明は、ネットワークに接続する装置のソフトウェア更新を制御するソフトウェア更新装置において、前記装置のソフトウェア更新を制御するソフトウェア更新手段と、前記装置のソフトウェア更新履歴に関する更新履歴テーブルを作成する更新履歴テーブル作成手段と、前記装置において更新用ソフトウェアが正常に更新されなかった際に、前記ネットワーク上の各種装置から該装置と同機種の装置を探索し、該探索した同機種の装置から該装置の情報を取得する同機種探索手段と、前記同機種探索手段で探索した同機種の装置の情報に関する装置テーブルを作成する装置テーブル作成手段と、前記更新履歴テーブルと前記装置テーブルとに基づき、所望のバージョンのソフトウェアを有する同機種の装置を確認し、該確認した同機種の装置から該ソフトウェアを取得するソフトウェア取得手段とを具備し、前記ソフトウェア更新手段は、前記ソフトウェア取得手段で取得した所望のバージョンのソフトウェアを前記装置に更新させることを特徴とする。
【００１５】
また、請求項８の発明は、請求項７の発明において、前記所望のバージョンのソフトウェアを有する同機種に対してソフトウェア更新の禁止を指示することを特徴とする。
【００１６】
また、請求項９の発明は、請求項７の発明において、前記ソフトウェア取得手段は、前記所望のバージョンのソフトウェアの更新が失敗した場合、該ソフトウェアを有する同機種の装置から該ソフトウェアを再取得し、前記ソフトウェア更新手段は、前記ソフトウェア取得手段で再取得した所望のバージョンのソフトウェアを前記装置に再更新させることを特徴とする。
【００１７】
また、請求項１０の発明は、ネットワークに接続する装置のソフトウェア更新を制御するソフトウェア更新装置において、前記装置のソフトウェア更新を制御するソフトウェア更新手段と、前記装置において更新用ソフトウェアを更新する前に、前記ネットワーク上の各種装置から全機装置と同機種の装置を探索する同機種探索手段と、前記同機種探索手段で探索した同機種の装置に前記装置が有する更新前ソフトウェアを送信するソフトウェア送信手段と、前記装置において更新用ソフトウェアが正常に更新されなかった際に、前記ソフトウェア送信手段で前記更新前ソフトウェアを送信した同機種の装置から該更新前ソフトウェアを取得するソフトウェア取得手段とを具備し、前記ソフトウェア更新手段は、前記ソフトウェア取得手段で取得した更新前ソフトウェアを前記装置に更新させることを特徴とする。
【００１８】
また、請求項１１の発明は、請求項１０の発明において、前記同機種探索手段で探索した同機種の装置に関する装置テーブルを作成する装置テーブル作成手段を更に具備し、前記同機種探索手段は、前記探索した同機種の装置から該装置の情報を取得し、前記装置テーブル作成手段は、前記同機種探索手段が取得した同機種の装置の情報を前記装置テーブルに記録することを特徴とする。
【００１９】
また、請求項１２の発明は、請求項１０の発明において、前記ソフトウェア取得手段は、前記更新前ソフトウェアの更新が失敗した場合、該更新前ソフトウェアを有する同機種の装置から該更新前ソフトウェアを再取得し、前記ソフトウェア更新手段は、前記ソフトウェア取得手段で再取得した更新前ソフトウェアを前記装置に再更新させることを特徴とする。
【００２０】
また、請求項１３の発明は、ネットワークに接続する装置のソフトウェアの更新を制御するソフトウェア更新方法において、前記装置に更新用ソフトウェアを更新させ、前記装置において前記更新用ソフトウェアが正常に更新された際に、前記ネットワーク上の各種装置から該装置と同機種の装置を探索し、該探索した同機種の装置に前記更新用ソフトウェアを配信することを特徴とする。
【００２１】
また、請求項１４の発明は、請求項１３の発明において、前記探索した同機種の装置から該装置の情報を取得し、該取得した同機種の装置の情報を装置テーブルに記録することを特徴とする。
【００２２】
また、請求項１５の発明は、請求項１４の発明において、前記装置テーブルに基づき、前記装置と前記同機種の装置とのバージョンを比較し、同一のバージョンと判定した同機種の装置に前記更新用ソフトウェアを配信することを特徴とする。
【００２３】
また、請求項１６の発明は、請求項１３の発明において、前記更新用ソフトウェアを配信した同機種の装置から該ソフトウェアの更新結果を受信し、該受信した更新結果が失敗である場合、更新を失敗した同機種の装置に前記更新用ソフトウェアを再配信することを特徴とする。
【００２４】
また、請求項１７の発明は、請求項１３の発明において、前記更新用ソフトウェアを配信した同機種の装置に対して該更新用ソフトウェアの更新を所定の時間が経過するまで待機するように指示することを特徴とする。
【００２５】
また、請求項１８の発明は、請求項１７の発明において、前記所定の時間が経過する前に前記装置が更新した更新用ソフトウェアに不具合が発見された場合、該更新用ソフトウェアを配信した同機種の装置に対して該更新用ソフトウェアの更新の中止を指示することを特徴とする。
【００２６】
また、請求項１９の発明は、ネットワークに接続する装置のソフトウェア更新を制御するソフトウェア更新方法において、前記装置に更新用ソフトウェアを更新させ、前記装置のソフトウェア更新履歴に関する更新履歴テーブルを作成し、前記装置において更新用ソフトウェアが正常に更新されなかった際に、前記ネットワーク上の各種装置から該装置と同機種の装置を探索し、該探索した同機種の装置から該装置の情報を取得し、該取得した同機種の装置の情報に関する装置テーブルを作成し、前記更新履歴テーブルと前記装置テーブルとに基づき、所望のバージョンのソフトウェアを有する同機種の装置を確認し、該確認した同機種の装置から前記所望のバージョンのソフトウェアを取得し、該取得した所望のバージョンのソフトウェアを前記装置に更新させることを特徴とする。
【００２７】
また、請求項２０の発明は、請求項１９の発明において、前記所望のバージョンのソフトウェアを有する同機種に対してソフトウェア更新の禁止を指示することを特徴とする。
【００２８】
また、請求項２１の発明は、請求項１９の発明において、前記所望のバージョンのソフトウェアの更新が失敗した場合、該ソフトウェアを有する同機種の装置から該ソフトウェアを再取得し、該再取得した所望のバージョンのソフトウェアを前記装置に再更新させることを特徴とする。
【００２９】
また、請求項２２の発明は、ネットワークに接続する装置のソフトウェア更新を制御するソフトウェア更新方法において、前記装置において更新用ソフトウェアを更新する前に、前記ネットワーク上の各種装置から全機装置と同機種の装置を探索し、該探索した同機種の装置に前記装置が有する更新前ソフトウェアを送信し、前記装置に全機更新用ソフトウェアを更新させ、前記装置において更新用ソフトウェアが正常に更新されなかった際に、前記更新前ソフトウェアを送信した同機種の装置から該更新前ソフトウェアを取得し、該取得した更新前ソフトウェアを前記装置に更新させることを特徴とする。
【００３０】
また、請求項２３の発明は、請求項２２の発明において、前記探索した同機種の装置から該装置の情報を取得し、該取得した同機種の装置の情報を装置テーブルに記録することを特徴とする。
【００３１】
また、請求項２４の発明は、請求項２２の発明において、前記更新前ソフトウェアの更新が失敗した場合、該更新前ソフトウェアを有する同機種の装置から該更新前ソフトウェアを再取得し、該再取得した更新前ソフトウェアを前記装置に再更新させることを特徴とする。
【発明の効果】
【００３２】
本発明によれば、特別な管理サーバ装置または機能を必要とせずに、ソフトウェア更新の作業を軽減することが可能になり、更に、ソフトウェア更新すべき装置を自動検出することによりソフトウェア更新の作業を軽減することが可能になり、更に、更新が失敗した場合でも再実施を行うことにより確実にシステムに接続された装置のソフトウェア更新を行うことが可能になるという効果を奏する。
【００３３】
また、本発明によれば、特別な管理サーバ装置または機能を必要とせずに、ソフトウェア更新の作業の失敗をリカバリすることが可能になり、更に、ソフトウェア更新の作業を軽減することが可能になり、更に、ソフトウェア更新の作業の失敗による装置のダウンタイムを軽減することが可能になり、更に、業務への影響を最小限にすることが可能になるという効果を奏する。
【００３４】
また、本発明によれば、一定時間待機してからソフトウェア更新を行うことで、不具合を拡散させずに、即座に中止することが可能になるという効果を奏する。
【発明を実施するための最良の形態】
【００３５】
以下、本発明に係るソフトウェア更新装置および方法の実施の形態について添付図面を参照して詳細に説明する。なお、本発明の実施の形態として、複数のマルチファンクションプリンタ機（以後、ＭＦＰ機と称する）、複数のＰｒｉｎｔｅｒ機が接続する複数のサブネットから構成されるシステムを一例にして説明する。
【００３６】
図１は、本発明を適用したシステムの全体構成の一例を示すブロック図である。
【００３７】
図１に示すように、システムは複数のサブネット１から構成され、各サブネット１にはコピー、プリント、スキャンおよびファクス等の複数の機能を処理することが可能なＭＦＰ機２、およびプリント機能を処理することが可能なＰｒｉｎｔｅｒ機３が接続している。そして、このシステムに存在するＭＦＰ機２またはＰｒｉｎｔｅｒ機３に本発明に係るソフトウェア更新装置が接続または内蔵されている。
【実施例１】
【００３８】
実施例１では、本発明に係るソフトウェア更新装置が接続されているＭＦＰ機２がソフトウェア更新を実施する際に、ソフトウェア更新装置がシステムに存在する同機種のＭＦＰ機２に対し、同一のソフトウェアを配信して更新させる実施の形態について説明する。
【００３９】
図２は、実施例１におけるソフトウェア更新装置４の機能的な構成の一例を示すブロック図である。
【００４０】
図２に示すように、ＭＦＰ機２には本発明に係るソフトウェア更新装置４が接続または内蔵され、また、ＭＦＰ機２は、ソフトウェア更新装置４とのやり取り、ソフトウェアの更新、ＭＦＰ機２が有する各種サービス（コピー、プリント、スキャンおよびファクス等）の制御部（図示せず）の制御、ＭＦＰ機２に接続された周辺機器５とのやり取り等を行うＭＦＰ機主制御部６、各サブネット１上のＭＦＰ機２、Ｐｒｉｎｔｅｒ機３等との間で各種データの送受信を行うＩ／Ｆ［Interface］７を有している。
【００４１】
次に、ソフトウェア更新装置４の機能的な構成について説明する。
【００４２】
図２に示すように、ソフトウェア更新装置４は、ソフトウェア更新部８、同機種探索部９、装置テーブル作成部１０、ソフトウェア配信部１１、更新結果受信部１２から構成される。
【００４３】
ソフトウェア更新部８は、ＭＦＰ機２に更新用ソフトウェアの更新を実施させる処理を行う。具体的には、更新用ソフトウェアをＭＦＰ機主制御部６に渡し、ＭＦＰ機主制御部６に更新用ソフトウェアの更新を実施させるという動作を行う。
【００４４】
同機種探索部９は、ＭＦＰ機２の更新用ソフトウェアが正常に更新された際に、各サブネット１に接続されている装置から、ＭＦＰ機２と同機種のＭＦＰ機２を探索する処理、探索した同機種のＭＦＰ機２のソフトウェアのバージョンを確認する処理を行う。なお、同機種のＭＦＰ機２の探索方式として、「同一サブネット内の自動探索」、「指定されたサブネット内の自動探索」、「指定された装置を探索」があり、これらの探索方法については後述にて説明する。
【００４５】
装置テーブル作成部１０は、同機種探索部９が探索した同機種のＭＦＰ機２の機種情報、ソフトウェアのバージョン等を含む装置情報を記録する装置テーブルを作成、保存する処理を行う。
【００４６】
ソフトウェア配信部１１は、装置テーブル作成部１０に記録された同機種のＭＦＰ機２の装置情報から本体バージョン等の比較に基づいて配信可能か否か判定し、配信可能な同機種のＭＦＰ機２に更新用ソフトウェアを配信する処理を行う。
【００４７】
更新結果受信部１２は、ソフトウェア配信部１１で更新用ソフトウェアを配信した同機種のＭＦＰ機２から送信される更新結果を受信する処理を行う。なお、更新結果受信部１２で受信した更新結果は装置テーブル作成部１０に渡され、装置テーブル作成部１０は更新結果を装置テーブルに記録する。
【００４８】
次に、ソフトウェア更新装置が行うソフトウェア配信の処理手順について図３および図４に示すフローチャートを参照して説明する。
【００４９】
ユーザの手動によりソフトウェア更新部がソフトウェア更新装置と接続する装置（以後、接続装置と称する）のソフトウェア更新を実施し（ステップＳ３０１）、ソフトウェア更新部が接続装置を自動リブートし（ステップＳ３０２）、接続装置のブート、サービスの開始が失敗した場合（ステップＳ３０３でＮＯ）、ステップＳ３０４に進み、また、接続装置のブート、サービスの開始が成功した場合（ステップＳ３０３でＹＥＳ）、ステップＳ３０５に進む。
【００５０】
接続装置のブート、サービスの開始が失敗した場合（ステップＳ３０３でＮＯ）、ソフトウェア更新の失敗をユーザに通知し（ステップＳ３０４）、ソフトウェア配信の処理手順を終了する。
【００５１】
接続装置のブート、サービスの開始が成功した場合（ステップＳ３０３でＹＥＳ）、同機種探索部がサブルーチンである同機種探索処理を実施し（ステップＳ３０５）、装置テーブル作成部が装置テーブルを作成、保存し（ステップＳ３０６）、ソフトウェア配信部が配信ループを開始し（ステップＳ３０７）、ソフトウェア配信部が接続装置と同機種探索部が探索した接続装置と同機種の装置（以後、同機種装置と称する）との本体バージョンを比較し（ステップＳ３０８）、ソフトウェア配信部が本体ソフトウェアは配信可能であると判定した場合（ステップＳ３０９でＹＥＳ）、ステップＳ３１０に進み、また、ソフトウェア配信部が本体ソフトウェアは配信不可能であると判定した場合（ステップＳ３０９でＮＯ）、ステップＳ３１１に進む。
【００５２】
ソフトウェア配信部が本体ソフトウェアは配信可能であると判定した場合（ステップＳ３０９でＹＥＳ）、ソフトウェア配信部が同機種装置に本体ソフトウェアを配信し（ステップＳ３１０）、ステップＳ３１１に進む。
【００５３】
そして、ソフトウェア配信部が接続装置の周辺機器と同機種装置の周辺機器との周辺機器バージョンを比較し（ステップＳ３１１）、ソフトウェア配信部が周辺機器ソフトウェアは配信可能であると判定した場合（ステップＳ３１２でＹＥＳ）、ステップＳ３１３に進み、また、ソフトウェア配信部が周辺機器ソフトウェアは配信不可能であると判定した場合（ステップＳ３１２でＮＯ）、ステップＳ３１４に進む。
【００５４】
ソフトウェア配信部が周辺機器ソフトウェアは配信可能であると判定した場合（ステップＳ３１２でＹＥＳ）、ソフトウェア配信部が同機種装置に周辺機器ソフトウェアを配信し（ステップＳ３１３）、ステップＳ３１４に進む。
【００５５】
そして、ソフトウェア配信部の配信ループが終了した場合（ステップＳ３１４でＹＥＳ）、図４に示すフローチャートに進み、また、ソフトウェア配信部の配信ループが終了していない場合（ステップＳ３１４でＮＯ）、ステップＳ３０８に戻る。
【００５６】
ソフトウェア配信部の配信ループが終了した場合（ステップＳ３１４でＹＥＳ）、図４に示すフローチャートに進み、更新結果受信部が更新結果受信ループを開始し（ステップＳ４０１）、更新結果受信部がソフトウェアを配信した装置（以後、配信装置と称する）から更新結果を受信し（ステップＳ４０２）、受信した更新結果が成功である場合（ステップＳ４０３でＹＥＳ）、ステップＳ４０６に進み、また、受信した更新結果が失敗である場合（ステップＳ４０３でＮＯ）、ステップＳ４０４に進む。
【００５７】
受信した更新結果が失敗である場合（ステップＳ４０３でＮＯ）、再実施が規定回数以下である場合（ステップＳ４０４でＹＥＳ）、ステップＳ４０５に進み、また、再実施が規定回数以上である場合（ステップＳ４０４でＮＯ）、ステップＳ４０６に進む。
【００５８】
再実施が規定回数以下である場合（ステップＳ４０４でＹＥＳ）、ソフトウェア配信部が配信装置にソフトウェアを再配信し（ステップＳ４０５）、ステップＳ４０６に進む。
【００５９】
そして、装置テーブル作成部が装置テーブルに配信装置の更新結果を記録し（ステップＳ４０６）、更新結果受信部の更新結果受信ループが終了した場合（ステップＳ４０７でＹＥＳ）、ステップＳ４０８に進み、また、更新結果受信部の更新結果受信ループが終了していない場合（ステップＳ４０７でＮＯ）、ステップＳ４０２に戻る。
【００６０】
更新結果受信部の更新結果受信ループが終了した場合（ステップＳ４０７でＹＥＳ）、全配信装置の更新結果をユーザに通知し（ステップＳ４０８）、接続装置を通常サービスモードに移行させ（ステップＳ４０９）、ソフトウェア配信の処理手順を終了する。
【００６１】
なお、更新を失敗した配信装置に対する更新の再実施方式として、「更新が成功するまで配信を繰り返す」、「ユーザが指定する回数だけ配信を繰り返す」がある。
【００６２】
次に、同機種探索部が図３に示すフローチャートのステップＳ３０５で行う同機種探索処理の処理手順について図５に示すフローチャートを参照して説明する。
【００６３】
ソフトウェア更新装置と接続する装置と同機種の装置（以後、同機種装置と称する）の探索方式を選択し（ステップＳ５０１）、探索方式が「同一サブネット内の自動探索」である場合（ステップＳ５０２でＹＥＳ）、ステップＳ５０３に進み、また、探索方式が「同一サブネット内の自動探索」ではない場合（ステップＳ５０２でＮＯ）、ステップＳ５０６に進む。
【００６４】
探索方式が「同一サブネット内の自動探索」である場合（ステップＳ５０２でＹＥＳ）、同一サブネットで探索パケットをブロードキャストで送信し（ステップＳ５０３）、返信パケットを受信し（ステップＳ５０４）、返信パケットのアドレスから機種を確認し（ステップＳ５０４）、ステップＳ５１４に進む。
【００６５】
探索方式が「同一サブネット内の自動探索」ではない場合（ステップＳ５０２でＮＯ）、探索方式が「指定されたサブネット内の自動探索」である場合（ステップＳ５０６でＹＥＳ）、ステップＳ５０７に進み、また、探索方式が「指定されたサブネット内の自動探索」ではない場合（ステップＳ５０６でＮＯ）、ステップＳ５１０に進む。
【００６６】
探索方式が「指定されたサブネット内の自動探索」である場合（ステップＳ５０６でＹＥＳ）、指定サブネットで探索パケットをブロードキャストで送信し（ステップＳ５０７）、返信パケットを受信し（ステップＳ５０８）、返信パケットのアドレスから機種を確認し（ステップＳ５０９）、ステップＳ５１４に進む。
【００６７】
探索方式が「指定されたサブネット内の自動探索」ではない場合（ステップＳ５０６でＮＯ）、探索方式が「指定された装置を探索」である場合（ステップＳ５１０でＹＥＳ）、ステップＳ５１１に進み、また、探索方式が「指定された装置を探索」ではない場合（ステップＳ５１０でＮＯ）、ステップＳ５０２に戻る。
【００６８】
探索方式が「指定された装置を探索」である場合（ステップＳ５１０でＹＥＳ）、探索パケットを指定された装置のアドレスに送信し（ステップＳ５１１）、返信パケットを受信し（ステップＳ５１２）、返信パケットのアドレスから機種を確認し（ステップＳ５１３）、ステップＳ５１４に進む。
【００６９】
そして、バージョン取得ループを開始し（ステップＳ５１４）、同機種装置に本体ソフトウェアのバージョン確認パケットを送信し（ステップＳ５１５）、同機種装置から本体ソフトウェアのバージョン情報パケットを受信し（ステップＳ５１６）、同機種装置に周辺機器ソフトウェアのバージョン確認パケットを送信し（ステップＳ５１７）、同機種装置から周辺機器ソフトウェアのバージョン情報パケットを受信し（ステップＳ５１８）、バージョン取得ループが終了していない場合（ステップＳ５１９でＮＯ）、ステップＳ５１５に戻り、また、バージョン取得ループが終了した場合（ステップＳ５１９でＹＥＳ）、同機種探索処理の処理手順を終了する。
【００７０】
次に、ソフトウェア更新装置からソフトウェアを配信された装置が行うソフトウェア更新の処理手順について図６に示すフローチャートを参照して説明する。
【００７１】
ソフトウェア更新装置からソフトウェア更新の要求を受信し（ステップＳ６０１）、ジョブの受付を終了し（ステップＳ６０２）、処理中または待機中のジョブが無い場合（ステップＳ６０３でＹＥＳ）、ステップＳ６０５に進み、また、処理中または待機中のジョブが有る場合（ステップＳ６０３でＮＯ）、ステップＳ６０４に進む。
【００７２】
処理中または待機中のジョブが有る場合（ステップＳ６０３でＮＯ）、ジョブの終了イベントを待機し（ステップＳ６０４）、ステップＳ６０３に戻る。
【００７３】
処理中または待機中のジョブが無い場合（ステップＳ６０３でＹＥＳ）、ソフトウェア更新装置から更新用本体ソフトウェアを受信し（ステップＳ６０５）、更新するバージョンを確認し（ステップＳ６０６）、更新可能である場合（ステップＳ６０７でＹＥＳ）、ステップＳ６０８に進み、また、更新不可能である場合（ステップＳ６０７でＮＯ）、ステップＳ６０９に進む。
【００７４】
更新可能である場合（ステップＳ６０７でＹＥＳ）、本体ソフトウェア更新を実施し（ステップＳ６０８）、ステップＳ６０９に進む。
【００７５】
そして、ソフトウェア更新装置から更新用周辺機器ソフトウェアを受信し（ステップＳ６０９）、更新するバージョンを確認し（ステップＳ６１０）、更新可能である場合（ステップＳ６１１でＹＥＳ）、ステップＳ６１２に進み、また、更新不可能である場合（ステップＳ６１１でＮＯ）、ステップＳ６１３に進む。
【００７６】
更新可能である場合（ステップＳ６１１でＹＥＳ）、周辺機器ソフトウェア更新を実施し（ステップＳ６１２）、ステップＳ６１３に進む。
【００７７】
そして、自動リブートし（ステップＳ６１３）、ブート、サービスの開始が成功した場合（ステップＳ６１４でＹＥＳ）、ステップＳ６１７に進み、また、ブート、サービスの開始が失敗した場合（ステップＳ６１４でＮＯ）、ステップＳ６１５に進む。
【００７８】
ブート、サービスの開始が失敗した場合（ステップＳ６１４でＮＯ）、強制更新モードに移行し（ステップＳ６１５）、ソフトウェア更新装置に更新結果を送信し（ステップＳ６１６）、ステップＳ６０５に戻る。
【００７９】
ブート、サービスの開始が成功した場合（ステップＳ６１４でＹＥＳ）、ソフトウェア更新装置に更新結果を送信し（ステップＳ６１７）、ソフトウェア更新の処理手順を終了する。
【００８０】
図７は、装置テーブル１３の一例を示す図である。
【００８１】
図７に示すように、装置テーブル１３には、各装置の装置番号、ネットワークアドレス、機種、本体ＩＤ、本体バージョン、周辺機器ＩＤ、周辺機器バージョン等の装置情報、本体ソフトウェアの更新結果、および周辺機器ソフトウェアの更新結果が記録されている。
【００８２】
従って、特別な管理サーバ装置または機能を必要とせずに、ソフトウェア更新の作業を軽減することが可能になり、更に、ソフトウェア更新すべき装置を自動検出することによりソフトウェア更新の作業を軽減することが可能になり、更に、更新が失敗した場合でも再実施を行うことにより確実にシステムに接続された装置のソフトウェア更新を行うことが可能になる。
【実施例２】
【００８３】
実施例２では、本発明に係るソフトウェア更新装置が接続されているＭＦＰ機がソフトウェア更新を実施し、ソフトウェアに不具合を検出した際に、ソフトウェア更新装置がシステムに存在する同機種のＭＦＰ機から復旧用ソフトウェアを取得する実施の形態について説明する。
【００８４】
図８は、実施例２におけるソフトウェア更新装置４の機能的な構成の一例を示すブロック図である。
【００８５】
図８に示すように、ＭＦＰ機２には本発明に係るソフトウェア更新装置４が接続または内蔵され、また、ＭＦＰ機２は、ソフトウェア更新装置４とのやり取り、ソフトウェアの更新、ＭＦＰ機２が有する各種サービス（コピー、プリント、スキャンおよびファクス等）の制御部（図示せず）の制御、ＭＦＰ機２に接続された周辺機器５とのやり取り等を行うＭＦＰ機主制御部６、各サブネット１上の他の装置との間で各種データの送受信を行うＩ／Ｆ［Interface］７を有している。
【００８６】
次に、ソフトウェア更新装置４の機能的な構成について説明する。
【００８７】
図８に示すように、ソフトウェア更新装置４は、ソフトウェア更新部８、同機種探索部９、装置テーブル作成１０部、更新履歴テーブル作成部１４、ソフトウェア取得部１５から構成される。
【００８８】
ソフトウェア更新部８は、ＭＦＰ機２に更新用ソフトウェアの更新を実施させる処理を行う。具体的には、更新用ソフトウェアをＭＦＰ機主制御部６に渡し、ＭＦＰ機主制御部６に更新用ソフトウェアの更新を実施させるという動作を行う。
【００８９】
同機種探索部９は、ＭＦＰ機２に更新させた更新用ソフトウェアに不具合が検出された際に、各サブネット１に接続されている装置から、ＭＦＰ機２と同機種のＭＦＰ機２を探索する処理、探索した同機種のＭＦＰ機２のソフトウェアのバージョンを確認する処理を行う。なお、同機種のＭＦＰ機２の探索方式として、「同一サブネット内の自動探索」、「指定されたサブネット内の自動探索」、「指定された装置を探索」がある。
【００９０】
装置テーブル作成部１０は、同機種探索部９が探索した同機種のＭＦＰ機２の機種情報、ソフトウェアのバージョン等を含む装置情報を記録する装置テーブルを作成、保存する処理を行う。
【００９１】
更新履歴テーブル作成部１４は、ＭＦＰ機２のソフトウェア更新の履歴を記録する更新履歴テーブルを作成、保存する処理を行う。
【００９２】
ソフトウェア取得部１５は、同機種のＭＦＰ機２にソフトウェアの送信を要求する処理、ソフトウェアの送信を要求した同機種のＭＦＰ機２から送信されるソフトウェアを受信する処理を行う。
【００９３】
次に、ソフトウェア更新装置が行うソフトウェアリカバリの処理手順について図９および図１０に示すフローチャートを参照して説明する。
【００９４】
ユーザの手動によりソフトウェア更新部がソフトウェア更新装置と接続する装置（以後、接続装置と称する）のソフトウェア更新を実施し（ステップＳ９０１）、ソフトウェア更新部が接続装置を自動リブートし（ステップＳ９０２）、接続装置のブート、サービスの開始が失敗した場合（ステップＳ９０３でＮＯ）、ステップＳ９０５に進み、また、接続装置のブート、サービスの開始が成功した場合（ステップＳ９０３でＹＥＳ）、ステップＳ９０４に進む。
【００９５】
接続装置のブート、サービスの開始が成功した場合（ステップＳ９０３でＹＥＳ）、接続装置を通常サービスモードに移行させ（ステップＳ９０４）、ソフトウェアリカバリの処理手順を終了する。
【００９６】
接続装置のブート、サービスの開始が成功した場合（ステップＳ９０３でＹＥＳ）、同機種探索部がサブルーチンである同機種探索処理を実施し（ステップＳ９０５）、装置テーブル作成部が装置テーブルを作成、保存し（ステップＳ９０６）、更新履歴テーブルより復旧バージョンを採取し（ステップＳ９０７）、復旧バージョンが装置テーブルに存在するか確認し（ステップＳ９０８）、復旧バージョンが装置テーブルに存在する場合（ステップＳ９０９でＹＥＳ）、図１０に示すフローチャートに進み、また、復旧バージョンが装置テーブルに存在しない場合（ステップＳ９０９でＮＯ）、ステップＳ９１０に進む。
【００９７】
復旧バージョンが装置テーブルに存在しない場合（ステップＳ９０９でＮＯ）、復旧バージョンが存在しない旨をユーザに通知し（ステップＳ９１０）、ソフトウェアリカバリの処理手順を終了する。
【００９８】
復旧バージョンが装置テーブルに存在する場合（ステップＳ９０９でＹＥＳ）、図１０に示すフローチャートに進み、ソフトウェア取得部が同機種探索部が探索した接続装置と同機種の装置（以後、同機種装置と称する）に本体ソフトウェアの送信を要求し（ステップＳ１００１）、ソフトウェア取得部が同機種装置から本体ソフトウェアを受信し（ステップＳ１００２）、ソフトウェア更新部が接続装置の本体ソフトウェア更新を実施し（ステップＳ１００３）、ソフトウェア取得部が同機種装置に周辺機器ソフトウェアの送信を要求し（ステップＳ１００４）、ソフトウェア取得部が同機種装置から周辺機器ソフトウェアを受信し（ステップＳ１００５）、ソフトウェア更新部が接続装置の周辺機器の周辺機器ソフトウェア更新を実施し（ステップＳ１００６）、更新履歴テーブル作成部が更新履歴テーブルに更新したバージョンを記録し（ステップＳ１００７）、ソフトウェア更新部が接続装置を自動リブートし（ステップＳ１００８）、接続装置のブート、サービスの開始が成功した場合（ステップＳ１００９でＹＥＳ）、ステップＳ１０１０に進み、また、接続装置のブート、サービスの開始が失敗した場合（ステップＳ１００９でＮＯ）、ステップＳ１０１２に進む。
【００９９】
接続装置のブート、サービスの開始が成功した場合（ステップＳ１００９でＹＥＳ）、更新履歴テーブル作成部が更新履歴テーブルに更新結果を記録し（ステップＳ１０１０）、接続装置を通常サービスモードに移行させ（ステップＳ１０１１）、ソフトウェアリカバリの処理手順を終了する。
【０１００】
接続装置のブート、サービスの開始が失敗した場合（ステップＳ１００９でＮＯ）、強制更新モードに移行し（ステップＳ１０１２）、更新履歴テーブル作成部が更新履歴テーブルに更新結果を記録し（ステップＳ１０１３）、再実施が規定回数以下である場合（ステップＳ１０１４でＹＥＳ）、ステップＳ１００１に進み、また、再実施が規定回数以上である場合（ステップＳ１０１４でＮＯ）、ソフトウェアリカバリの処理手順を終了する。
【０１０１】
なお、復旧バージョンの判断方式として、「更新前と同一のバージョン」、「ユーザが指定する範囲のバージョン」がある。
【０１０２】
また、更新が失敗した際の更新の再実施方式として、「更新が成功するまで繰り返す」、「ユーザが指定する回数だけ繰り返す」がある。
【０１０３】
なお、同機種探索部が図９に示すフローチャートのステップＳ９０５で行う同機種探索処理の処理手順は、実施例１の図５に示すフローチャートの処理手順と同様であるため、説明は省略する。
【０１０４】
次に、ソフトウェア更新装置からソフトウェアの送信を要求された装置が行うソフトウェア送信の処理手順について図１１に示すフローチャートを参照して説明する。
【０１０５】
ソフトウェア更新装置からソフトウェアの送信の要求を受信し（ステップＳ１１０１）、本体ソフトウェアの配信の要求である場合（ステップＳ１１０２でＹＥＳ）、ステップＳ１１０３に進み、また、周辺機器ソフトウェアの配信の要求である場合（ステップ１１０２でＮＯ）、ステップＳ１１０８に進む。
【０１０６】
本体ソフトウェアの配信の要求である場合（ステップＳ１１０２でＹＥＳ）、要求されたバージョンを確認し（ステップＳ１１０３）、バージョンが合致した場合（ステップＳ１１０４でＹＥＳ）、ステップＳ１１０５に進み、また、バージョンが合致しない場合（ステップＳ１１０４でＮＯ）、ステップＳ１１０７に進む。
【０１０７】
バージョンが合致した場合（ステップＳ１１０４でＹＥＳ）、本体ソフトウェアをパッケージ化し（ステップＳ１１０５）、ソフトウェア更新装置に本体ソフトウェアを送信し（ステップＳ１１０６）、ソフトウェア送信の処理手順を終了する。
【０１０８】
バージョンが合致しない場合（ステップＳ１１０４でＮＯ）、ソフトウェア更新装置に送信エラーを送信し（ステップＳ１１０７）、ソフトウェア送信の処理手順を終了する。
【０１０９】
周辺機器ソフトウェアの配信の要求である場合（ステップ１１０２でＮＯ）、要求されたバージョンを確認し（ステップＳ１１０８）、バージョンが合致した場合（ステップＳ１１０９でＹＥＳ）、ステップＳ１１１０に進み、また、バージョンが合致しない場合（ステップＳ１１０９でＮＯ）、ステップＳ１１０７に進む。
【０１１０】
バージョンが合致した場合（ステップＳ１１０９でＹＥＳ）、周辺機器に周辺機器ソフトウェアを要求し（ステップＳ１１１０）、周辺機器から周辺機器ソフトウェアを取得し（ステップＳ１１１１）、ソフトウェア更新装置に周辺機器ソフトウェアを送信し（ステップＳ１１１２）、ソフトウェア送信の処理手順を終了する。
【０１１１】
バージョンが合致しない場合（ステップＳ１１０９でＮＯ）、ソフトウェア更新装置に送信エラーを送信し（ステップＳ１１０７）、ソフトウェア送信の処理手順を終了する
従って、特別な管理サーバ装置または機能を必要とせずに、ソフトウェア更新の作業の失敗をリカバリすることが可能になり、更に、ソフトウェア更新の作業を軽減することが可能になり、更に、ソフトウェア更新の作業の失敗による装置のダウンタイムを軽減することが可能になり、更に、業務への影響を最小限にすることが可能になる。
【実施例３】
【０１１２】
実施例３では、本発明に係るソフトウェア更新装置が接続されているＭＦＰ機がソフトウェア更新を実施する際に、システムに存在する同機種のＭＦＰ機にソフトウェアのバックアップを行い、ソフトウェアに不具合を検出した場合はバックアップしたソフトウェアを取得する実施の形態について説明する。
【０１１３】
図１２は、実施例３におけるソフトウェア更新装置４の機能的な構成の一例を示すブロック図である。
【０１１４】
図１２に示すように、ＭＦＰ機２には本発明に係るソフトウェア更新装置４が接続または内蔵され、また、ＭＦＰ機２は、ソフトウェア更新装置４とのやり取り、ソフトウェアの更新、ＭＦＰ機２が有する各種サービス（コピー、プリント、スキャンおよびファクス等）の制御部（図示せず）の制御、ＭＦＰ機２に接続された周辺機器５とのやり取り等を行うＭＦＰ機主制御部６、各サブネット１上の他の装置との間で各種データの送受信を行うＩ／Ｆ［Interface］７を有している。
【０１１５】
次に、ソフトウェア更新装置４の機能的な構成について説明する。
【０１１６】
図１２に示すように、ソフトウェア更新装置４は、ソフトウェア更新部８、同機種探索部９、装置テーブル作成部１０、ソフトウェア送信部１６、更新履歴テーブル作成部１４、ソフトウェア取得部１５から構成される。
【０１１７】
ソフトウェア更新部８は、ＭＦＰ機２に更新用ソフトウェアの更新を実施させる処理を行う。具体的には、更新用ソフトウェアをＭＦＰ機主制御部６に渡し、ＭＦＰ機主制御部６に更新用ソフトウェアの更新を実施させるという動作を行う。
【０１１８】
同機種探索部９は、ＭＦＰ機２に更新用ソフトウェアの更新を実施させる前に、各サブネット１に接続されている装置から、ＭＦＰ機２と同機種のＭＦＰ機２を探索する処理、探索した同機種のＭＦＰ機２のソフトウェアのバージョンを確認する処理を行う。なお、同機種のＭＦＰ機２の探索方式として、「同一サブネット内の自動探索」、「指定されたサブネット内の自動探索」、「指定された装置を探索」がある。
【０１１９】
装置テーブル作成部１０は、同機種探索部９が探索した同機種のＭＦＰ機２の機種情報、ソフトウェアのバージョン等を含む装置情報を記録する装置テーブルを作成、保存する処理を行う。
【０１２０】
ソフトウェア送信部１６は、装置テーブル作成部１０に記録された同機種のＭＦＰ機２に更新用ソフトウェアを送信する処理を行う。
【０１２１】
更新履歴テーブル作成部１４は、ＭＦＰ機２のソフトウェア更新の履歴を記録する更新履歴テーブルを作成、保存する処理を行う。
【０１２２】
ソフトウェア取得部１５は、ソフトウェアをバックアップしたＭＦＰ機２にソフトウェアの送信を要求する処理、ソフトウェアの送信を要求したＭＦＰ機２から送信されるソフトウェアを受信する処理を行う。
【０１２３】
次に、ソフトウェア更新装置が行うソフトウェアバックアップおよびソフトウェアリカバリの処理手順について図１３および図１４に示すフローチャートを参照して説明する。
【０１２４】
同機種探索部がサブルーチンである同機種探索処理を実施し（ステップＳ１３０１）、装置テーブル作成部が装置テーブルを作成、保存し（ステップＳ１３０２）、ソフトウェア更新装置と接続する装置（以後、接続装置と称する）の現在の本体ソフトウェアと同一のバージョンの同機種装置を検索し（ステップＳ１３０３）、同一のバージョンの同機種装置が存在する場合（ステップＳ１３０４でＹＥＳ）、ステップＳ１３０５に進み、また、同一のバージョンの同機種装置が存在しない場合（ステップＳ１３０４でＮＯ）、ステップＳ１３０６に進む。
【０１２５】
同一のバージョンの同機種装置が存在する場合（ステップＳ１３０４でＹＥＳ）、同機種装置に本体ソフトウェア更新の禁止を指示し（ステップＳ１３０５）、ステップＳ１３０７に進む。
【０１２６】
同一のバージョンの同機種装置が存在しない場合（ステップＳ１３０４でＮＯ）、ソフトウェア送信部が同機種装置に本体ソフトウェアを送信してバックアップし（ステップＳ１３０６）、ステップＳ１３０７に進む。
【０１２７】
そして、現在の周辺機器ソフトウェアと同一のバージョンの同機種装置を検索し（ステップＳ１３０７）、同一のバージョンの同機種装置が存在する場合（ステップＳ１３０８でＹＥＳ）、ステップＳ１３０９に進み、また、同一のバージョンの同機種装置が存在しない場合（ステップＳ１３０８でＮＯ）、ステップＳ１３１０に進む。
【０１２８】
同一のバージョンの同機種装置が存在する場合（ステップＳ１３０８でＹＥＳ）、同機種装置に本体ソフトウェア更新の禁止を指示し（ステップＳ１３０９）、ステップＳ１３１１に進む。
【０１２９】
同一のバージョンの同機種装置が存在しない場合（ステップＳ１３０８でＮＯ）、ソフトウェア送信部が同機種装置に本体ソフトウェアを送信してバックアップし（ステップＳ１３１０）、ステップＳ１３１１に進む。
【０１３０】
そして、ソフトウェア更新部が接続装置の本体ソフトウェア更新を実施し（ステップＳ１３１１）、ソフトウェア更新部が接続装置の周辺機器ソフトウェア更新を実施し（ステップＳ１３１２）、更新履歴テーブル作成部が更新履歴テーブルに更新したバージョンを記録し（ステップＳ１３１３）、ソフトウェア更新部が接続装置を自動リブートし（ステップＳ１３１４）、接続装置のブート、サービスの開始が成功した場合（ステップＳ１３１５でＹＥＳ）、ステップＳ１３１６に進み、また、接続装置のブート、サービスの開始が失敗した場合（ステップＳ１３１５でＮＯ）、図１４に示すフローチャートに進む。
【０１３１】
接続装置のブート、サービスの開始が成功した場合（ステップＳ１３１５でＹＥＳ）、更新履歴テーブル作成部が更新履歴テーブルに更新結果を記録し（ステップＳ１３１６）、ソフトウェアをバックアップする装置（以後、バックアップ装置と称する）に更新禁止の解除またはバックアップ破棄を指示し（ステップＳ１３１７）、接続装置を通常サービスモードに移行させ（ステップＳ１３１８）、ソフトウェアバックアップの処理手順を終了する。
【０１３２】
接続装置のブート、サービスの開始が失敗した場合（ステップＳ１３１５でＮＯ）、図１４に示すフローチャートに進み、復旧更新モードに移行し（ステップＳ１４０１）、更新履歴テーブル作成部が更新履歴テーブルに更新結果を記録し（ステップＳ１４０２）、ソフトウェア取得部がバックアップ装置に本体ソフトウェアの送信を要求し（ステップＳ１４０３）、ソフトウェア取得部がバックアップ装置から本体ソフトウェアを受信し（ステップＳ１４０４）、ソフトウェア更新部が接続装置の本体ソフトウェア更新を実施し（ステップＳ１４０５）、ソフトウェア取得部がバックアップ装置に周辺機器ソフトウェアの送信を要求し（ステップＳ１４０６）、ソフトウェア取得部がバックアップ装置から周辺機器ソフトウェアを受信し（ステップＳ１４０７）、ソフトウェア更新部が接続装置の周辺機器の周辺機器ソフトウェア更新を実施し（ステップＳ１４０８）、更新履歴テーブル作成部が更新履歴テーブルに更新したバージョンを記録し（ステップＳ１４０９）、ソフトウェア更新部が接続装置を自動リブートし（ステップＳ１４１０）、接続装置のブート、サービスの開始が成功した場合（ステップＳ１４１１でＹＥＳ）、ステップＳ１４１２に進み、また、接続装置のブート、サービスの開始が失敗した場合（ステップＳ１４１１でＮＯ）、ステップＳ１４１５に進む。
【０１３３】
接続装置のブート、サービスの開始が成功した場合（ステップＳ１４１１でＹＥＳ）、更新履歴テーブル作成部が後輪履歴テーブルに更新結果を記録し（ステップＳ１４１２）、バックアップ装置に更新禁止の解除またはバックアップ破棄を指示し（ステップＳ１４１３）、接続装置を通常サービスモードに移行させ（ステップＳ１４１４）、ソフトウェアリカバリの処理手順を終了する。
【０１３４】
接続装置のブート、サービスの開始が失敗した場合（ステップＳ１４１１でＮＯ）、強制更新モードに移行し（ステップＳ１４１５）、更新履歴テーブルが更新履歴テーブルに更新結果を記録し（ステップＳ１４１６）、バックアップ装置に更新禁止の解除またはバックアップ破棄を指示し（ステップＳ１４１７）、手動により接続装置のソフトウェア更新を実施し（ステップＳ１４１８）、ソフトウェアリカバリの処理手順を終了する。
【０１３５】
なお、バックアップ先を探索できなかった場合、「その旨をユーザに通知する」、「バックアップを行わずに更新作業を継続する」がある。
【０１３６】
なお、同機種探索部が図１３に示すフローチャートのステップＳ１３０１で行う同機種探索処理の処理手順は、実施例１の図５に示すフローチャートの処理手順と同様であるため、説明は省略する。
【０１３７】
また、ソフトウェアのバックアップ先に指定された装置が、ソフトウェア更新装置からソフトウェアの送信を要求された際に行うソフトウェア送信の処理手順は、実施例２の図１１に示すフローチャートの処理手順と同様であるため、説明は省略する。
【０１３８】
従って、特別な管理サーバ装置または機能を必要とせずに、ソフトウェア更新の作業の失敗をリカバリすることが可能になり、更に、ソフトウェア更新の作業を軽減することが可能になり、更に、ソフトウェア更新の作業の失敗による装置のダウンタイムを軽減することが可能になり、更に、業務への影響を最小限にすることが可能になる。
【実施例４】
【０１３９】
実施例４では、本発明に係るソフトウェア更新装置が接続されているＭＦＰ機がソフトウェア更新を実施した後に、ソフトウェア更新装置がシステムに存在する同機種のＭＦＰ機に対して同一のソフトウェアを配信し、ソフトウェアに不具合を検出した場合は同機種のＭＦＰ機にソフトウェア更新の中止を指示する実施の形態について説明する。
【０１４０】
図１５は、実施例４におけるソフトウェア更新装置４の機能的な構成の一例を示すブロック図である。
【０１４１】
図１５に示すように、ＭＦＰ機２には本発明に係るソフトウェア更新装置４が接続または内蔵され、また、ＭＦＰ機２は、ソフトウェア更新装置４とのやり取り、ソフトウェアの更新、ＭＦＰ機２が有する各種サービス（コピー、プリント、スキャンおよびファクス等）の制御部（図示せず）の制御、ＭＦＰ機２に接続された周辺機器５とのやり取り等を行うＭＦＰ機主制御部６、各サブネッ１ト上の他の装置との間で各種データの送受信を行うＩ／Ｆ［Interface］７を有している。
【０１４２】
次に、ソフトウェア更新装置４の機能的な構成について説明する。
【０１４３】
図１５に示すように、ソフトウェア更新装置４は、ソフトウェア更新部８、同機種探索部９、装置テーブル作成部１０、ソフトウェア配信部１１、更新結果受信部１２、サービス実行テーブル作成部１７、更新指示部１８、タイマー１９から構成される。
【０１４４】
ソフトウェア更新部８は、ＭＦＰ機２に更新用ソフトウェアの更新を実施させる処理を行う。具体的には、更新用ソフトウェアをＭＦＰ機主制御部６に渡し、ＭＦＰ機主制御部６に更新用ソフトウェアの更新を実施させるという動作を行う。
【０１４５】
同機種探索部９は、ＭＦＰ機２の更新用ソフトウェアが正常に更新された際に、各サブネット１に接続されている装置から、ＭＦＰ機２と同機種のＭＦＰ機２を探索する処理、探索した同機種のＭＦＰ機２のソフトウェアのバージョンを確認する処理を行う。なお、同機種のＭＦＰ機２の探索方式として、「同一サブネット内の自動探索」、「指定されたサブネット内の自動探索」、「指定された装置を探索」がある。
【０１４６】
装置テーブル作成部１０は、同機種探索部９が探索した同機種のＭＦＰ機２の機種情報、ソフトウェアのバージョン等を含む装置情報を記録する装置テーブルを作成、保存する処理を行う。
【０１４７】
ソフトウェア配信部１１は、装置テーブル作成部１０に記録された同機種のＭＦＰ機２の装置情報から本体バージョン等の比較に基づいて配信可能か否か判定し、配信可能な同機種のＭＦＰ機２に更新用ソフトウェアを配信する処理を行う。
【０１４８】
更新結果受信部１２は、ソフトウェア配信部１１で更新用ソフトウェアを配信した同機種のＭＦＰ機２から送信される更新結果を受信する処理を行う。なお、更新結果受信部１２で受信した更新結果は装置テーブル作成部１０に渡され、装置テーブル作成部１０は更新結果を装置テーブルに記録する。
【０１４９】
サービス実行テーブル作成部１７は、ＭＦＰ機２がソフトウェア更新を実施した後にＭＦＰ機２が有する各種サービス（コピー、プリント、スキャンおよびファクス等）の実行が正常に行われたか否かを記録するサービス実行テーブルを作成、保存する処理を行う。
【０１５０】
更新指示部１８は、ソフトウェア配信部１１で更新用ソフトウェアを配信した同機種のＭＦＰ機２に対し、更新用ソフトウェア更新の実施の指示または更新用ソフトウェア更新の中止の指示を送信する処理を行う。
【０１５１】
タイマー１９は、ソフトウェア配信部１１で同機種のＭＦＰ機２に更新用ソフトウェアを配信してから、更新指示部１８で更新用ソフトウェアを配信したＭＦＰ機２に更新用ソフトウェア更新の実施の指示を送信するまでの更新保留時間をカウントする処理を行う。
【０１５２】
次に、ソフトウェア更新装置が行うソフトウェア配信の処理手順について図１６および図１７に示すフローチャートを参照して説明する。
【０１５３】
ユーザの手動によりソフトウェア更新部がソフトウェア更新装置と接続する装置（以後、接続装置と称する）のソフトウェア更新を実施し（ステップＳ１６０１）、ソフトウェア更新部が接続装置を自動リブートし（ステップＳ１６０２）、接続装置のブート、サービスの開始が失敗した場合（ステップＳ１６０３でＮＯ）、ステップＳ１６０４に進み、また、接続装置のブート、サービスの開始が成功した場合（ステップＳ１６０３でＹＥＳ）、ステップＳ１６０５に進む。
【０１５４】
接続装置のブート、サービスの開始が失敗した場合（ステップＳ１６０３でＮＯ）、ソフトウェア更新の失敗をユーザに通知し（ステップＳ１６０４）、ソフトウェア配信の処理手順を終了する。
【０１５５】
接続装置のブート、サービスの開始が成功した場合（ステップＳ１６０３でＹＥＳ）、同機種探索部がサブルーチンである同機種探索処理を実施し（ステップＳ１６０５）、装置テーブル作成部が装置テーブルを作成、保存し（ステップＳ１６０６）、ソフトウェア配信部が配信ループを開始し（ステップＳ１６０７）、ソフトウェア配信部が接続装置と同機種探索部が探索した接続装置と同機種の装置（以後、同機種装置と称する）との本体バージョンを比較し（ステップＳ１６０８）、ソフトウェア配信部が本体ソフトウェアは配信可能であると判定した場合（ステップＳ１６０９でＹＥＳ）、ステップＳ１６１０に進み、また、ソフトウェア配信部が本体ソフトウェアは配信不可能であると判定した場合（ステップＳ１６０９でＮＯ）、ステップＳ１６１１に進む。
【０１５６】
ソフトウェア配信部が本体ソフトウェアは配信可能であると判定した場合（ステップＳ１６０９でＹＥＳ）、ソフトウェア配信部が同機種装置に本体ソフトウェアを配信し（ステップＳ１６１０）、ステップＳ１６１１に進む。
【０１５７】
そして、ソフトウェア配信部が接続装置の周辺機器と同機種装置の周辺機器との周辺機器バージョンを比較し（ステップＳ１６１１）、ソフトウェア配信部が周辺機器ソフトウェアは配信可能であると判定した場合（ステップＳ１６１２でＹＥＳ）、ステップＳ１６１３に進み、また、ソフトウェア配信部が周辺機器ソフトウェアは配信不可能であると判定した場合（ステップＳ１６１２でＮＯ）、ステップＳ１６１４に進む。
【０１５８】
ソフトウェア配信部が周辺機器ソフトウェアは配信可能であると判定した場合（ステップＳ１６１２でＹＥＳ）、ソフトウェア配信部が同機種装置に周辺機器ソフトウェアを配信し（ステップＳ１６１３）、ステップＳ１６１４に進む。
【０１５９】
そして、ソフトウェア配信部の配信ループが終了した場合（ステップＳ１６１４でＹＥＳ）、図１７に示すフローチャートに進み、また、ソフトウェア配信部の配信ループが終了していない場合（ステップＳ１６１４でＮＯ）、ステップＳ１６０８に戻る。
【０１６０】
ソフトウェア配信部の配信ループが終了した場合（ステップＳ１６１４でＹＥＳ）、図１７に示すフローチャートに進み、接続装置のサービスを実行し（ステップＳ１７０１）、サービスにエラーが発生しなかった場合（ステップＳ１７０２でＮＯ）、ステップＳ１７０３に進み、また、サービスにエラーが発生した場合（ステップＳ１７０２でＹＥＳ）、ステップＳ１７０４に進む。
【０１６１】
サービスにエラーが発生しなかった場合（ステップＳ１７０２でＮＯ）、サービス実行テーブル作成部がサービス実行テーブルに正常動作を記録し（ステップＳ１７０３）、ステップＳ１７０８に進む。
【０１６２】
サービスにエラーが発生した場合（ステップＳ１７０２でＹＥＳ）、エラー原因を切り分け（ステップＳ１７０４）、ソフトウェアが原因ではない場合（ステップＳ１７０５でＮＯ）、ステップＳ１７０６に進み、また、ソフトウェアが原因である場合（ステップＳ１７０５でＹＥＳ）、ステップＳ１７０８に進む。
【０１６３】
ソフトウェアが原因ではない場合（ステップＳ１７０５でＮＯ）、更新指示部がソフトウェアを配信した全ての装置（以後、配信装置と称する）に更新の中止を指示し（ステップＳ１７０６）、エラー発生をユーザに通知し（ステップＳ１７０７）、ソフトウェア配信の処理手順を終了する。
【０１６４】
そして、未実行のサービスが無い場合（ステップＳ１７０８でＮＯ）、ステップＳ１７０９に進み、また、未実行のサービスが有る場合（ステップＳ１７０８でＹＥＳ）、ステップＳ１７１０に進む。
【０１６５】
未実行のサービスが無い場合（ステップＳ１７０８でＮＯ）、更新指示部が全配信装置に更新の実施を指示し（ステップＳ１７０９）、ステップＳ１７１１に進む。
【０１６６】
未実行のサービスが有る場合（ステップＳ１７０８でＹＥＳ）、更新時間が経過していない場合（ステップＳ１７１０でＮＯ）、ステップＳ１７０１に戻り、また、更新時間が経過した場合（ステップＳ１７１０でＹＥＳ）、ステップＳ１７１１に進む。
【０１６７】
そして、更新結果受信部が更新結果受信ループを開始し（ステップＳ１７１１）、更新結果受信部が配信装置から更新結果を受信し（ステップＳ１７１２）、装置テーブル作成部が装置テーブルに配信装置の更新結果を記録し（ステップＳ１７１３）、更新結果受信部の更新結果受信ループが終了した場合（ステップＳ１７１４でＹＥＳ）、ステップＳ１７１５に進み、また、更新結果受信部の更新結果受信ループが終了していない場合（ステップＳ１７１４でＮＯ）、ステップＳ１７１２に戻る。
【０１６８】
更新結果受信部の更新結果受信ループが終了した場合（ステップＳ１７１４でＹＥＳ）、全配信装置の更新結果をユーザに通知し（ステップＳ１７１５）、接続装置を通常サービスに移行し（ステップＳ１７１６）、ソフトウェア配信の処理手順を終了する。
【０１６９】
なお、更新を失敗した配信装置に対する更新の再実施方式として、「更新が成功するまで配信を繰り返す」、「ユーザが指定する回数だけ配信を繰り返す」がある。
【０１７０】
なお、同機種探索部が図１６に示すフローチャートのステップＳ１６０５で行う同機種探索処理の処理手順は、実施例１の図５に示すフローチャートの処理手順と同様であるため、説明は省略する。
【０１７１】
次に、ソフトウェア更新装置からソフトウェアを配信された装置が行うソフトウェア更新の処理手順について図１８および図１９に示すフローチャートを参照して説明する。
【０１７２】
ソフトウェア更新装置からソフトウェア更新の要求を受信し（ステップＳ１８０１）、ソフトウェア更新装置から更新用本体ソフトウェアを受信し（ステップＳ１８０２）、ソフトウェア更新装置から更新用周辺機器ソフトウェアを受信し（ステップＳ１８０３）、タイマーに更新保留時間を設定し（ステップＳ１８０４）、更新保留時間が経過した場合（ステップＳ１８０５でＹＥＳ）、ステップＳ１８０７に進み、また、更新保留時間が経過していない場合（ステップＳ１８０６でＮＯ）、ステップＳ１８０６に進む。
【０１７３】
更新保留時間が経過していない場合（ステップＳ１８０６でＮＯ）、ソフトウェア更新装置またはユーザから更新の実施の指示を受け付けていない場合（ステップＳ１８０６でＹＥＳ）、ステップＳ１８０７に進み、また、ソフトウェア更新装置またはユーザから更新の実施の指示を受け付けた場合（ステップＳ１８０６でＮＯ）、ステップＳ１８０９に進む。
【０１７４】
そして、ソフトウェア更新装置から更新の中心の指示を受け付けた場合（ステップＳ１８０７でＹＥＳ）、ステップＳ１８０８に進み、また、ソフトウェア更新装置から更新の中心の指示を受け付けていない場合（ステップＳ１８０７でＮＯ）、ステップＳ１８０５に戻る。
【０１７５】
そして、ジョブの受付を停止し（ステップＳ１８０９）、処理中または待機中のジョブが有る場合（ステップＳ１８１０でＮＯ）、ステップＳ１８１１に進み、また、処理中または待機中のジョブが無い場合（ステップＳ１８１０でＹＥＳ）、図１９に示すフローチャートに進む。
【０１７６】
処理中または待機中のジョブが有る場合（ステップＳ１７１０でＮＯ）、ジョブの終了イベントを待機し（ステップＳ１８１１）、ステップＳ１８１０に戻る。
【０１７７】
処理中または待機中のジョブが無い場合（ステップＳ１８１０でＹＥＳ）、図１９に示すフローチャートに進み、更新用本体ソフトウェアのバージョンを確認し（ステップＳ１９０１）、更新可能な場合（ステップＳ１９０２でＹＥＳ）、ステップＳ１９０３に進み、また、更新不可能な場合（ステップＳ１９０２でＮＯ）、ステップＳ１９０４に進む。
【０１７８】
更新可能な場合（ステップＳ１９０２でＹＥＳ）、本体ソフトウェア更新を実施し（ステップＳ１９０３）、ステップＳ１９０４に進む。
【０１７９】
そして、ソフトウェア更新装置に更新結果を送信し（ステップＳ１９０４）、更新用周辺機器ソフトウェアのバージョンを確認し（ステップＳ１９０５）、更新可能な場合（ステップＳ１９０６でＹＥＳ）、ステップＳ１９０７に進み、また、更新不可能な場合（ステップＳ１９０６でＮＯ）、ステップＳ１９０８に進む。
【０１８０】
、更新可能な場合（ステップＳ１９０６でＹＥＳ）、周辺機器ソフトウェア更新を実施し（ステップＳ１９０７）、ステップＳ１９０８に進む。
【０１８１】
そして、自動リブートし（ステップＳ１９０８）、ブート、サービスの開始が成功した場合（ステップＳ１９０９でＹＥＳ）、ステップＳ１９１０に進み、また、ブート、サービスの開始が失敗した場合（ステップＳ１９０９でＮＯ）、ステップＳ１９１１に進む。
【０１８２】
ブート、サービスの開始が成功した場合（ステップＳ１９０９でＹＥＳ）、ソフトウェア更新装置に更新結果を送信し（ステップＳ１９１０）、ソフトウェア更新の処理手順を終了する。
【０１８３】
ブート、サービスの開始が失敗した場合（ステップＳ１９０９でＮＯ）、強制更新モードに移行し（ステップＳ１９１１）、ソフトウェア更新装置に更新結果を送信し（ステップＳ１９１２）、ソフトウェア更新の処理手順を終了する。
【０１８４】
図２０は、サービス実行テーブル２０の一例を示す図である。
【０１８５】
図２０に示すように、サービス実行テーブル２０には、各サービスの実行日時、実行結果が記録されている。
【０１８６】
従って、一定時間待機してからソフトウェア更新を行うことで、不具合を拡散させずに、即座に中止することが可能になる。
【図面の簡単な説明】
【０１８７】
【図１】本発明を適用したシステムの全体構成の一例を示すブロック図である。
【図２】実施例１におけるソフトウェア更新装置の機能的な構成の一例を示すブロック図である。
【図３】ソフトウェア更新装置が行うソフトウェア配信の処理手順を示すフローチャートである。
【図４】ソフトウェア更新装置が行うソフトウェア配信の処理手順を示すフローチャートである。
【図５】同機種探索部が図３に示すフローチャートのステップＳ３０５で行う同機種探索処理の処理手順を示すフローチャートである。
【図６】ソフトウェア更新装置からソフトウェアを配信された装置が行うソフトウェア更新の処理手順を示すフローチャートである。
【図７】装置テーブルの一例を示す図である。
【図８】実施例２におけるソフトウェア更新装置の機能的な構成の一例を示すブロック図である。
【図９】ソフトウェア更新装置が行うソフトウェアリカバリの処理手順を示すフローチャートである。
【図１０】ソフトウェア更新装置が行うソフトウェアリカバリの処理手順を示すフローチャートである。
【図１１】ソフトウェア更新装置からソフトウェアの送信を要求された装置が行うソフトウェア送信の処理手順を示すフローチャートである。
【図１２】実施例３におけるソフトウェア更新装置の機能的な構成の一例を示すブロック図である。
【図１３】ソフトウェア更新装置が行うソフトウェアバックアップおよびソフトウェアリカバリの処理手順を示すフローチャートである。
【図１４】ソフトウェア更新装置が行うソフトウェアバックアップおよびソフトウェアリカバリの処理手順を示すフローチャートである。
【図１５】実施例４におけるソフトウェア更新装置の機能的な構成の一例を示すブロック図である。
【図１６】ソフトウェア更新装置が行うソフトウェア配信の処理手順を示すフローチャートである。
【図１７】ソフトウェア更新装置が行うソフトウェア配信の処理手順を示すフローチャートである。
【図１８】ソフトウェア更新装置からソフトウェアを配信された装置が行うソフトウェア更新の処理手順を示すフローチャートである。
【図１９】ソフトウェア更新装置からソフトウェアを配信された装置が行うソフトウェア更新の処理手順を示すフローチャートである。
【図２０】サービス実行テーブルの一例を示す図である。
【符号の説明】
【０１８８】
１    サブネット
２    ＭＦＰ機
３    Ｐｒｉｎｔｅｒ機
４    ソフトウェア更新装置
５    周辺機器
６    ＭＦＰ機主制御部
７    Ｉ／Ｆ
８    ソフトウェア更新部
９    同機種探索部
１０    装置テーブル作成部
１１    ソフトウェア配信部
１２    更新結果受信部
１３    装置テーブル
１４    更新履歴テーブル作成部
１５    ソフトウェア取得部
１６    ソフトウェア送信部
１７    サービス実行テーブル作成部
１８    更新指示部
１９    タイマー
２０    サービス実行テーブル
【図１】
2006178892.tif 000003
【図２】
2006178892.tif 000004
【図３】
2006178892.tif 000005
【図４】
2006178892.tif 000006
【図５】
2006178892.tif 000007
【図６】
2006178892.tif 000008
【図７】
2006178892.tif 000009
【図８】
2006178892.tif 000010
【図９】
2006178892.tif 000011
【図１０】
2006178892.tif 000012
【図１１】
2006178892.tif 000013
【図１２】
2006178892.tif 000014
【図１３】
2006178892.tif 000015
【図１４】
2006178892.tif 000016
【図１５】
2006178892.tif 000017
【図１６】
2006178892.tif 000018
【図１７】
2006178892.tif 000019
【図１８】
2006178892.tif 000020
【図１９】
2006178892.tif 000021
【図２０】
2006178892.tif 000022