(57)【要約】【課題】利用したい機能を搭載した装置が故障したとき、代替機としての他装置に、故障機と同等の機能構成を迅速に再現可能な情報処理装置を提供する。【解決手段】本発明に係る情報処理装置は、プラグインサーバと、当該情報処理装置の有するプラグイン構成を管理するプラグイン構成管理サーバとがネットワークを介して接続され、ソフトウェア機能をプラグインとして追加可能な情報処理装置であって、インストール手段を含む機能変更手段と、自装置のプラグインの構成情報を記憶する記憶手段と、構成情報をプラグイン構成管理サーバに登録する登録手段と、プラグイン構成管理サーバから他の情報処理装置の構成情報を取得して自装置の構成情報と比較し、自装置と他の情報処理装置が有するプラグインとの差分を判断する判断手段とを備え、機能変更手段は、差分に基づき自装置に不足するプラグインをプラグインサーバから取得し追加する。【選択図】図５
2010266953.tif 000002
【特許請求の範囲】
【請求項１】
ダウンロード可能なプラグインを蓄積するプラグインサーバと、当該情報処理装置の有するプラグイン構成を管理するプラグイン構成管理サーバとがネットワークを介して接続され、ソフトウェア機能をプラグインとして追加可能な情報処理装置であって、
前記プラグインサーバから取得したプラグインを追加するインストール手段を含む機能変更手段と、
自装置が有するプラグインの構成情報を記憶する記憶手段と、
前記構成情報を前記プラグイン構成管理サーバに登録する登録手段と、
前記プラグイン構成管理サーバから他の情報処理装置の構成情報を取得して自装置の構成情報と比較し、自装置が有するプラグインと前記他の情報処理装置が有するプラグインとの差分を判断する判断手段とを備え、
前記機能変更手段は、前記差分に基づき自装置に不足するプラグインを前記プラグインサーバから取得し、取得したプラグインを追加すること、
を特徴とする情報処理装置。
【請求項２】
カスタマイズ可能な操作画面を生成し表示を行う画面制御手段を有し、
前記記憶手段は、カスタマイズされた操作画面の画面生成情報を記憶し、前記登録手段は、前記画面生成情報を前記プラグイン構成管理サーバに登録し、前記機能変更手段は、前記自装置に不足するプラグインとともに、前記他の情報処理装置の画面生成情報を前記プラグインサーバから取得し、前記画面制御手段は、前記他の情報処理装置の画面生成情報に基づき操作画面を生成し表示を行うこと、
を特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記判断手段は、差分と判断したプラグインが、所定のプラグインと依存関係にある場合、当該所定のプラグインをも差分に含めて判断すること、
を特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記機能変更手段は、プラグインを削除するアンインストール手段を含み、
前記機能変更手段は、前記判断手段により差分と判断されたプラグインが、自装置が有する所定のプラグインと排他関係にある場合、当該所定のプラグインを削除すること、
を特徴とする請求項１ないし３何れか一項に記載の情報処理装置。
【請求項５】
前記判断手段は、構成情報の前記比較は、バージョンレベルでの比較を含むこと、
を特徴とする請求項１ないし４何れか一項に記載の情報処理装置。
【請求項６】
前記機能変更手段は、前記判断手段により一旦差分と判断されたプラグインの中から、ユーザにより選択された選択プラグインを、前記プラグインサーバから取得し、取得したプラグインを追加すること、
を特徴とする請求項１ないし５何れか一項に記載の情報処理装置。
【請求項７】
前記差分に基づき自装置に不足するプラグインを追加した後、追加前の自装置が有するプラグインの構成情報と、追加後の自装置が有するプラグインの構成情報との比較に基づき差分を判断し、差分とされるプラグインを削除する復旧手段と、
を有することを特徴とする請求項１ないし６何れか一項に記載の情報処理装置。
【請求項８】
ソフトウェア機能をプラグインとして追加可能な複数の情報処理装置と、前記プラグインを蓄積するプラグインサーバと、前記情報処理装置の有するプラグイン構成を管理するプラグイン構成管理サーバとがネットワークを介して接続された情報処理システムであって、
前記情報処理装置は、
前記プラグインサーバから取得したプラグインを追加するインストール手段を含む機能変更手段と、
自装置が有するプラグインの構成情報を記憶する記憶手段と、
前記構成情報を前記プラグイン構成管理サーバに登録する登録手段と、
前記プラグイン構成管理サーバから他の情報処理装置の構成情報を取得して自装置の構成情報と比較し、自装置が有するプラグインと前記他の情報処理装置が有するプラグインとの差分を判断する判断手段とを備え、
前記機能変更手段は、前記差分に基づき自装置に不足するプラグインを前記プラグインサーバから取得し、取得したプラグインを追加すること、
を特徴とする情報処理システム。
【請求項９】
前記情報処理装置は、カスタマイズ可能な操作画面を生成し表示を行う画面制御手段を有し、
前記記憶手段は、カスタマイズされた操作画面の画面生成情報を記憶し、前記登録手段は、前記画面生成情報を前記プラグイン構成管理サーバに登録し、前記機能変更手段は、前記自装置に不足するプラグインとともに、前記他の情報処理装置の画面生成情報を前記プラグインサーバから取得し、前記画面制御手段は、前記他の情報処理装置の画面生成情報に基づき操作画面を生成し表示を行うこと、
を特徴とする請求項８に記載の情報処理システム。
【請求項１０】
前記判断手段は、差分と判断したプラグインが、所定のプラグインと依存関係にある場合、当該所定のプラグインをも差分に含めて判断すること、
を特徴とする請求項８又は９に記載の情報処理システム。
【請求項１１】
前記機能変更手段は、プラグインを削除するアンインストール手段を含み、
前記機能変更手段は、前記判断手段により差分と判断されたプラグインが、自装置が有する所定のプラグインと排他関係にある場合、当該所定のプラグインを削除すること、
を特徴とする請求項８ないし１０何れか一項に記載の情報処理装置。
【請求項１２】
前記判断手段は、構成情報の前記比較は、バージョンレベルでの比較を含むこと、
を特徴とする請求項８ないし１１何れか一項に記載の情報処理システム。
【請求項１３】
前記機能変更手段は、前記判断手段により一旦差分と判断されたプラグインの中から、ユーザにより選択された選択プラグインを、前記プラグインサーバから取得し、取得したプラグインを追加すること、
を特徴とする請求項８ないし１２何れか一項に記載の情報処理システム。
【請求項１４】
前記情報処理装置は、前記差分に基づき自装置に不足するプラグインを追加した後、追加前の自装置が有するプラグインの構成情報と、追加後の自装置が有するプラグインの構成情報との比較に基づき差分を判断し、差分とされるプラグインを削除する復旧手段と、
を有することを特徴とする請求項８ないし１３何れか一項に記載の情報処理システム。
【請求項１５】
ダウンロード可能なプラグインを蓄積するプラグインサーバと、当該情報処理装置の有するプラグイン構成を管理するプラグイン構成管理サーバとがネットワークを介して接続され、ソフトウェア機能をプラグインとして追加可能な情報処理装置に、
前記プラグインサーバから取得したプラグインを追加するインストール手段を含む機能変更手段と、
自装置が有するプラグインの構成情報を記憶する記憶手段と、
前記構成情報を前記プラグイン構成管理サーバに登録する登録手段と、
前記プラグイン構成管理サーバから他の情報処理装置の構成情報を取得して自装置の構成情報と比較し、自装置が有するプラグインと前記他の情報処理装置が有するプラグインとの差分を判断する判断手段として機能させるためのプログラムであって、
前記機能変更手段は、前記差分に基づき自装置に不足するプラグインを前記プラグインサーバから取得し、取得したプラグインを追加すること、
を特徴とするプログラム。
【請求項１６】
情報処理装置に、カスタマイズ可能な操作画面を生成し表示を行う画面制御手段として機能させるためのプログラムであって、
前記記憶手段は、カスタマイズされた操作画面の画面生成情報を記憶し、前記登録手段は、前記画面生成情報を前記プラグイン構成管理サーバに登録し、前記機能変更手段は、前記自装置に不足するプラグインとともに、前記他の情報処理装置の画面生成情報を前記プラグインサーバから取得し、前記画面制御手段は、前記他の情報処理装置の画面生成情報に基づき操作画面を生成し表示を行うこと、
を特徴とする請求項１５に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システム、及びプログラムの分野に関する。
【背景技術】
【０００２】
従来から、画像形成装置、コピーおよびスキャナなどの複数の機能を一つの筐体内に収納した画像形成装置が知られている。現在の画像形成装置（MFP：Multi-Function Peripheral）は、ＣＰＵの性能向上、メモリの大容量化、通信技術の高速化及びデジタル画像技術の高度化等、ＭＦＰに関連する技術の進化に伴い、単にデジタル複写機としての機能だけでなく、例えば、ネットワークやファクシミリ等で画像や文書などのデータの送受信を可能とし、ユーザ環境において様々な利用形態を提供するものである。
【０００３】
また、このような画像形成装置の機能をユーザに提供するアプリケーションは、さまざまな手段でユーザに合わせた形にカスタマイズできることが知られている。例えば、画像形成装置のコントローラソフトは、提供する機能のカスタマイズの容易性が重視されて設計されている。アプリケーションをプラグイン機能としてユーザに提供することができるため、ユーザは利用したい機能をプラグイン単位で購入して、画像形成装置に対して容易にインストール又はアンインストールすることができる。
【０００４】
ここで、画像形成装置にプラグインの追加や変更があった場合、それまで使用できていた機能が動作不能の状態にならないようにするため、機器とプラグインとの整合を取ることが必要になる。特許文献１には、画像形成装置に対して複数のソフトウェア機能をプラグインとしてインストールすることができ、画像形成装置に機器の追加や変更があった場合に、それまで使用できていた機能が動作不能の状態にならないように、機器とプラグインとの整合を取ることができるようにした技術が記載されている。より詳細には、機器のハードウェア構成が変更されたときに、現在のプラグイン構成が機器に適用できるかをサーバに問い合わせ、プラグイン機能の適用可否を取得する手段が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
このような画像形成装置は、例えば、オフィス環境等においても広く利用されている。但し、画像形成装置は、同様のハードウェア構成（スペック）のものが複数台設置されていても、各部署等の用途に応じて各プラグイン機能の構成は異なっている場合も多い。
【０００６】
ここで、ある画像形成装置（故障機という）が故障してその利用が不可能になった場合、それまでその装置で利用できていたプラグイン機能は、他の画像形成装置（代替機という）でもインストールされていなければ、当然ながら利用できなくなる。この場合、上述の技術によって、新たに代替機に対してその必要なプラグインをインストールすればよい。
【０００７】
しかしながら、従来の画像形成装置では、必要とする機能を代替機にプラグインとして容易にインストールできる手段があったとしても、故障機が搭載している機能との差異が発生するため、必ずしもインストールの操作手順が同じになるとは限らず、操作性に問題があった。従って、プラグイン機能の追加削除が可能であって、同様のハードウェア構成を有する画像形成装置が複数台接続される環境において、それぞれのプラグイン機能の構成が異なる場合、ある画像形成装置が故障して利用できなくなっても、他の画像形成装置（代替機）で同等のプラグイン機能を容易に再現できれば便利である。
【０００８】
そこで本発明では上記のような問題に鑑みて、利用したい機能を搭載した装置が故障したとき、代替機としての他装置に、故障機と同等の機能構成を迅速に再現可能な情報処理装置、情報処理システム、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するため、本発明に係る情報処理装置は、ダウンロード可能なプラグインを蓄積するプラグインサーバと、当該情報処理装置の有するプラグイン構成を管理するプラグイン構成管理サーバとがネットワークを介して接続され、ソフトウェア機能をプラグインとして追加可能な情報処理装置であって、前記プラグインサーバから取得したプラグインを追加するインストール手段を含む機能変更手段と、自装置が有するプラグインの構成情報を記憶する記憶手段と、前記構成情報を前記プラグイン構成管理サーバに登録する登録手段と、前記プラグイン構成管理サーバから他の情報処理装置の構成情報を取得して自装置の構成情報と比較し、自装置が有するプラグインと前記他の情報処理装置が有するプラグインとの差分を判断する判断手段とを備え、前記機能変更手段は、前記差分に基づき自装置に不足するプラグインを前記プラグインサーバから取得し、取得したプラグインを追加することを特徴とする。
【００１０】
また上記課題を解決するため、前記情報処理装置において、カスタマイズ可能な操作画面を生成し表示を行う画面制御手段を有し、前記記憶手段は、カスタマイズされた操作画面の画面生成情報を記憶し、前記登録手段は、前記画面生成情報を前記プラグイン構成管理サーバに登録し、前記機能変更手段は、前記自装置に不足するプラグインとともに、前記他の情報処理装置の画面生成情報を前記プラグインサーバから取得し、前記画面制御手段は、前記他の情報処理装置の画面生成情報に基づき操作画面を生成し表示を行うことを特徴とする。
【００１１】
また上記課題を解決するため、前記情報処理装置において、前記判断手段は、差分と判断したプラグインが、所定のプラグインと依存関係にある場合、当該所定のプラグインをも差分に含めて判断することを特徴とする。
【００１２】
また上記課題を解決するため、前記情報処理装置において、前記機能変更手段は、プラグインを削除するアンインストール手段を含み、前記機能変更手段は、前記判断手段により差分と判断されたプラグインが、自装置が有する所定のプラグインと排他関係にある場合、当該所定のプラグインを削除することを特徴とする。
【００１３】
また上記課題を解決するため、前記情報処理装置において、前記判断手段は、構成情報の前記比較は、バージョンレベルでの比較を含むことを特徴とする。
【００１４】
また上記課題を解決するため、前記情報処理装置において、前記機能変更手段は、前記判断手段により一旦差分と判断されたプラグインの中から、ユーザにより選択された選択プラグインを、前記プラグインサーバから取得し、取得したプラグインを追加することを特徴とする。
【００１５】
また上記課題を解決するため、前記情報処理装置において、前記差分に基づき自装置に不足するプラグインを追加した後、追加前の自装置が有するプラグインの構成情報と、追加後の自装置が有するプラグインの構成情報との比較に基づき差分を判断し、差分とされるプラグインを削除する復旧手段とを有することを特徴とする。
【００１６】
なお、本発明の構成要素、表現または構成要素の任意の組合せを、方法、装置、システム、コンピュータプログラム、記録媒体などに適用したものも本発明の態様として有効である。
【発明の効果】
【００１７】
本発明によれば、利用したい機能を搭載した装置が故障したとき、代替機としての他装置に、故障機と同等の機能構成を迅速に再現可能な情報処理装置、情報処理システム、及びプログラムを提供することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明に係る情報処理システムの一実施形態におけるネットワーク図である。
【図２】本発明の実施形態に係る画像形成装置のハードウェア構成の一例を示す図である。
【図３】本発明の実施形態に係るプラグイン構成管理サーバ３のハードウェア構成の一例を示す図である。
【図４】画像形成装置１、プラグイン構成管理サーバ３、及びプラグインサーバ４の一実施形態の主要構成を示す機能ブロック図である。
【図５】本発明の実施形態に係る概要を説明する図である。
【図６】操作画面の一例を示す図である。
【図７】確認画面の一例を示す図である。
【図８】プラグインのインストール画面の一例である。
【図９】画像形成装置１の操作パネル上に表示される操作画面の一例である。
【図１０】プラグインの依存関係を説明する図の一例である。
【図１１】プラグインの妥当性確認を説明するフローチャートである。
【図１２】本変形例に係るシステムの一実施形態におけるネットワーク図である。
【図１３】インストールするプラグインの選択画面の一例である。
【発明を実施するための形態】
【００１９】
本発明を実施するための形態を各実施形態において図面を用いて説明する。なお、本発明を説明するにあたって、情報処理装置の一実施形態である画像形成装置に本発明を適用した例を以下に示す。
【００２０】
＜構成＞
はじめに、具体的な発明の内容を説明する前に、本発明を実施するにあたってのネットワーク構成について説明する。図１は、本発明に係る情報処理システムの一実施形態におけるネットワーク図である。画像形成装置１、画像形成装置２、プラグイン構成管理サーバ３、プラグインサーバ４が、ネットワーク５を介して接続されている。画像形成装置１及び画像形成装置２は、プラグインの追加や削除が可能な上述の画像形成装置である。プラグイン構成管理サーバ３は、画像形成装置がプラグインの追加や削除のタイミングで、自装置の有するプラグイン構成を登録するサーバである。プラグインサーバ４は、機能拡張用ソフトウェア部品であるプラグイン（コンポーネントともいう）を蓄積したダウンロードサーバである。画像形成装置は、拡張したい機能を選択し該当するプラグインをプラグインサーバ４はからダウンロード（画像処理装置側に転送）する。そしてダウンロードしたプラグインを与えられた認証情報（ライセンス等）に基づいてインストールする。
【００２１】
画像形成装置１及び画像形成装置２は、平常時は２台共に稼動しており、各々ユーザに利用されている。これらハードウェア構成は同一であるものとし、プラグイン機能はそれぞれ異なる。つまり、画像形成装置２は、画像形成装置１が有しない機能を有している。そして、本実施形態において、画像形成装置２に障害が発生し故障した場合、画像形成装置１は画像形成装置２が復旧するまでの代替機として利用される。この点、後ほど詳しく説明する。
【００２２】
図１では、画像形成装置１、画像形成装置２、及びプラグイン構成管理サーバ３は、ＬＡＮ（Local Area Network）で接続され、プラグインサーバ４は各サイトの画像形成装置が共有して利用できるようＷＡＮ（Wide Area Network）を介して接続されている。勿論、このような接続例はあくまで一例でありこれに限られない。つまり相互に通信可能であればよい。また図中、画像形成装置は２台示されているが、これ以上の複数台数が接続されていてもよい。
【００２３】
（画像形成装置）
本発明の実施形態に係る画像形成装置１及び画像形成装置２には、例えば、プリンタ、コピーおよびスキャナなどの複数の機能を一つの筐体内に収納した複合機が適用できる。現在のデジタル複合機（MFP：Multi-Function Peripheral）は、ＣＰＵの性能向上、メモリの大容量化、通信技術の高速化及びデジタル画像技術の高度化等、ＭＦＰに関連する技術の進化に伴い、単に前述のデジタル複写機としての機能だけでなく、例えば、ネットワーク（メール含む）やファクシミリ等で画像や文書などのデータの送受信を可能とし、ユーザ環境において様々な利用形態を提供するものである。従って、近年のオフィス環境等で画像形成装置は、複数のユーザに同時に共有され使用されている場合が多い。
【００２４】
図２は、本発明の実施形態に係る画像形成装置１（及び画像形成装置２）のハードウェア構成の一例を示す図である。本実施形態に係る画像形成装置１の一実施形態としての画像形成装置は、操作パネル１１と、記憶メディアＩ／Ｆ１２と、コントローラ１３と、データ通信Ｉ／Ｆ１４と、スキャナ１５と、プロッタ１６と、ＨＤＤ（Hard Disk Drive）１７とから構成され、それぞれ相互に接続されている。
【００２５】
操作パネル１１は、入力装置１１aと表示装置１１bとを有しており、入力装置１１aは、ハードキーなどで構成され、装置本体に各操作信号を入力するのに用いられる。また、表示装置１１bは、ディスプレイなどで構成され、例えば画像形成動作に関する各種情報を表示する。データ通信Ｉ／Ｆ１４は、インタフェース装置１４aを有しており、画像形成装置をネットワークやファックスなどのデータ伝送路に接続するインタフェースである。ＨＤＤ１７は、画像形成装置で取り扱われる受信文書データや読み取り画像データなどの各種データを格納している。また、ＨＤＤ１７は、これらの各種データを、所定のファイルシステムやＤＢ（Data Base）により管理している。
【００２６】
ＨＤＤ１７に格納される各種データの中には、記録媒体１２bから入力されるデータを含む。記録媒体１２bは、記憶メディアＩ／Ｆ１２が有するドライブ装置１２aにセットされ各種データが記録媒体１２bからドライブ装置１２aを介してＨＤＤ１７に格納される。
【００２７】
コントローラ１３は、ＲＯＭ（Read Only Memory）１３a、ＲＡＭ（Random Access Memory）１３b、及びＣＰＵ（Central Processing Unit）１３cとを有しており、ＲＯＭ１３aは、画像形成装置が起動されるときに実行されるプログラムや各種データを格納している。また、ＲＡＭ１３bは、ＲＯＭ１３aやＨＤＤ１７から読み出された各種プログラムやデータを一時保持する。更に、ＣＰＵ１３cは、ＲＡＭ１３bが一時保持しているプログラムを実行する。コントローラ１３は、例えば、データ通信Ｉ／Ｆ１４を介して印刷データを受信した場合に、ＲＯＭ１３aからＲＡＭ１３b上に読み出された、ＰＤＬ（Page Description Language）を解釈可能なプログラム（ＰＤＬパーサ）をＣＰＵ１３cにより実行し、印刷データを解釈してビットマップイメージを生成する。
【００２８】
スキャナ１５は、画像読取装置１５aを有しており、読み取り面に配置された原稿を光学的に読み取り画像データを生成する。プロッタ１６は、印刷装置１６aを有しており、例えば、電子写真プロセス方式によってビットマップイメージを記録紙に印刷する。
【００２９】
このように、本実施形態に係る情報処理装置の一実施形態としての画像形成装置は、上記ハードウェア構成により、コピー、画像形成装置、ファクシミリ、スキャナなどの複数の機能を実現している。
【００３０】
（プラグイン構成管理サーバ）
図３は、本発明の実施形態に係るプラグイン構成管理サーバ３のハードウェア構成の一例を示す図である。プラグイン構成管理サーバ３は、例えば一般的なＰＣ（Personal Computer）サーバ等でよく、主要な構成として、ＣＰＵ３１、ＲＯＭ（Read Only Memory）３３、ＲＡＭ（Random Access Memory）３３、補助記憶装置３４、記憶媒体読取装置３５、入力装置３６、表示装置３７、及び通信装置３８を含む構成である。以下、簡単に説明する。
【００３１】
ＣＰＵ３１は、マイクロプロセッサ及びその周辺回路から構成され、端末１全体を制御する回路である。また、ＲＯＭ３３は、ＣＰＵ３１で実行される所定の制御プログラム（ソフトウェア部品）を格納するメモリであり、ＲＡＭ３３は、ＣＰＵ３１がＲＯＭ３３に格納された所定の制御プログラム（ソフトウェア部品）を実行して各種の制御を行うときの作業エリア（ワーク領域）として使用するメモリである。
【００３２】
補助記憶装置３４は、汎用のＯＳ（Operating System）、後述するプラグイン構成情報やＵＩ情報を含む各種情報を格納する装置であり、不揮発性の記憶装置であるＨＤＤ（Hard Disk Drive）などが用いられる。なお、上記各種情報は、補助記憶装置３４以外にも、ＣＤ−ＲＯＭ（Compact Disk - ROM）やＤＶＤ（Digital Versatile Disk）などの記憶媒体やその他のメディアを記憶されてもよく、これらの記憶媒体に格納された各種情報は、記憶媒体読取装置３５などのドライブ装置を介して読み取ることが可能である。よって、必要に応じて記録媒体を記憶媒体読取装置３５にセットすることで、画像形成装置ドライバを含む各種情報が得られる。
【００３３】
入力装置３６は、ユーザが各種入力操作を行うための装置である。入力装置３６は、マウス、キーボード、表示装置３７の表示画面上に重畳するように設けられたタッチパネルスイッチなどを含む。表示装置３７は、表示画面に表示する装置である。表示装置３７は、例えばＬＣＤ(Liquid Crystal Display)、ＣＲＴ(Cathode Ray Tube)などから構成される。次に、通信装置３８は、ネットワーク５を介して画像形成装置１及び画像形成装置２との通信を行う装置である。有線ネットワークや無線ネットワークなど含む各種ネットワーク形態に応じた通信をサポートする。
【００３４】
（機能）
次に、本発明の実施形態に係る情報処理システムにおいて、画像形成装置１、プラグイン構成管理サーバ３、及びプラグインサーバ４の各機能について説明する。図４は、画像形成装置１、プラグイン構成管理サーバ３、及びプラグインサーバ４の一実施形態の主要構成を示す機能ブロック図である。図に示されるように、画像形成装置１は、プラグイン管理部１０１、ＵＩ管理部１０２、記憶部１０３、登録部１０４、判断部１０５を含む構成である。またプラグイン構成管理サーバ３は、プラグイン構成管理部３０１、保管部３０２を含む構成である。プラグインサーバ４は、プラグイン管理部４０１、保管部４０２を含む構成である。より詳しくは後述する動作において説明するため、ここでは各機能について簡単に説明する。なお、画像形成装置２については、画像形成装置１と同様であるので、ここでは図示及び機能説明は省略する。
【００３５】
画像形成装置１に関し、プラグイン管理部１０１は、各種のプラグインの管理を行う。例えば、自装置が有するプラグインの構成情報の管理、各種のプラグインのインストール又はアンインストール等の機能変更管理、インストールの際に必要とされる認証情報（例えばライセンス情報）等を管理する。このようにプラグイン管理部１０１は、プラグイン全般に係る管理を司っている。なお、本実施形態において、「プラグイン」とは、画像形成装置１が有する基本機能に対して新たに追加される機能に対応するソフトウェア部品や、画像形成装置１が有する基本機能に対応するソフトウェア部品をいい、基本的にそれぞれ個別に（独立して）インストール及びアンインストール可能であるものをいう。
【００３６】
ＵＩ管理部１０２は、操作パネル１１等への操作画面等の生成、表示制御、及び操作パネル１１等のから入力される指示に応じた処理（動作中のプラグインの動作オブジェクト）の制御等を行う。なお操作画面の生成に関し、画像形成装置１は利用者の好みに合わせて画面を構成する要素（ボタン等）の表示／非表示の切替えや並び替え等のカスタマイズを行うことが可能である。従ってＵＩ管理部１０２は、カスタマイズされた操作画面生成情報であるＵＩ情報を管理している。
【００３７】
記憶部１０３は、自装置が有するプラグインの構成情報（プラグイン構成情報）や、操作画面がカスタマイズされている場合にはそのＵＩ情報を記憶している。そして登録部１０４は、記憶部１０３に記憶されているプラグイン構成情報及びＵＩ情報を、プラグイン構成管理サーバ３に通知して登録する。登録のタイミングとしては、プラグイン構成情報又はＵＩ情報が変更されたときが望ましい。
【００３８】
判断部１０５は、自装置と異なる画像形成装置が故障した場合、プラグイン構成管理サーバ３から故障した画像形成装置のプラグイン構成情報を取得して自装置のプラグイン構成情報と比較し、自装置が有するプラグインと故障した情報処理装置が有するプラグインとの差分を判断する機能を有している。この点、詳細は後述する。
【００３９】
またプラグイン構成管理サーバ３に関し、プラグイン構成管理部３０１は、管理下にある画像形成装置の有するプラグイン構成情報及びＵＩ情報を管理する。具体的には、画像形成装置から通知されるプラグイン構成情報及びＵＩ情報を取得して、管理下にある個々の画像形成装置毎にこれら情報を管理（登録）している。保管部３０２は、通知されたプラグイン構成情報及びＵＩ情報を保管している。
【００４０】
またプラグインサーバ４に関し、プラグイン管理部４０１は、保管部４０２に管理されるプラグイン群及びその情報全般を管理し、画像形成装置１からのダウンロード要求に応じてプラグインの提供を行う。例えば、保管されるプラグイン、各種のプラグインの機能情報、各種のプラグインのバージョン情報、ライセンス情報、プラグイン相互の依存関係情報（依存関係リスト）等を管理している。なお依存関係リストは、依存する側のプラグイン毎に含まれる形でも用意されている。保管部４０２は、各種のプラグインを保管している。プラグインは、所定の機能を実現するためのプログラムモジュール群がバンドルという形で圧縮されたファイル形式で保管される。
【００４１】
以上これらの機能は、実際には前述のＣＰＵ１３ｃ及びＣＰＵ３１が実行するプログラムによりコンピュータに実現させるものである。次に、本発明の実施形態に係る情報処理システム、又は各装置、サーバの動作について詳しく説明していく。
【００４２】
＜動作＞
次に、本発明の実施形態に係る情報処理システムの動作の概要から説明する。図５は、本発明の実施形態に係る概要を説明する図である。図に示される画像形成装置１及び画像形成装置２は、平常時は２台共に稼動しており、各々ユーザに利用されている。これらハードウェア構成は同一であるものとし、プラグイン機能はそれぞれ異なる。また画像形成装置２は、画像形成装置１が有しない機能を有している。そして、本実施形態において、画像形成装置２に障害が発生し故障した場合、画像形成装置１は画像形成装置２が復旧するまでの代替機として利用される。
【００４３】
（１）画像形成装置２は、自装置のプラグイン構成情報が変更されたとき、例えば、プラグイン機能のインストール、アンインストール、又は前述のＵＩ情報更新のタイミングで、自装置のプラグイン構成情報をプラグイン構成管理サーバ３に登録する（Ｓ５０１）。勿論、画像形成装置１も同様の登録動作を行っておく。
【００４４】
（２）画像形成装置２において何らかの障害が発生し、少なくともユーザが利用したい機能の利用が不可能になる（Ｓ５０２）。
【００４５】
（３）管理者(ユーザ)６は、障害発生の旨をサービス（保守担当者）７に連絡を行う。このとき管理者６が画像形成装置１で画像形成装置２の機能を代替させて利用したい旨を伝えると、サービス７は画像形成装置１で使用可能なプラグインのライセンス情報（例えば有効期限付ライセンスキー）を発行する（Ｓ５０３）。
【００４６】
（４）代替機としての画像形成装置１は、プラグイン構成管理サーバ３にアクセスし故障機である画像形成装置２のプラグイン構成情報を取得する（Ｓ５０４）。そして、自装置のプラグイン構成情報と比較し、自装置が有するプラグインと故障した情報処理装置が有するプラグインとの差分を判断する。つまり、画像形成装置２の代替機として稼動するために必要で不足しているプラグインを特定する（Ｓ５０４）。
【００４７】
（５）画像形成装置１は、不足しているプラグイン（機能）を、発行されたライセンス情報を利用してプラグインサーバ４から取得し、取得したプラグインをインストールする（Ｓ５０５）。
【００４８】
このような動作により、画像形成装置１は、故障機である画像形成装置２の機能を一時的に備えることで、画像形成装置２が復旧するまでの間その代替機として稼動する。以下続いて、より説明が必要なステップに関して詳しく説明していく。
【００４９】
（１）のＳ５０１の処理動作について
画像形成装置２は、プラグイン管理部１０１により、プラグイン機能のインストール、アンインストールが可能となっている。またＵＩ管理部１０２により、操作画面のカスタマイズが可能となっている。プラグイン構成又はＵＩ（操作画面）の変更（追加又は削除）により、記憶部１０３に記憶されるプラグイン構成情報及びＵＩ情報もまた更新される。そしてこの更新のタイミングで、登録部１０４は、自装置のプラグイン構成情報及びＵＩ情報をプラグイン構成管理サーバ３に登録する。
【００５０】
（３）のＳ５０３の処理動作について
管理者６は、障害発生の旨をサービス７に連絡を行う代わりに、障害検知システムが利用されてもよい。具体的には、サービス７側はネットワーク５と接続されており、障害検知システムにより、画像形成装置２の障害の発生を管理者６からの連絡を受けずとも主体的に検知できる。例えば、画像形成装置２の障害検知プログラムからサービス７側に通知されてもよいし、サービス７側からの定期的なアクションに対して画像形成装置２からの応答がない場合に、障害発生と判断される。このような場合は、サービス７側から管理者６に対して障害発生の旨の連絡が行われる。
【００５１】
またこのとき、サービス７は画像形成装置１で使用可能なプラグインのライセンス情報（例えば有効期限付ライセンスキー）を発行する。ライセンスキーは、サービス７側から口頭で通知され管理者６が画像形成装置１の操作パネル１１等から操作してライセンスキーを入力する。もしくは、前述の障害検知システムが利用されている場合、サービス７側からネットワーク５を介しリモートで画像形成装置１にアクセスし、ライセンスキーを入力してもよい。ところで、一般にプラグイン（機能）は有償で販売されるものであり、通常、新たにプラグインを追加する場合も同様に無制限ライセンスキーを購入した上でプラグインのダウンロードが行われる。従って、有効期限付のライセンスキーとするのは、代替機として使用する目的からして、一時的にプラグインが利用できればよいからである。
【００５２】
（４）のＳ５０４の処理動作について
管理者６は、プラグイン構成情報を取得するにあたって、画像形成装置１の操作パネル１１等を操作する。図６は、操作画面の一例を示す図である。図に示されるように、リストにはプラグイン構成管理サーバ３の管理下にある画像形成装置の一覧がリスト表示される。ここでは故障機である画像形成装置２（ＭＦＰ２）がリストから選択されると、画像形成装置１はプラグイン構成管理サーバ３から、画像形成装置２のプラグイン構成情報を取得する。なお言うまでもなく、サービス７側とネットワーク５を介して接続されている場合、サービス７側からリモート操作によって同等の操作を行ってもよい。
【００５３】
図７は、確認画面の一例を示す図である。当該確認画面は、取得された画像形成装置２のプラグイン構成情報に基づいて表示されている画像形成装置２のプラグイン構成情報確認画面である。図に示されるように、プラグイン構成情報は、少なくともプラグイン名称や各プラグインのバージョン情報を含む。
【００５４】
次いで、判断部１０５は、自装置のプラグイン構成情報と取得された画像形成装置２のプラグイン構成情報とを比較し、自装置が有するプラグインと故障した画像形成装置２の有するプラグインとの差分を判断する。つまり、画像形成装置２の代替機として稼動するために必要で不足しているプラグインを特定する。例えば、代替機である画像形成装置１の有するプラグインは、「コピーアプリ」、「プリンタアプリ」、「送受信アプリ」であり、故障機である画像形成装置２の有するプラグインは、「コピーアプリ」、「プリンタアプリ」、「送受信アプリ」、及び「メール送受信アプリ」（図７）であるとする。この場合、両装置のプラグインを比較すると、その差分は「メール送受信アプリ」である。つまりこの場合、画像形成装置１は、障害機である画像形成装置２の代替機を担うためには「メール送受信アプリ」が不足している。ゆえに判断部１０５は、差分として、「メール送受信アプリ」が不足しているものと判断する。
【００５５】
またさらに、次のような場合もある。前述したように、プラグイン構成情報は、少なくともプラグイン名称や各プラグインのバージョン情報を含む。従って、判断部１０５は、差分とされるプラグインを判断する際、バージョン情報のチェックを行う。プラグイン自体の差分がない場合でも、バージョンが異なる場合があるからである。つまり、自装置のプラグイン構成情報と取得された画像形成装置２のプラグイン構成情報とを比較して、プラグイン機能は同一であったとしても、あるプラグインのバージョンの点で異なる場合がある。例えば、両装置ともに「コピーアプリ」のプラグインを有しているものの、自装置はそのバージョンが「1.00」であるとし、画像形成装置２はそのバージョンが「1.01」であるとする。この場合、画像形成装置２の「コピーアプリ」は、上位のバージョンであるので、より付加的な機能を備えている可能性がある。従って、判断部１０５は、プラグインのバージョンの点で異なる場合、上位とされるバージョンのプラグインを差分として判断する。そして、上位とされるバージョンのプラグインがダウンロードされると、下位とされるバージョンのプラグインに上書きインストール（アップグレード）がなされる。なお、自装置の有するプラグインが上位バージョンで、故障機側のプラグインが下位バージョンである場合は、一般に上位バージョンは下位バージョンを含むので、差分として判断しなくともよい。勿論、完全同一に代替したい場合は、バージョンダウンを行うこともできる。
【００５６】
なおここで、障害機である画像形成装置２で操作画面がカスタマイズされている場合、画像形成装置１はプラグイン構成管理サーバ３から画像形成装置２のＵＩ情報を取得しておく。
【００５７】
（５）のＳ５０５の処理動作について
画像形成装置１は、不足しているプラグインを前述のライセンス情報（例えばライセンスキー）を利用してプラグインサーバ４から取得し、取得したプラグインをインストールする。前述の例でいえば、画像形成装置１は、「メール送受信アプリ」のプラグインをプラグインサーバ４から取得しインストールする。なおライセンスは、判断部１０５が差分として判断したプラグインに対して有効とされる。図８に、プラグインのインストール画面の一例を示す。
【００５８】
また、画像形成装置２のＵＩ情報が取得されている場合、ＵＩ管理部１０２が当該ＵＩ情報を操作画面生成情報として適用することで、画像形成装置１はプラグイン機能の代替のみならず、画像形成装置２の操作画面（ユーザインターフェース）をも含めて再現できる。
【００５９】
以上これまでの処理動作によって、画像形成装置１は障害機である画像形成装置２と同一の機能を備え、暫くの間その代替機として利用されることができる。図９は、画像形成装置１の操作パネル上に表示される操作画面の一例を示す。使用期限付きで「メール送受信アプリ」機能が加わって、当該機能が利用可能となっている。また操作画面は、画像形成装置２で使用されていた操作画面で表示されている。
【００６０】
(妥当性確認)
ここで、画像形成装置１は、（４）のＳ５０４及び（５）のＳ５０５の処理動作において、プラグインの妥当性確認を行なう。例えば、あるプラグインが取得されても、そのプラグインが依存するプラグインが存在する場合、その一のプラグインのみでは動作せず、整合性が取れない場合がある。
【００６１】
図１０は、プラグインの依存関係を説明する図の一例である。図中、依存されるプラグインＡと依存するプラグインａとが示されており、依存するプラグインａが動作するには、依存されるプラグインＡが必要である。例えば、「コピーアプリ」（依存するプラグインａ）は、「読み取り」及び「印刷」に係るプラグイン（依存されるプラグインＡ）に依存するプラグインである。即ち、「コピーアプリ」は、「読み取り」及び「印刷」に係るプラグインがないと動作することができない。また例えば、「メール送受信アプリ」（依存するプラグインａ）は、「送受信アプリ」のプラグイン（依存されるプラグインＡ）に依存するプラグインである。即ち、「メール送受信アプリ」は、「送受信アプリ」のプラグインがないと動作することができない。
【００６２】
従って、判断部１０５は、差分と判断されたプラグインに対して妥当性確認を行ない、そのプラグインがあるプラグインに依存する場合、画像形成装置１は既に、その依存するプラグインを有しているかの判断を行なう。判断部１０５は、依存するプラグインを有していないと判断した場合、そのプラグインもまた差分として判断するようにすれば、依存するプラグインが併せてダウンロードされインストールされる。なお、妥当性確認にあたっては、依存関係リストが参照される必要がある。前述したように、依存関係リストは、プラグインサーバ５が有しているので、判断部１０５は妥当性確認を行なう際、プラグインサーバ５から依存関係リストを取得することが望ましい。依存関係リストは、依存する側のプラグイン毎にも含まれているが、その為には、妥当性確認を行なう対象のプラグインを一旦取得した上で、その中に含まれる依存関係リストを確認する必要があるからである。
【００６３】
さらにまた、仮に差分としてあるプラグインが取得されても、既存のプラグインとの関係において、排他関係（逆依存関係ともいえる）にあるような場合、単純にそのプラグインをインストールすることはできない。従って、プラグインをインストールする際には、他のプラグインとの関係を考慮する必要がある。この排他関係の確認には、同様に依存関係リストが参照される。
【００６４】
図１１は、プラグインの妥当性確認を説明するフローチャートである。前述の、（４）のＳ５０４及び（５）のＳ５０５の処理動作を含む。
【００６５】
まず判断部１０５は、前述したように、自装置のプラグイン構成情報と障害機のプラグイン構成情報と比較し、プラグインの差分を判断する(Ｓ１１０１)。このとき前述のように、バージョンレベルでの差分を判断する。
【００６６】
両装置にプラグインの差分がない場合(Ｓ１１０２)、自装置（画像形成装置１）と障害機（画像形成装置２）は同一構成であるのでそのまま処理を終了する。プラグインの差分がある場合(Ｓ１１０２)、判断部１０５は、妥当性確認を行なうため、プラグインサーバ５から依存関係リストを取得し、これを参照する(Ｓ１１０３)。ここで、差分と判断されたプラグインをプラグインａと呼ぶ。依存関係リストに基づき、プラグインａが依存するプラグインの有無を確認し(Ｓ１１０４)、依存関係のある、例えばプラグインＡがある場合、判断部１０５は、その依存されるプラグインＡもまた差分として判断する(Ｓ１１０５)。
【００６７】
次いで、判断部１０５は、プラグインａが既存プラグイン（既に画像形成装置１が有しているプラグイン）と排他関係にあるか、依存関係リストに基づき確認する(Ｓ１１０６)。排他関係にある、例えば既存プラグインＢがある場合、プラグイン管理部１０１は、その排他関係にある既存プラグインＢをアンインストールする（Ｓ１１０７)。なおこのアンインストールに伴って、従来画像形成装置１において利用できていた一部機能は利用できなくなる。
【００６８】
そしてプラグイン管理部１０１は、差分と判断された自装置が不足するプラグインをプラグインサーバ４から取得（ダウンロード）し（Ｓ１１０８）、取得したプラグインをインストールする（Ｓ１１０９）。前述の例でいえば、プラグインａ、もしくはプラグインａ及びプラグインＡを取得し自装置にインストールする。
【００６９】
なお、プラグインのバージョン違いにより、あるプラグインが差分と判断された場合、妥当性確認に関してもまたバージョンレベルで行われる。例えば、図７に示されるような、「メール送受信アプリ」のバージョン「1.02」においては、依存関係にある「送受信アプリ」は同等のバージョン「1.02」が必要であるとする。仮に代替機側（画像形成装置１）において、既存プラグインとして「送受信アプリ」バージョン「1.00」を有していたとしてもこれは利用できない。つまり、依存関係リストに基づき「メール送受信アプリ」のバージョン「1.02」が依存するプラグインのバージョンを確認し(Ｓ１１０４)、判断部１０５は、依存関係のある「送受信アプリ」のバージョン「1.02」もまた差分として判断する。そして、プラグイン管理部１０１が「送受信アプリ」のバージョン「1.02」をプラグインサーバ４から取得する。
【００７０】
以上のように、画像形成装置１は、代替機として動作すべく、障害機である画像形成装置２と同一の機能を備えるよう、プラグイン構成情報の比較に基づき差分とされるプラグインのインストールを行う。このとき、プラグインの依存関係（排他関係含む）をチェックして、そのプラグインのインストールやインストール後の機能動作が妥当なものであるかどうかの確認を行なうので、代替機としての機能動作の信頼度を高めることができる。
【００７１】
（復旧）
こうして画像形成装置１は、暫くの間画像形成装置２の代替機として稼動することになるが、画像形成装置２が復旧し本来の機能を提供できるようになった場合、画像形成装置１は、代替機の前の、元の状態に復旧させる必要がある。この場合、これまで説明を行った仕組みを利用すればよい。
【００７２】
まず画像形成装置１は、自装置の現在のプラグイン構成情報と、代替機となる以前のプラグイン構成情報と比較し、プラグインの差分を判断する。自装置の現在のプラグイン構成情報は、記憶部１０３に記憶されている。また、以前のプラグイン構成情報は、プラグイン構成管理サーバ３にアクセスして取得することもできる。また、代替機となる以前の操作画面を生成するためのＵＩ情報も併せて取得しておく。
【００７３】
そして画像形成装置１は、差分と判断されたプラグインをアンインストールする。また、元のＵＩ情報も操作画面に適用する。なお、追加されたプラグインと排他関係があるものとして削除されたプラグインがある場合は、プラグインサーバ４から取得し、取得したプラグインをインストールする。ライセンスキーについては、画像形成装置１は、もとよりそのプラグインに対応するライセンスキーを有している（購入している）ので、それを使用すればよい。
【００７４】
以上のようにすれば、画像形成装置１を、代替機の前の、元の状態に復旧させることができる。
【００７５】
＜変形例１＞
変形例として、より簡易な構成とするため、プラグイン構成管理サーバ３を廃し、障害機と代替機とで相互に、プラグイン構成情報及びＵＩ情報を共有する構成とする。図１２は、本変形例に係るシステムの一実施形態におけるネットワーク図である。図１のネットワーク図と対比すると、プラグイン構成管理サーバ３が省略されている。
【００７６】
本変形例に係る画像形成装置の記憶部１０３は、自装置が有するプラグインの構成情報及びＵＩ情報を記憶する他、他の画像形成装置のプラグインの構成情報及びＵＩ情報をも記憶する。そして登録部１０４は、記憶部１０３に記憶されている自装置のプラグイン構成情報及びＵＩ情報を、プラグイン構成管理サーバ３も代えて、他の画像形成装置に対して通知し登録するようにする。
【００７７】
そして、画像形成装置１は、画像形成装置２が故障した場合、プラグイン構成情報を、プラグイン構成管理サーバ３から取得することなく、自装置内の記憶部１０３から取得する。このように構成することで、本発明の実施形態に係る情報処理システムをより簡易な構成で実現できる。
【００７８】
＜変形例２＞
また変形例として、画像形成装置１が画像形成装置（故障機）の機能を代替する際に、完全に同一の機能を代替しなくてもよい場合がある。つまり、利用者が利用したい機能のみを選択し、その選択された機能のみを代替機に搭載できるようにする。
【００７９】
図１３は、インストールするプラグインの選択画面の一例を示す。代替機としての画像形成装置１は、故障機である画像形成装置２のプラグイン構成情報を取得すると、既に図７に示したような確認画面１３０１が表示される。そして判断部１０５により、差分と判断されたプラグインが選択画面１３０２に表示され、ユーザに何れのプラグインをインストールするかの選択を促す。図１３に示される例では、差分のプラグインの一例として、「メール送受信アプリ」、「ＸＸＸアプリ」、「ＹＹＹアプリ」が選択画面１３０２に表示されている。ユーザは、チェックボックスにチェックするなどしてインストールするプラグインの選択を行う。するとプラグイン管理部１０１は、ここで選択されたプラグインを自装置が不足するプラグインとしてプラグインサーバ４から取得（ダウンロード）し、取得したプラグインをインストールする。
【００８０】
このように構成することで、利用者が利用したい必要な機能のみを代替機に備えるようにすることができるので、より迅速に代替機を再現することができる。また、いわゆるダウンタイムの縮小に貢献する。
【００８１】
以上、本発明の実施形態によれば、利用したい機能を搭載した装置が故障したとき、代替機としての他装置に、故障機と同等の機能構成を迅速に再現可能な情報処理装置、情報処理システム、及びプログラムを提供することが可能である。
【００８２】
なお、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００８３】
１        画像形成装置
２        画像形成装置
３        プラグイン構成管理サーバ
４        プラグインサーバ
５        ネットワーク
６        管理者
７        サービス
１１        操作パネル
１１ａ    入力装置
１１ｂ    表示装置
１２        記憶メディアＩ／Ｆ
１２ａ    ドライブ装置
１２ｂ    記録媒体
１３        コントローラ
１３ａ    ＲＯＭ
１３ｂ    ＲＡＭ
１３ｃ    ＣＰＵ
１４        データ通信Ｉ／Ｆ
１４ａ    インターフェース装置
１５        スキャナ
１５ａ    画像読取装置
１６        プロッタ
１６ａ    印刷装置
１７        ＨＤＤ
３１        ＣＰＵ
３２        ＲＯＭ
３３        ＲＡＭ
３４        補助記憶装置
３５        記憶媒体読取装置
３６        入力装置
３７        表示装置
３８        通信装置
１０１    プラグイン管理部
１０２    ＵＩ管理部
１０３    記憶部
１０４    登録部
１０５    判断部
３０１    プラグイン構成管理部
３０２    保管部
４０１    プラグイン管理部
４０２    保管部
【先行技術文献】
【特許文献】
【００８４】
【特許文献１】特開２００６‐２６１９７０号公報
【図１】
2010266953.tif 000003
【図２】
2010266953.tif 000004
【図３】
2010266953.tif 000005
【図４】
2010266953.tif 000006
【図５】
2010266953.tif 000007
【図６】
2010266953.tif 000008
【図７】
2010266953.tif 000009
【図８】
2010266953.tif 000010
【図９】
2010266953.tif 000011
【図１０】
2010266953.tif 000012
【図１１】
2010266953.tif 000013
【図１２】
2010266953.tif 000014
【図１３】
2010266953.tif 000015