(57)【特許請求の範囲】
【請求項１】
印刷を実行可能な画像形成装置であって、
前記画像形成装置のファームェアを更新するための更新処理を実行する更新手段と、
前記更新手段が前記更新処理を実行した場合に、前記更新処理によって追加された設定項目と、前記更新処理によって削除された設定項目と、前記更新処理によって変更された設定項目の変更前の設定値と、前記更新処理によって変更された設定項目の変更後の設定値とを示す設定差分情報を生成する生成手段と、
前記生成手段によって生成された前記設定差分情報を更新履歴に対応付けて蓄積する蓄積手段と、
前記更新処理に関する更新履歴画面を表示する表示手段と、を備え、
前記更新履歴画面において複数の更新履歴の中から特定の更新履歴をユーザが選択した場合に、前記表示手段は、前記特定の更新履歴に対応する前記設定差分情報に基づいて、前記特定の更新履歴が示す更新処理によって追加された設定項目と、前記特定の更新履歴が示す更新処理によって削除された設定項目と、前記特定の更新履歴が示す更新処理によって変更された設定項目の変更前の設定値と、前記特定の更新履歴が示す更新処理によって変更された設定項目の変更後の設定値とを表示することを特徴とする画像形成装置。
【請求項２】
前記更新履歴画面において複数の更新履歴の中から前記特定の更新履歴をユーザが選択した場合に、前記表示手段は、前記特定の更新履歴が示す更新処理によって変更された設定項目の設定値を変更前の設定値に戻すための変更オブジェクトを表示することを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記更新処理が正常に終了したか否かを判定する判定手段を更に備え、
前記生成手段は、前記更新処理が正常に終了したと前記判定手段によって判定された場合に、前記設定差分情報を生成することを特徴とする請求項１又は２に記載の画像形成装置。
【請求項４】
前記更新履歴画面には、前記更新処理が実行された日時が表示されることを特徴とする請求項１乃至３のいずれか１項に記載の画像形成装置。
【請求項５】
前記設定差分情報はＸＭＬ形式であることを特徴とする請求項１乃至４のいずれか１項に記載の画像形成装置。
【請求項６】
印刷を実行可能な画像形成装置の制御方法であって、
前記画像形成装置のファームェアを更新するための更新処理を実行する更新ステップと、
前記更新ステップで前記更新処理が実行された場合に、前記更新処理によって追加された設定項目と、前記更新処理によって削除された設定項目と、前記更新処理によって変更された設定項目の変更前の設定値と、前記更新処理によって変更された設定項目の変更後の設定値とを示す設定差分情報を生成する生成ステップと、
前記生成ステップによって生成された前記設定差分情報を更新履歴に対応付けて蓄積する蓄積ステップと、
前記更新処理に関する更新履歴画面を表示する表示ステップと、を備え、
前記表示ステップでは、前記更新履歴画面において複数の更新履歴の中から特定の更新履歴をユーザが選択した場合に、前記特定の更新履歴に対応する前記設定差分情報に基づいて、前記特定の更新履歴が示す更新処理によって追加された設定項目と、前記特定の更新履歴が示す更新処理によって削除された設定項目と、前記特定の更新履歴が示す更新処理によって変更された設定項目の変更前の設定値と、前記特定の更新履歴が示す更新処理によって変更された設定項目の変更後の設定値とを表示することを特徴とする画像形成装置の制御方法。
【請求項７】
コンピュータを請求項１乃至５のいずれか１項に記載の画像形成装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファームウェアの更新機能を備える画像形成装置、画像形成装置の制御方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、デジタル複合機等の画像形成装置においては、製品出荷後に市場でファームウェア（制御プログラム）の更新（アップデート、バージョンアップ）が可能なものが一般的となっている。
【０００３】
更新用ファームウェアは、機能追加、仕様変更、又はソフトウェア不具合の修正等、様々な理由により提供されるため、同じ製品に対して頻繁にファームウェアの更新を実施する場合がある。そのため、ファームウェアの更新履歴を記憶して管理することが可能な画像形成装置が提案されている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−５００９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
デジタル複合機等の画像形成装置においては、装置ごとの調整値、両面印刷などの印刷処理に係る初期設定、各機能の動作仕様に係る設定等、様々な機器設定（設定項目）に対して設定値を登録可能になっているが、ファームウェアの更新前後で当該設定項目や設定値が変更される場合がある。
【０００６】
例えば、機能追加を伴ったファームウェアの更新を実施する場合、追加された機能の動作仕様に係る設定項目は、ファームウェア更新前の装置状態には存在しない。また、仕様変更により、ある設定項目に対して設定可能な設定値の値域が変更された場合、仕様変更後の値域に合わせてファームウェア更新前の設定値を自動的に補正し、ファームウェア更新後の設定値として登録するケースもある。このようなファームウェア更新に伴う設定値の変更にユーザが気付かない場合、本来ユーザが望まない設定値のまま装置を使用してしまう恐れがある。
【０００７】
ファームウェア更新に伴う設定値の変更にユーザが後から気付いた場合、ユーザは設定値を所望の設定に戻そうとすると考えられる。しかしながら、上述の従来の技術では、ファームウェアの更新結果、およびバージョン情報をユーザに通知することはできるものの、ファームウェア更新に伴う設定値の変更をユーザに通知することはできなかった。また、画像形成装置の仕様に詳しくないユーザであれば、変更された設定値を戻そうとしてもどのような設定値に戻せばいいのか分からない場合もある
【０００８】
本発明は、上記の問題点を解決するためになされたものである。本発明の目的は、更新履歴に対応付けられた設定値の変更に関する情報をユーザが確認できる仕組みを提供することである。
【課題を解決するための手段】
【０００９】
本発明は、印刷を実行可能な画像形成装置であって、前記画像形成装置のファームェアを更新するための更新処理を実行する更新手段と、前記更新手段が前記更新処理を実行した場合に、前記更新処理によって追加された設定項目と、前記更新処理によって削除された設定項目と、前記更新処理によって変更された設定項目の変更前の設定値と、前記更新処理によって変更された設定項目の変更後の設定値とを示す設定差分情報を生成する生成手段と、前記生成手段によって生成された前記設定差分情報を更新履歴に対応付けて蓄積する蓄積手段と、前記更新処理に関する更新履歴画面を表示する表示手段と、を備え、前記更新履歴画面において複数の更新履歴の中から特定の更新履歴をユーザが選択した場合に、前記表示手段は、前記特定の更新履歴に対応する前記設定差分情報に基づいて、前記特定の更新履歴が示す更新処理によって追加された設定項目と、前記特定の更新履歴が示す更新処理によって削除された設定項目と、前記特定の更新履歴が示す更新処理によって変更された設定項目の変更前の設定値と、前記特定の更新履歴が示す更新処理によって変更された設定項目の変更後の設定値とを表示することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、更新履歴に対応付けられた設定値の変更に関する情報をユーザが確認できる。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施例を示す画像形成装置を含むシステム構成図である。
【図２】ＭＦＰ１のハードウェア構成の一例を示すブロック図である。
【図３】ＭＦＰ１のソフトウェア構成の一例を示すソフトブロック図である。
【図４】本実施例に係る画像形成装置のファームウェア更新に伴う一連の処理の一例を示すフローチャートである。
【図５】図４のＳ４０９で説明したファームウェア更新前後における機器設定差分抽出処理を説明するフローチャートである。
【図６】ファームウェア更新前の状態におけるＭＦＰ１の機器設定の一例を示す図である。
【図７】ファームウェア更新後の状態におけるＭＦＰ１の機器設定の一例を示す図である。
【図８】ファームウェア更新前後における機器設定の差分情報（ＸＭＬ形式）の例を示す図である。
【図９】ファームウェア更新履歴のデータ要素の一例を示す図である。
【図１０】本実施例に係る画像形成装置におけるファームウェア更新に伴う機器設定差分情報の参照手順の一例を示すフローチャートである。
【図１１】ファームウェア更新に伴う機器設定差分情報を参照するための画面の一例を示す図である。
【図１２】ファームウェア更新に伴う機器設定差分情報を参照するための画面の他の例を示す図である。
【図１３】ＭＦＰ１における設定値確認変更画面の一例を示す図である。
【発明を実施するための形態】
【００１２】
以下、本発明を実施するための形態について図面を用いて説明する。
【実施例１】
【００１３】
図１は、本発明の一実施例を示す画像形成装置を含むシステム構成図である。
図１において、ＭＦＰ（Multi Function Peripheral）１は本実施例の画像形成装置であり、コピー、スキャン、プリント、ＳＥＮＤ（画像データ送信）、ＲＥＣＥＩＶＥ（画像データ受信）などの機能を有する。ＭＦＰ１は、ネットワーク２を介して配信サーバ３と接続されている。
【００１４】
ネットワーク２は、例えば、イーサネット（登録商標）等から構成されている。配信サーバ３は、少なくとも１機種以上の画像処理装置の更新ファームウェアを保持している。配信サーバ３は、更新ファームウェアが登録されると、更新対象となる装置を検索し、該当する装置へ更新ファームウェアを送信する。
【００１５】
ＭＦＰ１は、配信サーバ３から送信された更新ファームウェアを受信し、自身のファームウェアを更新する。なお、ＭＦＰ１と配信サーバ３とは、ＨＴＴＰ（Hypertext Transfer Protocol）／ＳＯＡＰ（Simple Object Access Protocol）といった公知のネットワーク通信プロトコルを用いて通信を行うため、通信手順等の詳細説明は割愛する。
【００１６】
＜画像形成装置のハードウェア構成＞
以下、図２を用いて、本発明の実施例に係る画像形成装置のハードウェア構成について説明する。
【００１７】
図２は、ＭＦＰ１のハードウェア構成の一例を示すブロック図である。
図２において、１００はメインコントローラ（Controller MainUnit）であり、ＭＦＰ１の情報処理部を司る。１０１はサブコントローラ（Controller SubUnit）であり、ＭＦＰ１の画像処理部を司る。メインコントローラ１００とサブコントローラ１０１とは、バスブリッジ（ＢｕｓＢｒｉｄｇｅ）１１６を介してバス間で接続されている。
【００１８】
まず、メインコントローラ１００の構成要素を説明する。
メインコントローラ１００において、ＣＰＵ１（１０８）は、システムバス１１５に接続される各デバイスを総括的に制御する。ＣＰＵ１（１０８）は、フラッシュＲＯＭ（ＦＬＡＳＨ ＲＯＭ）１１０、或いはハードディスク（ＨＤＤ）１１１に記憶された制御プログラム（ファームウェア）を実行する。
【００１９】
フラッシュＲＯＭ１１０、或いはＨＤＤ１１１は、プログラムのみでなく、画像データや各機能の動作仕様に係る機器設定、各種履歴データの記憶領域としても使われる。ＲＡＭ１（１０９）は、ＣＰＵ１（１０８）の主メモリ、ワークエリア等として機能する。
【００２０】
操作部Ｉ／Ｆ１１２は、ＬＣＤパネル１０４に各機能に係る操作画面や装置状態画面などを描画する。また、操作部Ｉ／Ｆ１１２には、操作ボタン及び／或いはタッチパネル１０３も接続されている。操作ボタン及び／或いはタッチパネル１０３は、ＬＣＤパネル１０４と一体になっており、オペレータの指示入力を制御する。
【００２１】
ネットワークインタフェース部（Ｎｅｔｗｏｒｋ Ｉ／Ｆ）１１３は、他のネットワーク機器や図１記載の配信サーバ３とＬＡＮ１０２を介して双方向にデータをやりとりする。
【００２２】
外部シリアルインタフェース（外部シリアルＩ／Ｆ）１１４は、例えばＵＳＢであり、メモリメディアリーダ、或いはＩＣカードリーダなどの外部装置を接続し、双方向にデータをやりとりする。  次に、サブコントローラ１０１の構成要素を説明する。
【００２３】
プリンタ１０６は、例えば電子写真方式あるいはインクジェット方式などで実現される印刷メディアへの印字部である。スキャナ１０５は、原稿メディアに印字された画像を読み込むための画像読み取り部である。多くの場合、スキャナ１０５には、オプションとしてオートドキュメントフィーダ（不図示）が装着されており、複数枚の原稿を自動的に読み込むことができる。プリンタ１０６及びスキャナ１０５は、デバイスインタフェース（デバイスＩ／Ｆ）１２０を通して制御信号をＣＰＵ２（１１７）との間で授受する。
【００２４】
ＣＰＵ２（１１７）は、システムバス１２７に接続される各デバイスを総括的に制御する。スキャナ１０５から入力される画像は、スキャナ画像処理部１２１を介してＲＡＭ２（１１８）に読み取り画像として入力される。
【００２５】
メモリ画像処理部（ＩＭＡＧＥＣ）１２３は、ＲＡＭ２（１１８）上の読み取り画像に所定の画像処理を施してＲＡＭ２（１１８）に出力する。このメモリ画像処理部１２３による画像処理には、回転・変倍・色空間変換・グレースケール変換・合成・符号化・復号化などの処理が含まれる。
【００２６】
ＣＰＵ２（１１７）は、ＲＡＭ２（１１８）上の画像を、メモリ画像処理部１２３で画像処理後に、バスブリッジ１１６を介して、メインコントローラ１００上の記憶装置（フラッシュＲＯＭ１１０やＨＤＤ１１１）に保存する。
【００２７】
また、ＣＰＵ２（１１７）は、バスブリッジ１１６を介して、メインコントローラ１００上の記憶装置（フラッシュＲＯＭ１１０やＨＤＤ１１１）に保存されている画像をＲＡＭ２（１１８）に読み出し、プリンタ画像処理部１２２を経由してプリンタ１０６に出力する。なお、スキャナ画像処理部１２１及びプリンタ画像処理部１２２で行う画像処理には、色空間変換、移動、色調整、濃度制御、遅延量制御が含まれる。
【００２８】
ラスターイメージプロセッサ（ＲＩＰ）１１９は、ＲＡＭ２（１１８）上のＰＤＬコードをビットマップイメージに展開し、ＲＡＭ２（１１８）に出力する。ＳＲＡＭ１２４は、ＣＰＵ２（１１７）との間で不揮発データを高速に入出力する。ＭＯＤＥＭ１２５は、公衆回線１０７に接続し、ファクス画像入出力に伴う変復調を行う。
【００２９】
なお、ＣＰＵ１（１０８）及びＣＰＵ２（１１７）により実行される制御プログラム（ファームウェア）は、少なくとも２つ以上のモジュールから構成され、ファームウェアの更新は、それぞれのモジュールごとに行うことが可能である。
【００３０】
＜画像形成装置のソフトウェア構成＞
以下、図３を用いて、本実施例に係る画像形成装置のソフトウェア構成について説明する。
【００３１】
図３は、ＭＦＰ１のソフトウェア構成の一例を示すソフトブロック図である。なお、ＭＦＰ１のファームウェアは図３に記載した以外のソフトブロックも含むが、本発明の構成と直接関係しないものに関しては図示していない。
【００３２】
図３において、ネットワーク制御モジュール３０１は、ネットワーク通信を実現するモジュールである。ネットワーク制御モジュール３０１は、ネットワークインタフェース１１３を制御すると共に、各種通信プロトコルに応じたソフト的な通信制御によりデータの入出力を行う。本実施例においては、ネットワーク制御モジュール３０１は、配信サーバ３との通信制御を司り、更新ファームウェアの受信処理を行う。
【００３３】
アップデート制御モジュール３０２は、前記更新ファームウェアを用いてフラッシュＲＯＭ１１０或いはＨＤＤ１１１に記憶されたＭＦＰ１のファームウェアの更新（アップデート）処理を制御するモジュールである。
【００３４】
機器設定エクスポートモジュール３０３は、アップデート制御モジュール３０２の指示により、ファームウェア更新前、及びファームウェア更新後の各種設定値全てを読み出し、ＸＭＬ（eXtensible Markup Language）形式への変換を行う。
【００３５】
機器設定差分抽出モジュール３０４は、アップデート制御モジュール３０２の指示により、上述の機器設定エクスポートモジュール３０３によって取得した情報（ファームウェア更新前後の機器設定値（ＸＭＬ形式））を基にファームウェア更新前後の機器設定値の差分抽出を行う。
【００３６】
機器設定管理モジュール３０５は、ＭＦＰ１における各種設定値の登録／読み出し処理を司るモジュールであり、各種設定値へのアクセスはこのモジュールを介して行われるように構成されている。
【００３７】
ファームウェア更新履歴管理モジュール３０６は、ＭＦＰ１のファームウェアの更新履歴の登録／読み出し処理を司るモジュールであり、ファームウェア更新履歴へのアクセスはこのモジュールを介して行われるように構成されている。
【００３８】
なお、ＭＦＰ１における各種機器設定値、及びファームウェア更新履歴は、機器設定ＤＢ（データベース）３０８、及びファームウェア更新履歴ＤＢ３０９として、図２に示したフラッシュＲＯＭ１１０或いはＨＤＤ１１１に保存されている。なお、機器設定ＤＢ３０８、及びファームウェア更新履歴ＤＢ３０９は、ＤＢＭＳ（Database Management System）モジュール３０７により管理されている。
【００３９】
ＵＩ制御モジュール３１０は、ユーザインタフェースを司るものであり、オペレータがＭＦＰ１の各種操作や設定を行う際に機器との仲介を行うモジュールである。ＵＩ制御モジュール３１０は、オペレータが操作ボタン、或いはタッチパネル１０３から行う操作に従い、関連するモジュールに入力情報を転送し、処理の依頼、或いはデータの設定等を行う。
【００４０】
以上、図３に示したソフトウェアモジュールは、ＭＦＰ１のメインコントローラ１００のフラッシュＲＯＭ１１０或いはＨＤＤ１１１に格納された制御プログラムをＣＰＵ１（１０８）が実行することにより実現される機能に対応する。
【００４１】
次に、図４〜図９を用いて、本実施例に係る画像形成装置のファームウェア更新に伴う一連の処理について説明する。
図４は、本実施例に係る画像形成装置のファームウェア更新に伴う一連の処理の一例を示すフローチャートである。図４記載の各ステップの処理は、ＭＦＰ１のメインコントローラ１００のフラッシュＲＯＭ１１０、或いはＨＤＤ１１１に格納された制御プログラムに従ってＣＰＵ１（１０８）により実行される。なお、後述する図５及び図１０記載の各ステップの処理も同様に、ＭＦＰ１のメインコントローラ１００のフラッシュＲＯＭ１１０、或いはＨＤＤ１１１に格納された制御プログラムに従ってＣＰＵ１（１０８）により実行されるものとする。
【００４２】
配信サーバ３から送信された更新ファームウェアを受信すると、ＣＰＵ１（１０８）は、ＭＦＰ１への新たなジョブの受け付けを中止し（Ｓ４０１）、Ｓ４０２に処理を進める。
【００４３】
Ｓ４０２では、ＣＰＵ１（１０８）は、現在実行中のジョブが存在するか否かを判定し（Ｓ４０２）、現在実行中のジョブが存在すると判定した場合（Ｓ４０２でＮｏ）、現在実行中のジョブが終了するのを待つ。
【００４４】
そして、実行中のジョブが無いと判定した場合（Ｓ４０２でＹｅｓ）、ＣＰＵ１（１０８）は、Ｓ４０３に処理を進める。
Ｓ４０３では、ＣＰＵ１（１０８）は、ＭＦＰ１をファームウェア更新が可能な動作モード（メンテナンスモード）に切り替えるために、システム全体の再起動を実行し、アップデート制御モジュール３０２を起動する。これにより、ＭＦＰ１がメンテナンスモードに移行する。
【００４５】
次に、Ｓ４０４において、ＣＰＵ１（１０８）は、ファームウェア更新前（直前）の装置状態における機器設定情報を全て読み出し（取得し）、フラッシュＲＯＭ１１０或いはＨＤＤ１１１に、ＸＭＬ形式（一例を図６（ｂ）に示す）で保存する（第１の取得処理）。なお、ＭＦＰ１の機器設定項目は、大項目・中項目・小項目と親子関係をもったツリー構造を構成しているものとする。また、設定値としては、両面印刷のON/OFFなどの印刷処理のデフォルトの設定を示す設定値、ＭＦＰ１の各種動作仕様に係る設定値などが例として考えられる。
【００４６】
図６（ａ）は、ファームウェア更新前の状態におけるＭＦＰ１の機器設定の一例を示す図である。
また、図６（ｂ）は、図６（ａ）で示したファームウェア更新前の状態におけるＭＦＰ１の機器設定のリストをＸＭＬ形式にした例を示す。なお、以降の説明では、このファームウェア更新前の設定値リストを第１の設定値リスト（第１の設定情報）として参照することにする。
【００４７】
以下、図４の説明に戻る。
次に、Ｓ４０５において、ＣＰＵ１（１０８）は、ＭＦＰ１のファームウェアの更新処理を実行する。そして、ファームウェアの更新処理が完了すると、ＣＰＵ１（１０８）は、更新処理が正常終了したか否かの判定を行う（Ｓ４０６）。
【００４８】
そして、前記Ｓ４０６において、ファームウェアの更新処理が正常終了しなかったと判定した場合（Ｎｏ）、ＣＰＵ１（１０８）は、Ｓ４１３に処理を進める。
Ｓ４１３では、ＣＰＵ１（１０８）は、更新失敗としてファームウェア更新履歴を作成し、Ｓ４１４において、ＬＣＤ１０４にサービスコールエラーを表示して、ファームウェア更新に伴う一連の処理を終了する。
【００４９】
一方、Ｓ４０６において、ファームウェアの更新処理が正常終了したと判定した場合（Ｙｅｓ）、ＣＰＵ１（１０８）は、Ｓ４０７に処理を進める。
Ｓ４０７では、ＣＰＵ１（１０８）は、更新後のファームウェアに合わせて機器設定ＤＢ３０８の再構築を行う。さらに、Ｓ４０８において、ＣＰＵ１（１０８）は、ファームウェア更新後（直後）の装置状態におけるＭＦＰ１の機器設定を全て読み出し（取得し）、フラッシュＲＯＭ１１０或いはＨＤＤ１１１にＸＭＬ形式（一例を図７（ｂ）に示す）で保存する（第２の取得処理）。
【００５０】
図７（ａ）は、ファームウェア更新後の状態におけるＭＦＰ１の機器設定の一例を示す図である。
また、図７（ｂ）は、図７（ａ）で示したファームウェア更新後の状態におけるＭＦＰ１の機器設定のリストをＸＭＬ形式にした例を示す。なお、以降の説明では、このファームウェア更新後の設定値リストを第２の設定値リスト（第２の設定情報）として参照することにする。
【００５１】
以下、図４の説明に戻る。
次に、Ｓ４０９において、ＣＰＵ１（１０８）は、上述の第１の設定値リスト及び第２の設定値リストをもとにして、ファームウェア更新前後におけるＭＦＰ１の機器設定の差分（ファームウェアの更新処理によって発生したＭＦＰ１に設定された設定値の変更に関する情報）を抽出して、ＸＭＬ形式（一例を図８に示す）でフラッシュＲＯＭ１１０或いはＨＤＤ１１１にファイル保存する（抽出処理）。なお、ここでの差分情報には、ファームウェア更新により追加または削除された機器設定、およびファームウェア更新により設定値が変更された機器設定が含まれる。また、それぞれの設定項目に対応した設定画面をＬＣＤパネル１０４に表示させるための識別子（画面ＩＤ、ボタンＩＤ）の情報も設定項目毎に保存される。なお、機器設定の差分抽出方法については後述する図５で詳細に説明する。
【００５２】
図８は、ファームウェア更新前後における機器設定の差分情報（ＸＭＬ形式）の例を示す図である。
図８において、タグ「add_settings」で囲われた情報は、ファームウェア更新により追加された機器設定を示す。また、タグ「del_settings」で囲われた情報は、ファームウェア更新により削除された機器設定を示す。また、タグ「changed_settings」で囲われた情報は、ファームウェア更新により設定値が変更された機器設定を示すものとする。
【００５３】
また、タグ「prev_value」はファームウェア更新前の設定値を示し、タグ「crnt_value」はファームウェア更新後の設定値を示す。また、タグ「disp_id」及び「button_id」は、ファームウェア更新後のＭＦＰ１において該設定項目の設定登録画面を表示させるための識別子（画面ＩＤ、ボタンＩＤ）を示すものとする。
【００５４】
以下、図４の説明に戻る。
次に、Ｓ４１０において、ＣＰＵ１（１０８）は、更新成功としてファームウェア更新履歴を作成しファームウェア更新履歴ＤＢ３０９へ保存する。
図９は、ファームウェア更新履歴のデータ要素の一例を示す図である。
図９に示すように、ファームウェア更新履歴には、履歴識別番号（履歴ＩＤ）９０１、更新日時９０２、更新前のファームウェアバージョン９０３、更新後のファームウェアバージョン９０４、更新結果９０５、更新に伴う機器設定差分情報ファイル名（更新が正常終了した場合のみ）９０６などが含まれている。ここで、機器設定差分情報ファイル名９０６は、上述のＳ４０９で抽出保存した機器設定差分情報ファイルを指す。
【００５５】
ここで作成したファームウェア更新履歴は、ユーザが操作ボタン或いはタッチパネル１０３を操作することで、ＬＣＤ１０４上で参照することが可能になっている。ファームウェア更新履歴の参照方法については後で詳細を説明する。
【００５６】
以下、図４の説明に戻る。
次に、Ｓ４１１において、ＣＰＵ１（１０８）は、上述のＳ４０４及びＳ４０８で作成した第１の設定値リスト及び第２の設定値リストを消去する。
次に、Ｓ４１２において、ＣＰＵ１（１０８）は、ＭＦＰ１を通常の動作モードに切り替えるために、通常モードでシステム全体の再起動を実行して、ファームウェア更新に伴う一連の処理を終了する。
【００５７】
図５は、図４のＳ４０９で説明したファームウェア更新前後における機器設定差分抽出処理を説明するフローチャートである。
先ず、ＣＰＵ１（１０８）は、Ｓ５０１において、第１の機器設定抽出処理を実行し、ファームウェア更新により追加された機器設定を抽出する。具体的には、ＣＰＵ１（１０８）は、ファームウェア更新前の機器設定状態を示す第１の設定値リスト（例えば、図６（ａ））とファームウェア更新後の機器設定状態を示す第２の設定値リスト（例えば、図７（ａ））を比較し、第２の設定値リストのみに含まれる機器設定を抽出する（追加分抽出処理）。例えば、図８のタグ「add_settings」で囲われた部分の情報を抽出する。
【００５８】
次に、ＣＰＵ１（１０８）は、Ｓ５０２において、第２の機器設定抽出処理を実行し、ファームウェア更新により削除された機器設定を抽出する。具体的には、ＣＰＵ１（１０８）は、前記Ｓ５０１と同様に、第１の設定値リストと第２の設定値リストを比較し、第１の設定値リストのみに含まれる機器設定を抽出する（削除分抽出処理）。例えば、図８のタグ「del_settings」で囲われた部分の情報を抽出する。
【００５９】
次に、ＣＰＵ１（１０８）は、Ｓ５０３において、第３の機器設定抽出処理を実行し、ファームウェア更新により設定値が変更された機器設定を抽出する。具体的には、ＣＰＵ１（１０８）は、上述のＳ５０１、Ｓ５０２と同様に、第１の設定値リストと第２の設定値リストを比較し、双方のリストに含まれ、且つ、設定値が異なる機器設定を抽出する（設定変更分抽出処理）。例えば、図８のタグ「changed_settings」で囲われた部分の情報を抽出する。
【００６０】
以上、ここまでに説明した処理により、ＭＦＰ１のファームウェア更新に伴う機器設定の差分抽出、及び、抽出した機器設定差分情報のファームウェア更新履歴への紐付けが可能となる。
【００６１】
次に、図１０〜図１３を用いて、本実施例に係る画像形成装置におけるファームウェア更新に伴う機器設定差分情報の参照手順について説明する。
図１０は、本実施例に係る画像形成装置におけるファームウェア更新に伴う機器設定差分情報の参照手順の一例を示すフローチャートである。
ＭＦＰ１の操作ボタン、或いはタッチパネル１０３を介してオペレータによるファームウェア更新履歴の表示指示があった場合、ＣＰＵ１（１０８）は、本フローチャートの処理を開始する。
【００６２】
Ｓ１００１において、ＣＰＵ１（１０８）は、ファームウェア更新履歴ＤＢ３０９に保存されているファームウェア更新履歴（図９）を読み出して、図１１（ａ）のように、ファームウェア更新履歴一覧をＬＣＤ１０４に表示する（Ｓ１００１）。
【００６３】
図１１（ａ）は、ＭＦＰ１におけるファームウェア更新履歴画面の一例を示す図である。ＣＰＵ１（１０８）は、このファームウェア更新履歴画面からユーザからの指示を受け付けるように制御する。
【００６４】
図１１（ａ）に示すように、表示エリア１１０１には、これまでにＭＦＰ１に対して実施したファームウェアの更新に対する履歴の一覧が表示されている。
ここで、オペレータが任意の履歴を選択し、設定差分情報ボタン１１０２を押下して設定差分情報の表示を指示すると、ＣＰＵ１（１０８）は、この設定差分情報表示指示を検知し（Ｓ１００２）、Ｓ１００３に処理を進める。
【００６５】
Ｓ１００３では、ＣＰＵ１（１０８）は、前記Ｓ１００２で選択された特定の履歴に紐付いた機器設定差分情報（図９の９０６により紐付いた設定値差分情報ファイル）を読み出し、図１１（ｂ）のように、設定差分情報をＬＣＤ１０４に表示する（Ｓ１００４）。
【００６６】
図１１（ｂ）は、ＭＦＰ１における設定差分情報画面の一例を示す図である。ＣＰＵ１（１０８）は、この設定差分情報画面からユーザからの指示を受け付けるように制御する。
【００６７】
図１１（ｂ）において、１１０３は表示する差分分類を切り替えるタブであり、ファームウェア更新により追加された機器設定、削除された機器設定、および設定値が変更された機器設定のいずれかを選択して表示させることができる。即ち、図１１（ｂ）は、ＭＦＰ１の設定項目を、ファームウェアの更新によって追加された設定項目、ファームウェアの更新によって削除された設定項目、ファームウェアの更新によって設定値が変更された設定項目のいずれであるかを区別可能に表示する。この図１１（ｂ）の表示により、図１１（ａ）で選択した更新履歴に対応するファームウェアの更新により差分が生じたＭＦＰ１の設定項目（追加された設定項目、削除された設定項目、設定値が変更された設定項目）が確認可能となる。
ユーザが何らかの設定値の変更に気付いたとしても、ＭＦＰ１の仕様に詳しくないユーザであればどのように設定値を変更すればいいのかわからない場合がある。このとき、例えば一週間前はＭＦＰ１がユーザの意図通りに動作していたことがわかっていれば、一週間前、もしくはその前後のファームウェアの更新履歴を確認することで、ユーザの意図通りに動作していた頃の設定値を確認することができる。
【００６８】
表示エリア１１０４には、タブ１１０３で選択された差分分類に該当する機器設定の一覧が表示される。図１１（ｂ）では例として、ファームウェア更新により「追加された機器設定」の一覧を表示している。
【００６９】
ここで、オペレータが表示エリア１１０４から任意の機器設定を選択し、設定差分詳細情報ボタン１１０５を押下して設定差分詳細情報の表示を指示すると、ＣＰＵ１（１０８）は、この設定差分詳細情報表示指示を検知し（Ｓ１００５）、Ｓ１００６に処理を進める。
【００７０】
Ｓ１００６では、ＣＰＵ１（１０８）は、前記Ｓ１００５で選択された機器設定差分情報からファームウェア更新前後の設定値を読み込み、図１１（ｃ）のように、該機器設定に関する設定差分詳細情報画面を、ＬＣＤ１０４に表示する（Ｓ１００７）。
【００７１】
図１１（ｃ）は、ＭＦＰ１における設定差分詳細情報画面の一例を示す図である。ＣＰＵ１（１０８）は、この設定差分詳細情報画面からユーザからの指示を受け付けるように制御する。
【００７２】
図１１（ｃ）において、表示エリア１１０６には、ファームウェア更新前、および更新後それぞれの状態における該機器設定の設定値が表示される。この図１１（ｃ）の表示により、図１１（ａ）で選択した更新履歴に対応するファームウェアの更新により差分が生じたＭＦＰ１の設定項目のうち、図１１（ｂ）で選択した設定項目の設定値が確認可能となる。
図１１（ｃ）では例として、ファームウェア更新により追加された機器設定に関する詳細情報を表示している。また、図１１（ｃ）において、設定値確認ボタン１１０７は、該機器設定に対する設定登録画面へのショートカットボタンとなっている。
【００７３】
ここで、オペレータが設定値確認ボタン１１０７を押下して設定値の確認を指示すると、ＣＰＵ１（１０８）は、この設定値確認指示を検知し（Ｓ１００８）、Ｓ１００９に処理を進める。
【００７４】
Ｓ１００９では、ＣＰＵ１（１０８）は、図１１（ｃ）の設定差分詳細情報画面で表示されている機器設定（即ち、前記１００５で選択された機器設定）に対する設定登録画面の識別情報を用いて、図１３（ａ）のように、設定登録画面を表示する（Ｓ１００９）。ここで、オペレータは、現在設定されている設定値の確認、および設定の変更を行うことが可能である。
【００７５】
図１３（ａ）は、ＭＦＰ１における設定値確認変更画面の一例を示す図である。ＣＰＵ１（１０８）は、この設定値確認変更画面からユーザからの指示を受け付けるように制御する。
図１３（ａ）において、表示エリア１１０８には、該機器設定の設定値を設定するためのコントロールが表示される。図１３（ａ）では例として、「ＰｒｉｎｔＳｅｔｔｉｎｇＢ」の設定値を選択するためのラジオボタンが表示されている。
ここで、オペレータが表示エリア１１０８で設置値を選択してＯＫボタン１１０９を押下して設定値の適用を指示すると、ＣＰＵ１（１０８）は、この設定値適用指示を検知し、該機器設定の設定値を変更する。
また、オペレータがキャンセルボタン１１１０を押下すると、ＣＰＵ１（１０８）は、該機器設定の設定値を変更することなく、設定値確認変更画面を終了する。
【００７６】
図１２（ａ）は、ＭＦＰ１における設定差分情報画面の他の例を示す図である。図１２（ａ）は、上述の図１１（ｂ）に示す設定差分情報画面において、タブ１１０３で「設定値が変更された機器設定」が選択され、ファームウェア更新により「設定値が変更された機器設定」の表示指示があった場合の画面表示の例に対応する。なお、図１１（ｂ）と同一のものには同一の符号を付してある。
【００７７】
また、図１２（ｂ）は、ＭＦＰ１における設定差分詳細情報画面の他の例を示す図である。図１２（ｂ）は、図１２（ａ）の表示画面において、設定差分詳細情報ボタン１１０５が押下された場合に表示される設定差分詳細情報画面の例に対応する。なお、図１１（ｃ）と同一のものには同一の符号を付してある。
この場合も、設定値確認ボタン１１０７を押下することで、該機器設定に対する設定登録画面（図１３（ｂ））が表示され、現在設定されている設定値の確認、および設定の変更を行うことが可能である。
【００７８】
図１３（ｂ）は、ＭＦＰ１における設定値確認変更画面の他の例を示す図である。図１３（ｂ）は、図１２（ｂ）の表示画面において、設定値確認ボタン１１０７が押下された場合に表示される設定値確認変更画面の例に対応する。なお、図１３（ａ）と同一のものには同一の符号を付してある。
この場合、オペレータが表示エリア１１０８で、「Ｃｏｐｙ Ｓｅｔｔｉｎｇ Ａ」の設置値を選択して、ＯＫボタン１１０９を押下して設定値の適用を指示すると、ＣＰＵ１（１０８）は、この設定値適用指示を検知し、「Ｃｏｐｙ Ｓｅｔｔｉｎｇ Ａ」の設定値を変更する。
【００７９】
以上詳細に説明したように、本実施例によれば、画像形成装置は、ファームウェアの更新に伴い更新前後の画像形成装置の機器設定に差分が生じた場合であっても、自動で（ユーザの意図的な操作なしに）差分を抽出して、ファームウェア更新履歴に紐付けて保存することができる。このため、ユーザは、操作部よりファームウェアの更新履歴を起点として、該更新に係る機器設定の差分の詳細情報を確認することが可能となる。
【００８０】
さらに、詳細情報の確認画面に設けられる、差分が生じた機器設定それぞれの設定登録画面の識別情報を用いて（タッチして）、該機器設定に対応する設定登録画面を操作部に表示させることが可能である。このため、ユーザはその機器設定の設定登録画面を、わざわざ機器設定項目のトップ画面から大項目・中項目・小項目と親子関係たどって開いて、その機器設定を確認するといった煩雑な操作を行う必要がなく、短い手順で（例えば、図１１（ｃ）の１００７をタッチするだけで）設定値確認変更画面を表示でき、現在設定されている設定値の確認、および設定の変更を容易に行うことができる。
従って、ファームウェアの更新に伴って画像形成装置の機器設定に生じた差分の確認や設定値の変更についての操作性を大幅に向上することができる。
【００８１】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、上記各実施例を組み合わせた構成も全て本発明に含まれるものである。
【００８２】
（他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【００８３】
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。
本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施例の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【００８４】
１０８    ＣＰＵ１
１０９    ＲＡＭ１
１１０    フラッシュＲＯＭ
１１１    ＨＤＤ
３０１    ネットワーク制御モジュール
３０２    アップデート制御モジュール
３０３    機器設定エクスポートモジュール
３０４    機器設定差分抽出モジュール
３０５    機器設定管理モジュール
３０６    ファームウェア更新履歴管理モジュール
３０７    ＤＢＭＳモジュール
３０８    機器設定ＤＢ
３０９    ファームウェア更新履歴ＤＢ
３１０    ＵＩ制御モジュール
【図１】
0005843637.tif 000002
【図２】
0005843637.tif 000003
【図３】
0005843637.tif 000004
【図４】
0005843637.tif 000005
【図５】
0005843637.tif 000006
【図６】
0005843637.tif 000007
【図７】
0005843637.tif 000008
【図８】
0005843637.tif 000009
【図９】
0005843637.tif 000010
【図１０】
0005843637.tif 000011
【図１１】
0005843637.tif 000012
【図１２】
0005843637.tif 000013
【図１３】
0005843637.tif 000014