(57)【要約】      （修正有）【課題】サーバの設置や更新対象機器指定を事前に行うことなく、システム内の機器におけるソフトウェアを更新できる画像処理装置、ソフトウェア更新システム、ソフトウェア更新方法、ソフトウェア更新プログラム、及びそのプログラムを記録した記録媒体を提供する。【解決手段】画像処理装置１００は、自機のソフトウェア更新処理を終えると、ネットワーク制御装置２００から、中継に係るデータ転送経路の設定を含むネットワーク制御情報を取得する制御情報取得手段２２と、制御情報取得手段２２により取得したネットワーク制御情報に基づき、ネットワークに接続される自機以外の他の画像処理装置１００の中から、ソフトウェアを更新する更新対象機器を決定する更新対象機器決定手段２３と、更新対象機器決定手段２３により決定した更新対象機器に対して、ソフトウェア環境の更新を要求するソフトウェア更新要求手段２４と、を有している。【選択図】図４
2011039840.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク上を流れるデータを他のネットワークに中継する１又は複数のネットワーク制御装置と接続される１又は複数の画像処理装置であって、
自機のソフトウェア更新処理を終えると、前記ネットワーク制御装置から、前記中継に係るデータ転送経路の設定を含むネットワーク制御情報を取得する制御情報取得手段と、
前記制御情報取得手段により取得したネットワーク制御情報に基づき、前記ネットワークに接続される自機以外の他の画像処理装置の中から、ソフトウェアを更新する更新対象機器を決定する更新対象機器決定手段と、
前記更新対象機器決定手段により決定した更新対象機器に対して、ソフトウェア環境の更新を要求するソフトウェア更新要求手段と、を有することを特徴とする画像処理装置。
【請求項２】
前記制御情報取得手段は、
指定された、データ転送元から転送先までの間に経由する前記ネットワーク制御装置の数（ホップ数）に基づき、前記ネットワークに接続される１又は複数のネットワーク制御装置からネットワーク制御情報を取得することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記ネットワークに接続される検索候補の機器を決定する検索候補決定手段と、
画像処理装置のソフトウェア環境において、ソフトウェア更新を行う必要があるか否かを判定する更新要否判定手段と、を有し、
前記更新対象機器決定手段は、
前記検索候補決定手段により決定した機器から、搭載ソフトウェアに係る情報を含む機器情報を取得し、取得した機器情報に基づき、前記更新要否判定手段により、前記ソフトウェア更新の要否判定を行い、要否判定結果に従って、前記更新対象機器を決定することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記検索候補決定手段は、
前記制御情報取得手段により取得したネットワーク制御情報に含まれる、ＩＰ（Internet Protocol）アドレスのうちネットワークアドレスとホストアドレスとを識別するための数値（サブネットマスクの値）に基づき、前記ネットワークを構成する１又は複数のサブネットに接続される機器のＩＰアドレスを算出し、前記ネットワークに接続される検索候補の機器を決定することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記更新要否判定手段は、
自機の機種を識別する機種識別情報と、前記機器情報に含まれる機種識別情報とに基づく、機種条件が一致した場合に、前記機器情報を取得した機器を、前記ソフトウェア更新が必要な機器と判定することを特徴とする請求項３又は４に記載の画像処理装置。
【請求項６】
前記更新要否判定手段は、
自機にインストールされたソフトウェアを識別するソフトウェア識別情報及び前記ソフトウェアのバージョンを示すバージョン情報と、前記機器情報に含まれるソフトウェア識別情報及びバージョン情報とに基づく、ソフトウェアに係るタイプ及びバージョン条件が一致した場合に、前記機器情報を取得した機器を、前記ソフトウェア更新が必要な機器と判定することを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記ソフトウェア更新要求手段は、
前記更新要否判定手段による要否判定結果において、前記ソフトウェア更新が必要な機器と判定された更新対象機器に対して、自機にインストールしたソフトウェアのプログラムを送信し、ソフトウェアの更新を要求することを特徴とする請求項３ないし６のいずれか一項に記載の画像処理装置。
【請求項８】
前記ソフトウェア環境の更新結果を管理する更新結果管理手段を有し、
前記更新結果管理手段は、
指定された方式に従って、自機及び／又は前記更新対象機器から得られた更新結果を出力することを特徴とする請求項１ないし７のいずれか一項に記載の画像処理装置。
【請求項９】
前記更新結果管理手段は、
保存指定された場合に、前記更新結果のデータを指定された格納先に保存し、
印刷指定された場合に、前記更新結果のデータを指定された出力先で印刷することを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
前記制御情報取得手段は、
デフォルトゲートウェイアドレスに基づき、前記ネットワーク制御装置から、ルーティングテーブルを前記ネットワーク制御情報として取得することを特徴とする請求項１ないし９のいずれか一項に記載の画像処理装置。
【請求項１１】
ネットワーク上を流れるデータを他のネットワークに中継する１又は複数のネットワーク制御装置と、ソフトウェアを更新する更新対象機器である１又は複数の画像処理装置とが接続されるソフトウェア更新システムであって、
１の画像処理装置が自機のソフトウェア更新処理を終えると、前記ネットワーク制御装置から、前記中継に係るデータ転送経路の設定を含むネットワーク制御情報を取得する制御情報取得手段と、
前記制御情報取得手段により取得したネットワーク制御情報に基づき、前記ネットワークに接続される自機以外の他の画像処理装置の中から前記更新対象機器を決定する更新対象機器決定手段と、
前記更新対象機器決定手段により決定した更新対象機器に対して、ソフトウェア環境の更新を要求するソフトウェア更新要求手段と、を有することを特徴とするソフトウェア更新システム。
【請求項１２】
ネットワーク上を流れるデータを他のネットワークに中継する１又は複数のネットワーク制御装置と接続される１又は複数の画像処理装置におけるソフトウェア更新方法であって、
自機のソフトウェア更新処理を終えると、前記ネットワーク制御装置から、前記中継に係るデータ転送経路の設定を含むネットワーク制御情報を取得する制御情報取得手順と、
前記制御情報取得手順により取得したネットワーク制御情報に基づき、前記ネットワークに接続される自機以外の他の画像処理装置の中から、ソフトウェアを更新する更新対象機器を決定する更新対象機器決定手順と、
前記更新対象機器決定手順により決定した更新対象機器に対して、ソフトウェア環境の更新を要求するソフトウェア更新要求手順と、を有することを特徴とするソフトウェア更新方法。
【請求項１３】
ネットワーク上を流れるデータを他のネットワークに中継する１又は複数のネットワーク制御装置と接続される１又は複数の画像処理装置におけるソフトウェア更新プログラムあって、
コンピュータを、
自機のソフトウェア更新処理を終えると、前記ネットワーク制御装置から、前記中継に係るデータ転送経路の設定を含むネットワーク制御情報を取得する制御情報取得手段と、
前記制御情報取得手段により取得したネットワーク制御情報に基づき、前記ネットワークに接続される自機以外の他の画像処理装置の中から、ソフトウェアを更新する更新対象機器を決定する更新対象機器決定手段と、
前記更新対象機器決定手段により決定した更新対象機器に対して、ソフトウェア環境の更新を要求するソフトウェア更新要求手段として機能させるソフトウェア更新プログラム。
【請求項１４】
請求項１３に記載のプログラムを記憶した、コンピュータが読み取り可能な記録媒体。
【請求項１５】
ソフトウェアを更新する更新対象機器である画像処理装置の機種を識別する機種識別情報、更新対象ソフトウェアを識別するソフトウェア識別情報、及び前記更新対象ソフトウェアのバージョンを示すバージョン情報を含むソフトウェア更新に係る管理情報と、前記更新対象ソフトウェアのプログラムとを記憶した、コンピュータが読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定のデータ伝送路を介して複数の機器が接続されるシステムに関し、特に、機器のソフトウェア環境を更新する技術に関するものである。
【背景技術】
【０００２】
ネットワークを介して複数の機器（例えば「画像処理装置」）が接続されるシステムにおいて、ソフトウェア管理機能を有するサーバが、ネットワーク情報に基づき、接続される機器にプログラムを送信し、機器のソフトウェア環境を更新する技術は、すでに知られている（例えば「特許文献１」）。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかしながら、従来のソフトウェア環境を更新する方法では、上述したように、ソフトウェア管理機能を有するサーバをシステム内に設置する必要があった。そのため、従来の方法では、機能実現のためにコストがかかってしまう。
【０００４】
またサーバには、ソフトウェア管理を行うために様々な設定を事前に行っておく必要があった。例えばサーバには、管理対象の機器にプログラムを送信するため、機器に係るネットワーク情報が設定されている。ネットワーク情報は、管理者によって設定される。そのため、管理者は、システムに接続される機器の増減に応じて、ネットワーク情報を更新しなければならない。その他にも管理者は、ソフトウェア環境の更新を行うプログラムの実行スケジュールや、システム内におけるソフトウェア更新対象となる機器（以下「更新対象機器」と言う）の指定などの設定・管理を行う必要がある。これらの作業は、管理者にとって煩雑である。
【０００５】
このように、従来の方法では、コスト面や保守・運用面で負荷がかかり、ユーザにとって必ずしも利便性のよいものではなかった。
【０００６】
本発明は上記従来技術の問題点を鑑み提案されたものであり、その目的とするところは、サーバの設置や更新対象機器指定を事前に行うことなく、ソフトウェア環境を更新できる画像処理装置、ソフトウェア更新システム、ソフトウェア更新方法、ソフトウェア更新プログラム、及びそのプログラムを記録した記録媒体を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明に係る画像処理装置は、ネットワーク上を流れるデータを他のネットワークに中継する１又は複数のネットワーク制御装置と接続される１又は複数の画像処理装置であって、自機のソフトウェア更新処理を終えると、前記ネットワーク制御装置から、前記中継に係るデータ転送経路の設定を含むネットワーク制御情報を取得する制御情報取得手段と、前記制御情報取得手段により取得したネットワーク制御情報に基づき、前記ネットワークに接続される自機以外の他の画像処理装置の中から、ソフトウェアを更新する更新対象機器を決定する更新対象機器決定手段と、前記更新対象機器決定手段により決定した更新対象機器に対して、ソフトウェア環境の更新を要求するソフトウェア更新要求手段と、を有している。
【０００８】
このような構成によって、本発明に係る画像処理装置は、自機のソフトウェア更新処理を終えると、すでにシステム内に設置されたネットワーク制御装置から、ネットワーク制御情報を取得する。画像処理装置は、取得したネットワーク制御情報に基づき、システム内における更新対象機器を決定する。画像処理装置は、決定した更新対象機器に対してプログラムを送信し、ソフトウェア環境の更新を要求する。
【０００９】
これによって、本発明に係る画像処理装置は、サーバの設置や更新対象機器指定を事前に行うことなく、ソフトウェア環境を更新できる。その結果、システム内におけるソフトウェア環境の更新において、コスト面や保守・運用面での負荷が軽減され、ユーザにとって利便性のよいものとなる。
【００１０】
上記目的を達成するため、本発明に係るソフトウェア更新システムは、ネットワーク上を流れるデータを他のネットワークに中継する１又は複数のネットワーク制御装置と、ソフトウェアを更新する更新対象機器である１又は複数の画像処理装置とが接続されるソフトウェア更新システムであって、１の画像処理装置が自機のソフトウェア更新処理を終えると、前記ネットワーク制御装置から、前記中継に係るデータ転送経路の設定を含むネットワーク制御情報を取得する制御情報取得手段と、前記制御情報取得手段により取得したネットワーク制御情報に基づき、前記ネットワークに接続される自機以外の他の画像処理装置の中から前記更新対象機器を決定する更新対象機器決定手段と、前記更新対象機器決定手段により決定した更新対象機器に対して、ソフトウェア環境の更新を要求するソフトウェア更新要求手段と、を有している。
【００１１】
上記目的を達成するため、本発明に係るソフトウェア更新方法は、ネットワーク上を流れるデータを他のネットワークに中継する１又は複数のネットワーク制御装置と接続される１又は複数の画像処理装置におけるソフトウェア更新方法であって、自機のソフトウェア更新処理を終えると、前記ネットワーク制御装置から、前記中継に係るデータ転送経路の設定を含むネットワーク制御情報を取得する制御情報取得手順と、前記制御情報取得手順により取得したネットワーク制御情報に基づき、前記ネットワークに接続される自機以外の他の画像処理装置の中から、ソフトウェアを更新する更新対象機器を決定する更新対象機器決定手順と、前記更新対象機器決定手順により決定した更新対象機器に対して、ソフトウェア環境の更新を要求するソフトウェア更新要求手順と、を有している。
【００１２】
このような手順によって、本発明に係るソフトウェア更新方法は、自機のソフトウェア更新処理を終えると、すでにシステム内に設置されたネットワーク制御装置から、ネットワーク制御情報を取得し、取得したネットワーク制御情報に基づき、システム内における更新対象機器を決定し、決定した更新対象機器に対してプログラムを送信し、ソフトウェア環境の更新を要求すると言う動作を実現する。
【００１３】
これによって、本発明に係るソフトウェア更新方法は、サーバの設置や更新対象機器指定を事前に行うことなく、システム内の機器（画像処理装置）におけるソフトウェアを更新可能な環境を提供できる。
【発明の効果】
【００１４】
本発明によれば、システム内に設置されたネットワーク制御装置から取得したネットワーク制御情報に基づき更新対象機器を決定し、決定した更新対象機器に対してソフトウェア更新を要求することで、サーバの設置や更新対象機器指定を事前に行うことなく、システム内の機器におけるソフトウェアを更新可能な画像処理装置、ソフトウェア更新システム、ソフトウェア更新方法、ソフトウェア更新プログラム、及びそのプログラムを記録した記録媒体を提供することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の第１の実施形態に係るソフトウェア更新システムの構成例を示す図である。
【図２】本発明の第１の実施形態に係る画像処理装置のハードウェア構成例を示す図である。
【図３】本発明の第１の実施形態に係るソフトウェア環境を更新する動作例を示す図である。
【図４】本発明の第１の実施形態に係るソフトウェア更新機能の構成例を示す図である。
【図５】本発明の第１の実施形態に係るネットワーク制御情報のデータ例を示す図である。
【図６】本発明の第１の実施形態に係る記録媒体が保持するデータ例を示す図である。
【図７】本発明の第１の実施形態に係るソフトウェア環境を更新する処理手順例（その１）を示すシーケンス図である。
【図８】本発明の第１の実施形態に係るソフトウェア環境を更新する処理手順例（その２）を示すシーケンス図である。
【図９】本発明の第１の実施形態に係るソフトウェア環境を更新する処理手順例（その３）を示すシーケンス図である。
【図１０】本発明の変形例に係るソフトウェア環境を更新する動作例を示す図である。
【図１１】本発明の変形例に係るソフトウェア更新機能の構成例を示す図である。
【図１２】本発明の変形例に係るソフトウェア環境を更新する処理手順例を示すシーケンス図である。
【発明を実施するための形態】
【００１６】
以下、本発明の好適な実施の形態（以下「実施形態」と言う）について、図面を用いて詳細に説明する。
【００１７】
［第１の実施形態］
＜システム構成＞
図１は、本実施形態に係るソフトウェア更新システム１の構成例を示す図である。なお以下の説明では、システム１を構成するネットワークＮａ，Ｎｂ，Ｎｃ，Ｎｄを総称する場合、便宜上「ネットワークＮ」と言う。また、画像処理装置１００ａ１〜１００ａ４及び１００ｃ、ネットワーク制御装置２００ａ，２００ｂ，２００ｃ、及びＰＣ（Personal Computer）３００ａ，３００ｃにおいても同様である。
【００１８】
本実施形態に係るソフトウェア更新システム１では、複数のサブネットで構成されるネットワーク環境を想定している。ここで言う「サブネット」とは、大規模な通信ネットワークを構成する個々のネットワークを意味する。このようなシステム１は、オフィス環境などに構築される一般的なネットワーク環境である。
【００１９】
図１には、４つのサブネットにあたるネットワークＮａ，Ｎｂ，Ｎｃ，Ｎｄで構成されるシステム１が示されている。各ネットワークＮａ，Ｎｂ，Ｎｃ，Ｎｄは、ネットワーク制御装置（ルータ）２００ａ，２００ｂ，２００ｃを介して接続され、ネットワーク上を流れるデータが他のネットワークに中継される。ネットワーク制御装置２００は、ＯＳＩ（Open Systems Interconnection）参照モデルで言うネットワーク層（第３層）やトランスポート層（第４層）の一部のプロトコルを解析して転送を行う。またネットワーク制御装置２００は、ネットワーク層のアドレスを参照し（ルーティングテーブルを参照し）、どの経路を通して転送すべきかを判断する経路選択機能を有している。
【００２０】
例えばネットワーク制御装置２００ａは、ネットワークＮｄとネットワークＮａとを中継する。またネットワーク制御装置２００ｂは、ネットワークＮａとネットワークＮｂとを中継する。またネットワーク制御装置２００ｃは、ネットワークＮｂとネットワークＮｃとを中継する。
【００２１】
また、図１に示すネットワークＮａ，Ｎｃには、１又は複数の機器が接続されており、サブネット単位でＩＰ（Internet Protocol）アドレスが割り当てられる。
【００２２】
例えばネットワークＮａには、ＭＦＰ（Multifunction Peripheral）やＬＰ（Laser Printer）と言った複数の画像処理装置１００ａ１〜１００ａ４と、ユーザ端末などのＰＣ３００ａとが接続され、各機器にＩＰアドレス［１９２．１６８．０．Ｘ］が割り当てられている。またネットワークＮｃには、画像処理装置１００ｃとＰＣ３００ｃとが接続され、各機器にＩＰアドレス［１９２．１６８．５．Ｘ］が割り当てられている。
【００２３】
本実施形態に係るシステム１では、上記システム構成により、次に示すネットワーク制御が行える。例えば、ネットワークＮａに接続されるＰＣ３００ａから、他のネットワークＮｂ，Ｎｃ，Ｎｄに接続される機器を検索したい場合には、所定のコマンドやツールを用いて検索範囲を指定することで検索できる。このときの検索範囲は、例えば、ネットワークＮａに接続されるＰＣ３００ａから他のネットワークＮｂ，Ｎｃ，Ｎｄに接続される機器までの間に通過するネットワーク制御装置２００ｂ，２００ｃを指定すればよい。また、例えば、ネットワークＮａに接続されるＰＣ３００ａからネットワークＮｃに接続される画像処理装置１００ｃに対してデータを送信したい場合には、所定のコマンドやツールを用いてデータ転送経路を指定することで送信できる。このときのデータ転送経路は、例えば、ネットワークＮａに接続されるＰＣ３００ａからネットワークＮｃに接続される画像処理装置１００ｃまでの間に通過するネットワーク制御装置２００ｂ，２００ｃを指定すればよい。
【００２４】
以上のように、本実施形態に係るシステム１では、ネットワーク制御装置２００におけるルーティング処理により、異なるネットワーク間でのデータ通信が行える。これにより、システム１では、画像処理装置１００に対して、次に示すソフトウェア更新を行うことができる。例えばシステム１では、同一ネットワークＮに接続される画像処理装置１００（同一サブネットに接続される機器）に対してのソフトウェア更新だけでなく、異なる複数のネットワークＮに接続される画像処理装置１００（異なるサブネットに接続される機器）に対してもソフトウェア更新が行える。
【００２５】
＜ハードウェア構成＞
図２は、本実施形態に係る画像処理装置１００のハードウェア構成例を示す図である。
図２に示すように、画像処理装置１００は、コントローラ１１０、操作パネル１２０、プロッタ１３０、及びスキャナ１４０などを備え、それぞれが相互にバスＢで接続されている。
【００２６】
操作パネル１２０は、表示部及び入力部を備えており、機器情報などの各種情報をユーザに提供したり、動作設定や動作指示などの各種ユーザ操作を受け付けたりする。プロッタ１３０は、画像形成部を備えており、用紙に出力画像を形成する。例えば出力画像を形成する方式には、電子写真プロセスやインクジェット方式などがある。スキャナ１４０は、原稿を光学的に読み取り、読み取り画像を生成する。
【００２７】
コントローラ１１０は、ＣＰＵ（Central Processing Unit）１１１、記憶装置１１２、ネットワークＩ／Ｆ１１３、及び外部記憶Ｉ／Ｆ１１４などを備えており、それぞれが相互にバスＢで接続されている。
【００２８】
ＣＰＵ１１１は、プログラムを実行することにより各種機能の実現や装置全体を制御する。また記憶装置１１２は、上記プログラムや各種データ（例えば「画像データ」）を格納し保持する。例えば記憶装置１１２には、揮発性のメモリであるＲＡＭ（Random Access Memory）、不揮発性のメモリであるＲＯＭ（Read Only Memory）、及び大容量の記憶領域を備えたＨＤＤ（Hard Disk Drive）などがある。ＲＡＭは、ＣＰＵ１１１のワークエリア（プログラムやデータが一時的に読み出される記憶エリア）として機能する。ＲＯＭやＨＤＤは、プログラムや各種データの格納先として用いられる。これにより、画像処理装置１００では、ＣＰＵ１１１がＲＯＭに格納されたプログラムをＲＡＭ上に読み出し、プログラムを実行する。
【００２９】
ネットワークＩ／Ｆ１１３は、画像処理装置１００をネットワークなどの所定のデータ伝送路に接続するためのインタフェースである。外部記憶Ｉ／Ｆ１１４は、外部記憶装置にあたる記録媒体１１４ａを接続するためのインタフェースである。例えば外部記憶装置には、ＳＤメモリカード（SD Memory Card）やＵＳＢ（Universal Serial Bus）メモリなどがある。これにより、画像処理装置１００は、外部記憶Ｉ／Ｆ１１４を介して、記録媒体１１４ａに格納されたプログラムやデータを読み取る。
【００３０】
画像処理装置１００では、上記ハードウェア構成により、例えばＲＯＭやＨＤＤからＲＡＭ上に読み出したプログラムをＣＰＵ１１１により実行することで、１又は複数の搭載機能（例えば「印刷」や「原稿読み取り」などの画像処理機能）を動作させることができる。
【００３１】
＜ソフトウェア更新機能＞
本実施形態に係るソフトウェア更新機能について説明する。
【００３２】
本実施形態に係る画像処理装置１００は、自機のソフトウェア更新処理を終えると、すでにシステム１内に設置されたネットワーク制御装置２００から、ネットワーク制御情報（ルーティングテーブル）を取得する。画像処理装置１００は、取得したネットワーク制御情報に基づき、システム１内における更新対象機器を決定する。画像処理装置１００は、決定した更新対象機器に対してプログラムを送信し、ソフトウェア環境の更新を要求する。画像処理装置１００では、このようなソフトウェア更新機能を有している。
【００３３】
ここで本実施形態が想定している、複数の画像処理装置１００に対して行うソフトウェア更新の動作について説明する。
【００３４】
図３は、本実施形態に係るソフトウェア環境を更新する動作例を示す図である。
図３（Ａ）に示すように、ネットワークＮに接続された画像処理装置１００４に、インストール対象である最新ソフトウェアが格納された記録媒体１１４ａが装着される。その結果、図３（Ｂ）に示すように、記録媒体１１４ａが装着された画像処理装置１００４は、自機におけるソフトウェア更新処理を終えると、他の画像処理装置１００１〜１００３に、更新対象ソフトウェア（プログラム）を送信し、ソフトウェア環境の更新を要求する。これにより、画像処理装置１００のソフトウェア環境は、最新の環境へと更新される。
【００３５】
このように、本実施形態では、ソフトウェア更新を画像処理装置１００から能動的に行う。本実施形態に係るソフトウェア更新システム１では、複数の画像処理装置１００１〜１００４のうち、１台の画像処理装置１００４でソフトウェア更新が行われると、残りの画像処理装置１００１〜１００３に対しても、動的にソフトウェア更新を行う。
【００３６】
その結果、本実施形態では、ソフトウェア管理機能を有するサーバの設置を必要としないソフトウェア更新環境を実現できる。また本実施形態では、１台の画像処理装置１００４で実行されたソフトウェアインストールに同期して、他の画像処理装置１００１〜１００３に対するソフトウェア更新処理が実行されることから、ソフトウェア更新に係る実行スケジュールなどを設定しておかなくてもよい。
【００３７】
また、複数の画像処理装置１００に対してソフトウェア更新処理を実行する場合には、システム１内における更新対象機器を、画像処理装置１００に係るネットワーク情報（例えば「ＩＰアドレス」）を用いて事前に指定しておかなければならない。
【００３８】
そこで、本実施形態に係る画像処理装置１００では、システム１内に設置されたネットワーク制御装置２００から取得したネットワーク制御情報に基づき更新対象機器を決定し、決定した更新対象機器に対してソフトウェア更新を要求する。このように、本実施形態では、画像処理装置１００がネットワークＮを介して取得可能な既存のネットワーク制御情報を用いて、動的にソフトウェア適用候補を決定することから、更新対象機器を事前に指定しておく必要がない。
【００３９】
これによって、本実施形態に係るソフトウェア更新システム１は、サーバの設置や更新対象機器指定を事前に行うことなく、画像処理装置１００のソフトウェア環境を更新できる。その結果、システム内におけるソフトウェア環境の更新において、コスト面や保守・運用面での負荷が軽減され、ユーザにとって利便性のよいものとなる。
【００４０】
以下に、上記ソフトウェア更新機能の構成とその動作について説明する。
【００４１】
図４は、本実施形態に係るソフトウェア更新機能の構成例を示す図である。
図４に示すように、画像処理装置１００は、検知部２１、ネットワーク制御情報取得部２２、更新対象機器決定部２３、更新部２４、及び更新結果管理部２５などを有している。
【００４２】
検知部２１は、当該装置１００への外部接続を検知する機能部である。検知部２１は、記録媒体１１４ａ（外部記憶）の装着を検知する機能を有している。検知部２１は、例えば当該装置２００が備える外部記憶Ｉ／Ｆ１１４を介して、記録媒体１１４ａの装着を検知すると、装着された旨を後述する更新部２４へと通知する。
【００４３】
ネットワーク制御情報取得部２２は、通信部１０ａを介して、システム１内に設置されたネットワーク制御装置２００から、例えば図５に示すようなネットワーク制御情報を取得する機能部である。なお通信部１０ａは、例えば当該装置２００が備えるネットワークＩ／Ｆ１１３を介して、所定のデータ伝送路で接続される他の装置（例えば「ネットワーク制御装置」や「他の画像処理装置」）と当該装置１００との間で双方向データ通信を行う機能部である。
【００４４】
ここで、ネットワーク制御装置２００が有する機能について説明する。
ネットワーク制御装置２００は、情報管理部４１及びネットワーク制御部４２などを有している。
【００４５】
情報管理部４１は、ネットワーク制御情報保持部５１が保持するネットワーク制御情報を管理する機能部である。なおネットワーク制御情報保持部５１は、例えばネットワーク制御装置２００が備える書き替え可能な不揮発性の記憶装置（例えば「ＮＶＲＡＭ（Non Volatile RAM）」）などの所定の記憶領域にあたる。
【００４６】
情報管理部４１は、所定のコマンドやツールを用いて、ネットワーク制御情報のデータ操作を行い、情報を管理する。情報管理部４１が行うデータ操作には、例えば、ネットワーク制御情報に含まれる、データ転送経路の追加（生成）、変更、及び削除や、設定内容の参照などがある。
【００４７】
例えば、情報管理部４１により、設定内容を参照するデータ操作を行った場合には、図５に示すようなネットワーク制御情報が得られる。
【００４８】
図５は、本実施形態に係るネットワーク制御情報のデータ例を示す図である。
図５には、ネットワーク制御情報の一例として、ＰＣ３００などが保持するデータ例が示されている。
【００４９】
ネットワーク制御情報は、ルーティングテーブルと呼ばれ、パケットの配送先に関する経路、すなわちデータ転送経路が設定されている。例えば図５に示すデータには、データ転送経路に係る各情報項目として、（１）宛先ＩＰアドレス、（２）サブネットマスクアドレス、（３）ゲートウェイＩＰアドレス、（４）インタフェース、（５）メトリックが設定されている。またデフォルトゲートウェイに係る情報項目として、（６）デフォルトゲートウェイアドレスが設定されている。
【００５０】
ネットワーク制御部４２は、上記ネットワーク制御情報の設定に従って、所定のネットワーク制御を行う（ルーティング処理を実行する）機能部である。ネットワーク制御部４２は、情報管理部４１を介して、ネットワーク制御情報保持部５１が保持するネットワーク制御情報にアクセスし、ネットワーク制御情報に基づくデータ転送制御を行う。
【００５１】
ＴＣＰ／ＩＰ（Transmission Control Protocol / Internet Protocol）ネットワークにおいて、パケットを送信する場合には、ネットワーク制御情報であるルーティングテーブルを参照し、パケットを送信すべき相手を判断する。例えば、送信元のＰＣ３００が接続されるネットワークＮに、送信先のＰＣ３００が接続されていない場合には、ルーティングテーブルを参照し、パケットを中継させるＰＣ３００を決定する。
【００５２】
なおネットワーク制御装置２００は、通信部１０ａと同様に、所定のデータ伝送路で接続される他の装置（例えば「画像処理装置」）と当該装置２００との間で双方向データ通信を行う通信部１０ｂを有している。
【００５３】
図４に戻り、画像処理装置１００が有するネットワーク制御情報取得部２２について説明する。
ネットワーク制御情報取得部２２は、次に示す手順によりネットワーク制御情報を取得する。ネットワーク制御情報取得部２２は、まず、当該装置１００のネットワーク設定情報から、デフォルトゲートウェイのＩＰアドレスを取得する。続いて、ネットワーク制御情報取得部２２は、取得したデフォルトゲートウェイのＩＰアドレスに基づき、所定のプロトコルを用いて、ネットワーク制御装置２００にアクセスし、ネットワーク制御情報を取得する。このときネットワーク制御情報取得部２２は、ホップ数（ｈｏｐ数）を指定し、ネットワーク制御情報を取得する。ここで言う「ホップ数」とは、システム１内において、データ転送元から転送先までの間に経由するネットワーク制御装置２００の数（ルータの数）を意味する。
【００５４】
ネットワーク制御装置２００へアクセスする際に用いるプロトコルには、例えばＲＩＰ（Routing Information Protocol）がある。ＲＩＰは、データ転送元から転送先までのホップ数に基づき、最適なデータ転送経路を判定する距離ベクトル方式（Distance Vector）のルーティングプロトコルである。よって、ネットワーク制御情報取得部２２では、情報取得時にホップ数を指定することで、データ転送元から転送先までの最適な経路上に配置されたネットワーク制御装置２００から情報を取得できる。つまり、ネットワーク制御情報取得部２２におけるホップ数の指定は、システム１内におけるソフトウェア更新の適用範囲を指定することと同義である。
【００５５】
このようにしてネットワーク制御情報取得部２２は、システム１内におけるソフトウェア更新の適用範囲内のネットワーク制御情報を取得する。
【００５６】
なおネットワーク制御情報取得部２２は、当該装置１００に装着された記録媒体１１４ａが保持するソフトウェア更新に係る管理情報（以下「更新管理情報」と言う）から上記ホップ数を得る。
【００５７】
ここで、記録媒体１１４ａが保持するデータについて説明する。
図６は、本実施形態に係る記録媒体１１４ａが保持するデータ例を示す図である。
図６（Ａ）に示すように、記録媒体１１４ａには、画像処理装置１００にインストールするプログラムＰＧ（更新対象ソフトウェアのプログラム）及び更新管理情報３１Ｄが保持されている。
【００５８】
また更新管理情報３１Ｄは、例えば図６（Ｂ）に示すようなデータ構成となっている。更新管理情報３１Ｄは、システム１内におけるソフトウェア更新の適用範囲を指定する検索範囲、画像処理装置１００の機種を識別する機種識別、更新対象ソフトウェアを識別するソフトウェア識別、及びソフトウェア更新結果の出力形式を指定する更新結果出力方式指定などの各情報項目が関連付けられている。
【００５９】
例えば情報項目「検索範囲」には、上記ホップ数が設定される。また情報項目「機種識別」には、画像処理装置１００（製品）のモデル名が設定される。また情報項目「ソフトウェア識別」には、ソフトウェア名称及びソフトウェアバージョンが設定される。また情報項目「更新結果出力方式指定」には、出力形式（例えば「ログデータ」や「レポート」）及び出力方法（例えば「記憶領域に保存」や「印刷」）が設定される。
【００６０】
記録媒体１１４ａが装着された画像処理装置１００は、上記データ構成の更新管理情報３１Ｄを、外部記憶Ｉ／Ｆ１１４を介して参照する。これにより、画像処理装置１００は、記録媒体１１４ａが保持するプログラムＰＧから得られたソフトウェア識別に係る情報（情報項目「ソフトウェア識別」）に基づき、「検索範囲」、「機種識別」、「更新結果出力方式指定」などの各情報項目を取得できる。
【００６１】
例えば、記録媒体１１４ａにソフトウェアＡのプログラムＰＧ及び図６（Ｂ）に示す更新管理情報３１Ｄが保持されている場合には、ホップ数［０］、更新対応機種［ＰＲＮ  Ａ，Ｂ，Ｃ］、更新結果の出力方式［ログ保存］など、ソフトウェアＡの更新に係る情報を取得できる。
【００６２】
また更新管理情報３１Ｄは、複数のプログラムＰＧに共通する情報である。例えば図６（Ｂ）に示す更新管理情報３１Ｄは、ソフトウェアＡ，Ｂ，Ｃに共通している。なお更新管理情報３１Ｄは、プログラムＰＧごとの情報であってもよい。この場合、更新管理情報３１Ｄは、プログラムＰＧと関連付けられて記録媒体１１４ａに保持されることから、情報項目「ソフトウェア識別」がないデータ構成となる。
【００６３】
また更新管理情報３１Ｄは、例えば図６（Ｃ）に示すような拡張データ（図中の破線枠内）を含むデータ構成であってもよい。図６（Ｃ）に示す更新管理情報３１Ｄには、「検索範囲」、「機種識別」、「ソフトウェア識別」、「更新結果出力方式指定」などの基本データに加え、「タイムアウト時間」、「リトライ回数」、「水平展開有無」、「更新実行条件」などのソフトウェア更新の制御に係る拡張データが含まれている。これにより、画像処理装置１００は、上記更新管理情報３１Ｄの拡張データに基づき、次に示すソフトウェア更新制御処理が行える。例えば画像処理装置１００は、情報項目「タイムアウト時間」、「リトライ回数」に基づき、更新対象機器（他の画像処理装置）との通信処理を制御する。また画像処理装置１００は、情報項目「水平展開有無」に基づき、ネットワーク制御装置２００を経由し、複数のネットワークＮ（複数のサブネット）に対して、ソフトウェア更新を適用するか否かを制御する。また画像処理装置１００は、情報項目「更新実行条件」に基づき、更新対象機器が条件を満たす状態（機器状態）のときにソフトウェア更新を実行するように制御する。
【００６４】
図４に戻り、画像処理装置１００が有するネットワーク制御情報取得部２２について説明する。
ネットワーク制御情報取得部２２は、上述したように、記録媒体１１４ａが保持する更新管理情報３１Ｄを参照し、同記憶媒体１１４ａが保持するプログラムＰＧから得られたソフトウェア識別に係る情報に基づき、情報項目「検索範囲」に設定されるホップ数を取得する。
【００６５】
更新対象機器決定部２３は、システム１において、ソフトウェア更新の適用範囲に相当するネットワークＮ（１又は複数のサブネット）に接続される機器の中から、更新対象機器を決定する機能部である。そこで、更新対象機器決定部２３は、機器検索部２３１、機器情報取得部２３２、及び更新要否判定部２３３などを有している。
【００６６】
機器検索部２３１は、ソフトウェア更新の適用範囲に相当するネットワークＮに接続される機器を検索する。機器検索部２３１は、例えば画像処理装置１００やＰＣ３００などに割り当てられたＩＰアドレスに基づき検索を行い、検索結果として機器応答を得る。
【００６７】
また機器検索部２３１は、上記機器検索を行う際に用いるＩＰアドレスを算出する検索候補決定部２３１１を有している。
【００６８】
検索候補決定部２３１１は、１又は複数のネットワーク制御情報に基づき、ネットワークＮ（１又は複数のサブネット）に接続される機器に割り当てられたＩＰアドレスを算出することで、検索候補を決定する。
【００６９】
検索候補決定部２３１１は、ネットワーク制御情報に含まれる情報項目（２）サブネットマスクアドレスの設定値を用いてＩＰアドレスを算出する。サブネットマスクアドレスは、ＩＰアドレスを表すビット列のうち、何ビットまでをネットワークＮを識別するネットワークアドレスのビット列とするかが定義されたビット列である。ＩＰアドレスは、上記ネットワークアドレスを表すビット列と、ネットワークＮに接続するインタフェースを識別するホストアドレスを表すビット列とから構成される。
【００７０】
これにより、検索候補決定部２３１１は、次に示す手順により、ＩＰアドレスを算出し、検索候補を決定する。検索候補決定部２３１１は、サブネットマスクアドレスの設定値に基づき、ＩＰアドレスを表すビット列の中からホストアドレスを表すビット列を特定する。検索候補決定部２３１１は、特定したビット列のビット数から、ホストアドレスにより識別可能なインタフェースの最大数を割り出し、ＩＰアドレスを算出する。その結果、検索候補決定部２３１１では、ネットワークアドレスに最大数分のホストアドレスを付加したＩＰアドレスが算出される。
【００７１】
例えばＩＰアドレスを表すビット列が３２（bit）で、サブネットマスクアドレスに［２５５．２５５．２５５．０］が設定されている場合には、検索候補決定部２３１１により、次に示すＩＰアドレスが算出される。検索候補決定部２３１１は、サブネットマスクアドレス［２５５．２５５．２５５．０］から、ＩＰアドレスを表す３２（bit）のビット列から、下位８（bit）がホストアドレスを表すビット列であると特定する。検索候補決定部２３１１は、特定したビット数［８（bit）］から、ホストアドレスにより識別可能なインタフェースの最大数［２５６］を割り出す。その結果、検索候補決定部２３１１は、ネットワークアドレスが［１９２．１６８．０］の場合、２５６個のＩＰアドレス［１９２．１６８．０．０］〜［１９２．１６８．０．２５５］を算出する。
【００７２】
このようにして、検索候補決定部２３１１は、１つのサブネットに接続される機器のＩＰアドレス（割り当てが想定されるＩＰアドレス）を算出することで、機器検索部２３１の検索候補を決定する。なお上記には、１つのネットワーク制御情報に基づき、１つのサブネットに接続される機器のＩＰアドレスを算出する例を示した。しかし、ネットワーク制御情報取得部２２が複数のネットワーク制御情報を取得した場合には、取得された複数のネットワーク制御情報に基づき、サブネットごとに、機器のＩＰアドレスを算出する。
【００７３】
これにより、機器検索部２３１は、複数のサブネットで構成されるネットワークＮ（ソフトウェア更新の適用範囲）に接続される全ての機器を検索対象とすることができる。
【００７４】
機器検索部２３１は、検索対象決定部２３１１により決定された検索対象の機器をシステム１内から検索し、機器応答の有無に基づき、ネットワークＮに接続される機器のうち、通信可能な機器を検出する。機器検索部２３１は、例えば、検索対象の機器から、所定時間経過しても機器応答がない機器を除き、通信可能な機器を検出する。
【００７５】
機器情報取得部２３２は、通信部１０ａを介して、検出された通信可能な機器から機器情報を取得する。機器情報取得部２３２は、例えば、検出された通信可能な機器にＳＮＭＰ（Simple Network Management Protocol）の情報取得コマンドを送信し、機器応答により情報を取得する。このとき取得される情報は、例えばＭＩＢ（Management Information Base）である。ＭＩＢとは、ＳＮＭＰを利用しているネットワーク機器が、自機の状態を外部に知らせるために公開する情報のことである。ＭＩＢには、例えば、シリアル番号（機器識別）、モデル名（機種識別）、搭載機能名（ソフトウェア識別）、及びネットワーク設定などの静的なデータや、動作状況及び機器状態などの動的なデータなどが含まれる。
【００７６】
機器情報取得部２３２は、取得した機器情報に基づき、通信可能な機器のうち、更新対象機器を検出する。上述したように、検索対象の機器は、必ずしも画像処理装置１００とは限らない。一般的に、適用範囲に相当するネットワークＮには、画像処理装置１００の他にＰＣ３００と言った様々なネットワーク機器が混在して接続されている。このことから、機器情報取得部２３２は、取得した機器情報に基づき、通信可能な画像処理装置１００を検出する。
【００７７】
更新要否判定部２３３は、検出された通信可能な画像処理装置１００に対して、ソフトウェア更新の要否を判定する。更新要否判定部２３３は、取得された機器情報と記録媒体１１４ａが保持する更新管理情報３１Ｄとに基づき、ソフトウェア更新の要否を判定する。更新要否判定部２３３は、機器情報の機種識別データと更新管理情報３１Ｄの機種識別データとに基づき、ソフトウェアをインストール可能な機種か否かを判定する（機種条件を判定する）。また更新要否判定部２３３は、機器情報のソフトウェア識別データと更新管理情報３１Ｄのソフトウェア識別データとに基づき、更新対象ソフトウェアであるか否か、かつ更新対象バージョンであるか否かを判定する（タイプ及びバージョン条件を判定する）。
【００７８】
更新要否判定部２３３は、要否判定結果に基づき、通信可能な更新対象機器のうち、ソフトウェア更新が必要な更新対象機器を検出する。
【００７９】
更新対象機器決定部２３は、システム１において、ソフトウェア更新の適用範囲に相当するネットワークＮ（１又は複数のサブネット）に接続される機器の中から、上記各機能部により段階的に検出された機器を、更新対象機器として決定する。
【００８０】
更新部２４は、通信部１０ａを介して、更新対象ソフトウェアのプログラムＰＧを、決定された更新対象機器に送信し、ソフトウェア環境の更新を要求する機能部である。つまり、更新部２４は、記録媒体１１４ａが保持するプログラムＰＧを更新対象機器に送信し、ソフトウェア環境の更新を要求する。なお画像処理装置１００では、記録媒体１１４ａが装着されたときに行う自機のソフトウェア更新処理も更新部２４が行う。
【００８１】
更新結果管理部２５は、ソフトウェア環境の更新結果を、所定の指定方式に従って管理する機能部である。更新結果管理部２５は、記録媒体１１４ａが保持する更新管理情報３１Ｄの更新結果出力方式指定に従って更新結果を管理する。更新結果管理部２５は、例えば更新結果出力方式に「ログ保存」が指定されていた場合、更新結果出力方式指定データに含まれるログ格納先に係る情報（例えば「記録媒体へのパス」と「ログファイル名」）に従って、自機及び更新対象機器の更新結果を含むログファイルを保存する。また、更新結果出力方式に「電子メール」が指定されていた場合には、更新結果出力方式指定データに含まれる宛先に係る情報（例えば「メールアドレス」）に従って、自機及び更新対象機器の更新結果を送信する。また、更新結果出力方式に「レポート印刷」が指定されていた場合には、更新結果出力方式指定データに含まれる印刷先に係る情報（例えば「ＩＰアドレス」）に従って、自機及び更新対象機器の更新結果を印刷する。これにより、画像処理装置１００は、自機及び他機におけるソフトウェア環境の更新結果を、ユーザに提供することができる。
【００８２】
このように、本実施形態に係るソフトウェア更新機能は、上記各機能部が連係動作することにより実現される。
【００８３】
次に、ソフトウェア更新機能の詳細な動作（機能部群の連係動作）について、処理手順を示すシーケンス図を用いて説明する。
【００８４】
ソフトウェア更新機能は、画像処理装置１００に搭載（インストール）されるプログラム（ソフトウェア更新に係るプログラム）が、ＣＰＵ１１１により、格納先（例えば「ＲＯＭ」など）からＲＡＭ上に読み出され、以下の処理が実行されることで実現される。
【００８５】
なお以下の説明では、ソフトウェア更新処理を、「ネットワーク制御情報取得」と、「更新対象機器決定」と、「ソフトウェア更新」とに分けて順に説明する。また記録媒体１１４ａが装着され、始めにソフトウェア環境が更新される機器を画像処理装置１００４とし、後にソフトウェア環境が更新される更新対象機器を画像処理装置１００１〜１００ｎとする。
【００８６】
《ネットワーク制御情報取得に係る処理》
図７は、本実施形態に係るソフトウェア環境を更新する処理手順例（その１）を示すシーケンス図である。
図７に示すように、画像処理装置１００４は、検知部２１により、記録媒体１１４ａの装着を検知すると（ステップＳ１０１）、検知部２１から更新部２４に対して、装着検知が通知される（ステップＳ１０２）。このとき検知部２１は、検知時に記録媒体１１４ａから取得した更新対象ソフトウェアのプログラムＰＧを更新部２４に渡す。
【００８７】
画像処理装置１００４は、更新部２４により、受け取ったプログラムＰＧに基づきソフトウェアのインストールを行い（ステップＳ１０３）、インストール完了後、更新部２４からネットワーク制御情報取得部２２に対して、ネットワーク制御情報の取得が指示される（ステップＳ１０４）。
【００８８】
画像処理装置１００４は、ネットワーク制御情報取得部２２により、ホップ数に従ってネットワーク制御装置２００（ルータ）からネットワーク制御情報（ルーティングテーブル）を取得する。ネットワーク制御情報取得部２２は、まず、外部記憶Ｉ／Ｆ１１４を介して、装着された記録媒体１１４ａが保持する更新管理情報３１Ｄを参照し、同記憶媒体１１４ａが保持するプログラムＰＧから得られたソフトウェア識別に係る情報に基づき、情報項目「検索範囲」に設定されるホップ数を取得する。ネットワーク制御情報取得部２２は、取得したホップ数が１以上か否かを判定する（ステップＳ２０１）。つまり、ネットワーク制御情報取得部２２は、更新管理情報３１Ｄとして設定されたソフトウェア更新の適用範囲が、複数のサブネットに渡る範囲か否かを判断する。
【００８９】
ネットワーク制御情報取得部２２は、ホップ数が「１以上」であれば（ステップＳ２０１：ＹＥＳ）、通信部１０ａを介して、システム１内に設置されたネットワーク制御装置２００にアクセスし、ネットワーク制御情報を取得する。具体的には、次に示す処理を行う。
【００９０】
ネットワーク制御情報取得部２２は、通信部１０ａに対して、ネットワーク制御情報取得を要求する（ステップＳ２０２）。このときネットワーク制御情報取得部２２は、ホップ数及びデフォルトゲートウェイ指定（デフォルトゲートウェイアドレス）を通信部１０ａに渡す。上記デフォルトゲートウェイアドレスは、画像処理装置１００４に設定されるネットワーク情報から取得できる。
【００９１】
通信部１０ａは、デフォルトゲートウェイアドレスにより指定されたネットワーク制御装置２００に対して、情報取得要求を通知する（ステップＳ２０３）。このとき通信部１０ａは、ホップ数を実行パラメータとして、通信プロトコルの所定コマンドを実行し、ネットワーク制御装置２００に情報取得要求を通知する。
【００９２】
ネットワーク制御装置２００では、通信部１０ｂを介して、画像処理装置１００４からの情報取得要求を受け付け、ネットワーク制御情報の取得を情報管理部４１に指示する（ステップＳ２０４）。その結果、ネットワーク制御情報２００では、情報管理部４１により、ネットワーク制御情報保持部５１から情報が取得され（ステップＳ２０５）、通信部１０ｂに対して、要求元の画像処理装置１００４に取得情報の送信が要求される（ステップＳ２０６）。このようにして、ネットワーク制御装置２００から画像処理装置１００４に、取得されたネットワーク制御情報が応答される（ステップＳ２０７）。
【００９３】
これにより、ネットワーク制御情報取得部２２には、通信部１０ａを介して、取得結果であるネットワーク制御情報が渡される（ステップＳ２０８）。
【００９４】
一方、ネットワーク制御情報取得部２２は、ホップ数が「０」であれば（ステップＳ２０１：ＮＯ）、ネットワーク制御装置２００からネットワーク制御情報を取得しない（ステップＳ２０９）。ホップ数が「０」の場合には、指定されたソフトウェア更新の適用範囲が、自機が接続されるサブネット内である（他のサブネットに水平展開しない範囲である）ことから、ネットワーク制御情報を取得する必要がない。
【００９５】
画像処理装置１００４は、上記処理を終えると、ネットワーク制御情報取得部２２から更新対象機器決定部２３が有する機器検索部２３１に対して、機器検索を指示する（ステップＳ２１０）。
【００９６】
以上のように、画像処理装置１００４は、自機のソフトウェア更新処理を終えると、すでにシステム１内に設置されたネットワーク制御装置２００（ルータ）から、ネットワーク制御情報（ルーティングテーブル）を取得する。
【００９７】
《更新対象機器決定に係る処理》
図８は、本実施形態に係るソフトウェア環境を更新する処理手順例（その２）を示すシーケンス図である。
図８に示すように、画像処理装置１００４は、機器検索の指示に従って、機器検索部２３１により、ソフトウェア更新の適用範囲に相当するネットワークＮ（１又は複数のサブネット）に接続される機器を検索する。具体的には、次に示す処理を行う。
【００９８】
機器検索部２３１は、検索候補決定部２３１１により、ネットワーク制御情報に基づき、検索候補となる機器のＩＰアドレスを算出する。これにより、検索候補を決定する。このとき検索候補決定部２３１１は、ネットワーク制御情報に含まれるサブネットマスクアドレスを用いて、ＩＰアドレスを構成するホストアドレスのビット数を割り出す。その結果、検索候補決定部２３１１は、割り出したビット数とネットワークアドレスとに基づき、サブネット単位のＩＰアドレスを算出する。なお検索候補決定部２３１１は、上記ステップＳ２０９の処理が行われた場合、画像処理装置１００４に設定されるネットワーク情報のサブネットマスクアドレスを用いてＩＰアドレスを算出する。
【００９９】
機器検索部２３１は、算出されたＩＰアドレス（決定された検索候補に係る情報）に基づき、検索対象となる機器（１）〜（ｎ）を順に指定し、機器検索を通信部１０ａに要求する（ステップＳ３０２１〜Ｓ３０２ｎ）。その結果、機器検索部２３１には、通信部１０ａを介して、機器（１）〜（ｎ）から検索結果が応答される（ステップＳ３０３１〜Ｓ３０３ｎ）。機器検索部２３１は、上記検索処理を行い、機器応答の有無に基づき、機器（１）〜（ｎ）のうち、通信可能な機器を検出する。
【０１００】
画像処理装置１００４は、機器検索部２３１による検索処理を終えると、機器検索部２３１から更新対象機器決定部２３が有する機器情報取得部２３２に対して、機器情報の取得を指示する（ステップＳ３０４）。
【０１０１】
画像処理装置１００４は、機器情報取得の指示に従って、機器情報取得部２３２により、検索処理で検出された通信可能な機器（１）〜（ｎ）から機器情報を取得する。機器情報取得部２３２は、検索処理時に機器指定したＩＰアドレスに基づき、情報取得対象となる機器（１）〜（ｎ）を順に指定し、機器情報取得を通信部１０ａに要求する（ステップＳ４０１１〜Ｓ４０１ｎ）。その結果、機器情報取得部２３２には、通信部１０ａを介して、機器（１）〜（ｎ）から機器結果が応答される（ステップＳ４０２１〜Ｓ４０２ｎ）。機器情報取得部２３２は、上記情報取得処理を行い、機器情報に基づき、機器（１）〜（ｎ）のうち、通信可能な画像処理装置１００を検出する。
【０１０２】
画像処理装置１００４は、機器情報取得部２３２による情報取得処理を終えると、機器情報取得部２３２から更新対象機器決定部２３が有する更新要否判定部２３３に対して、ソフトウェア更新の要否判定を指示する（ステップＳ４０３）。
【０１０３】
画像処理装置１００４は、更新要否判定の指示に従って、更新要否判定部２３３により、情報取得処理で検出された通信可能な機器（１）〜（ｎ）に対して、ソフトウェア更新の要否を判定する。このとき更新要否判定部２３３は、外部記憶Ｉ／Ｆ１１４を介して、装着された記録媒体１１４ａが保持する更新管理情報３１Ｄを取得する。更新要否判定部２３３は、取得した更新管理情報３１Ｄと先に取得された機器情報とに基づき、ソフトウェア更新の要否を判定する。具体的には、次に示す処理を行う。
【０１０４】
更新要否判定部２３３は、機器情報の機種識別データと更新管理情報３１Ｄの機種識別データとに基づき、ソフトウェア更新に係る機種条件が一致するか否かを判定する（ステップＳ５０１）。上記機種条件とは、検出された機器がソフトウェアをインストール可能な機種であると言う条件である。
【０１０５】
更新要否判定部２３３は、機種条件が一致した場合（ステップＳ５０１：ＹＥＳ）、次のソフトウェア更新に係る条件を確認する。
【０１０６】
更新要否判定部２３３は、機器情報のソフトウェア識別データと更新管理情報３１Ｄのソフトウェア識別データとに基づき、ソフトウェア更新に係るタイプ条件が一致するか否かを判定する（ステップＳ５０２）。上記タイプ条件とは、検出された機器が更新対象ソフトウェアを搭載している（インストールされている）と言う条件である。
【０１０７】
更新要否判定部２３３は、タイプ条件が一致した場合（ステップＳ５０２：ＹＥＳ）、次のソフトウェア更新に係る条件を確認する。
【０１０８】
更新要否判定部２３３は、機器情報のソフトウェア識別データと更新管理情報３１Ｄのソフトウェア識別データとに基づき、ソフトウェア更新に係るバージョン条件が一致するか否かを判定する（ステップＳ５０３）。上記バージョン条件とは、機器が搭載する該当ソフトウェアのバージョンが更新対象ソフトウェアより低いバージョン（更新対象バージョン）と言う条件である。
【０１０９】
更新要否判定部２３３は、バージョン条件が一致した場合（ステップＳ５０３：ＹＥＳ）、更新部２４に対して、ソフトウェア更新を指示する（ステップＳ５０５）。
【０１１０】
一方、更新要否判定部２３３は、上記ステップＳ５０１，Ｓ５０２，Ｓ５０３の処理において、条件が一致しない場合（ステップＳ５０１，Ｓ５０２，Ｓ５０３：ＮＯ）、更新要否判定対象となる次の機器を指定し、要否判定処理を繰り返す（ステップＳ５０４）。
【０１１１】
更新要否判定部２３３は、上記要否判定処理を行い、要否判定結果に基づき、機器（１）〜（ｎ）のうち、ソフトウェア更新が必要な更新対象機器を検出する。
【０１１２】
以上のように、画像処理装置１００４は、取得したネットワーク制御情報に基づき、システム１内における更新対象機器を決定する。
【０１１３】
《ソフトウェア更新に係る処理》
図９は、本実施形態に係るソフトウェア環境を更新する処理手順例（その３）を示すシーケンス図である。
図９に示すように、画像処理装置１００４は、ソフトウェア更新の指示に従って、更新部２４により、決定された更新対象機器に対して、ソフトウェア環境の更新を要求する。更新部２４は、要否判定処理において判定された更新対象機器（１）〜（ｎ）のＩＰアドレスに基づき、更新対象となる画像処理装置１００１〜１００ｎを順に指定し、ソフトウェア更新を通信部１０ａに要求する（ステップＳ６０１１〜Ｓ６０１ｎ）。これにより、通信部１０ａは、更新対象ソフトウェアのプログラムＰＧを、画像処理装置１００１〜１００ｎに送信する。その結果、更新部２４には、通信部１０ａを介して、画像処理装置１００１〜１００ｎから更新結果が応答される（ステップＳ６０２１〜Ｓ６０２ｎ）。
【０１１４】
画像処理装置１００４は、更新部２４による更新処理を終えると、更新部２４から更新結果管理部２５に対して、更新結果の出力を指示する（ステップＳ６０３）。
【０１１５】
画像処理装置１００４は、更新結果出力の指示に従って、更新結果管理部２５により、ソフトウェア環境の更新結果を、所定の指定方式に従って出力する（ステップＳ７０１）。更新結果管理部２５は、外部記憶Ｉ／Ｆ１１４を介して、装着された記録媒体１１４ａが保持する更新管理情報３１Ｄを取得する。更新結果管理部２５は、取得した更新管理情報３１Ｄに設定される更新結果出力方式指定に従って、当該装置１００４及び画像処理装置１００１〜１００ｎ（更新対象機器）の更新結果を出力する。
【０１１６】
以上のように、画像処理装置１００４は、決定した更新対象機器に対して、更新対象ソフトウェアのプログラムＰＧを送信し、ソフトウェア環境の更新を要求する。
【０１１７】
＜まとめ＞
以上のように、本実施形態に係る画像処理装置１００によれば、自機のソフトウェア更新処理を終えると、すでにシステム１内に設置されたネットワーク制御装置２００（ルータ）から、ネットワーク制御情報（ルーティングテーブル）を取得する。画像処理装置１００は、取得したネットワーク制御情報に基づき、システム１内における更新対象機器を決定する。画像処理装置１００は、決定した更新対象機器に対してプログラムＰＧを送信し、ソフトウェア環境の更新を要求する。
【０１１８】
また画像処理装置１００は、更新対象機器の決定を次の手順により行う。画像処理装置１００は、まず、指定されたホップ数に従って取得したネットワーク制御情報に基づき、ソフトウェア更新の適用範囲内に設置される機器のＩＰアドレスを算出し、これらの機器の中から通信可能な機器を検出する。次に画像処理装置１００は、通信可能な機器から取得した機器情報に基づき、これらの機器の中からソフトウェアがインストール可能な他の画像処理装置１００を検出する。さらに画像処理装置１００は、機器情報に基づき、検出した他の画像処理装置１００に対して更新要否判定を行い、これらの機器の中から、更新対象機器を検出する。画像処理装置１００は、このようにして更新対象機器を動的に決定する。
【０１１９】
これによって、画像処理装置１００は、サーバの設置や更新対象機器指定を事前に行うことなく、ソフトウェア環境を更新できる。その結果、システム１内におけるソフトウェア環境の更新において、コスト面や保守・運用面での負荷が軽減され、ユーザにとって利便性のよいものとなる。
【０１２０】
＜変形例＞
以下に本実施形態に係る変形例について説明する。
【０１２１】
図１０は、本変形例に係るソフトウェア環境を更新する動作例を示す図である。
図１０（Ａ）に示すように、最新ソフトウェアがインストールされた画像処理装置１００４がネットワークＮに新たに接続される。その結果、図１０（Ｂ）に示すように、最新のソフトウェア環境を有する画像処理装置１００４は、他の画像処理装置１００１〜１００３に、更新対象ソフトウェア（プログラム）を送信し、ソフトウェア環境の更新を要求する。これにより、画像処理装置１００のソフトウェア環境は、最新の環境へと更新される。
【０１２２】
このように、本変形例では、上記実施形態と同様に、ソフトウェア更新を画像処理装置１００から能動的に行う。これにより、本変形例に係るソフトウェア更新システム１では、システム１内に、最新のソフトウェア環境を有する画像処理装置１００４が接続されると、残りの画像処理装置１００１〜１００３（すでに接続されている同機種の機器）に対しても、動的にソフトウェア更新を行う。
【０１２３】
その結果、本変形例では、上記実施形態と同様に、ソフトウェア管理機能を有するサーバの設置を必要としないソフトウェア更新環境を実現できる。
【０１２４】
図１１は、本変形例に係るソフトウェア更新機能の構成例を示す図である。
図１１に示す本変形例に係るソフトウェア更新機能の構成と、上記実施形態で示した構成との違いは、更新データ保持部３１を有する点である。
【０１２５】
画像処理装置１００（システム１内におけるソフトウェア更新のトリガとなる機器）は、更新対象ソフトウェアが、すでにインストールされている。そのため、画像処理装置１００が備える記憶装置（例えば「ＨＤＤ」）には、更新対象ソフトウェアのプログラムＰＧが保存されている。つまり、この記憶領域が、更新データ保持部３１にあたる。
【０１２６】
また図１１には、更新データ保持部３１が、プログラムＰＧとともに、更新管理情報３１Ｄを保持する構成が示されている。このようなデータ構成とするためには、例えば、プログラムＰＧのインストール時に、関連する更新管理情報３１Ｄを動的に格納するなどの方法が挙げられる。
【０１２７】
さらに検知部２１が、当該装置１００がネットワークＩ／Ｆ１１３を介してシステム１のネットワークＮに接続されたことを検知する。
【０１２８】
検知部７０は、ネットワークＮへの接続を検知すると、記録媒体１１４ａ装着時と同様に、接続が検知された旨を更新部２４へと通知する。
【０１２９】
図１２は、本変形例に係るソフトウェア環境を更新する処理手順例を示すシーケンス図である。
図１２に示す本変形例に係る処理手順と、上記実施形態で示した処理手順との違いは、最新のソフトウェア環境を有する画像処理装置１００４がネットワークＮに接続され、これをトリガに、ネットワーク制御情報取得部２２に情報取得を要求するまでの手順である。
【０１３０】
具体的には、図１２に示すように、画像処理装置１００４は、検知部２１により、当該装置１００４の接続を検知すると（ステップＳ８０１）、検知部２１から更新部２４に対して、接続検知が通知される（ステップＳ８０２）。
【０１３１】
画像処理装置１００４は、更新部２４により、すでにインストールされ、所定の記憶領域に保持されるプログラムＰＧに基づき、当該装置１００４におけるソフトウェア環境が最新環境か否かの判定を行う（ステップＳ８０３）。更新部２４は、最新環境であると判定した場合（ステップＳ８０３：ＹＥＳ）、ネットワーク制御情報取得部２２に対して、ネットワーク制御情報の取得を指示する（ステップＳ８０４）。
【０１３２】
以上のように、本変形例に係る画像処理装置１００は、上記実施形態と同様のソフトウェア更新処理が行える。
【０１３３】
ここまで、上記実施形態の説明を行ってきたが、実施形態に係る画像処理装置１００が有する「ソフトウェア更新機能」は、図を用いて説明を行った各処理手順を動作環境（プラットフォーム）にあったプログラミング言語でコード化したプログラムが、ＣＰＵ１１１により実行されることで実現される。
【０１３４】
上記プログラムは、コンピュータが読み取り可能な記録媒体１１４ａに格納することができる。上記記録媒体１１４ａには、例えばＳＤメモリカード及びＵＳＢメモリなどがある。
【０１３５】
よって、上記プログラムは、上記記録媒体１１４ａに記憶させることで、記録媒体１１４ａを読み取り可能な外部記憶Ｉ／Ｆ１１４などを介して画像処理装置１００にインストールすることができる。また画像処理装置１００は、ネットワークＩ／Ｆ１１３を備えていることから、インターネットなどの電気通信回線を用いて上記プログラムをダウンロードし、インストールすることもできる。
【０１３６】
最後に、上記実施形態に挙げた形状や構成に、その他の要素との組み合わせなど、ここで示した要件に、本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
【符号の説明】
【０１３７】
１      ソフトウェア更新システム
１０    通信部（ａ：画像処理装置，ｂ：ネットワーク制御装置）
２１    検知部
２２    ネットワーク制御情報取得部
２３    更新対象機器決定部
２３１  機器検索部（２３１１：検索候補決定部）
２３２  機器情報取得部
２３３  更新要否判定部
２４    更新部
２５    更新結果管理部
３１    更新管理情報保持部（Ｄ：更新管理情報）
４１    情報管理部
４２    ネットワーク制御部
５１    ネットワーク制御情報保持部
１００  画像処理装置（更新対象機器を含む）
１１０  コントローラ
１１１  ＣＰＵ（中央処理装置）
１１２  記憶装置
１１３  ネットワークＩ／Ｆ
１１４  外部記憶Ｉ／Ｆ（ａ：記録媒体）
１２０  操作パネル
１３０  プロッタ（画像形成部）
１４０  スキャナ（読み取り部）
２００  ネットワーク制御装置（ルータ）
３００  ＰＣ（情報処理装置）
Ｎ      ネットワーク（データ伝送路）
【先行技術文献】
【特許文献】
【０１３８】
【特許文献１】特開２００４−２１３１３２号公報
【図１】
2011039840.tif 000003
【図２】
2011039840.tif 000004
【図３】
2011039840.tif 000005
【図４】
2011039840.tif 000006
【図５】
2011039840.tif 000007
【図６】
2011039840.tif 000008
【図７】
2011039840.tif 000009
【図８】
2011039840.tif 000010
【図９】
2011039840.tif 000011
【図１０】
2011039840.tif 000012
【図１１】
2011039840.tif 000013
【図１２】
2011039840.tif 000014