(57)【特許請求の範囲】
【請求項１】
機器管理装置と、前記機器管理装置と通信する複数の機器と、前記機器管理装置と通信するサーバ装置とを備える機器管理システムであって、
前記機器管理装置は、
複数の前記機器の各々から、前記機器を利用した時刻ごとに、前記機器を識別する識別情報と、前記機器の機種を示す機種情報と、前記機器の１以上の機能の中から利用した機能を示す利用機能情報とを少なくとも対応付けた利用情報を取得する利用情報取得部と、
前記サーバ装置から、ファームウェア、及び該ファームウェアの適用対象となる前記機器の機種を示す対象機種情報と該ファームウェアの適用対象となるプログラム部品を示す対象部品情報を含む付帯情報を取得するファームウェア取得部と、
前記付帯情報に含まれる前記対象部品情報を用いて、前記プログラム部品に対応する機能を示す機能情報を特定する機能情報特定部と、
前記利用情報の中から前記付帯情報に含まれる前記対象機種情報に対応する前記機種情報を特定する機種情報特定部と、
前記利用情報を参照し、特定した前記機種情報と、特定した前記機能情報に対応する前記利用機能情報と、前記時刻とを用いて、前記機器の識別情報ごとに、前記利用機能情報で示される機能を利用した回数を示す回数情報を算出する回数情報算出部と、
前記機器の識別情報ごとに、算出した前記回数情報を用いて前記機器の重要度を示す重要度情報を算出する重要度情報算出部と、
前記重要度情報に基づいて、前記機器の識別情報ごとに、前記ファームウェアを適用する予定を示す更新予定情報を生成する更新予定情報生成部と、
前記更新予定情報に基づいて、前記ファームウェアを含み、かつ、前記ファームウェアへの切り換えを要求する更新要求を前記機器に送信する更新要求部と、を備え、
前記機器は、
前記更新要求に基づいて、前記更新要求に含まれる前記ファームウェアを用いて、前記ファームウェアへの切り換えを実行する更新部を備える、
機器管理システム。
【請求項２】
前記利用情報は、さらに前記機器を利用した利用者を含み、
前記機器管理装置は、
特定した前記機種情報と、特定した前記機能情報とを用いて、前記利用情報を参照し、前記機種情報に紐付く前記機器の識別情報ごとに、前記利用者と、前記回数情報と、特定した前記機能情報の機能を有する前記機器の数とを少なくとも対応付けた業務状況情報を生成する業務状況情報生成部を、さらに備え、
前記重要度情報算出部は、前記業務状況情報を参照し、前記機器の識別情報ごとに、全ての前記利用者が前記機器の機能を利用した総利用回数と、該機能を有する前記機器の数とを用いて、前記重要度情報を算出する、
請求項１に記載の機器管理システム。
【請求項３】
前記付帯情報は、さらに前記ファームウェアの更新種類を示す更新情報を含み、
前記更新情報に含まれる前記更新種類が重要である場合、
前記更新予定情報生成部は、前記重要度情報の重要度が高い順に並べた前記更新予定情報を生成する、
請求項１または２に記載の機器管理システム。
【請求項４】
前記付帯情報は、さらに前記ファームウェアの更新種類を示す更新情報を含み、
前記更新情報に含まれる前記更新種類が重要以外である場合、
前記更新予定情報生成部は、前記重要度情報の重要度が低い順に並べた前記更新予定情報を生成する、
請求項１または２に記載の機器管理システム。
【請求項５】
前記機能情報特定部は、下位の前記プログラム部品に紐付く上位の前記プログラム部品を順に上位に向かって階層構造で示し、最上位の前記プログラム部品に紐付く前記機能情報を特定できる階層マップを予め保持し、前記ファームウェアの適用対象となる前記プログラム部品と前記階層マップを用いて、前記機能情報を特定する、
請求項１に記載の機器管理システム。
【請求項６】
前記更新予定情報生成部は、特定した前記機能情報と前記利用情報を用いて、前記機器の機能が最も利用されている時間帯には前記ファームウェアへの切り換えを行わない前記更新予定情報を生成する、
請求項１から５の何れか１項に記載の機器管理システム。
【請求項７】
前記更新要求部は、前記ファームウェアへの切り換えを実行した前記機器に不具合がある旨を受け付けた場合、前記更新要求の送信を中止する、
請求項１に記載の機器管理システム。
【請求項８】
前記機器管理システムは、前記機器管理装置および前記機器と通信する情報処理装置を、さらに備え、
前記ファームウェア取得部は、
前記情報処理装置から、前記ファームウェア、および前記付帯情報を取得する、
請求項１に記載の機器管理システム。
【請求項９】
機器およびサーバ装置と通信する機器管理装置であって、
複数の前記機器の各々から、前記機器を利用した時刻ごとに、前記機器を識別する識別情報と、前記機器の機種を示す機種情報と、前記機器の１以上の機能の中から利用した機能を示す利用機能情報とを少なくとも対応付けた利用情報を取得する利用情報取得部と、
前記サーバ装置から、ファームウェア、及び該ファームウェアの適用対象となる前記機器の機種を示す対象機種情報と該ファームウェアの適用対象となるプログラム部品を示す対象部品情報を含む付帯情報を取得するファームウェア取得部と、
前記付帯情報に含まれる前記対象部品情報を用いて、前記プログラム部品に対応する機能を示す機能情報を特定する機能情報特定部と、
前記利用情報の中から前記付帯情報に含まれる前記対象機種情報に対応する前記機種情報を特定する機種情報特定部と、
前記利用情報を参照し、特定した前記機種情報と、特定した前記機能情報に対応する前記利用機能情報と、前記時刻とを用いて、前記機器の識別情報ごとに、前記利用機能情報で示される機能を利用した回数を示す回数情報を算出する回数情報算出部と、
前記機器の識別情報ごとに、算出した前記回数情報を用いて前記機器の重要度を示す重要度情報を算出する重要度情報算出部と、
前記重要度情報に基づいて、前記機器の識別情報ごとに、前記ファームウェアを適用する予定を示す更新予定情報を生成する更新予定情報生成部と、
前記更新予定情報に基づいて、前記機器に対して前記ファームウェアへの切り換えを実行する更新実行部と、を備える、
機器管理装置。
【請求項１０】
機器および情報処理装置と通信する機器管理装置であって、
複数の前記機器の各々から、前記機器を利用した時刻ごとに、前記機器を識別する識別情報と、前記機器の機種を示す機種情報と、前記機器の１以上の機能の中から利用した機能を示す利用機能情報とを少なくとも対応付けた利用情報を取得する利用情報取得部と、
前記情報処理装置から、ファームウェア、及び該ファームウェアの適用対象となる前記機器の機種を示す対象機種情報と該ファームウェアの適用対象となるプログラム部品を示す対象部品情報を含む付帯情報を取得するファームウェア取得部と、
前記付帯情報に含まれる前記対象部品情報を用いて、前記プログラム部品に対応する機能を示す機能情報を特定する機能情報特定部と、
前記利用情報の中から前記付帯情報に含まれる前記対象機種情報に対応する前記機種情報を特定する機種情報特定部と、
前記利用情報を参照し、特定した前記機種情報と、特定した前記機能情報に対応する前記利用機能情報と、前記時刻とを用いて、前記機器の識別情報ごとに、前記利用機能情報で示される機能を利用した回数を示す回数情報を算出する回数情報算出部と、
前記機器の識別情報ごとに、算出した前記回数情報を用いて前記機器の重要度を示す重要度情報を算出する重要度情報算出部と、
前記重要度情報に基づいて、前記機器の識別情報ごとに、前記ファームウェアを適用する予定を示す更新予定情報を生成する更新予定情報生成部と、
前記更新予定情報に基づいて、前記機器に対して前記ファームウェアへの切り換えを実行する更新実行部と、を備える、
機器管理装置。
【請求項１１】
機器およびサーバ装置と通信する機器管理装置に、
複数の前記機器の各々から、前記機器を利用した時刻ごとに、前記機器を識別する識別情報と、前記機器の機種を示す機種情報と、前記機器の１以上の機能の中から利用した機能を示す利用機能情報とを少なくとも対応付けた利用情報を取得する利用情報取得ステップと、
前記サーバ装置から、ファームウェア、及び該ファームウェアの適用対象となる前記機器の機種を示す対象機種情報と該ファームウェアの適用対象となるプログラム部品を示す対象部品情報を含む付帯情報を取得するファームウェア取得ステップと、
前記付帯情報に含まれる前記対象部品情報を用いて、前記プログラム部品に対応する機能を示す機能情報を特定する機能情報特定ステップと、
前記利用情報の中から前記付帯情報に含まれる前記対象機種情報に対応する前記機種情報を特定する機種情報特定ステップと、
前記利用情報を参照し、特定した前記機種情報と、特定した前記機能情報に対応する前記利用機能情報と、前記時刻とを用いて、前記機器の識別情報ごとに、前記利用機能情報で示される機能を利用した回数を示す回数情報を算出する回数情報算出ステップと、
前記機器の識別情報ごとに、算出した前記回数情報を用いて前記機器の重要度を示す重要度情報を算出する重要度情報算出ステップと、
前記重要度情報に基づいて、前記機器の識別情報ごとに、前記ファームウェアを適用する予定を示す更新予定情報を生成する更新予定情報生成ステップと、
前記更新予定情報に基づいて、前記機器に対して前記ファームウェアへの切り換えを実行する更新実行ステップと、
を実行させるためのプログラム。
【請求項１２】
機器および情報処理装置と通信する機器管理装置に、
複数の前記機器の各々から、前記機器を利用した時刻ごとに、前記機器を識別する識別情報と、前記機器の機種を示す機種情報と、前記機器の１以上の機能の中から利用した機能を示す利用機能情報とを少なくとも対応付けた利用情報を取得する利用情報取得ステップと、
前記情報処理装置から、ファームウェア、及び該ファームウェアの適用対象となる前記機器の機種を示す対象機種情報と該ファームウェアの適用対象となるプログラム部品を示す対象部品情報を含む付帯情報を取得するファームウェア取得ステップと、
前記付帯情報に含まれる前記対象部品情報を用いて、前記プログラム部品に対応する機能を示す機能情報を特定する機能情報特定ステップと、
前記利用情報の中から前記付帯情報に含まれる前記対象機種情報に対応する前記機種情報を特定する機種情報特定ステップと、
前記利用情報を参照し、特定した前記機種情報と、特定した前記機能情報に対応する前記利用機能情報と、前記時刻とを用いて、前記機器の識別情報ごとに、前記利用機能情報で示される機能を利用した回数を示す回数情報を算出する回数情報算出ステップと、
前記機器の識別情報ごとに、算出した前記回数情報を用いて前記機器の重要度を示す重要度情報を算出する重要度情報算出ステップと、
前記重要度情報に基づいて、前記機器の識別情報ごとに、前記ファームウェアを適用する予定を示す更新予定情報を生成する更新予定情報生成ステップと、
前記更新予定情報に基づいて、前記機器に対して前記ファームウェアへの切り換えを実行する更新実行ステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機器管理システム、機器管理装置およびプログラムに関する。
【背景技術】
【０００２】
従来から画像処理装置、複合装置、プリンタ装置等の電子機器に対して、遠隔からのファームウェア更新を実施する方法が知られている。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
一般的にファームウェアは、ある程度品質保証がなされてリリースされるものであるが、ファームウェアの実績が蓄積されるまでファームウェア更新を適用させないとなると、例えば不具合のあるファームウェアを使い続けたり、より良い機能が利用できなかったりという不都合が生じる。
【０００４】
従来の遠隔ファームウェア更新では、ファームウェア更新による問題が発生した場合に、実際に機器を操作したり、更新するファームウェアを変更したりする必要があり、機器を使用した通常の業務に影響を与えてしまう、という問題があった。
【０００５】
本発明は、上記に鑑みてなされたものであって、ファームウェア更新による問題が発生した場合でも通常の業務に与える影響を低減させることができる、機器管理システム、機器管理装置およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明に係る機器管理システムは、機器管理装置と、前記機器管理装置と通信する複数の機器と、前記機器管理装置と通信するサーバ装置とを備える機器管理システムであって、前記機器管理装置は、複数の前記機器の各々から、前記機器を利用した時刻ごとに、前記機器を識別する識別情報と、前記機器の機種を示す機種情報と、前記機器の１以上の機能の中から利用した機能を示す利用機能情報とを少なくとも対応付けた利用情報を取得する利用情報取得部と、前記サーバ装置から、ファームウェア、及び該ファームウェアの適用対象となる前記機器の機種を示す対象機種情報と該ファームウェアの適用対象となるプログラム部品を示す対象部品情報を含む付帯情報を取得するファームウェア取得部と、前記付帯情報に含まれる前記対象部品情報を用いて、前記プログラム部品に対応する機能を示す機能情報を特定する機能情報特定部と、前記利用情報の中から前記付帯情報に含まれる前記対象機種情報に対応する前記機種情報を特定する機種情報特定部と、前記利用情報を参照し、特定した前記機種情報と、特定した前記機能情報に対応する前記利用機能情報と、前記時刻とを用いて、前記機器の識別情報ごとに、前記利用機能情報で示される機能を利用した回数を示す回数情報を算出する回数情報算出部と、前記機器の識別情報ごとに、算出した前記回数情報を用いて前記機器の重要度を示す重要度情報を算出する重要度情報算出部と、前記重要度情報に基づいて、前記機器の識別情報ごとに、前記ファームウェアを適用する予定を示す更新予定情報を生成する更新予定情報生成部と、前記更新予定情報に基づいて、前記ファームウェアを含み、かつ、前記ファームウェアへの切り換えを要求する更新要求を前記機器に送信する更新要求部と、を備え、前記機器は、前記更新要求に基づいて、前記更新要求に含まれる前記ファームウェアを用いて、前記ファームウェアへの切り換えを実行する更新部を備える、ことを特徴とする。
【発明の効果】
【０００７】
本発明によれば、ファームウェア更新による問題が発生した場合でも通常の業務に与える影響を低減させることができる、という有利な効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】図１は、機器管理システムの全体構成の一例を示す図である。
【図２】図２は、機器管理装置のハードウェア構成の一例を示す図である。
【図３】図３は、機器（ＭＦＰ）のハードウェア構成の一例を示す図である。
【図４】図４は、機器管理装置、機器、サーバ装置及びクライアントＰＣの機能構成の一例を示すブロック図である。
【図５】図５は、利用情報テーブルの一例を示す図である。
【図６】図６は、付帯情報の一例を示す図である。
【図７】図７は、機能情報を特定する方法の一例を示す図である。
【図８】図８は、業務状況情報の一例を示す図である。
【図９】図９は、更新対象機種の機器を重要度の順に並び替えて重要度を正規化した一例を示す図である。
【図１０】図１０は、更新予定情報の一例を示す図である。
【図１１】図１１は、更新予定情報の一例を示す図である。
【図１２】図１２は、更新予定情報の書式の一例を示す図である。
【図１３】図１３は、機器管理装置が更新予定情報を生成してファームウェア更新を行う処理の一例を示すフローチャートである。
【図１４】図１４は、更新予定情報を生成する処理の一例を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照しながら、本発明に係る機器管理システム、機器管理装置およびプログラムの一実施形態を詳細に説明する。なお、以下の実施形態により本発明が限定されるものではない。また、各実施形態は、内容を矛盾させない範囲で、適宜組み合わせることができる。
【００１０】
本実施形態の機器管理システムは、機器管理装置と、機器管理装置と通信する複数の機器と、機器管理装置と通信するサーバ装置とを備える。機器管理装置は、複数の機器の各々から、機器を利用した時刻ごとに、機器を識別する識別情報と、機器の機種を示す機種情報と、機器の１以上の機能の中から利用した機能を示す利用機能情報とを少なくとも対応付けた利用情報を取得する。機器管理装置は、サーバ装置から、ファームウェア、及び該ファームウェアの適用対象となる機器の機種を示す対象機種情報と該ファームウェアの適用対象となるプログラム部品を示す対象部品情報を含む付帯情報を取得する。機器管理装置は、付帯情報に含まれる対象部品情報を用いて、プログラム部品に対応する機能を示す機能情報を特定し、利用情報の中から付帯情報に含まれる対象機種情報に対応する機種情報を特定する。機器管理装置は、利用情報を参照し、特定した機種情報と、特定した機能情報に対応する利用機能情報と、時刻とを用いて、機器の識別情報ごとに、利用機能情報で示される機能を利用した回数を示す回数情報を算出し、機器の識別情報ごとに、算出した回数情報を用いて機器の重要度を示す重要度情報を算出する。機器管理装置は、重要度情報に基づいて、機器の識別情報ごとに、ファームウェアを適用する予定を示す更新予定情報を生成し、更新予定情報に基づいて、ファームウェアを含み、かつ、該ファームウェアへの切り換えを要求する更新要求を機器に送信する。機器は、更新要求に基づいて、更新要求に含まれるファームウェアを用いて、該ファームウェアへの切り換えを実行する。これにより、ファームウェア更新による問題が発生した場合でも通常の業務に与える影響を低減させることができる。
【００１１】
以下では、本実施形態の機器管理装置を、機器（画像処理装置）とサーバ装置及びクライアント情報処理装置と通信して機器を遠隔管理する機器管理システムの一部の装置として実現する例を説明する。本実施形態の機器管理装置が適用可能な機器管理システムは、このようなシステムに限られるものではない。また、以下では、本発明に係る機器を、複合機（ＭＦＰ：Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）に適用した場合を例に挙げて説明するが、これに限定されるものではない。なお、複合機とは、印刷機能、複写機能、スキャナ機能、及びファクシミリ機能のうち少なくとも２つの機能を有する装置である。また、機器は、ＭＦＰに限ることはなく、プリンタ、ＬＰ（Ｌａｓｅｒ  Ｐｒｉｎｔｅｒ）、インクジェットプリンタ、ＦＡＸ装置、デジタル複写機、スキャナ装置、プロジェクタ、デジタルカメラ、その他産業用カメラなどでもよい。
【００１２】
まず、図１を用いて、機器管理システム１の全体構成例と概要について説明する。図１に示すように、機器管理システム１は、機器管理装置１０と、機器管理装置１０とネットワーク５０を介して通信する複数の機器２０ａ、２０ｂ、２０ｃと、機器管理装置１０とネットワーク６０を介して接続するサーバ装置３０と、機器管理装置１０および機器２０ａ〜２０ｃとネットワーク５０を介して通信するクライアント情報処理装置（ＰＣ：Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）４０とを備える。ネットワーク６０は、例えば、セキュリティが高い専用回線やＶＰＮ（Ｖｉｒｔｕａｌ  Ｐｒｉｖａｔｅ  Ｎｅｔｗｏｒｋ）、又はインターネット等の社外ネットワークである。ネットワーク５０は、例えば、企業のオフィスなどで用いられる社内ＬＡＮ等の社内コンピュータネットワークである。
【００１３】
以下、複数の機器２０ａ〜２０ｃを区別する必要がない場合は、機器２０と表記する。また、ネットワーク５０及びネットワーク６０を区別する必要がない場合は、ネットワークと表記する。
【００１４】
機器管理装置１０は、例えば、機器利用者（ユーザ）側のオフィス等に設置され、機器管理装置１０が機器２０を制御管理するための例えば管理ソフトウェア（アプリケーションプログラム）を実装している。機器管理装置１０は、機器２０と通信し、機器２０の利用情報の収集、ファームウェアの適用などを行う。機器管理装置１０は、サーバ装置３０及びクライアント情報処理装置（以下、クライアントＰＣと表記する）４０と通信し、ファームウェアの取得、ファームウェア適用スケジュールの作成を行う。すなわち、機器管理装置１０は、ファームウェア更新の予定を示す更新予定情報を生成する。
【００１５】
また機器管理装置１０は、例えば、仲介装置の機能を有するクライアントＰＣ４０を介して各機器２０を管理する。機器管理装置１０は、例えば、クライアントＰＣ４０を経由して機器２０から通知されたデータから、ファームウェアの更新、カウンタ集計（課金処理）、消耗品発注、ＣＥのディスパッチ（カスタマーエンジニアの派遣）などを実施する装置でもある。
【００１６】
機器２０は、ネットワーク機器、電子機器、例えば、ＭＦＰである。本実施形態では機器２０をＭＦＰを一例として説明する。複数の機器２０ａ〜２０ｃは、機器２０ａ〜２０ｃごとにネットワーク５０を介してクライアントＰＣ４０及び機器管理装置１０と通信する。機器２０は、例えば機器管理装置１０を経由してネットワーク６０に接続し、通信を行うことができる。機器２０は、例えばワークフロー管理装置（クライアントＰＣ４０）で管理され指示された処理に関する情報を受け付け、その処理を実施し、その結果をワークフロー管理装置（クライアントＰＣ４０）へ送信する。
【００１７】
サーバ装置３０は、ネットワーク６０を介して機器管理装置１０及びクライアントＰＣ４０と通信する。サーバ装置３０は、各種のデータ処理を実行するためのオリジナルのデータを保持する。サーバ装置３０は、例えば、機器管理装置１０、機器２０、クライアントＰＣ４０に送信するデータ処理を実行するためのデータを保持しておくサーバである。なお、サーバ装置３０が保持するデータとしては、例えば、機器２０のファームウェア、更新用ファームウェア、機器設定情報、大規模な設定情報などの情報を保持する。すなわち、データ処理を実行するためのデータを保持する。サーバ装置３０は、機器管理装置１０からの要求に応じて更新用ファームウェアなどを機器管理装置１０に送信する。
【００１８】
クライアントＰＣ４０は、ネットワーク５０を介して機器管理装置１０および機器２０と通信を行う。クライアントＰＣ４０は、例えばファームウェアのアップロードに関して、ユーザからの入力を受け付けた場合、機器管理装置１０にファームウェア、更新用ファームウェアを送信する。また、機器２０に問題が発生した場合には、機器２０やユーザからの入力を受け付けて機器管理装置１０に送信する。
【００１９】
図１では、機器管理装置１０と接続される機器２０の台数が３台である場合を例示しているが、これに限らず、機器２０の台数は任意である。また、ネットワーク５０に接続されるクライアントＰＣ４０の台数が１台である場合を例示しているが、これに限らず、クライアントＰＣ４０の台数は任意である。また、サーバ装置３０の台数が１台である場合を例示しているが、これに限らず、サーバ装置３０の台数は任意である。
【００２０】
また、機器管理システム１では、管理を行うためにクライアントＰＣ４０、各機器２０にＲＰＣ（Ｒｅｍｏｔｅ  Ｐｒｏｃｅｄｕｒｅ  Ｃａｌｌ）により、相互実装するアプリケーションのメソッドに対する処理の依頼である「要求」を送信し、この依頼された処理の結果である「応答」を送受信する機能を有している。すなわち、クライアントＰＣ４０又はこれと接続された機器２０では、機器管理装置１０への要求を生成して、生成した要求を機器管理装置１０へ引き渡し、この「要求」に対する「応答」を取得できる。一方で、機器管理装置１０は、クライアントＰＣ４０、機器２０側への要求を生成して、生成した要求をクライアントＰＣ４０、機器２０側へ引き渡し、この「要求」に対する「応答」を取得できるようになっている。この要求には、クライアントＰＣ４０に機器２０に対して各種要求を送信させ、機器２０からの応答をクライアントＰＣ４０を介して取得することも含まれる。
【００２１】
また、ＲＰＣを実現するために、ＰＰＰ（Ｐｏｉｎｔ−ｔｏ−Ｐｏｉｎｔ  Ｐｒｏｔｏｃｏｌ）、ＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）、ＳＯＡＰ（Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ）、ＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）、ＦＴＰ（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）、ＣＯＭ（Ｃｏｍｐｏｎｅｎｔ  Ｏｂｊｅｃｔ  Ｍｏｄｅｌ）、ＣＯＲＢＡ（Ｃｏｍｍｏｎ  Ｏｂｊｅｃｔ  Ｒｅｑｕｅｓｔ  Ｂｒｏｋｅｒ  Ａｒｃｈｉｔｅｃｔｕｒｅ）等の既知のプロトコル（通信規格）、技術、仕様などを利用することができる。
【００２２】
次に、図２を用いて、機器管理装置１０のハードウェア構成について説明する。図２は、機器管理装置のハードウェア構成の一例を示す図である。
【００２３】
図２に示すように、機器管理装置１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１０２、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１０３、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）１０４、機器Ｉ／Ｆ１０５、ネットワークＩ／Ｆ１０８を有し、これらはバス１０９で互いに接続されている。また、機器Ｉ／Ｆ１０５には、表示部１０６及び操作部１０７が接続されている。
【００２４】
ＣＰＵ１０１は演算手段であり、機器管理装置１０全体の動作を統括的に制御する。ＲＡＭ１０２は、情報の高速な読み書きが可能な揮発性の記憶媒体であり、ＣＰＵ１０１が情報を処理する際の作業領域として用いられる。ＲＯＭ１０３は、読み出し専用の不揮発性記憶媒体であり、ファームウェア等のプログラムが格納されている。ＨＤＤ１０４は、情報の読み書きが可能な不揮発性の記憶媒体であり、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）や各種の制御プログラム、アプリケーション・プログラム等が格納される。ＨＤＤ１０４は、機器管理装置１０の各種機能を実現するために必要なファイルやデータ等を格納する。また、ＨＤＤ１０４は、管理対象である機器２０の管理に用いる各種管理情報パラメータ（機器情報）、管理プログラムを記憶する。
【００２５】
機器Ｉ／Ｆ１０５は、表示部１０６及び操作部１０７の各々をバス１０９に接続するためのインタフェースである。表示部１０６は、各種の情報を表示するための視覚的ユーザインタフェースであり、例えばＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）などで構成される。操作部１０７は、キーボードやマウス等、ユーザが機器管理装置１０に対して各種の情報を入力するためのユーザインタフェースである。ネットワークＩ／Ｆ１０８は、機器管理装置１０をネットワーク５０、６０に接続するためのインタフェースである。
【００２６】
このようなハードウェア構成において、ＲＯＭ１０３に格納されたプログラムや、ＨＤＤ１０４又は図示しない光学ディスク等の記憶媒体からＲＡＭ１０２にロードされたプログラムに従ってＣＰＵ１０１が演算を行うことにより、ソフトウェア制御部が構成される。このようにして構成されたソフトウェア制御部と、ハードウェアとの組み合わせによって、本実施形態の機器管理装置１０、サーバ装置３０、クライアントＰＣ４０の機能を実現する機能ブロックが構成される。なお、サーバ装置３０及びクライアントＰＣ４０のハードウェア構成は、上記の機器管理装置１０と同様であるので、以下では詳細な説明は省略する。
【００２７】
なお、上記の機器管理装置１０用プログラムは、インストール可能な形式又は実行可能な形式のファイルで、記録メディア等のコンピュータで読み取り可能な記録媒体に記録して流通させるようにしてもよい。
【００２８】
次に、図３を用いて、機器（ＭＦＰ）２０のハードウェア構成について説明する。図３は、機器（ＭＦＰ）のハードウェア構成の一例を示す図である。図３に示すように、ＭＦＰ２０は、ＣＰＵ２０１と、ＲＯＭ２０２と、ＲＡＭ２０３と、外部記憶装置２０４と、エンジン部２０５と、操作表示部２０６と、通信Ｉ／Ｆ２０７とを備える。これらの各部は、システムバス２０８により通信可能に接続されている。
【００２９】
ＣＰＵ２０１は、ＲＯＭ２０２等に記憶されているプログラムをＲＡＭ２０３上に読み出して実行し、ＭＦＰ２０の動作を統括的に制御する。ＲＯＭ２０２は、ＭＦＰ２０用のプログラムを記憶している不揮発性記憶装置である。ＲＡＭ２０３は、ＣＰＵ２０１の演算用のワークエリアとして使用される揮発性記憶装置である。
【００３０】
外部記憶装置２０４は、画像データ及び印刷データ等の各種データを記憶する装置である。外部記憶装置２０４は、例えば、ＨＤＤまたはＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等である。
【００３１】
エンジン部２０５は、スキャナ機能及びプリンタ機能等を実現するハードウェア装置である。ここで、スキャナ機能とは、原稿データを読み取ってスキャナ画像を生成する機能である。また、プリンタ機能とは、スキャナ画像、または外部から送信された画像データに対して画像処理を実行し、出力可能な形式であるプロッタ画像を、印刷用紙に印字する機能である。
【００３２】
操作表示部２０６は、例えば、タッチパネル等であり、ＭＦＰ２０に対する入力を受け入れると共に、ＭＦＰ２０の状態等を表示する装置である。なお、操作表示部２０６を操作部と表示部とに分離して構成してもよい。また上記のように、操作表示部２０６の代わりにスマートフォンなどの携帯端末を操作表示部として用いてもよい。
【００３３】
通信Ｉ／Ｆ２０７は、ネットワーク５０に接続してデータを通信するためのインタフェースである。
【００３４】
次に、図４を用いて、本実施形態の機器管理装置１０、機器２０、サーバ装置３０及びクライアントＰＣ４０の機能について説明する。図４は、機器管理装置、機器、サーバ装置及びクライアントＰＣの機能構成の一例を示すブロック図である。
【００３５】
まず、機器管理装置１０の機能構成について説明する。図４に示すように、機器管理装置１０は、ＣＰＵ１０１がプログラムを実行することで実現される機能である通信部１１１と、利用情報取得部１１２と、ファームウェア取得部１１３と、機能情報特定部１１４と、機種情報特定部１１５と、回数情報算出部１１６と、業務状況情報生成部１１７と、重要度情報算出部１１８と、更新予定情報生成部１１９と、更新要求部１２０と、更新実行部１２１と、記憶部１２２とを備える。上記各部の一部はＣＰＵ１０１がＲＯＭ１０３又はＨＤＤ１０４からソフトウェア（プログラム）を読み出して実行することにより上記各部がＲＡＭ１０２上にロードされ、上記各部がＲＡＭ１０２上に生成されるソフトウェア（プログラム）であってもよい。また、上記各部の一部又は全部を、演算処理を行うプロセッサなどのハードウェア回路で置き換えてもよい。
【００３６】
通信部１１１は、ネットワーク５０を経由して機器２０およびクライアントＰＣ４０と通信する。通信部１１１は、複数の機器２０ａ〜２０ｃおよびクライアントＰＣ４０とネットワーク５０を経由して各種データを送受信信する。また、通信部１１１は、ネットワーク６０を経由してサーバ装置３０と通信する。通信部１１１は、サーバ装置３０とネットワーク６０を経由して各種データを送受信する。具体的には、例えば、通信部１１１は、機器２０から、機器２０を識別する識別情報と、機器２０の機種を示す機種情報と、機器２０の１以上の機能の中から利用した機能を示す利用機能情報と、該機能を利用した時刻と、該機能を利用した利用者とを少なくとも対応付けた利用情報を受信して機種情報特定部１１５、回数情報算出部１１６、業務状況情報生成部１１７、重要度情報算出部１１８、更新予定情報生成部１１９、記憶部１２２及び対応する各部に受け渡す。また、例えば、通信部１１１は、サーバ装置３０から、機器２０のファームウェアを更新するための更新用ファームウェア、及び更新用ファームウェアに付帯する、該更新用ファームウェアの適用対象となる機器２０の機種を示す対象機種情報と該更新用ファームウェアの適用対象となるプログラム部品を示す対象部品情報と該更新用ファームウェアの更新種類を示す更新情報を含む付帯情報を受信して機能情報特定部１１４、機種情報特定部１１５、更新予定情報生成部１１９、記憶部１２２及び対応する各部に受け渡す。また、例えば、通信部１１１は、更新用ファームウェアを含み、かつ、更新用ファームウェアへの切り換え（更新）を要求する更新要求を機器２０に送信する。
【００３７】
利用情報取得部１１２は、複数の機器２０の各々から、機器２０の識別情報と、機器２０の機種を示す機種情報と、機器２０の１以上の機能の中から利用した機能を示す利用機能情報と、該機能を利用した時刻と、該機能を利用した利用者とを少なくとも対応付けた利用情報を取得する。利用情報取得部１１２は、取得した利用情報を例えば、処理を実行した実行ＩＤ順にテーブル形式で記憶部１２２（利用情報データベース）に記憶させる。図５は、利用情報テーブルの一例を示す図である。図５に示すように、利用情報テーブルは、実行ＩＤと、機器ＩＤと、機種と、機器２０が設置された場所を示す設置場所と、機器２０の機能の中から利用した利用機能と、該機能を利用した利用者と、該機能を利用した利用時刻とを対応付けた情報である。図５の例では、例えば実行ＩＤ「１」の機器ＩＤ「１」は、機種「ＭＰ  １６０１」、設置場所「２Ｆ  Ａ地点」、利用機能「Ｐｒｉｎｔ」、利用者「Ａ」、利用時刻「２０１５−０９−２９  １０：２３：５４」であることを示している。なお、利用機能「Ｐｒｉｎｔ」は「印刷機能」を示し、「Ｓｃａｎ」は「スキャナ機能」を示し、「Ｆａｘ」は「ファクシミリ機能」を示し、「Ｃｏｐｙ」は「複写機能」を示している。上記の利用情報のうちで、実行ＩＤは、処理を実行した順にＩＤが割り当てられる。機器ＩＤ、機種、設置場所については、機器管理装置１０に機器２０を登録する際に情報が収集される。なお、データベースのテーブル設計は、例えば正規化するなど任意である。
【００３８】
図４に戻り説明を続ける。ファームウェア取得部１１３は、サーバ装置３０から、機器２０のファームウェアを更新するための更新用ファームウェア、及び更新用ファームウェアに付帯する、該更新用ファームウェアの適用対象となる機器２０の機種を示す対象機種情報と該更新用ファームウェアの適用対象となるプログラム部品（以下、モジュールとも表記する）を示す対象部品情報（対象モジュール情報）と、更新用ファームウェアの更新種類を示す更新情報とを含む付帯情報を取得する。すなわち、ファームウェア取得部１１３は、サーバ装置３０に対してファームウェア更新のための更新用ファームウェア取得要求を送信して、その応答としてサーバ装置３０から更新用ファームウェア（新バージョンのファームウェア）と付帯情報をダウンロードする。ファームウェア取得部１１３は、取得した更新用ファームウェア、及び更新用ファームウェアに付帯する付帯情報を記憶部１２２に記憶させる。図６は、付帯情報の一例を示す図である。図６に示すように、付帯情報は、更新用ファームウェアの適用対象となる機器２０の機種を示す対象機種情報（対象機種）と、更新用ファームウェアの適用対象となるプログラム部品（モジュール）を示す対象部品情報（対象モジュール）と、更新用ファームウェアの更新種類を示す更新情報（更新タイプ）とを含んでいる。更新タイプとして、Ｃｒｉｔｉｃａｌは「重要」を示し、Ｍａｉｎｔｅｎａｎｃｅは「メンテナンス（保守）」を示し、Ｎｅｗは「新規」を示している。
【００３９】
図４に戻り説明を続ける。機能情報特定部１１４は、更新用ファームウェアの対象モジュール情報を用いて、ファームウェアを適用するプログラム部品（モジュール）に対応する機能を示す機能情報を特定する。すなわち、ファームウェアを更新した場合に影響のある機能を特定する。図７は、機能情報を特定する方法の一例を示す図である。機器管理装置１０は、予め機器２０の機種ごとに、図７に示すモジュール階層マップを記憶している。モジュール階層マップは、下位のモジュール（プログラム部品）と関連する上位のモジュール（プログラム部品）を矢印で示した階層マップである。すなわち、モジュール階層マップは、下位のモジュール（プログラム部品）に紐付く上位のモジュール（プログラム部品）を順に上位に向かって階層構造で示し、最上位のモジュール（プログラム部品）に紐付く機能情報を特定できる階層マップ図である。なお、モジュール階層マップは、予めモジュールに実装してもよいし、外部装置から取得するようにしてもよい。
【００４０】
機能情報特定部１１４は、機器２０の機種ごとに予め記憶しているモジュール階層マップを用いて、更新用ファームウェアの付帯情報に含まれる、図６に示した対象モジュールの情報から下位のモジュールを入力する。すなわち、付帯情報の対象モジュールと対応するモジュール階層マップの下位のモジュールをスタートとする。そして、モジュール階層マップの矢印を辿って下位から上位に順に向かうことで、対象モジュール（プログラム部品）に対応する（関連する）機能を特定できる。具体的には、図６に示した付帯情報の対象モジュール情報が、例えば「モジュール１Ａ」であった場合、図７の下位の「モジュール１Ａ」をスタートとする。「モジュール１Ａ」から矢印を辿って「モジュール２Ａ」・・・「モジュールｎＡ」、そして「機能Ｂ」に到達する。この場合、更新用ファームウェアの対象モジュールを用いて特定される機能は「機能Ｂ」である。すなわち、ファームウェアを更新用ファームウェアに更新した場合に、影響のある機能は「機能Ｂ」であることが特定できる。このようにして、ファームウェアの適用対象となるモジュール（プログラム部品）とモジュール階層マップを用いてファームウェア更新と関連する機能を特定する。すなわち、付帯情報に含まれる対象部品情報（対象モジュール情報）を用いて、プログラム部品（モジュール）に対応する機能を示す機能情報を特定する。なお、スタートするモジュールは必ずしも最下位のモジュールに限ることはなく、例えば中間の「モジュール２Ａ」をスタートとすることもできるし、上位の「モジュールｎＡ」をスタートとすることもできる。
【００４１】
図４に戻り説明を続ける。機種情報特定部１１５は、取得した利用情報の中からファームウェアの付帯情報に含まれる対象機種情報に対応する機種情報を特定する。すなわち図６に示した対象機種が例えば「ＭＰ  １６０１」の場合、図５に示した利用情報の中から機種「ＭＰ  １６０１」を特定する。機種が特定できれば、機種に紐付く機器ＩＤ、設置場所、利用機能、利用者、機器２０の機能を利用した利用時刻を特定することもできる。なお、機種情報特定部１１５の機能を後述する重要度情報算出部１１８が備えることもできる。
【００４２】
回数情報算出部１１６は、取得した利用情報を参照し、機種情報特定部１１５で特定した機種情報と、機能情報特定部１１４で特定した機能情報に対応する利用機能情報と、機器２０を利用した時刻とを用いて、機器２０の識別情報ごとに、利用機能情報で示される機能を利用した回数を示す回数情報を算出する。ずなわち、機種情報特定部１１５で特定した機種情報が例えば「ＭＰ  １６０１」、利用機能情報が例えば「Ｐｒｉｎｔ」であった場合、図５に示した利用情報を参照し、実行ＩＤ「１」の機器ＩＤ「１」の回数情報が「１」と算出される。
【００４３】
また機種情報が例えば「ＭＰ  １６０１」、利用機能情報が例えば「Ｓｃａｎ」であった場合、実行ＩＤ「３」の機器ＩＤ「１」の回数情報が「１」、実行ＩＤ「４」の機器ＩＤ「３」の回数情報が「１」と算出される。なお、回数情報算出部１１６の機能を後述する重要度情報算出部１１８が備えることもできる。
【００４４】
業務状況情報生成部１１７は、更新用ファームウェアの適用対象となる対象機種情報と、機能情報特定部１１４で特定した機能情報とを用いて、利用情報を参照し、対象機種に対応する機器２０の識別情報ごとに、機器２０を利用した利用者と、回数情報算出部１１６で算出した該機器２０の機能を利用した回数を示す回数情報と、該機能を有する機器２０の数とを対応付けた業務状況情報を生成する。すなわち、業務状況情報生成部１１７は、機器管理装置１０の管理下にある機器２０から取得した利用情報から業務状況情報（業務状況表）を生成する。図８は、業務状況情報の一例を示す図である。図８に示すように業務状況情報は、対象機種の機器ＩＤと、機器２０の機能を利用した利用者と、該機器２０の機能を利用した回数と、同じ該機能を有する機器２０の数とを対応付けた情報である。つまり、業務状況情報は、機能情報特定部１１４で特定した、例えば機器２０の「機能Ｂ」を業務で何回利用したのかと、利用した「機能Ｂ」を持つ機器２０の数が何台あるかを関連付けた業務状況表（Ｂｕｓｉｎｅｓｓ  Ｓｉｔｕａｔｉｏｎ  Ｔａｂｌｅ）と捉えることもできる。図８の例では、対象機種の機器ＩＤと、利用者と、機器２０の機能を利用した回数と、同じ機能を有する機器２０の数とを対応付けた情報である。
【００４５】
本実施形態では、機能を利用した回数は、例えば１日あたりの平均値、１週間あたりの平均値、１ヶ月または所定期間あたりの平均値など任意に設定することができる。また、本実施形態では同じ機能を有する機器２０の数をカウントする場合として、ある利用者が１台の機器２０だけを利用している場合のみカウントすることとする。同じ機能を有する機器２０の数をカウントする対象は、例えば同じフロアに設置されている機器２０に限定してもよいし、例えばオフィス全体に設置されている機器２０と設定してもよいし、カウントの仕方は任意である。同じ機能を有する機器２０の数は、後述する重要度を算出する際の重み付け値の１つとして用いられる。
【００４６】
また、本実施形態では、業務状況表（業務状況情報）を生成する際のルールを以下のように設定する。対象機種の機器ＩＤと、利用者と、機能情報特定部１１４で特定した機能を利用した回数と、同じ機能を有する機器２０の数とを少なくとも対応付けた業務状況表を生成する。対象機種の機器ＩＤに対して利用者がいない場合は、利用者を「−」とし、機能を利用した回数を「０」とする。ある利用者が１台の機器２０だけを利用している場合に、同じ機能を有する機器の数をカウントする。この場合のカウント方法は利用情報の「設置場所」欄の文字列が一致した場合にカウントする。また、「設置場所」欄の情報がない場合は「０」とする。
【００４７】
図８の例では、例えば利用者「Ｃ」が機器ＩＤ「１」の機能Ｂを「１０回」利用し、機能Ｂを有する機器２０の数が「−（この例では「カウントしない」を示す）」を示し、利用者「Ｂ」が機器ＩＤ「１」の機能Ｂを「１２回」利用し、機能Ｂを有する機器２０の数が「−（この例では「カウントしない」を示す）」を示している。すなわち、機器ＩＤ「１」の機能Ｂを、利用者「Ｃ、Ｂ」が合計「２２回」利用し、かつ利用者「Ｃ、Ｂ」は機器ＩＤ「１」以外の他の機器ＩＤ「４、１０」も利用しているので、機能Ｂを有する機器２０の数が「−（この例では「カウントしない」を示す）」である。
【００４８】
また、例えば利用者「Ｂ」が機器ＩＤ「４」の機能Ｂを「４回」利用し、機能Ｂを有する機器２０の数が「−（この例では「カウントしない」を示す）」を示し、利用者「Ｃ」が機器ＩＤ「４」の機能Ｂを「３回」利用し、機能Ｂを有する機器２０の数が「−（この例では「カウントしない」を示す）」を示し、利用者「Ｄ」が機器ＩＤ「４」の機能Ｂを「１１回」利用し、かつ利用者「Ｄ」が機器ＩＤ「４」だけを利用している場合なので機能Ｂを有する機器２０の数が「２」であることを示している。すなわち、機器ＩＤ「４」の機能Ｂを、利用者「Ｂ、Ｃ」が合計「７回」利用し、機能Ｂを有する機器２０の数が「−（この例では「カウントしない」を示す）」、機器ＩＤ「４」の機能Ｂを、利用者「Ｄ」が合計「１１回」利用し、機能Ｂを有する機器２０の数が「２」である。
【００４９】
また、例えば利用者「Ｃ」が機器ＩＤ「１０」の機能Ｂを「１２回」利用し、かつ利用者「Ｃ」は機器ＩＤ「１０」以外の他の機器ＩＤ「１、４」も利用しているので、機能Ｂを有する機器２０の数が「−（この例では「カウントしない」を示す）」を示している。
【００５０】
また、例えば利用者「Ｆ」が機器ＩＤ「１１」の機能Ｂを「５回」利用し、機能Ｂを有する機器２０の数が「０（この例では「情報がない」を示す）」を示している。
【００５１】
また、例えば機器ＩＤ「１２」の機能Ｂを利用している利用者がいないので利用者「−」、機能Ｂを利用した回数「０」、機能Ｂを有する機器２０の数が「３」であることを示している。
【００５２】
図４に戻り説明を続ける。重要度情報算出部１１８は、機器２０の識別情報ごとに、回数情報算出部１１６で算出した回数情報を用いて機器２０の重要度を示す重要度情報を算出する。また重要度情報算出部１１８が上述した機種情報特定部１１５、回数情報算出部１１６の機能を備える場合には、重要度情報算出部１１８は、付帯情報に含まれる対象機種情報に対応する利用情報の機種情報を特定し、利用情報を参照して、特定した機種情報に紐付いた機器２０の識別情報ごとに、特定した機能情報と算出した回数情報を用いて、機器２０の重要度を示す重要度情報を算出する。すなわち、重要度情報算出部１１８は、業務状況情報生成部１１７で生成した業務状況情報（業務状況表）を用いて、機器２０の識別情報ごとに、業務に使用する機器２０の重要度を示す重要度情報を算出する。具体的には、重要度情報の重要度は下記式（１）を用いて算出することができる。
【００５３】
重要度＝総利用回数＋代替不可能度  ・・・（１）
【００５４】
上記式（１）中、総利用回数は機器の機能を利用した全ての利用者の回数の和を表す。代替不可能度は同じ機能を有する機器の数が「−」または１以上の場合「０」とする。
【００５５】
また、同じ機能を有する機器の数が「−」または１以上の場合以外の場合には、重要度情報の重要度は下記式（２）を用いて算出することができる。
【００５６】
重要度＝総利用回数＋（総利用回数×代用不可能割合）  ・・・（２）
【００５７】
上記式（２）中、（総利用回数×代用不可能割合）は代替不可能度を示し、代用不可能な機器を重視する重み付け値を表す。代用不可能割合は０以上１以下の値であり、デフォルトとして０．５を設定する。
【００５８】
更新予定情報生成部１１９は、上述した重要度情報に基づいて、機器２０ごとに、ファームウェアを適用する予定（更新予定）を示す更新予定情報を生成する。すなわち、重要度情報算出部１１８で算出した機器２０の業務上の重要度に基づいて、更新用ファームウェアを適用する（ファームウェアを更新する）更新予定情報（更新スケジュール）を生成する。
【００５９】
まず、更新予定情報生成部１１９は、重要度情報算出部１１８で算出した重要度情報を用いて機器２０を重要度順に並び替えを行う。または、重要度を正規化して、正規化した重要度順に並び替えを行う。図９は、更新対象機種の機器を重要度の順に並び替えて重要度を正規化した一例を示す図である。図９の例では、機器ＩＤ「１」の重要度「２２」、正規化した重要度「０．３７」を示し、機器ＩＤ「４」の重要度「１８」、正規化した重要度「０．３０」を示し、機器ＩＤ「１０」の重要度「１２」、正規化した重要度「０．２０」を示し、機器ＩＤ「１１」の重要度「７．５」、正規化した重要度「０．１３」を示し、機器ＩＤ「１２」の重要度「０」、正規化した重要度「０．００」を示している。
【００６０】
次に、更新予定情報生成部１１９は、正規化した重要度を用いて、現在時刻を開始時刻として、各更新時間を足し合わせた終了時間までを更新実施時間（例えば２４ｈ）とし、更新実施時間を正規化した重要度で分割して更新予定情報を生成する。図１０は、更新予定情報の一例を示す図である。図１０の例は、重要度の高い順から、機器ＩＤ「１」は現在時刻から８．８７ｈでファームウェア更新を実施し、その後、機器ＩＤ「４」は７．２６ｈでファームウェア更新を実施し、その後、機器ＩＤ「１０」は４．８４ｈでファームウェア更新を実施し、その後、機器ＩＤ「１１」は３．０３ｈでファームウェア更新を実施し、その後、機器ＩＤ「１２」のファームウェア更新を実施する更新予定情報（更新スケジュール）である。
【００６１】
また、更新予定情報生成部１１９は、図６に示した付帯情報の更新用ファームウェアの更新種類を示す更新情報（更新タイプ）を用いて更新予定情報を生成する。図１１は、更新予定情報の一例を示す図である。図１１の上側の更新スケジュール例は、更新タイプが重要（Ｃｒｉｔｉｃａｌ）であれば、現在のファームウェアを利用し続けるとリスクが高いと判断し、図９に示した重要度の高い機器２０の順でファームウェア更新を実施する更新予定情報を生成する。すなわち、更新情報に含まれる更新種類（更新タイプ）が重要である場合、更新予定情報生成部１１９は、重要度情報の重要度が高い順に並べた更新予定情報を生成する。また、図１１の下側の更新スケジュール例は、更新タイプが重要（Ｃｒｉｔｉｃａｌ）以外の場合、つまりメンテナンス（保守、Ｍａｉｎｔｅｎａｎｃｅ）、新規（Ｎｅｗ）であれば、ファームウェア更新による問題が発生することを回避するために図９に示した重要度の低い機器２０の順でファームウェア更新を実施する更新予定情報を生成する。すなわち、更新情報に含まれる更新種類（更新タイプ）が重要以外である場合、更新予定情報生成部１１９は、重要度情報の重要度が低い順に並べた更新予定情報を生成する。なお、更新予定情報を生成する際に、更新禁止時間帯が設定されている場合には、その時間帯にファームウェア更新が行われないように更新予定情報をシフトして生成する。例えば、更新予定情報生成部１１９は、機能情報特定部１１４で特定した機能と、利用情報の機能を利用した時刻とを用いて、該機能が最も利用されている時間帯を更新禁止時間帯に設定することで、ファームウェア更新による問題が発生した場合でも通常の業務に与える影響を低減させることができる。すなわち、更新予定情報生成部１１９は、機能情報と利用情報を用いて、機器２０の機能が最も利用されている時間帯には更新用ファームウェアへの切り換えを行わない更新予定情報を生成する。
【００６２】
図１２は、更新予定情報の書式の一例を示す図である。図１２に示すように更新予定情報（更新スケジュール）の書式は、ｔｉｍｅｓｔａｍｐ（日時）と、ｔａｒｇｅｔ（機器２０の識別情報）とを対応付けた情報である。機器２０の識別情報としては、例えば、ＩＰアドレスやドメイン名またはホスト名など機器２０を識別する（特定する）情報であればよい。
【００６３】
このように、更新予定情報生成部１１９は、ファームウェア更新の対象機種の機器２０と、業務に使用する機器２０の重要度と、ファームウェアの付帯情報の更新タイプとに基づいて、ファームウェア更新を実施する更新予定情報（更新スケジュール）を生成する。
【００６４】
更新要求部１２０は、更新予定情報生成部１１９で生成した更新予定情報に基づいて、更新用ファームウェアを含み、かつ、更新用ファームウェアへの切り換え（更新）を要求する更新要求を機器２０に送信する。また更新要求部１２０は、更新用ファームウェアへの切り換えを実行した機器２０に不具合がある旨を受け付けた場合、以降の更新用ファームウェアへの切り換え（更新）を要求する更新要求の送信を中止する。なお、更新実行部１２１が更新用ファームウェアを用いて、機器２０のファームウェア更新を実行する場合には更新要求部１２０を備えなくてもよい。
【００６５】
更新実行部１２１は、更新予定情報生成部１１９で生成した更新予定情報に基づいて、ファームウェア取得部１１３で取得した更新用ファームウェアを用いて、機器２０のファームウェア更新を実行する。また更新実行部１２１は、更新用ファームウェアへの切り換え（更新）を実行した機器２０に不具合がある旨を受け付けた場合、以降の更新用ファームウェアへの切り換え（更新）の実行を中止する。なお、更新要求部１２０がファームウェアの更新を要求する更新要求を機器２０に送信して、機器２０が更新要求に基づいて、更新要求に含まれる更新用ファームウェアを用いて、更新用ファームウェアへの切り換え（更新）を実行する場合には更新実行部１２１を備えなくてもよい。
【００６６】
記憶部１２２は、各種のデータを記憶する。例えば、記憶部１２２は、利用情報を例えば、処理を実行した実行ＩＤ順にテーブル形式で所定領域に記憶する。また例えば、記憶部１２２は、更新用ファームウェアと、更新用ファームウェアに付帯する付帯情報とを所定領域に記憶する。また例えば、記憶部１２２は、上述したモジュール階層マップを所定領域に記憶する。また例えば、記憶部１２２は、機器２０を管理するために必要な各種の情報を取得して管理する。また例えば、記憶部１２２は、複数の機器２０を管理しており、例えば、機器２０ごとにユーザの機種、機番、設置場所、設置年月日、使用期間など関係する情報を記憶する。
【００６７】
次に、機器２０の機能構成について説明する。図４に示すように、機器２０は、ＣＰＵ２０１がプログラムを実行することで実現される機能である通信部２１１と、更新部２１２と、処理実行部２１３と、記憶部２１４とを備える。上記各部の一部はＣＰＵ２０１がＲＯＭ２０２又は外部記憶装置２０４からソフトウェア（プログラム）を読み出して実行することにより上記各部がＲＡＭ２０３上にロードされ、上記各部がＲＡＭ２０３上に生成されるソフトウェア（プログラム）であってもよい。また、上記各部の一部又は全部を、演算処理を行うプロセッサなどのハードウェア回路で置き換えてもよい。
【００６８】
通信部２１１は、ネットワーク５０を経由して機器管理装置１０及びクライアントＰＣ４０と通信する。通信部２１１は、機器管理装置１０及びクライアントＰＣ４０とネットワーク５０を経由して各種データを送受信する。例えば、通信部２１１は、機器管理装置１０から機器２０を識別する識別情報と、機器２０の機種を示す機種情報と、機器２０の１以上の機能の中から利用した機能を示す利用機能情報と、該機能を利用した時刻と、該機能を利用した利用者とを少なくとも対応付けた利用情報を取得することを要求する利用情報取得要求を受け付けて、機器２０が保持する利用情報を機器管理装置１０に送信する。また例えば、通信部２１１は、機器管理装置１０からファームウェアの更新を要求する更新要求を受け付けて、更新部２１２、記憶部２１４に受け渡す。また例えば、通信部２１１は、機器２０の状態を示す状態情報を含む機器情報を機器管理装置１０に送信する。すなわち、機器管理装置１０から機器情報を取得する要求を受け付けて、応答として機器２０が保持する機器情報を送信する。または、機器２０は予め設定された所定間隔で機器２０が保持する機器情報を機器管理装置１０に送信する。
【００６９】
更新部２１２は、更新用ファームウェアを含み、かつ、更新用ファームウェアへの切り換え（更新）を要求する更新要求に基づいて、更新要求に含まれる更新用ファームウェアを用いて、更新用ファームウェアへの切り換え（更新）を実行する。
【００７０】
処理実行部２１３は、クライアントＰＣ４０から受信したデータ処理を実行するためのデータを用いてデータ処理を行う。
【００７１】
記憶部２１４は、各種のデータを記憶する。例えば、記憶部２１４は、ファームウェアを所定領域に記憶する。また例えば、記憶部２１４は、機器２０の識別情報と、機器２０の機種を示す機種情報と、機器２０の１以上の機能の中から利用した機能を示す利用機能情報と、該機能を利用した時刻と、該機能を利用した利用者とを少なくとも含む利用情報を所定領域に記憶する。また例えば、記憶部２１４は、機器２０の状態を示す状態情報を含む機器情報を所定領域に記憶する。機器２０の状態を示す状態情報としては、例えば、カウンタ情報、機器状態情報、機器設定情報などを含んでいる。また例えば、記憶部２１４は、機器情報として、機種や機番などの個体情報、ソーターやフィニッシャーなどのオプション装着情報、トータルコピー数やモノクロコピー数及びカラーコピー数などの各種カウンタ情報、故障回数や修理部位及び回数などの機器状態情報（履歴情報）、機器２０設置時などに設定するサービスマン（ＳＰ）設定やユーザが任意に設定するユーザ設定などの機器設定情報等を所定領域に記憶する。
【００７２】
次に、サーバ装置３０の機能構成について説明する。図４に示すように、サーバ装置３０は、ＣＰＵ１０１がプログラムを実行することで実現される機能である通信部３１１と、ファームウェア記憶部３１２とを備える。上記各部の一部はＣＰＵ１０１がＲＯＭ１０３又はＨＤＤ１０４からソフトウェア（プログラム）を読み出して実行することにより上記各部がＲＡＭ１０２上にロードされ、上記各部がＲＡＭ１０２上に生成されるソフトウェア（プログラム）であってもよい。また、上記各部の一部又は全部を、演算処理を行うプロセッサなどのハードウェア回路で置き換えてもよい。
【００７３】
通信部３１１は、ネットワーク６０を経由して機器管理装置１０と通信する。通信部３１１は、機器管理装置１０とネットワーク６０を経由して各種データを送受信する。例えば通信部３１１は、機器管理装置１０から、更新用ファームウェアと、更新用ファームウェアに付帯する、更新用ファームウェアの適用対象となる機器２０の機種を示す対象機種情報と更新用ファームウェアの適用対象となるプログラム部品（モジュール）を示す対象部品情報と、更新用ファームウェアの更新種類を示す更新情報とを含む付帯情報と、を取得する要求を受信して、ファームウェア記憶部３１２から読み出した更新用ファームウェア、及び付帯情報を機器管理装置１０に送信する。すなわち、通信部３１１は、機器管理装置１０から、更新用ファームウェア、及び付帯情報を取得する要求を受信して、ファームウェア記憶部３１２から読み出した更新用ファームウェア、及び付帯情報を機器管理装置１０に送信する。
【００７４】
ファームウェア記憶部３１２は、機器２０のファームウェア及び付帯情報、ファームウェア更新のための更新用ファームウェア及び付帯情報などを所定領域に記憶する。
【００７５】
次に、クライアントＰＣ４０の機能構成について説明する。図４に示すように、クライアントＰＣ４０は、ＣＰＵ１０１がプログラムを実行することで実現される機能である通信部４１１と、受付部４１２と、取得部４１３と、記憶部４１４とを備える。上記各部の一部はＣＰＵ１０１がＲＯＭ１０３又はＨＤＤ１０４からソフトウェア（プログラム）を読み出して実行することにより上記各部がＲＡＭ１０２上にロードされ、上記各部がＲＡＭ１０２上に生成されるソフトウェア（プログラム）であってもよい。また、上記各部の一部又は全部を、演算処理を行うプロセッサなどのハードウェア回路で置き換えてもよい。
【００７６】
通信部４１１は、ネットワーク５０を経由して機器管理装置１０及び機器２０と通信する。通信部４１１は、機器管理装置１０及び機器２０とネットワーク５０を経由して各種データを送受信する。例えば通信部４１１は、データ処理を実行するためのデータを機器２０に送信する。また、通信部４１１は、ネットワーク６０を経由してサーバ装置３０と通信する。通信部４１１は、ネットワーク６０を経由して各種データを送受信する。
【００７７】
受付部４１２は、例えばユーザの様々な操作指示を受け付けて、対応する各部に受け渡す。また例えば、受付部４１２は、ユーザからファームウェア更新の入力を受け付けて、更新用ファームウェアを機器管理装置１０に通信部４１１を介して送信する。また例えば、受付部４１２は、機器２０から不具合が発生したことを受け付けて、ファームウェア更新を実行した機器２０に不具合がある旨を機器管理装置１０に通信部４１１を介して送信する。
【００７８】
取得部４１３は、例えば更新用ファームウェア、及び更新用ファームウェアに付帯する、更新用ファームウェアの適用対象となる機器２０の機種を示す対象機種情報と更新用ファームウェアの適用対象となるプログラム部品（モジュール）を示す対象部品情報と更新用ファームウェアの更新種類を示す更新情報を含む付帯情報を取得する要求をサーバ装置３０に送信して、サーバ装置３０から更新用ファームウェア、及び付帯情報を取得して、記憶部４１４に記憶させる。
【００７９】
記憶部４１４は、各種のデータを記憶する。例えば、記憶部４１４は、更新用ファームウェア、及び更新用ファームウェアに付帯する付帯情報を所定領域に記憶する。
【００８０】
次に、機器管理装置１０の処理動作について説明する。図１３は、機器管理装置が更新予定情報を生成してファームウェア更新を行う処理の一例を示すフローチャートである。機器管理装置１０は、複数の機器２０から、機器２０の識別情報と、機器２０の機種を示す機種情報と、機器２０の１以上の機能の中から利用した機能を示す利用機能情報（利用した機器２０の機能を示す利用機能）と、該機能を利用した時刻と、該機能を利用した利用者とを少なくとも対応付けた利用情報を取得する（ステップＳ１）。次に、機器管理装置１０は、サーバ装置３０に更新用ファームウェアがあるか否かを判断する（ステップＳ２）。すなわち、機器管理装置１０は、サーバ装置３０に対して更新用ファームウェア、及び更新用ファームウェアに付帯する、該更新用ファームウェアの適用対象となる機器２０の機種を示す対象機種情報と該更新用ファームウェアの適用対象となるプログラム部品（モジュール）を示す対象部品情報（対象モジュール情報）と更新用ファームウェアの更新種類を示す更新情報を含む付帯情報を取得する要求を送信し、その応答として更新用ファームウェア、及び付帯情報を受信した場合、更新用ファームウェアがあると判断し、応答がない場合または更新用ファームウェアがない旨の応答を受信した場合、更新用ファームウェアがないと判断する。
【００８１】
更新用ファームウェアがある場合（ステップＳ２：Ｙｅｓ）、ステップＳ４に移行して処理を継続する。更新用ファームウェアがない場合（ステップＳ２：Ｎｏ）、機器管理装置１０は、更新用ファームウェアを受信したか否かを判断する（ステップＳ３）。すなわち、機器管理装置１０は、クライアントＰＣ４０から更新用ファームウェアを受信したか否かを判断する。本実施形態では、機器管理装置１０がサーバ装置３０から更新用ファームウェアを取得する場合と、クライアントＰＣ４０から更新用ファームウェアを受信して取得する場合があるためである。
【００８２】
更新用ファームウェアを受信していない場合（ステップＳ３：Ｎｏ）、ステップＳ２に戻り処理を継続する。更新用ファームウェアを受信した場合（ステップＳ３：Ｙｅｓ）、ステップＳ４に移行する。
【００８３】
ステップＳ４では、機器管理装置１０は、上述したようにサーバ装置３０から更新用ファームウェア、及び付帯情報を取得する。または、クライアントＰＣ４０から更新用ファームウェア、及び付帯情報を受信して取得する（ステップＳ４）。次に、機器管理装置１０は、ステップＳ１で取得した利用情報と、ステップＳ４で取得した付帯情報を用いて、上述したように更新予定情報（更新スケジュール）を生成する（ステップＳ５）。次に、機器管理装置１０は、図１１及び図１２で示した更新予定情報（更新スケジュール）に基づいて、対象の機器２０に対してファームウェア更新を実行する（ステップＳ６）。ファームウェア更新処理として、上述したように更新要求部１２０が更新用ファームウェアへの切り換え（更新）を要求する更新要求を機器２０に送信し、機器２０がファームウェア更新を実行する場合と、更新実行部１２１が更新用ファームウェアを用いて、機器２０のファームウェア更新を実行する場合とがあるが、予め設定することができ、どちらに設定するかは任意である。
【００８４】
次に、機器管理装置１０は、ファームウェア更新を実行（更新用ファームウェアへの切り換えを）した機器２０に不具合があるか否かを判断する（ステップＳ７）。すなわち、機器管理装置１０は、１台の機器２０のファームウェア更新を実行するごとに機器２０の状態を示す状態情報を取得することで機器２０に不具合があるか否かを判断することができる。また、クライアントＰＣ４０からファームウェア更新を実行した機器２０に不具合がある旨を受信することで不具合が発生したと判断することもできる。
【００８５】
不具合がある場合（ステップＳ７：Ｙｅｓ）、機器管理装置１０は、更新予定情報（更新スケジュール）に従ったファームウェア更新処理を中止（ステップＳ８）して処理を終了する。すなわち、機器２０に不具合があると判断したら以降の機器２０に対する更新処理を中止する。不具合がない場合（ステップＳ７：Ｎｏ）、機器管理装置１０は、更新予定情報（更新スケジュール）にある全ての機器２０に対してファームウェア更新をしたか否かを判断する（ステップＳ９）。全ての機器２０を更新していない場合（ステップＳ９：Ｎｏ）、ステップＳ６に戻り、次の機器２０に対してファームウェア更新を行う。全ての機器２０を更新した場合（ステップＳ９：Ｙｅｓ）、処理を終了する。以上に説明したように機器管理装置１０は、業務に影響の少ない更新予定情報を生成して機器２０のファームウェア更新を行い、更新した機器２０に不具合がある場合には更新処理を中止するので、ファームウェア更新による問題が発生した場合でも通常の業務に与える影響を低減させることができる、という有利な効果を達成できる。
【００８６】
次に、ステップＳ５の処理の詳細について説明する。図１４は、更新予定情報を生成する処理の一例を示すフローチャートである。機器管理装置１０は、機能情報特定部１１４で、更新用ファームウェアの対象モジュール情報を用いて、モジュール階層マップに従ってファームウェアの適用対象となる機能を示す機能情報を特定する（ステップＳ２１）。すなわち、付帯情報に含まれる対象部品情報（対象モジュール情報）を用いて、プログラム部品（モジュール）に対応する機能を示す機能情報を特定する。つまり、機能情報特定部１１４は、ファームウェアの適用対象となるプログラム部品（モジュール）とモジュール階層マップを用いて、機能情報を特定する。次に、機器管理装置１０は、業務状況情報生成部１１７で、更新用ファームウェアの対象機種情報と、特定した機能情報とを用いて、利用情報を参照し、対象機種の機器２０の識別情報と、該機器２０を利用した利用者と、該機器２０の機能を利用した回数と、該機能を有する機器２０の数とを対応付けた業務状況情報（業務状況表）を生成する（ステップＳ２２）。次に、機器管理装置１０は、重要度情報算出部１１８で、業務状況情報（業務状況表）を用いて、機器２０の識別情報ごとに、業務に使用する機器２０の重要度を示す重要度情報を算出する（ステップＳ２３）。次に、機器管理装置１０は、更新予定情報生成部１１９で、機器２０の業務上の重要度情報に基づいて、更新用ファームウェアを適用する（ファームウェアを更新する）更新予定情報（更新スケジュール）を生成する（ステップＳ２４）。以上に説明したようにして機器管理装置１０は、更新予定情報（更新スケジュール）を生成する。
【００８７】
以上、本発明に係る実施形態について説明したが、本発明は、上述の実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上述の実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施の形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【００８８】
例えば、上述の利用情報取得部１１２、ファームウェア取得部１１３、機能情報特定部１１４、機種情報特定部１１５、回数情報算出部１１６、業務状況情報生成部１１７、重要度情報算出部１１８、更新予定情報生成部１１９、更新要求部１２０、更新実行部１２１および記憶部１２２は、機器管理装置１０、機器２０、サーバ装置３０およびクライアントＰＣ４０の各々に分散されて搭載される形態であってもよい。また、例えば上述の利用情報取得部１１２、ファームウェア取得部１１３、機能情報特定部１１４、機種情報特定部１１５、回数情報算出部１１６、業務状況情報生成部１１７、重要度情報算出部１１８、更新予定情報生成部１１９、更新要求部１２０、更新実行部１２１および記憶部１２２は、機器管理装置１０、機器２０、サーバ装置３０、クライアントＰＣ４０、および、１以上の外部装置（例えばサーバ装置）の各々に分散されて搭載される形態であってもよい。
【００８９】
また、上述した各実施形態の機器管理システム１で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよいし、インターネット等のネットワーク経由で提供または配布するように構成してもよい。また、各種プログラムを、ＲＯＭ等に予め組み込んで提供するように構成してもよい。
【００９０】
なお、本実施形態の機器管理装置１０と機器２０とサーバ装置３０とクライアントＰＣ４０とが接続された機器管理システム構成は一例であり、用途や目的に応じて様々な機器管理システムの構成例があることは言うまでもない。
【符号の説明】
【００９１】
１  機器管理システム
１０  機器管理装置
２０  機器
３０  サーバ装置
４０  クライアントＰＣ
５０  ネットワーク
６０  ネットワーク
１０１  ＣＰＵ
１０２  ＲＡＭ
１０３  ＲＯＭ
１０４  ＨＤＤ
１０５  機器Ｉ／Ｆ
１０６  表示部
１０７  操作部
１０８  ネットワークＩ／Ｆ
１０９  バス
１１１  通信部
１１２  利用情報取得部
１１３  ファームウェア取得部
１１４  機能情報特定部
１１５  機種情報特定部
１１６  回数情報算出部
１１７  業務状況情報生成部
１１８  重要度情報算出部
１１９  更新予定情報生成部
１２０  更新要求部
１２１  更新実行部
１２２  記憶部
２０１  ＣＰＵ
２０２  ＲＯＭ
２０３  ＲＡＭ
２０４  外部記憶装置
２０５  エンジン部
２０６  操作表示部
２０７  通信Ｉ／Ｆ
２０８  システムバス
２１１  通信部
２１２  更新部
２１３  処理実行部
２１４  記憶部
３１１  通信部
３１２  ファームウェア記憶部
４１１  通信部
４１２  受付部
４１３  取得部
４１４  記憶部
【先行技術文献】
【特許文献】
【００９２】
【特許文献１】特開２０１５−１３８２９７号公報
【図１】
0006645233.tif 000002
【図２】
0006645233.tif 000003
【図３】
0006645233.tif 000004
【図４】
0006645233.tif 000005
【図５】
0006645233.tif 000006
【図６】
0006645233.tif 000007
【図７】
0006645233.tif 000008
【図８】
0006645233.tif 000009
【図９】
0006645233.tif 000010
【図１０】
0006645233.tif 000011
【図１１】
0006645233.tif 000012
【図１２】
0006645233.tif 000013
【図１３】
0006645233.tif 000014
【図１４】
0006645233.tif 000015