(57)【要約】【課題】ネットワークデバイスのデータを管理する管理サーバと同期し、ネットワークデバイス側のファームアップに伴うデータベースの再構築を安全に管理サーバに反映できるネットワークデバイスを提供する。【解決手段】このネットワークデバイスは、複数のネットワークデバイスのマスターデータを管理する管理サーバと通信するネットワークデバイスであって、当該ネットワークデバイスにおけるファームウェアのアップデートに従うマイグレーションの要否を検出する検出手段と、マイグレーションが必要な場合、管理サーバとの同期処理を中断する制御手段と、マイグレーションを実行する実行手段と、マイグレーションによる設定値を管理サーバに通知する通知手段と、通知された設定値を用いたマスターデータの再構築の完了の通知を受信する受信手段と、を有し、制御手段は、再構築の完了を示す通知を受信して、管理サーバとの設定値の同期処理を再開する。【選択図】図８
2015147349.tif 000002
【特許請求の範囲】
【請求項１】
複数のネットワークデバイスに設定すべき設定値のマスターデータを管理する管理サーバと通信するネットワークデバイスであって、
当該ネットワークデバイスにおけるファームウェアのアップデートに従う設定値のマイグレーションの要否を検出する検出手段と、
前記マイグレーションが必要であることが検出されたことに応じて、前記管理サーバとの設定値の同期処理を中断する制御手段と、
前記マイグレーションを実行する実行手段と、
前記マイグレーションによる設定値を前記管理サーバに対して通知する通知手段と、
前記通知手段により通知された設定値を用いた前記マスターデータの再構築の完了を示す通知を前記管理サーバから受信する受信手段と、
を有し、
前記制御手段は、前記再構築の完了を示す通知の受信に応じて、前記管理サーバとの設定値の同期処理を再開することを特徴とするネットワークデバイス。
【請求項２】
前記制御手段は、前記再構築が正常に完了しなかったことを示す通知を受信した場合、前記同期処理を再開しない
ことを特徴とする請求項１に記載のネットワークデバイス。
【請求項３】
前記通知手段は、前記マイグレーションにより変更された設定値の差分データを通知する
ことを特徴とする請求項１または２に記載のネットワークデバイス。
【請求項４】
前記制御手段は、前記マイグレーションすることによるデータ構造またはデータの項目数の変化に応じて前記同期処理を中断する
ことを特徴とする請求項１〜３のいずれか１項に記載のネットワークデバイス。
【請求項５】
前記制御手段は、前記マイグレーションすることにより前記データ構造が変更されると判定した場合、前記同期処理を中断し、前記データ構造が変更されないと判定した場合、前記同期処理を中断しないで、前記実行手段によりマイグレーションが実行される
ことを特徴とする請求項４に記載のネットワークデバイス。
【請求項６】
前記制御手段は、前記マイグレーションすることにより前記データの項目数が減少すると判定した場合、前記同期処理を中断し、前記データの項目数が増加すると判定した場合、前記同期処理を中断しないで、前記実行手段によりマイグレーションが実行される
ことを特徴とする請求項４に記載のネットワークデバイス。
【請求項７】
前記複数のネットワークデバイスは、複合機である
ことを特徴とする請求項１〜６のいずれか１項に記載のネットワークデバイス。
【請求項８】
複数のネットワークデバイスに設定すべき設定値のマスターデータを管理する管理サーバと通信するネットワークデバイスの制御方法であって、
当該ネットワークデバイスにおけるファームウェアのアップデートに従う設定値のマイグレーションの要否を検出する検出工程と、
前記マイグレーションが必要であることが検出されたことに応じて、前記管理サーバとの設定値の同期処理を中断する制御工程と、
前記マイグレーションを実行する実行工程と、
前記マイグレーションによる設定値を前記管理サーバに対して通知する通知工程と、
前記通知工程において通知された設定値を用いた前記マスターデータの再構築の完了を示す通知を前記管理サーバから受信する受信工程と、
を有し、
前記制御工程において、前記再構築の完了を示す通知の受信に応じて、前記管理サーバとの設定値の同期処理を再開することを特徴とするネットワークデバイスの制御方法。
【請求項９】
請求項１〜７のいずれか１項に記載の手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークデバイス、ネットワークデバイスの制御方法およびそのプログラムに関する。
【背景技術】
【０００２】
近年、複合機（ネットワークデバイス）等の情報処理装置の設定値に関して、そのマスターデータをネットワーク接続された管理サーバ等の他の情報処理装置に保存して一元管理することがある。それらの値は同期されており、管理サーバ上のマスターデータの値を変更すると、変更後の値が複合機に通知されて複合機内の設定値の値も変更される。同様に、複合機内の設定値の値を変更すると、管理サーバ上のマスターデータの設定値も変更される。また、設定値によっては、複数の複合機間で値を同期するものも存在し、設定値の値が変更されると、サーバ上のマスターデータ、および同期対象のすべての複合機内の設定値の値が変更される。
【０００３】
複合機が有する設定値は、複合機が提供する多くの機能性を支えるパラメータであるため、複合機の機種や搭載されるファームウェアのバージョンによって設定値ＤＢの内容が大きく異なることがある。このため、複合機のファームバージョンアップを行った際、設定値ＤＢの再構成を行う必要がある。特許文献１には、上記のような設定値のマスターデータをサーバで管理する構成において、同じくファームを配信するサーバを立てると共にファームバージョンによる設定差分をサーバ側で管理する技術が開示されている。そして、その構成下でファームを配信すると共に新ファームウェアに対応するマスターデータをサーバ側で再構成し、複合機側に同期させていくという方法が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−１３０９２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、複合機のファームバージョンアップは、配信されるだけではなく、サービスマン等によって複合機上のみで行われることも多い。特許文献１に示す配信サーバ前提の構成のみでは、サーバによるマスターデータ管理とファームバージョンアップを両立することが難しい。また、複合機側で先にＤＢを更新する処理を行うと、サーバ側がマスター、複合機側がスレーブという基本構成を取っているにも関わらず、先にスレーブ側のＤＢを更新し、これをマスター側に反映させる処理となる。このため、一旦、同期制御を中断し安全に更新できるようにすることが必要となる。
【０００６】
本発明は、上記課題を鑑みて、ネットワークデバイスのデータを管理する管理サーバと同期し、ネットワークデバイス側のファームアップに伴うデータベースの再構築を安全に管理サーバに反映できるネットワークデバイスを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明のネットワークデバイスは、複数のネットワークデバイスに設定すべき設定値のマスターデータを管理する管理サーバと通信するネットワークデバイスであって、当該ネットワークデバイスにおけるファームウェアのアップデートに従う設定値のマイグレーションの要否を検出する検出手段と、前記マイグレーションが必要であることが検出されたことに応じて、前記管理サーバとの設定値の同期処理を中断する制御手段と、前記マイグレーションを実行する実行手段と、前記マイグレーションによる設定値を前記管理サーバに対して通知する通知手段と、前記通知手段により通知された設定値を用いた前記マスターデータの再構築の完了を示す通知を前記管理サーバから受信する受信手段と、を有し、前記制御手段は、前記再構築の完了を示す通知の受信に応じて、前記管理サーバとの設定値の同期処理を再開することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、管理をサーバ側のマスターＤＢを使う構成であったとしても、複合機上でのファームバージョンアップに追従して容易かつ安全にサーバ上のマスターＤＢも新ファームバージョンに適応した再構成を行うことができる。
【図面の簡単な説明】
【０００９】
【図１】同期システムの全体を示すシステム構成図である。
【図２】管理サーバの構成を表すブロック図である。
【図３】複合機の構成を表すブロック図である。
【図４】管理サーバで管理されるマスターデータの構成を表すブロック図である。
【図５】マスターデータに含まれるデータベースの構成を表す図である。
【図６】複合機のＨＤＤに格納される設定値ＤＢの構成を表す図である。
【図７】管理サーバおよび複合機のソフトウェア構成を表す図である。
【図８】ファームアップデート後の設定値ＤＢのマイグレーションから同期の再開までのフローチャートである。
【図９】データマイグレーション時におけるＤＢの更新を示す図である。
【図１０】第２実施形態に係るファームアップデート後の設定値ＤＢのマイグレーションから同期の再開までのフローチャートである。
【図１１】第２実施形態に係る中断制御判断のテーブルの一例を示す図である。
【発明を実施するための形態】
【００１０】
以下、本発明を実施するための形態について図面などを参照して説明する。
【００１１】
（第１実施形態）
図１は、本実施形態に係る同期システム全体を示すシステム構成図である。ネットワーク１００には、管理サーバ１１０、複合機１２０ａおよび１２０ｂが接続されている。管理サーバ１１０は、複合機１２０ａや複合機１２０ｂの設定値のマスターデータを管理している。マスターデータに変更があった場合は、複合機１２０ａ、複合機１２０ｂにネットワーク１００を介して変更情報を通知する。また、複合機１２０ａ、複合機１２０ｂから設定値の変更情報を受信した際には、自身のマスターデータの値を変更する。
【００１２】
複合機１２０は、複数種類の機能（コピー、ＦＡＸ等）を実現する機器（ネットワークデバイス）であり、内部にそれらの機能の実行時に利用する設定値を記憶している。この設定値に変更があった場合は、管理サーバ１１０にネットワーク１００を介して変更情報を通知する。また、管理サーバ１１０から設定値のマスターデータの変更情報を受信した際には、自身の設定値の値を変更する。なお、設定値によっては、複合機１２０ａと複合機１２０ｂ間のような複数の複合機間で値の同期を行ってもよい。
【００１３】
管理サーバ１１０上のマスターデータに設定値の変更があった場合、複合機１２０ａおよび複合機１２０ｂの両方に設定値の変更情報が通知される。また、複合機１２０ａまたは複合機１２０ｂどちらかの設定値に変更があった場合、初めに、管理サーバ１１０に変更情報が通知され、その後、管理サーバ１１０からネットワーク１００を介して他方の複合機にも変更情報が通知される。管理サーバ１１０、複合機１２０についての詳細な説明については後述する。
【００１４】
図２は、本実施形態に係る管理サーバ１１０の構成を表すブロック図である。管理サーバ１１０は、コントローラユニット２００、操作部２２０、表示部２３０を備える。コントローラユニット２００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０３を有する。ＣＰＵ２０３は、システム全体を制御するプロセッサであり、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０６に格納されているブートプログラムによりＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）を起動する。
【００１５】
ＣＰＵ２０３は、このＯＳ上で、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）２０５に格納されているアプリケーションプログラムを実行し、各種処理を実行する。このＣＰＵ２０３の作業領域としてはＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０４が用いられる。ＨＤＤ２０５は、上記アプリケーションプログラムと複合機１２０ａ、１２０ｂの設定値のマスターデータ等を格納する。マスターデータの管理方法に関する詳細については後述する。
【００１６】
ＣＰＵ２０３には、システムバス２１０を介して、ＲＯＭ２０６およびＲＡＭ２０４とともに、操作部Ｉ／Ｆ２０１、表示部Ｉ／Ｆ２０２、Ｎｅｔｗｏｒｋ２０７が接続される。操作部Ｉ／Ｆ２０１は、マウス、キーボード等から構成される操作部２２０とのインタフェースであり、操作部２２０によってユーザにより入力された情報をＣＰＵ２０３に送信する。表示部Ｉ／Ｆ２０２は、ディスプレイ等から成る表示部２３０に表示すべき画像データを表示部２３０に対して出力する。また、Ｎｅｔｗｏｒｋ２０７は、ネットワーク１００に接続され、ネットワーク１００を介してネットワーク１００上の各装置との間で情報の入出力を行う。
【００１７】
図３は、本実施形態に係る複合機１２０の構成を表すブロック図である。複合機１２０は、コントローラユニット３００、操作部３２０、スキャナ３３０、プリンタ３４０を含んでいる。コントローラユニット３００には、操作部３２０が接続されるとともに、画像入力デバイスであるスキャナ３３０や画像出力デバイスであるプリンタ３４０が接続される。
【００１８】
コントローラユニット３００は、ＣＰＵ３０２を有し、ＣＰＵ３０２は、ＲＯＭ３０６に格納されているブートプログラムによりＯＳを起動する。ＣＰＵ３０２は、このＯＳ上で、ＨＤＤ３０５に格納されているアプリケーションプログラムを実行し、各種処理を実行する。このＣＰＵ３０２の作業領域として、ＲＡＭ３０３が用いられる。また、ＲＡＭ３０３は、作業領域を提供するとともに、画像データを一時記憶するための画像メモリ領域を提供する。ＨＤＤ３０５は、上記アプリケーションプログラムや画像データ、各種設定値を格納する。複合機１２０における設定値の管理方法については後述する。
【００１９】
ＣＰＵ３０２には、システムバス３１０を介して、ＲＯＭ３０６およびＲＡＭ３０３とともに、操作部Ｉ／Ｆ３０１、デバイスＩ／Ｆ３０４、Ｎｅｔｗｏｒｋ３０７、画像処理部３０８が接続される。操作部Ｉ／Ｆ３０１は、タッチパネルを有する操作部３２０とのインタフェースであり、操作部３２０に表示すべき画像データを操作部３２０に対して出力する。また、操作部Ｉ／Ｆ３０１は、操作部３２０によってユーザにより入力された情報をＣＰＵ３０２に送出する。
【００２０】
デバイスＩ／Ｆ３０４には、スキャナ３３０およびプリンタ３４０が接続され、デバイスＩ／Ｆ３０４は、画像データの同期系／非同期系の変換を行う。Ｎｅｔｗｏｒｋ３０７は、ネットワーク１００に接続され、ネットワーク１００を介してネットワーク１００上の各装置との間で情報の入出力を行う。画像処理部３０８では、スキャナからの入力画像処理やプリンタへの出力画像処理、画像回転、画像圧縮、解像度変換、色空間変換、階調変換などの処理を行う。
【００２１】
図４は、本実施形態に係る管理サーバ１１０で管理されるマスターデータの構成を表すブロック図である。マスターデータ４０１は、設定値情報ＤＢ４１０と、共通設定値ＤＢ４１１と、デバイス管理ＤＢ４１２と、個別設定値ＤＢ４１３と、構成情報管理ＤＢ４１４から構成される。
【００２２】
図５（Ａ）は、設定値情報ＤＢ４１０に格納されるデータを示す図である。設定値情報ＤＢ４１０は、管理サーバ１１０で管理する各設定値に関するメタデータを格納するデータベースである。設定値情報ＤＢ４１０には、ユーザに提示する際の文言、複合機１２０と通信を行う際に設定値を識別するためのキー識別子、初期値、値域、適応機種／バージョン、設定値の表示条件が格納される。
【００２３】
設定値情報ＤＢ４１０で管理する各設定値は、複合機１２０の機種やファームウェアのバージョンに依存して、設定値が存在するかどうかなど、設定値の値域や初期値が異なる場合がある。図５（Ａ）では、キー識別子が“ｓｅｔｔｉｎｇｓ．ｐａｔｔｅｒｎ”で表される設定値は、機種Ａ、機種Ｂでは全ての個体に存在しているが、機種Ｃでは、ファームウェアのバージョンが３．０１以降の個体にのみ存在していることを表している。また、キー識別子が“ｓｅｔｔｉｎｇｓ．ｄｅｎｓｉｔｙ”で表される設定値は、機種Ｂではインストールされているファームウェアのバージョンにより設定値の値域や初期値が異なることを表している。
【００２４】
図５（Ｂ）は、共通設定値ＤＢ４１１に格納されるデータを示す図である。共通設定値ＤＢ４１１は、管理サーバ１１０によって設定値を管理する複数の複合機１０２の全てで共通に使用される設定値の値を管理するデータベースである。共通設定値ＤＢ４１１は、キー識別子と、識別子に対応する値が格納される。なお、本実施形態では、このキー識別子は、設定値情報ＤＢ４１０のキー識別子と同一の体系をもつ識別子である。
【００２５】
図５（Ｃ）は、個別設定値ＤＢ４１３に格納されるデータを表した図である。個別設定値ＤＢ４１３は、管理サーバ１１０によって設定値を管理する複数の複合機１０２の各々で値が異なる設定値を管理するデータベースである。なお、個別設定値ＤＢ４１３は、複合機の個体に対応して複数存在するものとする。個別設定値ＤＢ４１３は、キー識別子と、識別子に対応する値が格納される。このキー識別子は、設定値情報ＤＢ４１０のキー識別子と同一の体系をもつ識別子である。
【００２６】
図５（Ｄ）は、構成情報管理ＤＢ４１４で管理される複合機の個体毎のデバイス構成情報の内容を表した図である。構成情報管理ＤＢ４１４は、このデバイス構成情報を複数格納・管理するデータベースである。このデバイス構成情報は、複合機１２０の個体を識別する個体識別子、機種名、ファームウェアのバージョン、利用可能な機能を表すライセンス情報などを含む。なお、機種名、ファームウェアのバージョン、ライセンス等は、設定値情報ＤＢ４１０に格納されているものと同一の体系を有する。
【００２７】
デバイス管理ＤＢ４１２は、管理サーバ１１０で設定値を管理する複合機１２０の個体の個体識別子を管理するためのデータベースである。管理サーバ１１０は、上記で説明したマスターデータ４０１の各データベースを利用して、管理対象の複合機１２０の各々で異なる設定値や、管理対象の複合機全てで共通の設定値および各設定値そのもののメタデータを一括管理することが可能である。
【００２８】
図６は、本実施形態に係る複合機１２０のＨＤＤ３０５に格納される設定値ＤＢ６０１の構成の一例を表す図である。設定値ＤＢ６０１は、複合機１２０で使用する設定値を格納するデータベースである。設定値ＤＢ６０１に格納される設定値は、設定値を識別するためのキー識別子、設定値の値、ＵＩ表示文言、初期値、値域、表示条件等の要素から構成される。これらの要素は、マスターデータ４０１で管理されているものと同一の体系で管理されるものである。管理サーバ１１０もしくは複合機１２０において設定値が変更された場合には、図６に示されるデータのうち少なくともキー識別子および値を通信することにより設定値を同期する。
【００２９】
図７は、管理サーバ１１０および複合機１２０におけるソフトウェア構成モジュールの一例を表す図である。管理サーバ１１０側には、マスターデータ４０１のデータを編集するＤＢ管理モジュール７０１があり、全てのデータは、このモジュールを介して編集される。このモジュールにアクセスするウェブアプリケーションを配置し、マスターＤＢのブラウジングやデータの編集も可能である。サーバモジュール７０２は、ネットワーク１００を利用してクライアントからのデータ取得要求や変更要求を受け、ＤＢ管理モジュール７０１に対して読み書きの指示を行う。
【００３０】
一方、複合機１２０側には、設定値ＤＢ６０１が配置され、設定値管理モジュール７１１を介して読み書きが行われる。不図示ではあるが、複合機１２０上で動作する全てのアプリケーションプログラムは、この設定値管理モジュール７１１を利用して設定値ＤＢ６０１のデータにアクセスする。構成情報管理モジュール７１２は、複合機１２０を構成する要素の情報を収集する。構成要素としては、図５（Ｄ）に示すようなファームバージョンやインストールされているソフトウェアの構成、接続されるアクセサリの構成等が含まれる。
【００３１】
制御モジュール７１３は、ファームアップデート後やデータインポートなどにより新たなデータベースを複合機内に受理した際、設定値ＤＢ６０１に対してマイグレーションを実行するように、設定値管理モジュール７１１に対して指示を出すモジュールである。クライアントモジュール７１４は、ネットワーク１００を介して管理サーバ１１０側のサーバモジュールと通信を行う。主に、定期的なポーリングによるサーバ側のＤＢ変更の複合機側への取り込み、あるいは複合機側の設定値ＤＢの更新をサーバ側のＤＢに反映させるための動作を行う。この設定値ＤＢ６０１の変更をマスターデータ４０１に反映する動作、およびマスターデータ４０１の変更を検知して設定値ＤＢ６０１に反映させる一連の動作を本実施形態に係る同期制御とする。また構成情報管理モジュール７１２が管理する情報に変更があった際にも変更通知を行う。
【００３２】
図８は、本実施形態に係るファームアップデート後の設定値ＤＢのマイグレーションから同期の再開までのフローチャートである。図中左側のフローが複合機１２０側で行われる処理であり、右側のフローが管理サーバ１１０側で行われる処理である。まず、複合機１２０上でファームウェアのアップデートが行われる。複合機１２０のファームウェアアップデートは、通常起動とは別のアップデート用の特別モードで起動し、ファームのアップデートを実行しアップデートが終了したら通常起動モードで再起動を行う仕組みが一般的である。図８に示すフローチャートは、ファームアップデート後の最初の通常起動時のフローチャートである。
【００３３】
ファームアップデート後の起動では、複合機１２０内に今まで運用していた設定値ＤＢ６０１とは別に、新ファームウェアに対応する新しい設定値セットが用意される。まず、ステップＳ８０１で、制御モジュール７１３は、この新設定値セットが存在するか否かを判定する。すなわち、複合機１２０のＤＢのマイグレーションの実施が必要か否かを判定する。新設定値セットが存在する場合（ＹＥＳ）、マイグレーションの実施が必要であるので、ステップＳ８０２に進む。ステップＳ８０２で、制御モジュール７１３は、クライアントモジュール７１４に指示しクライアントモジュール７１４は、サーバとの同期制御を中断する。一方、新設定値セットが存在しない場合（ＮＯ）、マイグレーションの実施の必要がないので、マイグレーションの実施が必要になるまで、ステップＳ８０１にてマイグレーションの要否の検出を続ける。
【００３４】
ステップＳ８０２において同期制御が中断された後、ステップＳ８０３で、制御モジュール７１３は、設定値管理モジュール７１１に指示して設定値管理モジュール７１１がデータベース（ＤＢ）のマイグレーションを実行する。ここで、マイグレーションとは、それまで運用していた設置値ＤＢ６０１の内容を新構造のＤＢにデータを移行し、移行したデータを新しい設定値ＤＢ６０１として運用を開始する状態にすることである。また、新構造のＤＢにしかない項目や構造は、初期値が採用され、新旧ＤＢ間で引き継げるデータを引き継ぎ、新ＤＢで不要になった値は、削除される。このマイグレーションの詳細については後述する。
【００３５】
マイグレーションにより設定値ＤＢ６０１は、新ファームウェア対応のデータベースに再構築される。なお、この時点まで完了すると複合機１２０内の各種アプリケーションは、新設定値ＤＢ６０１を利用可能になり、以降で説明する処理と並行して複合機１２０内のアプリケーションは、起動処理およびアプリケーションの動作が可能になる。この再構築が完了すると、ステップＳ８０４で、設定値管理モジュール７１１は、マイグレーション実施において変更した設定値の差分を抽出する。
【００３６】
次に、ステップＳ８０５で、制御モジュール７１３は、クライアントモジュール７１４にサーバへの通知を指示する。そして、クライアントモジュール７１４は、抽出された差分情報（差分データ）と併せて構成情報管理モジュール７１２から最新のファームバージョンを含めた構成情報と共にサーバにマイグレーション実行が終了した旨を通知する。すなわち、管理サーバ１１０側にマスターＤＢの再構築依頼を通知する。
【００３７】
管理サーバ１１０側では、ステップＳ８１１で、サーバモジュール７０２は、このＤＢ再構築依頼の通知を受理（受信）したか否かを判定する。通知を受理した場合（ＹＥＳ）、ステップＳ８１２に進み、受理していない場合（ＮＯ）、通知を受理するまでステップＳ８１１の判定を続ける。そして、ステップＳ８１２で、サーバモジュール７０２は、ＤＢ管理モジュール７０１を利用してマスターＤＢ４０１の再構築を実施する。具体的には、個別設定値ＤＢ４１３および構成情報管理ＤＢ４１４を、受理したＤＢ再構築依頼に基づいて再構築する。
【００３８】
ＤＢの再構築の完了後、ステップＳ８１４で、共通設定値ＤＢ４１１を採用して個別設定値ＤＢ４１３に対してマージが必要なものを再度マージする。これにより、ファームアップ後に新規項目の追加があった場合でも、予め管理サーバ１１０上に共通設定が用意されている場合は、即座にその値をマスターに反映することができ、後の同期再開により複合機１２０側のＤＢにも取り込むことができる。次に、ステップＳ８１５で、サーバモジュール７０２は、管理サーバ１１０側の処理（ＤＢ再構築処理）が完了したことを、複合機１２０側に通知する。
【００３９】
ステップＳ８０６で、複合機１２０側のクライアントモジュール７１４は、管理サーバ１１０から処理完了の通知を受け取り、処理が正常に終了したか否かを判定する。正常に終了した通知を受け取った場合、ステップＳ８０７に進む。そして、ステップＳ８０７で、クライアントモジュール７１４は、中断していた複合機１２０側での変更の通知や管理サーバ１１０側の変更の取り込みの動作の同期制御を再開し、管理サーバ１１０との間のそれまでの状態を回復する。一方、ステップＳ８０６で、管理サーバ１１０からの処理完了通知がＮＧである（正常に処理が終了していない）場合、ステップＳ８０８に進み、同期モードを中断して複合機１２０単独（ＳｔａｎｄＡｌｏｎｅモード）でデータ制御を行う。
【００４０】
次に、図９を用いて、データマイグレーションの詳細について説明する。マイグレーションされるデータ構造としては、図６で説明したデータ構造と同様であり、図９には項目を抜粋してイメージを示している。本実施形態では、ＤＢのキー識別子、値、初期値といたスキーマの構造変更はなく、項目の増減のみがある場合について説明する。
【００４１】
設定値ＤＢ９００は、ファームアップ後に新ファームとともに複合機１２０内に保持される新構造のＤＢの内部のデータ構造である。また、設定値ＤＢ９１０および設定値ＤＢ９２０は、設定値ＤＢ６０１の内部状況の変化を示しており、設定値ＤＢ９１０がマイグレーション前の状態、設定値ＤＢ９２０が設定値ＤＢ９００からのマイグレーション実施後のデータ構造である。
【００４２】
ファームアップ前の運用中の設定値ＤＢ９１０には、“ｓｅｔｔｉｎｇｓ．ｓｗ１”と“ｓｅｔｔｉｎｇｓ．ｓｔｒ１”いう２つのキーが運用されている。また、ファームバージョンアップ後の新構造データの設定値ＤＢ９００には、“ｓｅｔｔｉｎｇｓ．ｓｗ１”と“ｓｅｔｔｉｎｇｓ．ｓｔｒ２”という構造を有するデータが保持されている。
【００４３】
これを受けてマイグレーション実施後は、設定値ＤＢ９２０の状態となる。“ｓｅｔｔｉｎｇｓ．ｓｗ１”は、それまで運用していた現在値である１をそのまま採用している。“ｓｅｔｔｉｎｇｓ．ｓｔｒ１”は、項目そのものが削除される。“ｓｅｔｔｉｎｇｓ．ｓｔｒ２”は、新規で運用開始するキーのため初期値である文字列“ＳＥＮＤ”を運用値として採用する。このようにしてマイグレーションが実施される。
【００４４】
以上、本実施形態によれば、複合機上でのファームバージョンアップに追従して、容易かつ安全にサーバ上のマスターＤＢも新ファームバージョンに適応した再構成を行うことができる。
【００４５】
（第２実施形態）
次に、第２実施形態に係る同期システムについて説明する。第１実施形態では、図８のステップＳ８０１で説明した通り、ファームアップデート後に新ファームウェアが有する新しい設定値ＤＢが存在することを検知して同期の中断再開の処理が進むフローである。しかしながら、ファームのバージョンアップの内容によっては、新ＤＢのデータ構造が旧ＤＢのデータ構造と全く等しい場合や、単純な項目追加のみなど、マイグレーション自体が従来運用の設定の変更における同期処理の延長で処理できる場合がある。
【００４６】
この場合について、図１０を用いて説明する。図１０は、本実施形態に係る複合機１２０側のファームアップデート後の設定値ＤＢのマイグレーションから同期の再開までのフローチャートである。ステップＳ１００１、Ｓ１００３、Ｓ１００４、Ｓ１００５、Ｓ１００６、Ｓ１００７は、第１実施形態の図８に示すステップＳ８０１、Ｓ８０３、Ｓ８０４、Ｓ８０５、Ｓ８０６、Ｓ８０８と同様の処理であるため、その詳細を省略する。
【００４７】
ステップＳ１００１で、制御モジュール７１３は、新設定値セットの存在を検知し、マイグレーションが必要であるというと判定すると、ステップＳ１００２で、マイグレーションの内容についてどのような変更があるかを確認する。この詳細については後述する。次に、ステップＳ１００２で、マイグレーションの内容に基づいて、同期中断をするか否かを判定する。同期中断すると判定した場合（ＹＥＳ）、図８のステップＳ８０２に進み、以降、第１実施形態の図８に示す処理が実施されるため、その説明を省略する。
【００４８】
一方、ステップＳ１００２で、同期中断しないと判定した場合（ＮＯ）、ステップＳ１００３へ進み、制御モジュール７１３は、設定値管理モジュール７１１に指示して設定値管理モジュール７１１がデータベースマイグレーションを実行する。この間、第１実施形態のような同期中断がないため、他のアプリケーションよる設定変更、または管理サーバ１１０側のマスターＤＢ４０１の変更等があれば、並行して同期処理を行うことができる。
【００４９】
ステップＳ１００４で、設定値管理モジュール７１１は変更差分を抽出し、ステップＳ１００５で、クライアントモジュール７１４は管理サーバ１１０へ差分情報と構成情報と共に管理サーバ１１０にマイグレーション実行が終了した旨を通知する。情報を受理した管理サーバ１１０側のサーバモジュール７０２は、図８のステップＳ８１１〜Ｓ８１５の処理を第１実施形態と同様に行うため、その詳細を省略する。
【００５０】
ステップＳ１００２の判定の後に管理サーバ１１０側の処理へ進んでいるため、この処理は、通常の更新処理に近い処理となり、特に大きなＤＢ再構築の処理にならない。これにより、通常の運用動作を中断せずに途中に割り込んで動作している点が第１実施形態と大きく異なる点である。中断制御を行わずに作業を継続しているため、管理サーバ１１０から処理完了の通知を受け取って、ステップＳ１００６で、管理サーバ１１０からの正常に更新完了した通知を受理した場合、特に何もせず同期制御を継続する。一方、処理完了がＮＧである場合、ステップＳ１００７に進み、同期モードを中断し複合機単独でデータ制御を行うモードに入る。
【００５１】
図１１を用いてステップＳ１００２における同期中断の判定条件の一例を示す。ここでは、新旧のデータベースにおいて構造の変更があるかないか、および設定項目について増減があるかを判定基準としたテーブルとしている。構造変更がある場合、ステップＳ１００２で、同期制御の中断判定を行う。構造変更が無い場合、項目数の増減を調べ純粋増加（それまで存在していた項目は全て今まで通り使える状態）の場合にのみ、同期中断が不要という判定で、１つでも項目が減少していれば、同期を中断させるという判定をするものとする。なお、図９のマイグレーション例では、同一構造のＤＢ引き継ぎであるが“ｓｅｔｔｉｎｇｓ．ｓｔｒ１”という項目の削除が存在しているため、同期中断が必要である判定がなされる。
【００５２】
以上、本実施形態によれば、複合機上でのファームバージョンアップに追従して、容易かつ安全にサーバ上のマスターＤＢも新ファームバージョンに適応した再構成を行うことができる。
【００５３】
（他の実施例）
本発明は、上述した実施形態を適宜組み合わせることにより構成された装置あるいはシステムやその方法も含まれるものとする。
ここで、本発明は、上述した実施形態の機能を実現する１以上のソフトウェア（プログラム）を実行する主体となる装置あるいはシステムである。また、その装置あるいはシステムで実行される上述した実施形態を実現するための方法も本発明の一つである。また、そのプログラムは、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給され、そのシステム或いは装置の１以上のコンピュータ（ＣＰＵやＭＰＵ等）によりそのプログラムが読み出され、実行される。つまり、本発明の一つとして、さらにそのプログラム自体、あるいは該プログラムを格納したコンピュータにより読み取り可能な各種記憶媒体も含むものとする。また、上述した実施形態の機能を実現する回路（例えば、ＡＳＩＣ）によっても、本発明は実現可能である。
【００５４】
また、本発明の好ましい実施形態について説明したが、本発明は、これらの実施形態に限定されず、その要旨の範囲内で種々の変形および変更が可能である。
【図１】
2015147349.tif 000003
【図２】
2015147349.tif 000004
【図３】
2015147349.tif 000005
【図４】
2015147349.tif 000006
【図５】
2015147349.tif 000007
【図６】
2015147349.tif 000008
【図７】
2015147349.tif 000009
【図８】
2015147349.tif 000010
【図９】
2015147349.tif 000011
【図１０】
2015147349.tif 000012
【図１１】
2015147349.tif 000013