(57)【要約】【課題】  各デバイスをユーザの要求に応じて適切にカスタマイズすることができるデバイス管理装置、デバイス管理方法、およびデバイス管理プログラムを提供する。【解決手段】  ＭＦＰ１ａに対するカスタマイズが要求されたとき、そのカスタマイズがすでに実施済みか否かが判定される。実施済みでない場合、上記カスタマイズを実現するための１つまたは複数の制御モジュールが生成される。この生成された制御モジュールが、ＭＦＰ１ａに配信されるとともに、記憶される。実施済みの場合、上記記憶されている各制御モジュールのうち、上記カスタマイズを実現するための１つまたは複数の制御モジュールがＭＦＰ１ａに配信される。【選択図】      図１
2004288152.tif 000002
【特許請求の範囲】
【請求項１】
各デバイスの少なくとも１つに対するカスタマイズが要求されたとき、そのカスタマイズがすでに実施済みか否かを判定する判定部と、
前記判定部で実施済みでないと判定された場合に、前記カスタマイズを実現するための１つまたは複数の制御モジュールを生成する生成部と、
前記生成された制御モジュールを前記カスタマイズの対象の前記デバイスに配信する通信部と、
前記生成された制御モジュールを前記各デバイスに対する配信用として記憶する記憶部と、
前記判定部で実施済みと判定された場合に、前記記憶されている各制御モジュールのうち、前記カスタマイズを実現するための１つまたは複数の制御モジュールを抽出し、抽出した制御モジュールを前記カスタマイズの対象の前記デバイスに配信する通信部と、
を備えたことを特徴とするデバイス管理装置。
【請求項２】
前記要求の発信者を認証する認証部と、
前記認証結果に応じて、前記カスタマイズの実施を制限する制御部と、
をさらに備えたことを特徴とする請求項１に記載のデバイス管理装置。
【請求項３】
各デバイスのユーザからその各デバイスに対するカスタマイズが要求されたとき、その要求元のユーザおよびカスタマイズ対象のデバイスを認証する認証部と、
前記認証されたユーザおよびデバイスに対して実施可能と定められている１つまたは複数のカスタマイズを選択する選択部と、
前記選択されたカスタマイズを前記認証されたユーザに知らせ、知らせたカスタマイズの少なくとも１つを前記認証されたユーザに指定させる通信部と、
前記認証されたデバイスの属性を解析する解析部と、
前記指定されたカスタマイズが、前記認証されたデバイスに対して実際に有効か否かを、前記解析結果に応じて判定する第１判定部と、
前記第１判定部で有効と判定された場合に、前記指定されたカスタマイズがすでに実施済みか否かを判定する第２判定部と、
前記第２判定部で実施済みでないと判定された場合に、前記指定されたカスタマイズを実現するための１つまたは複数の制御モジュールを生成する生成部と、
前記生成された制御モジュールを前記認証されたデバイスに配信する通信部と、
前記生成された制御モジュールを前記各デバイスに対する配信用として記憶する記憶部と、
前記第２判定部で実施済みと判定された場合に、前記記憶されている各制御モジュールのうち、前記指定されたカスタマイズを実現するための１つまたは複数の制御モジュールを抽出し、抽出した制御モジュールを前記認証されたデバイスに配信する通信部と、
を備えたことを特徴とするデバイス管理装置。
【請求項４】
前記第１判定部で有効でないと判定された場合に、前記指定されたカスタマイズに代替可能なカスタマイズが有るか否かを判定する第３判定部と、
前記第３判定部で有りと判定された場合に、前記代替可能なカスタマイズがすでに実施済みか否かを判定する第４判定部と、
前記第４判定部で実施済みでないと判定された場合に、前記代替可能なカスタマイズを実現するための１つまたは複数の制御モジュールを生成する第２生成部と、
前記第２生成部で生成された制御モジュールを前記認証されたデバイスに配信する通信部と、
前記第２生成部で生成された制御モジュールを前記各デバイスに対する配信用として前記記憶部に記憶する制御手段と、
前記第４判定部で実施済みと判定された場合に、前記記憶部に記憶されている各制御モジュールのうち、前記代替可能なカスタマイズを実現するための１つまたは複数の制御モジュールを抽出し、抽出した制御モジュールを前記認証されたデバイスに配信する第６通信部と、
をさらに備えたことを特徴とする請求項３に記載のデバイス管理装置。
【請求項５】
各デバイスのユーザからその各デバイスの少なくとも１つに対するカスタマイズが要求されたとき、そのカスタマイズがすでに実施済みか否かを判定するステップと、
前記実施済みでないと判定された場合に、前記カスタマイズを実現するための１つまたは複数の制御モジュールを生成するステップと、
前記生成された制御モジュールを前記カスタマイズの対象の前記デバイスに配信するステップと、
前記生成された制御モジュールを前記各デバイスに対する配信用として記憶するステップと、
前記実施済みと判定された場合に、前記記憶されている各制御モジュールのうち、前記カスタマイズを実現するための１つまたは複数の制御モジュールを抽出し、抽出した制御モジュールを前記カスタマイズの対象の前記デバイスに配信するステップと、
を備えたことを特徴とするデバイス管理方法。
【請求項６】
前記各デバイスのユーザからその各デバイスに対するカスタマイズが要求されたとき、その要求元のユーザを認証するステップと、
前記認証結果に応じて、前記カスタマイズの実施を制限するステップと、
をさらに備えたことを特徴とする請求項５に記載のデバイス管理方法。
【請求項７】
コンピュータに、
各デバイスのユーザからその各デバイスの少なくとも１つに対するカスタマイズが要求されたとき、そのカスタマイズがすでに実施済みか否かを判定する手順と、
前記実施済みでないと判定された場合に、前記カスタマイズを実現するための１つまたは複数の制御モジュールを生成する手順と、
前記生成された制御モジュールを前記カスタマイズの対象の前記デバイスに配信する手順と、
前記生成された制御モジュールを前記各デバイスに対する配信用として記憶する手順と、
前記実施済みと判定された場合に、前記記憶されている各制御モジュールのうち、前記カスタマイズを実現するための１つまたは複数の制御モジュールを抽出し、抽出した制御モジュールを前記カスタマイズの対象の前記デバイスに配信する手順と、
を実現させるためのデバイス管理プログラム。
【請求項８】
前記各デバイスのユーザからその各デバイスに対するカスタマイズが要求されたとき、その要求元のユーザを認証する手順と、
前記認証結果に応じて、前記カスタマイズの実施を制限する手順と、
をさらに備えたことを特徴とする請求項７に記載のデバイス管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、デバイスをカスタマイズするデバイス管理装置、デバイス管理方法、およびデバイス管理プログラムに関する。
【背景技術】
【０００２】
メーカーから出荷されてユーザに納入されるデバイスたとえば画像形成装置には、少なくとも１つの制御プログラムが記憶されている。この制御プログラムは、出荷前に、画像形成装置に記憶される。
【０００３】
画像形成装置が出荷されてユーザに納入された後、ユーザが、画像形成装置の機能（制御プログラム）を修正したり、画像形成装置に新しい機能（制御プログラム）を追加したいことがある。
【０００４】
このようなユーザの要求に応じた機能の修正および追加などのいわゆるカスタマイズを、実施できるようにしたシステムがある。
【０００５】
たとえば、デバイスにパーソナルコンピュータが接続され、そのパーソナルコンピュータにサーバからアップデート用のプログラムが供給される。この供給されたプログラムがパーソナルコンピュータ上で実行されることにより、デバイス内の制御プログラムが変更される（例えば特許文献１）。
【０００６】
あるいは、複数のデバイスが必要とする多数の制御プログラムが予めサーバに記憶され、その記憶された各制御プログラムのうち、各デバイスが必要とする制御プログラムがそれぞれのデバイスに供給される（例えば特許文献２）。
【０００７】
あるいは、１つまたは複数のデバイスの制御プログラムに対して実施されたカスタマイズに関する情報が、カスタマイズ情報としてサーバに記憶される。このカスタマイズ情報を複数のデバイスで参照することができる（例えば特許文献３）。
【特許文献１】特開平１０−３０１８００号公報
【特許文献１】特開平１１−２７２４７１号公報
【特許文献１】特開２０００−２９８５６１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、従来、各デバイスをユーザの要求に応じて適切にカスタマイズすることが困難であった。  
この発明は、上記の事情を考慮したもので、各デバイスをユーザの要求に応じて適切にカスタマイズすることができるデバイス管理装置、デバイス管理方法、およびデバイス管理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００９】
請求項１に係る発明のデバイス管理装置は、各デバイスの少なくとも１つに対するカスタマイズが要求されたとき、そのカスタマイズがすでに実施済みか否かを判定する判定部と、この判定部で実施済みでないと判定された場合に、上記カスタマイズを実現するための１つまたは複数の制御モジュールを生成する生成部と、この生成された制御モジュールを上記カスタマイズの対象の上記デバイスに配信する通信部と、上記生成された制御モジュールを上記各デバイスに対する配信用として記憶する記憶部と、上記判定部で実施済みと判定された場合に、上記記憶されている各制御モジュールのうち、上記カスタマイズを実現するための１つまたは複数の制御モジュールを抽出し、抽出した制御モジュールを上記カスタマイズの対象の上記デバイスに配信する通信部と、を備えている。
【００１０】
請求項３に係る発明のデバイス管理装置は、各デバイスのユーザからその各デバイスに対するカスタマイズが要求されたとき、その要求元のユーザおよびカスタマイズ対象のデバイスを認証する認証部と、上記認証されたユーザおよびデバイスに対して実施可能と定められている１つまたは複数のカスタマイズを選択する選択部と、上記選択されたカスタマイズを上記認証されたユーザに知らせ、知らせたカスタマイズの少なくとも１つを上記認証されたユーザに指定させる通信部と、上記認証されたデバイスの属性を解析する解析部と、上記指定されたカスタマイズが、上記認証されたデバイスに対して実際に有効か否かを、上記解析結果に応じて判定する第１判定部と、上記第１判定部で有効と判定された場合に、上記指定されたカスタマイズがすでに実施済みか否かを判定する第２判定部と、上記第２判定部で実施済みでないと判定された場合に、上記指定されたカスタマイズを実現するための１つまたは複数の制御モジュールを生成する生成部と、上記生成された制御モジュールを上記認証されたデバイスに配信する通信部と、上記生成された制御モジュールを上記各デバイスに対する配信用として記憶する記憶部と、上記第２判定部で実施済みと判定された場合に、上記記憶されている各制御モジュールのうち、上記指定されたカスタマイズを実現するための１つまたは複数の制御モジュールを抽出し、抽出した制御モジュールを上記認証されたデバイスに配信する通信部と、を備えている。
【００１１】
請求項５に係る発明のデバイス管理方法は、各デバイスのユーザからその各デバイスの少なくとも１つに対するカスタマイズが要求されたとき、そのカスタマイズがすでに実施済みか否かを判定するステップと、上記実施済みでないと判定された場合に、上記カスタマイズを実現するための１つまたは複数の制御モジュールを生成するステップと、上記生成された制御モジュールを上記カスタマイズの対象の上記デバイスに配信するステップと、上記生成された制御モジュールを上記各デバイスに対する配信用として記憶するステップと、上記実施済みと判定された場合に、上記記憶されている各制御モジュールのうち、上記カスタマイズを実現するための１つまたは複数の制御モジュールを抽出し、抽出した制御モジュールを上記カスタマイズの対象の上記デバイスに配信するステップと、を備えている。
【００１２】
請求項７に係る発明のデバイス管理プログラムは、コンピュータに、各デバイスのユーザからその各デバイスの少なくとも１つに対するカスタマイズが要求されたとき、そのカスタマイズがすでに実施済みか否かを判定する手順と、上記実施済みでないと判定された場合に、上記カスタマイズを実現するための１つまたは複数の制御モジュールを生成する手順と、上記生成された制御モジュールを上記カスタマイズの対象の上記デバイスに配信する手順と、上記生成された制御モジュールを上記各デバイスに対する配信用として記憶する手順と、上記実施済みと判定された場合に、上記記憶されている各制御モジュールのうち、上記カスタマイズを実現するための１つまたは複数の制御モジュールを抽出し、抽出した制御モジュールを上記カスタマイズの対象の上記デバイスに配信する手順と、を実現させる。
【発明の効果】
【００１３】
この発明によれば、各デバイスをユーザの要求に応じて適切にカスタマイズすることができるデバイス管理装置、デバイス管理方法、およびデバイス管理プログラムを提供できる。
【発明を実施するための最良の形態】
【００１４】
［１］以下、この発明の第１の実施形態を説明する。
【００１５】
図１に示すように、複数のデバイスたとえば多機能型の画像形成装置（以下、ＭＦＰという）１ａ，１ｂ，…、少なくとも１つのユーザ用端末（たとえばパーソナルコンピュータ）２、コンピュータを用いたデバイス管理装置であるメインサーバ３、およびコンピュータを用いたアプリケーションサーバ４が、通信ネットワーク５を介して相互に接続されている。
【００１６】
ＭＦＰ１ａ，１ｂ，…は、システムコントローラ１０、メインユニット１１、オプションユニット１２、制御プログラム記憶用のメモリ１３、当該ＭＦＰの属性（機種、性能、オプションユニット１２の有無など）を表わすデバイス情報が記憶されたデバイス情報テーブル１４、上記通信ネットワーク５を通して情報を送受信する通信部１５、サーバ３から受けた制御モジュール等の情報を解析する情報解析部１６などを備えている。
【００１７】
上記メインユニット１１は、図２に示すように、ＣＰＵ２０、原稿Ｄの画像を読取るスキャナ２１、このスキャナ２１の読取画像を処理する画像処理部２２、この画像処理部２２で処理された画像を用紙Ｐにプリントするプリンタ２３、コントロールパネル２４などで構成されている。コントロールパネル２４は、液晶表示部２５および操作部２６を有している。液晶表示部２５と操作部２６とにより、タッチパネル式液晶表示部が構成される場合もある。上記オプションユニット１２は、たとえばＦＡＸインタフェースである。
【００１８】
上記メモリ１３には、当該ＭＦＰを制御するための制御プログラムが書き替え可能に記憶されている。この制御プログラムは、上記液晶表示部２５の表示を制御するためのＧＵＩ（Graphical User Interface）制御モジュール、アプリケーションサーバ４のメモリ１７に記憶されているアプリケーションプログラムと連携して当該ＭＦＰにおいて特定の機能を実現させるためのアプリケーション制御モジュール、メインユニット１１およびオプションユニット１２を制御するためのデバイス制御モジュールにより、構成されている。
【００１９】
ＭＦＰ１ａ，１ｂ，…のユーザは、ＭＦＰ１ａ，１ｂ，…における上記コントロールパネル２４を操作することにより、あるいはユーザ用端末２を操作することにより、ＭＦＰ１ａ，１ｂ，…のうち少なくとも１つのＭＦＰに対するカスタマイズを要求することができる。
【００２０】
一方、メインサーバ３は、システムコントローラ３０、プログラムソース記憶用のメモリ３１、デバイス管理テーブル３２、生成モジュール管理テーブル３３、カスタマイズ管理テーブル３４、デバイス情報解析部３５、ユーザ情報管理テーブル３６、カスタマイズ情報管理テーブル３７、履歴情報管理テーブル３８、ＧＵＩ制御モジュール生成部３９、アプリケーション制御モジュール生成部４０、デバイス制御モジュール生成部４１、および通信部４２を備えている。
【００２１】
上記メモリ３１には、ＧＵＩ制御用のプログラムソース群、アプリケーション制御用のプログラムソース群、デバイス制御用のプログラムソース群が記憶されているとともに、当該発明の実行に係るデバイス管理プログラム（図示しない）が記憶されている。上記デバイス管理テーブル３２には、ＭＦＰ１ａ，１ｂ，…のネットワークアドレスおよび属性が記憶されている。上記生成モジュール管理テーブル３３には、上記各生成部３９，４０，４１で生成されてＭＦＰ１ａ，１ｂ，…への配信（いわゆるダウンロード）が可能な１つまたは複数の制御モジュールを表わす情報（例えば制御モジュール名）が記憶されている。たとえば、生成モジュール管理テーブル３３には、ＭＦＰ１ａ，１ｂ，…に新しい機能（メンテナンス機能など）を追加するための１つまたは複数の制御モジュールの配信が可能となっていることを表わす情報、ＭＦＰ１ａ，１ｂ，…の機能の不具合を修正するための１つまたは複数の制御モジュールの配信が可能となっていることを表わす情報、ＭＦＰ１ａ，１ｂ，…の機能を利便性の良い機能に変更するための１つまたは複数の制御モジュールの配信が可能となっていることを表わす情報、などが記憶されている。
【００２２】
ＭＦＰ１ａ，１ｂ，…のユーザごとに、かつ複数のユーザの集合であるグループごとに、ＭＦＰ１ａ，１ｂ，…に対するカスタマイズを制限するための権限レベルが階層的に定められている。権限レベルが高いユーザおよびグループはカスタマイズの制限が少なく、権限レベルが低いユーザおよびグループはカスタマイズの制限が多い。
【００２３】
上記カスタマイズ管理テーブル３４には、ユーザおよびグループの権限レベル別に、かつＭＦＰ１ａ，１ｂ，…の属性別に、実施可能な１つまたは複数のカスタマイズとそのカスタマイズを実現するための制御モジュールの名称とが対応付けて記憶されている。なお、上記実施可能なカスタマイズに、代替可能なカスタマイズが有れば、その代替可能なカスタマイズとその代替可能なカスタマイズを実現するための制御モジュールの名称とが対応付けた形で、上記カスタマイズ管理テーブル３４に記憶されている。
【００２４】
上記デバイス情報解析部３５は、ユーザから要求されているカスタマイズ対象のＭＦＰの属性を解析する。
【００２５】
上記ユーザ情報管理テーブル３６には、ＭＦＰ１ａ，１ｂ，…の全てのユーザに関するユーザ情報（個人名、グループ名、パスワード、および上記権限レベルなど）が記憶されている。上記カスタマイズ情報管理テーブル３７には、カスタマイズ方法（フレームワークなど）が記憶されている。上記履歴情報管理テーブル３８には、カスタマイズの実施ごとに、その実施されたカスタマイズ（制御モジュールの生成）に関する履歴情報が記憶される。
【００２６】
上記ＧＵＩ制御モジュール生成部３９は、ユーザから要求されているカスタマイズの内容、デバイス管理テーブル３２内の情報、カスタマイズ管理テーブル３４内の情報などに基づき、メモリ３１内のＧＵＩ制御用のプログラムソース群から少なくとも１つまたは複数のプログラムソースを抽出し、その抽出したプログラムソースを編集して少なくとも１つのＧＵＩ制御プログラム（ＧＵＩ制御モジュールという）を生成する。上記アプリケーション制御モジュール生成部４０は、ユーザから要求されているカスタマイズの内容、デバイス管理テーブル３２内の情報、カスタマイズ管理テーブル３４内の情報などに基づき、メモリ３１内のアプリケーション制御用のプログラムソース群から１つまたは複数のプログラムソースを抽出し、その抽出したプログラムソースを編集して少なくとも１つのアプリケーション制御プログラム（アプリケーション制御モジュールという）を生成する。上記デバイス制御モジュール生成部４１は、ユーザから要求されているカスタマイズの内容、デバイス管理テーブル３２内の情報、カスタマイズ管理テーブル３４内の情報などに基づき、メモリ３１内のデバイス制御用のプログラムソース群から１つまたは複数のプログラムソースを抽出し、その抽出したプログラムソースを編集して少なくとも１つのデバイス制御プログラム（デバイス制御モジュールという）を生成する。
【００２７】
上記通信部４２は、ＭＦＰ１ａ，１ｂ，…、ユーザ用端末２、メインサーバ３、およびアプリケーションサーバ４との間で情報を送受信する。
【００２８】
また、この通信部４２および上記システムコントローラ３０は、主要な機能として次の（１）〜（１６）の手段を備えている。
【００２９】
（１）ＭＦＰ１ａ，１ｂ，…のユーザからその各ＭＦＰに対するカスタマイズが要求されたとき、その要求元のユーザおよびカスタマイズ対象のＭＦＰを認証する認証手段。
【００３０】
（２）上記認証されたユーザおよびＭＦＰに対して実施可能と定められている１つまたは複数のカスタマイズを選択する選択手段。
【００３１】
（３）上記選択されたカスタマイズを上記認証されたユーザに知らせ、知らせたカスタマイズの少なくとも１つを前記認証されたユーザに指定させる通信手段。
【００３２】
（４）上記認証されたＭＦＰの属性をデバイス情報解析部３５で解析させる手段。
【００３３】
（５）上記指定されたカスタマイズが、上記認証されたＭＦＰに対して実際に有効か否かを、上記解析結果に応じて判定する第１判定手段。
【００３４】
（６）上記第１判定手段で有効と判定された場合に、上記指定されたカスタマイズがすでに実施済みか否かを判定する第２判定手段。
【００３５】
（７）上記第２判定手段で実施済みでないと判定された場合に、上記指定されたカスタマイズを実現するための１つまたは複数の制御モジュール（制御プログラム）を生成部３９，４０，４１で生成させる手段。
【００３６】
（８）上記生成された制御モジュールを上記認証されたＭＦＰに配信する通信手段。
【００３７】
（９）上記生成された制御モジュールをＭＦＰ１ａ，１ｂ，…に対する配信用として通信部４２に記憶する制御手段。
【００３８】
（10）上記第２判定手段で実施済みと判定された場合に、通信部４２に記憶されている各制御モジュールのうち、上記指定されたカスタマイズを実現するための１つまたは複数の制御モジュールを抽出し、抽出した制御モジュールを上記認証されたＭＦＰに配信する通信手段。
【００３９】
（11）上記第１判定手段で有効でないと判定された場合に、上記指定されたカスタマイズに代替可能なカスタマイズが有るか否かを判定する第３判定手段。
【００４０】
（12）上記第３判定手段で有りと判定された場合に、その代替可能なカスタマイズがすでに実施済みか否かを判定する第４判定手段。
【００４１】
（13）上記第４判定手段で実施済みでないと判定された場合に、上記代替可能なカスタマイズを実現するための１つまたは複数の制御モジュールを生成部３９，４０，４１で生成させる手段。
【００４２】
（14）上記（13）の手段で生成された制御モジュールを上記認証されたＭＦＰに配信する通信手段。
【００４３】
（15）上記（13）の手段で生成された制御モジュールをＭＦＰ1ａ，1ｂ，…に対する配信用として通信部４２に記憶する制御手段。
【００４４】
（16）上記第４判定部で実施済みと判定された場合に、通信部４２に記憶されている各制御モジュールのうち、上記代替可能なカスタマイズを実現するための１つまたは複数の制御モジュールを抽出し、抽出した制御モジュールを上記認証されたＭＦＰに配信する通信手段。
【００４５】
つぎに、図３のフローチャートを参照しながら、作用を説明する。
【００４６】
ＭＦＰ１ａのユーザＸが、ＭＦＰ１ａをカスタマイズする場合を例に説明する。
【００４７】
ユーザＸによりユーザ用端末２が操作されて、ＭＦＰ１ａに対するカスタマイズが要求されると（ステップ１０１のＹＥＳ）、そのユーザＸおよびＭＦＰ１ａがメインサーバ３で認証される（ステップ１０２）。この認証結果に基づいてカスタマイズ管理テーブル３４が参照されることにより、ユーザＸおよびＭＦＰ１ａに対して実施可能と定められている１つまたは複数のカスタマイズが選択される（ステップ１０３）。すなわち、ユーザＸの権限レベルが高ければ、選択されるカスタマイズの個数が多い。ユーザＸの権限レベルが低ければ、選択されるカスタマイズの個数が少ない。選択されたカスタマイズは、ユーザ用端末２に配信されて、ユーザ用端末２のディスプレイで表示される。この表示画面の例を図４に示している。図４は、ＭＦＰ１ａの液晶表示部２５で表示される操作用画面のヘッダ画像をカスタマイズする場合のユーザ用初期画面である。
【００４８】
このユーザ用初期画面において、１つのカスタマイズが指定されると（ステップ１０５のＹＥＳ）、カスタマイズ対象のＭＦＰ１ａの属性が解析される（ステップ１０６）。この解析結果に基づき、上記指定されたカスタマイズがＭＦＰ１ａに対して実際に有効か否かが判定される（ステップ１０７）。たとえば、指定されたカスタマイズがＦＡＸ機能のカスタマイズであって、カスタマイズ対象のＭＦＰ１ａにおけるオプションユニット１２がＦＡＸインタフェースであれば、指定されたカスタマイズが有効と判定される。指定されたカスタマイズがＦＡＸ機能のカスタマイズであって、カスタマイズ対象のＭＦＰ１ａにおけるオプションユニット１２がＦＡＸインタフェースでなければ、指定されたカスタマイズが有効でないと判定される。
【００４９】
上記指定されたカスタマイズが有効であれば（ステップ１０８のＹＥＳ）、生成モジュール管理テーブル３３の参照により、上記指定されたカスタマイズがすでに実施済みか否かが判定される（ステップ１０９）。
【００５０】
実施済みの場合（ステップ１１０のＹＥＳ）、すでに生成されて通信部４２に記憶されている各制御モジュールのうち、上記指定されたカスタマイズを実現するための制御モジュールがＭＦＰ１ａに配信される（ステップ１１１）。この配信は、ユーザがユーザ用端末２を操作することにより開始される。
【００５１】
すなわち、ユーザ用端末２のディスプレイに図５に示す配信確認用の画面が表示され、その表示画面上の任意の項目がユーザのカーソル操作で指定されることにより、その指定に応じた制御モジュールがＭＦＰ１ａに配信される。配信された制御モジュールは、ＭＦＰ１ａのメモリ１３内の制御プログラムに加えられる。こうして、ＭＦＰ１ａの液晶表示部２５で、図６に示す操作用画面が表示される。この操作用画面におけるヘッダ画像Ｂは、図５の表示画面における項目Ａ内の登録済みの画像Ｂに相当する。
【００５２】
実施済みでない場合（ステップ１１０のＮＯ）、カスタマイズ情報管理テーブル３６内のカスタマイズ方法（フレームワークなど）に従い、上記指定されたカスタマイズを実現するための１つまたは複数の制御モジュールが生成部３９，４０，４１のいずれかで生成される（ステップ１１２）。生成された制御モジュールは、通信部４２からＭＦＰ１ａに配信されるとともに、通信部４２に記憶される（ステップ１１３）。そして、今回のカスタマイズの概要が、履歴情報として履歴情報管理テーブル３８に記憶される（ステップ１１４）。
【００５３】
上記指定されたカスタマイズが有効でなければ（ステップ１０８のＮＯ）、カスタマイズ管理テーブル３４の参照により、上記指定されたカスタマイズに代替可能なカスタマイズが有るか否かが判定される（ステップ１１５）。
【００５４】
代替可能なカスタマイズとして、たとえば、ＭＦＰ１ａ，１ｂ，…にネットワーク接続されているパーソナルコンピュータ（図示しない）のＦＡＸインタフェースを、ＭＦＰ１ａ，１ｂ，…のＦＡＸインタフェースとして利用できるようにする機能の追加がある。
【００５５】
このような代替可能なカスタマイズが有れば（ステップ１１６のＹＥＳ）、その代替可能なカスタマイズがすでに実施済みか否かが判定される（ステップ１１７）。実施済みの場合（ステップ１１０のＹＥＳ）、すでに生成されて通信部４２に記憶されている各制御モジュールのうち、上記代替可能なカスタマイズを実現するための制御モジュールがＭＦＰ１ａに配信される（ステップ１１１）。実施済みでない場合（ステップ１１０のＮＯ）、上記代替可能なカスタマイズを実現するための１つまたは複数の制御モジュールが生成部３９，４０，４１のいずれかで生成される（ステップ１１２）。生成された制御モジュールは、通信部４２からＭＦＰ１ａに配信されるとともに、通信部４２に記憶される（ステップ１１３）。そして、今回のカスタマイズの概要が、履歴情報として履歴情報管理テーブル３８に記憶される（ステップ１１４）。
【００５６】
代替可能なカスタマイズが無い場合には（ステップ１１６のＮＯ）、指定が不可能な旨が、ユーザ用端末２におけるディスプレイの表示によりユーザに知らされる（ステップ１１８）。
【００５７】
ユーザ用端末２のディスプレイのユーザ用初期画面においてカスタマイズが指定されないまま（ステップ１０５のＮＯ）、そのユーザ用初期画面において終了が指定されると（ステップ１１９のＹＥＳ）、処理終了となる。
【００５８】
なお、ＭＦＰ１ａのカスタマイズをユーザＸの要求に応じて実施する場合について説明したが、ＭＦＰ１ｂのカスタマイズをユーザＸの要求に応じて実施することも可能である。
【００５９】
以上のように、ＭＦＰ１ａのカスタマイズがユーザＸの要求に応じて実施されると、その実施されたカスタマイズを実現するために生成された制御モジュールがメインサーバ３の通信部４２に記憶されるので、その記憶された制御モジュールをユーザＸの要求に応じてそのままＭＦＰ１ｂに配信することができる。したがって、ユーザＸの好みに応じた適切なカスタマイズを、ＭＦＰ１ａ，１ｂ，…に対し、容易かつ迅速に実施することができる。つまり、ＭＦＰ１ａ，１ｂ，…の使い勝手が大幅に向上する。
【００６０】
ユーザＸの権限レベルに応じて、カスタマイズの実施が制限されるので、安全である。
【００６１】
ＭＦＰ１ａに対する実施が可能なカスタマイズであっても、そのカスタマイズが現状のＭＦＰ１ａにとって有効でない場合には、代替可能なカスタマイズを実施するようにしているので、ユーザの対するサービス性の向上が図れる。
【００６２】
図７は、ＭＦＰ１ａ，１ｂ，…の液晶表示部２５で表示される操作用画面における各スキャンパラメータの設定順をカスタマイズ（変更）する場合のユーザ用初期画面である。このユーザ用初期画面の操作により、図８に示すように、メモリ１３内のＧＵＩ制御用のプログラムソース群からパラメータ設定ウィザード用の複数のプログラムソースが抽出され、その抽出された各プログラムソースからＧＵＩ制御モジュールが生成される。
【００６３】
図９は、ＭＦＰ１ａ，１ｂ，…の液晶表示部２５で表示される操作用画面における各タブの表示順をカスタマイズ（変更）する場合のユーザ用初期画面である。このユーザ用初期画面の操作により、図１０に示すように、メモリ１３内のＧＵＩ制御用のプログラムソース群からタブ表示用の複数のプログラムソースが抽出され、その抽出された各プログラムソースからＧＵＩ制御モジュールが生成される。このＧＵＩ制御モジュールがＭＦＰ１ａに配信されることにより、ＭＦＰ１ａの液晶表示部２５で、図１１に示す操作用画面が表示される。
【００６４】
図１２は、ＭＦＰ１ａ，１ｂ，…の液晶表示部２５で表示される操作用画面における各スキャンパラメータの設定順をカスタマイズ（変更）する場合のユーザ用初期画面である。このユーザ用初期画面の操作により、図１３に示すように、メモリ１３内のＧＵＩ制御用のプログラムソース群からパラメータ設定ウィザード用の複数のプログラムソースが抽出され、その抽出された各プログラムソースからＧＵＩ制御モジュールが生成される。これと同時に、図１４に示すように、メモリ１３内のアプリケーション制御用のプログラムソース群から外部アプリケーション連携用の１つのプログラムソースが抽出され、その抽出されたプログラムソースからアプリケーション制御モジュールが生成される。上記外部アプリケーション連携用のプログラムソースは、図１３および図１４に網状表示で示すように、ＧＵＩ制御用のプログラムソース群における１つのプログラムソースと共に、アプリケーションサーバ４のメモリ１７に記憶されているアプリケーションプログラムと連携してＭＦＰ１ａ，１ｂ，…において特定の機能を実現させる。
【００６５】
図１３のＧＵＩ制御モジュールおよび図１４のアプリケーション制御モジュールが生成されると、その生成されたＧＵＩ制御モジュールの配信が可能であることをユーザＸに知らせるための図１５に示す画面が、ユーザ用端末２のディスプレイに表示される。この表示画面における項目Ｃがユーザのカーソル操作で指定されることにより、上記生成されたアプリケーション制御モジュールの配信が必要であることをユーザに知らせるための図１６に示す画面が、ユーザ用端末２のディスプレイに表示される。この図１６の表示画面におけるＯＫボタンがユーザＸのカーソル操作で指定されることにより、上記生成されたＧＵＩ制御モジュールおよびアプリケーション制御モジュールが、共に、ＭＦＰ１ａに配信される。この配信により、パラメータ設定用の表示機能および外部のアプリケーションプログラム（例えばドキュメントハンドリングシステム）との連携機能がＭＦＰ１ａに追加される。
【００６６】
ただし、ＭＦＰ１ａの属性では、外部のアプリケーションプログラム（例えばドキュメントハンドリングシステム）との連携機能を追加することが不可能で、しかもその連携機能の代替機能がないことがある。この場合、図１７に示すように、上記連携機能を除く他の機能を実現するための制御モジュールだけ配信可能であることをユーザに知らせるための画面が、ユーザ用端末２のディスプレイに表示される。
【００６７】
［２］この発明の第２の実施形態を説明する。
【００６８】
第１の実施形態では、生成された１つまたは複数の制御モジュールが通信部４２に記憶される構成としたが、この第２の実施形態では、カスタマイズが要求されるごとに、１つまたは複数の制御モジュールが生成されてＭＦＰ１ａ，１ｂ，…に逐次に配信される。生成された制御モジュールが通信部４２に記憶されないので、通信部４２の記憶容量を削減することができる。
【００６９】
図１８のフローチャートに示すように、図３のフローチャートにおけるステップ１１１の処理に代えて、ステップ２０１，２０２の処理が実行される。さらに、図３のフローチャートにおけるステップ１１３の処理に代えて、ステップ２０３の処理が実行される。
【００７０】
すなわち、ユーザにより指定されたカスタマイズが有効であれば（ステップ１０８のＹＥＳ）、生成モジュール管理テーブル３３の参照により、上記指定されたカスタマイズがすでに実施済みか否かが判定される（ステップ１０９）。
【００７１】
実施済みの場合（ステップ１１０のＹＥＳ）、履歴情報管理テーブル３８に記憶されている履歴情報（カスタマイズの概要）に基づいて、上記指定されたカスタマイズを実現するための１つまたは複数の制御モジュールが生成部３９，４０，４１のいずれかで生成される（ステップ２０１）。生成された制御モジュールは、通信部４２からＭＦＰ１ａに配信される（ステップ２０２）。
【００７２】
実施済みでない場合（ステップ１１０のＮＯ）、カスタマイズ情報管理テーブル３６内のカスタマイズ方法に従い、上記指定されたカスタマイズを実現するための１つまたは複数の制御モジュールが生成部３９，４０，４１のいずれかで生成される（ステップ１１２）。生成された制御モジュールは、通信部４２からＭＦＰ１ａに配信される（ステップ２０３）。そして、今回のカスタマイズの概要が、履歴情報として履歴情報管理テーブル３８に記憶される（ステップ１１４）。
【００７３】
上記“カスタマイズの概要”がどのようなフォーマットで履歴情報管理テーブル３８に記憶されるかの例を図１９に示している。すなわち、液晶表示部２５の操作用画面における各タブの表示順がカスタマイズされた場合、その各タブの名称（Scanner,Printer,Copy）が同じ順序に並んで記憶される。要するに、“カスタマイズの概要”は、各タブの表示順そのものを表わしているだけで、プログラムソース群のどのプログラムソースを抽出してどのように編集するかといった詳細な処理手順までは含んでいない。
【００７４】
このように、履歴情報管理テーブル３８に記憶されている“カスタマイズの概要”に基づいて制御モジュールが生成されることにより、たとえ図２０に網状表示で示すように、ＧＵＩ制御用のプログラムソース群におけるタブ表示用の１つのプログラムソースが変更（例えば改良）になった場合でも、その変更に影響を受けることなく、過去に生成されたタブ表示用のＧＵＩ制御モジュールと同じＧＵＩ制御モジュールを再び生成することができる。
【００７５】
要するに、ＧＵＩ制御用のプログラムソース群における１つのプログラムソースが変更になった場合でも、その変更内容をカスタマイズ情報管理テーブル３６内のカスタマイズ方法に組込む処理を要することなく、過去に生成された制御モジュールと同じ制御モジュールを確実に生成することができる。
【００７６】
こうして生成された制御モジュールがＭＦＰ１ａに配信されることにより、ＭＦＰ１ａの液晶表示部２５で、図２１に示す操作用画面が表示される。この操作用画面は、タブ表示用の１つのプログラムソースに変更があったことにより、図１１に示した操作用画面と少し異なっている。
【００７７】
他の構成、作用、効果は、第１の実施形態と同じである。
【００７８】
［３］この発明の第３の実施形態を説明する。
【００７９】
図２２に示すように、通信ネットワーク２に接続されたアプライアンスサーバ５に、メインサーバ３の構成の一部が移設されている。このメインサーバ３とアプライアンスサーバ５との間の情報伝送により、第１の実施形態あるいは第２の実施形態と同じ制御が実行される。
【００８０】
他の構成、作用、効果は、第１の実施形態あるいは第２の実施形態と同じである。
【００８１】
［４］なお、この発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００８２】
【図１】この発明の第１および第２の実施形態の構成を示す図。
【図２】各実施形態におけるメインユニットの構成を示す図。
【図３】第１の実施形態の作用を説明するためのフローチャート。
【図４】第１の実施形態におけるユーザ用初期画面の例を示す図。
【図５】第１の実施形態における配信確認用の画面の例を示す図。
【図６】第１の実施形態における操作用画面の例を示す図。
【図７】第１の実施形態におけるユーザ用初期画面の別の例を示す図。
【図８】図７のユーザ用初期画面が操作された場合の制御モジュールの生成を説明するための図。
【図９】第１の実施形態におけるユーザ用初期画面のさらに別の例を示す図。
【図１０】図９のユーザ用初期画面が操作された場合の制御モジュールの生成を説明するための図。
【図１１】図１０の制御モジュールにより表示される操作用画面を示す図。
【図１２】第１の実施形態におけるユーザ用初期画面の他の例を示す図。
【図１３】図１２のユーザ用初期画面が操作された場合のＧＵＩ制御モジュールの生成を説明するための図。
【図１４】図１２のユーザ用初期画面が操作された場合のアプリケーション制御モジュールの生成を説明するための図。
【図１５】図１３および図１４の各制御モジュールが生成された際に表示される配信確認用の画面を示す図。
【図１６】図１５の画面が操作された際に表示される配信確認用の画面を示す図。
【図１７】図１４の制御モジュールの生成が不可能だった場合に表示される配信確認用の画面を示す図。
【図１８】第２の実施形態の作用を説明するためのフローチャート。
【図１９】第２の実施形態における履歴情報のフォーマットを示す図。
【図２０】第２の実施形態における制御モジュールの生成を説明するための図。
【図２１】図２０の制御モジュールにより実現する操作用画面を示す図。
【図２２】第３の実施形態の構成を示す図。
【符号の説明】
【００８３】
１ａ，１ｂ…ＭＦＰ、２…ユーザ用端末、３…メインサーバ、４…アプリケーションサーバ、５…通信ネットワーク５、１０…システムコントローラ、１１…メインユニット、１２…オプションユニット、１３…メモリ、１４…デバイス情報テーブル、１５…通信部、１６…情報解析部、３０…システムコントローラ、３１…メモリ、３２…デバイス管理テーブル、３３…生成モジュール管理テーブル、３４…カスタマイズ管理テーブル、３５…デバイス情報解析部、３６…ユーザ情報管理テーブル、３７…カスタマイズ情報管理テーブル、３８…履歴情報管理テーブル、３９…ＧＵＩ制御モジュール生成部、４０…アプリケーション制御モジュール生成部、４１…デバイス制御モジュール生成部、４２…通信部
【図１】
2004288152.tif 000003
【図２】
2004288152.tif 000004
【図３】
2004288152.tif 000005
【図４】
2004288152.tif 000006
【図５】
2004288152.tif 000007
【図６】
2004288152.tif 000008
【図７】
2004288152.tif 000009
【図８】
2004288152.tif 000010
【図９】
2004288152.tif 000011
【図１０】
2004288152.tif 000012
【図１１】
2004288152.tif 000013
【図１２】
2004288152.tif 000014
【図１３】
2004288152.tif 000015
【図１４】
2004288152.tif 000016
【図１５】
2004288152.tif 000017
【図１６】
2004288152.tif 000018
【図１７】
2004288152.tif 000019
【図１８】
2004288152.tif 000020
【図１９】
2004288152.tif 000021
【図２０】
2004288152.tif 000022
【図２１】
2004288152.tif 000023
【図２２】
2004288152.tif 000024