(57)【要約】【課題】  ネットワーク経由など外部からソフトウェアをダウンロードするなどして入力する場合に、ソフトウェアの種別によって適切にダウンロードの同意が必要か否かを判断することができ、ダウンロードの同意に関して、又はダウンロード先とのダウンロードの同意に関しては、バランスの取れた好適なＴＣＯ（Total   Cost  of  Ownership ）の実現が可能な情報処理装置及び情報処理システムを提供することを課題とする。【解決手段】  種別判断手段によって判断された前記ソフトウェアの種別に基づき、前記ソフトウェアを入力するための同意を得ることが必要か否かを判断するための同意判断手段と、前記ソフトウェアを入力するための同意情報を取得する手段と、前記同意判断手段の判断結果もしくは前記同意情報の取得に基づき、前記ソフトウェア入力手段でソフトウェアを入力するか否かを制御するためのソフトウェア入力制御手段と、を備えた。【選択図】  図１
2006099184.tif 000002
【特許請求の範囲】
【請求項１】
外部からソフトウェアを入力するソフトウェア入力手段と、
前記ソフトウェアに関する情報であるソフトウェア情報を取得するソフトウェア情報取得手段と、
前記ソフトウェア情報取得手段によって取得されたソフトウェア情報から前記ソフトウェアの種別を判断する種別判断手段と、
前記種別判断手段によって判断された前記ソフトウェアの種別に基づき、前記ソフトウェアを入力するための同意を得ることが必要か否かを判断するための同意判断手段と、
前記ソフトウェアを入力するための同意情報を取得する手段と、
前記同意判断手段の判断結果もしくは前記同意情報の取得に基づき、前記ソフトウェア入力手段でソフトウェアを入力するか否かを制御するためのソフトウェア入力制御手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
請求項１に記載の情報処理装置において、
前記ソフトウェアの種別毎の同意判断を設定するための同意判断設定手段と、
前記同意判断設定手段によって設定されたソフトウェアの種別毎の同意判断を保持する同意判断保持手段とを備え、
前記同意判断手段は、前記ソフトウェアの種別と前記同意判断保持手段に保持されているソフトウェアの種別毎の同意判断に基づき、同意を得ることが必要であるか否かを判断することを特徴とする情報処理装置。
【請求項３】
請求項１に記載の情報処理装置において、
前記ソフトウェア情報に含まれる属性値の組合せでソフトウェアの種別を作成するための種別作成手段と、
前記種別作成手段で作成されたソフトウェアの種別と属性値の組合せを設定するため種別属性保持手段とを備え、
前記種別判断手段は、前記ソフトウェア情報に含まれる属性値の組合せと、前期種別属性保持手段で保持されているソフトウェアの種別と属性値の組合せから、前記ソフトウェアの種別を動的に判断することを特徴とする情報処理装置。
【請求項４】
請求項１に記載の情報処理装置において、
自己の装置の状態情報を取得するための状態情報取得手段を備え、
前記同意判断手段は、前記ソフトウェアの種別と前記状態情報取得手段によって取得された状態情報に基づき、前記ソフトウェアを人力するための同意を得ることが必要かどうかを判断することを特徴とする情報処理装置。
【請求項５】
出力すべきソフトウェアの種別に基づき、前記ソフトウェアを出力するための出力先からの同意を得ることが必要かどうかを判断するための同意判断手段と、
出力先から同意情報を取得する手段と、
前記同意判断手段の判断結果もしくは前記同意の取得の結果に基づき、前記ソフトウェアを出力するソフトウェア出力制御手段と、
を備えることを特徴とする情報管理装置。
【請求項６】
請求項５に記載の情報処理装置において、
前記ソフトウェアの種別を設定するための種別設定手段と、
前記種別設定手段によって設定されたソフトウェアの種別を保持する種別保持手段とを備え、
前記種別判断手段は、前記ソフトウェアの種別が、前記種別設定保持手段に保持されているのソフトウェアの種別のいずれかであるかを判断することを特徴とする情報管理装置。
【請求項７】
請求項５に記載の情報処理装置において、
前記ソフトウェアの種別毎の同意判断を設定するための同意判断設定手段と、
前記同意判断設定手段により設定されたソフトウェアの種別毎の同意判断を保持する同意判断保持手段とを備え、
前記同意判断手段は、前記ソフトウェアの種別と前記同意判断保持手段に保持されているソフトウェアの種別毎の同意判断に基づき、出力先からの同意を得ることが必要であるかを判断することを特徴とする情報管理装置。
【請求項８】
ソフトウェアに関する情報であるソフトウェア情報を取得するソフトウェア情報取得手段と、
前記ソフトウェア情報取得手段によって取得されたソフトウェア情報から前記ソフトウェアの種別を判断する種別判断手段と、
前記種別判断手段によって取得された前記ソフトウェア情報の種別に基づき、前記ソフトウェアを入力するための同意を得ることが必要か否かを判断する同意判断手段と、
前記ソフトウェアを入力するための同意情報を取得する手段と、
前記同意判断手段の判断結果もしくは前記同意情報の取得に基づき、前記ソフトウェア入力手段でソフトウェアを入力するか否かを制御するためのソフトウェア入力制御手段と、
を備える情報処理装置と、
出力すべきソフトウェアの種別に基づき、前記ソフトウェアを出力するための出力先からの同意を得ることが必要かどうかを判断するための同意判断手段と、
出力先からの同意情報を取得する手段と、
前記同意判断手段の判断結果もしくは前記同意情報を取得結果に基づき、前記ソフトウェアを出力するソフトウェア出力制御手段と、
を備える情報管理装置と、
を備えることを特徴とする情報処理システム。
【請求項９】
ソフトウェアに関する情報であるソフトウェア情報を取得するステップと、
前記ソフトウェア情報取得ステップによって取得されたソフトウェア情報から前記ソフトウェアの種別を判断するステップと、
前記種別判断ステップによって取得された前記ソフトウェア情報の種別に基づき、前記ソフトウェアを入力するための同意を得ることが必要か否かを判断するステップと、
前記ソフトウェアを入力するための同意情報を取得する手段と、
前記同意判断ステップの判断結果もしくは前記同意情報の取得に基づき、前記ソフトウェア入力手段でソフトウェアを入力するか否かを制御するステップと、
を備えることを特徴とする情報処理装置のソフトウェア入力方法。
【請求項１０】
出力すべきソフトウェアの種別に基づき、前記ソフトウェアを出力するための出力先からの同意を得ることが必要かどうかを判断するためのステップと、
出力先からの同意情報を取得するステップと、
前記同意判断ステップの判断結果もしくは前記同意情報を取得結果に基づき、前記ソフトウェアを出力するステップと、
を備えることを特徴とする情報処理装置のソフトウェア出力方法。
【請求項１１】
情報処理装置をコンピュータとして機能させて外部装置からソフトウェアを入力させるプログラムであって、
ソフトウェアに関する情報であるソフトウェア情報を取得する機能、
前記ソフトウェア情報取得機能によって取得されたソフトウェア情報から前記ソフトウェアの種別を判断する機能、
前記種別判断機能によって判断された前記ソフトウェアの種別に基づき、前記ソフトウェアを入力するための同意を得ることが必要か否かを判断する機能、
前記ソフトウェアを入力するための同意情報を取得する機能、
前記同意判断機能の判断結果もしくは前記同意情報の取得に基づき、前記ソフトウェア入力機能でソフトウェアを入力するか否かを制御する機能、
として前記コンピュータを機能させるプログラム。
【請求項１２】
情報処理装置をコンピュータとして機能させて外部の情報処理装置へソフトウェアを出力させるプログラムであって、
出力すべきソフトウェアの種別に基づき、前記ソフトウェアを出力するための出力先からの同意を得ることが必要かどうかを判断するための機能、
出力先からの同意情報を取得する機能、
前記同意判断機能の判断結果もしくは前記同意情報の取得結果に基づき、前記ソフトウェアを出力する機能、
として前記コンピュータを機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、一般的なクライアントパーソナルコンピュータ（ＰＣ）やサーバ装置、あるいはネットワーク機能を搭載した複写機やプリンタなどの機能を兼ね備えた複合機、更にはネットワークスキャナ装置などの情報処理装置及びこれを用いた情報処理システムに関し、特にネットワークを経由するなどして、外部からソフトウェアをダウンロード等することにより、ソフトウェアを入力して動作させることが可能な情報処理装置及びこれを用いた情報処理システムに関するものである。
【背景技術】
【０００２】
【特許文献１】特開２０００−２００１８７号公報
【０００３】
近年、上記パーソナルコンピュータ（ＰＣ）に代表されるように、文字情報や図形情報などを自由に処理することが可能な情報処理装置においては、予めハードディスクなどの記憶手段に記憶されたソフトウェア以外に、ソフトウェアを提供するソフトウェアメーカーや、シェアウエアなどでソフトウェアを提供する個人の開発者などが開設するインターネット上のサイトなどから、ネットワークを経由してソフトウェアを購入し、当該購入したソフトウェアをネットワークを経由してダウンロードし、パーソナルコンピュータ（ＰＣ）にインストールして使用することが可能となってきている。
【０００４】
また、最近では、パーソナルコンピュータ（ＰＣ）に限らず、ネットワーク機能を搭載した複合機やネットワークスキャナ装置など、文字情報や図形情報などをコピー乃至プリントしたり、読取って希望する相手に送信したりする情報処理装置においても、インターネットに接続する機能などネットワーク接続機能が搭載されてきている。そして、これらのネットワーク機能を搭載した複合機やネットワークスキャナ装置などの情報処理装置においても、パーソナルコンピュータ（ＰＣ）などと同様に、ネットワークを経由してソフトウェアをダウンロードし、当該ネットワーク機能を搭載した複合機やネットワークスキャナ装置にインストールして使用することが、技術的な複雑さは伴うかもしれないが、可能となってきている。
【０００５】
例えば、特開２０００−２００１８７号公報に係る画像処理装置の管理システムでは、自動的に、もしくは、予め管理サーバに登録しておいた管理者からの同意返信を受けてから、ネットワークを経由して管理サーバから画像処理装置ヘバージョンアッププログラムをダウンロードする技術が開示されている。
【０００６】
更に説明すると、上記特開２０００−２００１８７号公報に係る画像処理装置の管理システムは、画像記録手段、表示手段およびネットワーク通信手段を含む画像処理装置と、該画像処理装置とネットワークを介して交信する管理サーバとを含む、画像処理装置の管理システムにおいて、前記画像処理装置は、バージョンアップが発生すると自動的にバージョンアップの実行を行なうことを指定する「自動」、および、バージョンアップが発生するとそれを実行するか否かの問合せを求める「問合せ」を、管理サーバに登録するための入力手段を含み、前記管理サーバは、その記憶手段に、画像処理装置の機能を実現するプログラムを有し、それがバージョンアップされると、「自動」が登録された画像処理装置に、バージョンアップしたプログラムを、ネットワークを使用してダウンロードし、  「問合せ」が登録された画像処理装置には、バージョンアップ問合せ情報を前記画像処理装置宛てに登録された回線番号にネットワークを介して送信し、同意返信を受けてから、バージョンアップしたプログラムを、ネットワークを使用して画像処理装置にダウンロードするように構成したものである。
【０００７】
上記従来の画像処理装置側の処理フローは、図２２に示すように、外部から入力するソフトウェアに関する情報を管理サーバから取得し（ステップ１００１）、ソフトウェア情報の取得は正常に終了したか否かを判別する（ステップ１００２）。そして、ソフトウェア情報の取得が正常に終了した場合には、本装置では「問合せ」と設定されており、同意が必要と設定されているか否かを判別し（ステップ１００３）、本装置では同意が必要と設定されている場合には、ソフトウェア入力に対する同意の処理を行なう（ステップ１００４）。なお、ステップ１００２において、ソフトウェア情報の取得が正常に終了しなかった場合には、ステップ１００１に戻る。
【０００８】
次に、ソフトウェアの入力は同意されたか否かを判別し（ステップ１００５）、ソフトウェアの入力が同意された場合には、ソフトウェアの入力処理を行ない（ステップ１００６）、ソフトウェアの入力が同意されない場合には、当該処理を終了する。また、ステップ１００３において、本装置では「自動」と設定されており、同意が不要と設定されている場合には、直ちに、ソフトウェアの入力処理が行なわれるようになっている（ステップ１００７）。
【０００９】
一方、従来のソフトウェア提供元としての情報管理装置（管理サーバ）側の処理フローは、図２３に示すように、外部に出力するソフトウェアに関する情報を取得し（ステップ１１０１）、ソフトウェア情報の取得は正常に終了したか否かを判別する（ステップ１１０２）。そして、ソフトウェア情報の取得が正常に終了した場合には、本装置では「問合せ」と設定されており、同意が必要と設定されているか否かを判別し（ステップ１１０３）、本装置では同意が必要と設定されている場合には、ソフトウェアの出力先に出力する旨を通知して、出力先からの同意の結果を受信する（ステップ１１０４）。なお、ステップ１１０２において、ソフトウェア情報の取得が正常に終了しなかった場合には、ステップ１１０１に戻る。
【００１０】
次に、ソフトウェアの出力先は同意したか否かを判別し（ステップ１１０５）、ソフトウェアの出力先が同意した場合には、ソフトウェアの出力処理を行ない（ステップ１１０６）、ソフトウェアの出力先が同意しなかった場合には、当該処理を終了する。また、ステップ１１０３において、本装置では「自動」と設定されており、同意が不要と設定されている場合には、直ちに、ソフトウェアの出力処理が行なわれるようになっている（ステップ１１０６）。
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかし、上記従来技術の場合には、次のような問題点を有している。すなわち、上記特開２０００−２００１８７号公報に係る画像処理装置の管理システムの場合には、画像処理装置毎に管理サーバに対して、バージョンアップが「不要」か「自動」か「問合せ」を設定するように構成されているため、ダウンロードするソフトウェア全てに対して同じ設定となってしまう、という問題点を有している。
【００１２】
更に説明すると、上記特開２０００−２００１８７号公報に係る画像処理装置の管理システムの場合には、「問合せ」と設定されていると、図２２のステップ１００４又は図２３のステップ１１０４において、同意処理がどのようなソフトウェアに対しても行なわれ、「自動」と設定されている場合は、どのようなソフトウェアに対しても、同意処理を実行せずに無条件でダウンロードしてしまうことになる。
【００１３】
ところが、ダウンロードするソフトウェアの中には、システムの致命的な障害を修正するためのソフトウェアや、セキュリティ対策上のパッチソフトなど、緊急対応として同意の有無を問わずダウンロードすることが必須であるソフトウェアもあれば、単なる機能を追加するためのソフトウェアなど、必ずしもダウンロードすることが必須ではなく、ダウンロードするかどうかの同意を求めて管理者に判断してもらった方がよいソフトウェアもある。
【００１４】
つまり、上記特開２０００−２００１８７号公報に係る画像処理装置の管理システムの場合には、ソフトウェアの種別によって適切にダウンロードの同意が必要かどうかを判断することができない、という問題点を有していた。
【００１５】
さらに、上記特開２０００−２００１８７号公報に係る画像処理装置の管理システムの場合には、画像処理装置毎の設定が、バージョンアップ「不要」や「問合せ」となっていると、緊急なダウンロードが必要なソフトウェアが、バージョンアップがされなかったり、もしくは問合せに時間がかかりバージョンアップが遅れるなど、致命的な問題が発生する虞れを有しているという問題点もあった。
【００１６】
また、上記従来の画像処理装置の管理システムの場合には、画像処理装置毎の設定がダウンロード元となる管理サーバで行なわれるため、管理サーバが複数ある場合には、それぞれの管理サーバ毎に設定をしておく必要があり、取り扱いが非常に煩雑となる、という問題点をも有していた。
【００１７】
そこで、この発明は、上記従来技術の問題点を解決するためになされたものであり、その目的とするところは、ネットワーク経由など外部からソフトウェアをダウンロードするなどして入力する場合に、ソフトウェアの種別によって適切にダウンロードの同意が必要か否かを判断することができ、ダウンロードの同意に関して、又はダウンロード先とのダウンロードの同意に関しては、バランスの取れた好適なＴＣＯ（Total   Cost  of  Ownership ）の実現が可能な情報処理装置及び情報処理システムを提供することにある。
【課題を解決するための手段】
【００１８】
上記目的を達成するため、請求項１に記載された発明は、外部からソフトウェアを入力するソフトウェア入力手段と、
前記ソフトウェアに関する情報であるソフトウェア情報を取得するソフトウェア情報取得手段と、
前記ソフトウェア情報取得手段によって取得されたソフトウェア情報から前記ソフトウェアの種別を判断する種別判断手段と、
前記種別判断手段によって判断された前記ソフトウェアの種別に基づき、前記ソフトウェアを入力するための同意を得ることが必要か否かを判断するための同意判断手段と、
前記ソフトウェアを入力するための同意情報を取得する手段と、
前記同意判断手段の判断結果もしくは前記同意情報の取得に基づき、前記ソフトウェア入力手段でソフトウェアを入力するか否かを制御するためのソフトウェア入力制御手段と、
を備えることを特徴とする情報処理装置である。
【００１９】
また、請求項２に記載された発明は、請求項１に記載の情報処理装置において、
前記ソフトウェアの種別毎の同意判断を設定するための同意判断設定手段と、
前記同意判断設定手段によって設定されたソフトウェアの種別毎の同意判断を保持する同意判断保持手段とを備え、
前記同意判断手段は、前記ソフトウェアの種別と前記同意判断保持手段に保持されているソフトウェアの種別毎の同意判断に基づき、同意を得ることが必要であるか否かを判断することを特徴とする情報処理装置である。
【００２０】
さらに、請求項３に記載された発明は、請求項１に記載の情報処理装置において、
前記ソフトウェア情報に含まれる属性値の組合せでソフトウェアの種別を作成するための種別作成手段と、
前記種別作成手段で作成されたソフトウェアの種別と属性値の組合せを設定するため種別属性保持手段とを備え、
前記種別判断手段は、前記ソフトウェア情報に含まれる属性値の組合せと、前期種別属性保持手段で保持されているソフトウェアの種別と属性値の組合せから、前記ソフトウェアの種別を動的に判断することを特徴とする情報処理装置である。
【００２１】
又、請求項４に記載された発明は、請求項１に記載の情報処理装置において、
自己の装置の状態情報を取得するための状態情報取得手段を備え、
前記同意判断手段は、前記ソフトウェアの種別と前記状態情報取得手段によって取得された状態情報に基づき、前記ソフトウェアを人力するための同意を得ることが必要かどうかを判断することを特徴とする情報処理装置である。
【００２２】
更に、請求項５に記載された発明は、出力すべきソフトウェアの種別に基づき、前記ソフトウェアを出力するための出力先からの同意を得ることが必要かどうかを判断するための同意判断手段と、
出力先から同意情報を取得する手段と、
前記同意判断手段の判断結果もしくは前記同意の取得の結果に基づき、前記ソフトウェアを出力するソフトウェア出力制御手段と、
を備えることを特徴とする情報管理装置である。
【００２３】
また、請求項６に記載された発明は、請求項５に記載の情報処理装置において、
前記ソフトウェアの種別を設定するための種別設定手段と、
前記種別設定手段によって設定されたソフトウェアの種別を保持する種別保持手段とを備え、
前記種別判断手段は、前記ソフトウェアの種別が、前記種別設定保持手段に保持されているのソフトウェアの種別のいずれかであるかを判断することを特徴とする情報管理装置である。
【００２４】
さらに、請求項７に記載された発明は、請求項５に記載の情報処理装置において、
前記ソフトウェアの種別毎の同意判断を設定するための同意判断設定手段と、
前記同意判断設定手段により設定されたソフトウェアの種別毎の同意判断を保持する同意判断保持手段とを備え、
前記同意判断手段は、前記ソフトウェアの種別と前記同意判断保持手段に保持されているソフトウェアの種別毎の同意判断に基づき、出力先からの同意を得ることが必要であるかを判断することを特徴とする情報管理装置である。
【００２５】
又、請求項８に記載された発明は、ソフトウェアに関する情報であるソフトウェア情報を取得するソフトウェア情報取得手段と、
前記ソフトウェア情報取得手段によって取得されたソフトウェア情報から前記ソフトウェアの種別を判断する種別判断手段と、
前記種別判断手段によって取得された前記ソフトウェア情報の種別に基づき、前記ソフトウェアを入力するための同意を得ることが必要か否かを判断する同意判断手段と、
前記ソフトウェアを入力するための同意情報を取得する手段と、
前記同意判断手段の判断結果もしくは前記同意情報の取得に基づき、前記ソフトウェア入力手段でソフトウェアを入力するか否かを制御するためのソフトウェア入力制御手段と、
を備える情報処理装置と、
出力すべきソフトウェアの種別に基づき、前記ソフトウェアを出力するための出力先からの同意を得ることが必要かどうかを判断するための同意判断手段と、
出力先からの同意情報を取得する手段と、
前記同意判断手段の判断結果もしくは前記同意情報を取得結果に基づき、前記ソフトウェアを出力するソフトウェア出力制御手段と、
を備える情報管理装置と、
を備えることを特徴とする情報処理システムである。
【００２６】
又、請求項９に記載された発明は、ソフトウェアに関する情報であるソフトウェア情報を取得するステップと、
前記ソフトウェア情報取得ステップによって取得されたソフトウェア情報から前記ソフトウェアの種別を判断するステップと、
前記種別判断ステップによって取得された前記ソフトウェア情報の種別に基づき、前記ソフトウェアを入力するための同意を得ることが必要か否かを判断するステップと、
前記ソフトウェアを入力するための同意情報を取得する手段と、
前記同意判断ステップの判断結果もしくは前記同意情報の取得に基づき、前記ソフトウェア入力手段でソフトウェアを入力するか否かを制御するステップと、
を備えることを特徴とする情報処理装置のソフトウェア入力方法である。
【００２７】
更に、請求項１０に記載された発明は、出力すべきソフトウェアの種別に基づき、前記ソフトウェアを出力するための出力先からの同意を得ることが必要かどうかを判断するためのステップと、
出力先からの同意情報を取得するステップと、
前記同意判断ステップの判断結果もしくは前記同意情報を取得結果に基づき、前記ソフトウェアを出力するステップと、
を備えることを特徴とする情報処理装置のソフトウェア出力方法である。
【００２８】
また、請求項１１に記載された発明は、情報処理装置をコンピュータとして機能させて外部装置からソフトウェアを入力させるプログラムであって、
ソフトウェアに関する情報であるソフトウェア情報を取得する機能、
前記ソフトウェア情報取得機能によって取得されたソフトウェア情報から前記ソフトウェアの種別を判断する機能、
前記種別判断機能によって判断された前記ソフトウェアの種別に基づき、前記ソフトウェアを入力するための同意を得ることが必要か否かを判断する機能、
前記ソフトウェアを入力するための同意情報を取得する機能、
前記同意判断機能の判断結果もしくは前記同意情報の取得に基づき、前記ソフトウェア入力機能でソフトウェアを入力するか否かを制御する機能、
として前記コンピュータを機能させるプログラムである。
【００２９】
さらに、請求項１２に記載された発明は、情報処理装置をコンピュータとして機能させて外部の情報処理装置へソフトウェアを出力させるプログラムであって、
出力すべきソフトウェアの種別に基づき、前記ソフトウェアを出力するための出力先からの同意を得ることが必要かどうかを判断するための機能、
出力先からの同意情報を取得する機能、
前記同意判断機能の判断結果もしくは前記同意情報の取得結果に基づき、前記ソフトウェアを出力する機能、
として前記コンピュータを機能させるプログラムである。
【発明の効果】
【００３０】
この発明によれば、ネットワーク経由など外部からソフトウェアをダウンロードするなどして入力する場合に、ソフトウェアの種別によって適切にダウンロードの同意が必要か否かを判断することができ、ダウンロードの同意に関してはバランスの取れた好適なＴＣＯ（Total   Cost  of  Ownership ）の実現が可能な情報処理装置及び情報処理システムを提供することができる。
【発明を実施するための最良の形態】
【００３１】
以下に、この発明の実施の形態について図面を参照して説明する。
【００３２】
実施の形態１
１．情報処理システムの構成
１−１情報処理装置の構成及び動作
実施の形態２
２．情報処理システムの構成
２−１情報管理装置の構成及び動作
２−２情報利用装置の構成及び動作
【００３３】
実施の形態１
図１はこの発明の実施の形態１に係る情報処理装置のソフトウェア入力方法及び出力方法、並びにプログラム、情報処理装置を適用した情報処理システムを示すシステム構成図である。
【００３４】
１．情報処理システムの構成
この情報処理システム１は、基本的に、図１に示すように、ソフトウェアをダウンロードして入力する情報処理装置としての複合機（マルチファンクション機：ＭＦ機）１００と、当該複合機１００に対して、リモートサイトの管理者による同意を与える手段としてのパーソナルコンピュータ（ＰＣ）２００と、情報管理装置として機能する管理サーバ３００（情報処理装置）と、これら複合機１００とパーソナルコンピュータ（ＰＣ）２００とサーバ３００とを互いに通信可能に接続するネットワーク２とから構成されている。なお、上記管理サーバ３００は、複合機の製造メーカや、ソフトウェアのダウンロード元であるソフトウェア製造メーカ、あるいは開発者等のソフトウェアの提供元として機能するものであり、当該管理サーバ３０では、ソフトウェアに関する情報の管理をも行っている。
【００３５】
なお、図示例では、複合機が１台、パーソナルコンピュータ（ＰＣ）が１台、管理サーバが１台のみ図示されているが、これらの台数に制限はなく、任意台数の複合機やパーソナルコンピュータ（ＰＣ）、あるいは管理サーバがネットワーク２に接続されていても良いことは勿論である。また、情報処理装置としては、ネットワーク機能を搭載した複合機に限定されるものではなく、ネットワークスキャナ装置などの装置をも広く含むものであり、又、パーソナルコンピュータ（ＰＣ）やワークステーション（ＷＳ）などであっても良いことは勿論である。
【００３６】
上記ネットワーク２としては、例えば、Ｅｔｈｅｒｎｅｔ（登録商標）や、有線や無線のＬＡＮ（Local   Area  Network ）、一般電話回線、ＡＤＳＬ（Asymmetoric Digital SubscriberLine）、ＩＳＤＮ（Integrated  Switched  Digital   Network ）などを含み、又、これらのネットワーク２を介して構築されるインターネットなども含むものである。ここで、ネットワーク２は、複合機１００及びパーソナルコンピュータ（ＰＣ）２００、更には管理サーバ３００とを互いに通信可能に接続するネットワークであって、当該ネットワーク２に個別に付与された固有の情報に基づき、通信する相手方の情報処理装置を特定して通信することが可能なものである。上記ネットワーク２に個別に付与された固有の情報としては、その代表的なものが、インターネットにおいて定義されているＩＰｖ６（インターネット・プロトコル，バージョン６）のアドレス又はＩＰｖ４（同バージョン４）のアドレスとポート番号の組合せであり、当該ＩＰｖ６のアドレス又はＩＰｖ４のアドレスとポート番号の組合せを特定することによって、ネットワークとしてのインターネットを介して、特定の情報処理装置と通信することができるとともに、当該特定の情報処理装置から情報を受信することが可能となっている。
【００３７】
１−１情報処理装置の構成及び動作
情報処理装置として機能する複合機１００は、図２に示すように、当該複合機本体５の上部に、原稿の画像を読み取るスキャナ装置６を備えている。このスキャナ装置６で読み取られた原稿の画像データは、図示しない画像処理部によって、画像フォーマットの変換、圧縮／伸張、裏写り除去、色変換（明度／色空間変換）や、シェーディング補正、位置ズレ補正、ガンマ補正、枠消し、色／移動編集等の所定の画像処理が施される。
【００３８】
また、上記複合機１００は、複合機本体５の内部に、マルチファンクションモジュール（以下、「ＭＦモジュール」という。）７を備えており、このＭＦモジュール７は、スキャナ装置６で読み込まれた画像や、ネットワーク２を介して送られてくる画像データ、あるいは一般電話回線を介して送られてくるファクシミリの画像データ等に基づいて、画像データの送受信や、画像データに基づいたコピーやプリント処理を行うように構成されている。なお、上記ＭＦモジュール７は、例えば、電子写真方式により白黒やカラー画像の形成を行うが、これに限定されるものではなく、静電記録方式やインクジェット記録方式など、任意の方式によって画像の形成を行うものを含むものである。
【００３９】
また、上記複写機本体５の上部には、ユーザインターフェースとしての操作表示パネル８が設けられている。この操作表示パネル８は、例えば、インターネット接続や、所望のソフトウエアの動作確認や動作情報の取得、並びに所望のソフトウエアのダウンロードなどの指示や、スキャンやプリント動作などの指示を行ったりするためのものである。また、上記操作表示パネル８は、ローカルサイトの管理者による同意を与える手段としても機能するものである。なお、この操作表示パネル８とは別に、コピー指示などの基本的な操作をするための操作パネルを本体上面の所定位置に設けてもよい。
【００４０】
さらに、上記複合機１００は、後述するように、外部インターフェース部１１１を経由して、ネットワーク２に接続された管理サーバ３００や、パーソナルコンピュータ（ＰＣ）２００など、外部の機器に接続したり、外部の機器からアクセスできるようになっている。
【００４１】
一方、パーソナルコンピュータ（ＰＣ）２００は、図３に示すように、例えば、端末本体４０と、ＣＲＴ（陰極線管）や液晶パネルなどのディスプレイ装置４１と、キーボードやマウスなどの入力指示デバイス４２とを備えている。端末本体４０には、基本ソフトウェア（オペレーティングシステム：ＯＳ）の他に、種々の情報処理を行なうために必要なアプリケーションのソフトウェアがインストールされている。
【００４２】
また、管理サーバ３００には、図４に示すように、ダウンロードするソフトウェアが保持されており、この管理サーバ３００に保持されているソフトウェアとしては、例えば、ＩＰＰ（Internet Printing Protocol）等によって複合機１００でプリント処理を行うソフトや、複合機１００のスキャナ装置６で読み取られた画像データを入力するソフト、あるいは複合機１００のスキャナ装置６で読み取られた画像データに所望の画像処理を施したり、当該画像データをを他の情報処理装置に出力するソフトなど任意のものが含まれる。
【００４３】
ところで、この実施の形態では、外部からソフトウェアを入力するためのソフトウェア入力手段と、前記ソフトウェアに関する情報であるソフトウェア情報を取得するためのソフトウェア情報取得手段と、前記ソフトウェア情報取得手段によって取得されたソフトウェア情報から前記ソフトウェアの種別を判断するための種別判断手段と、前記種別判断手段によって判断された前記ソフトウェアの種別に基づき、前記ソフトウェアを入力するための同意を得ることが必要か否かを判断するための同意判断手段と、前記同意判断手段の判断結果に基づき、前記ソフトウェアを入力するための同意の処理を制御するための同意制御手段と、前記同意判断手段の判断結果もしくは前記同意制御手段の同意処理の結果に基づき、前記ソフトウェア入力手段でソフトウェアを入力するか否かを制御するためのソフトウェア入力制御手段と、を備えるように構成されている。
【００４４】
すなわち、この実施の形態に係る情報処理装置として機能する複合機１００は、プリンタ、複写機、及び、ファクシミリなどが有する機能を兼ね備えており、様々な情報処理要求に対して対応することが可能となっている。また、この複合機１００は、ネットワーク２を介して所望のソフトウェアをダウンロードすることなどによって入力することができるように構成されており、入力されたソフトウェアをインストールして使用することが可能となっている。
【００４５】
この複合機１００は、図５に示すように、ＣＰＵ（Central Processing Unit ）１０１と、ＲＯＭ（Read  Only  Memory）１０２と、ＲＡＭ（Random Access Memory）１０３と、ハードディスク１０４と、制御部１０５と、印刷部１０６と、スキャナ部６と、操作表示パネル８と、システム時計１０７と、画像処理部１０８と、ソフトウェア制御部１０９と、ソフトウェア管理部１１０と、同意制御部１１１と、状態管理部１１２と、インターフェース部１１３とを備えるように構成されている。
【００４６】
ＣＰＵ１０１は、当該複合機１００を構成するＲＯＭ１０２と、ＲＡＭ１０３と、ハードディスク１０４と、制御部１０５と、印刷部１０６と、スキャナ部６と、操作表示パネル８と、システム時計１０７と、画像処理部１０８と、ソフトウエア制御部１０９と、ソフトウエア管理部１１０と、同意制御部１１１と、状態管理部１１２と、Ｉ／Ｆ（外部インターフェース）部１１３とを、システムバス１１４を介して制御する中央演算処理装置である。この複合機１００におけるプリント動作や、コピー動作、あるいはファクシミリとしての各種の動作、及びソフトウエアの管理動作等は、ＣＰＵｌ０１及びソフトウエア制御部１０９、並びにソフトウエア管理部１１０の制御のもとに実行される。上記ＣＰＵ１０１による制御動作は、プログラムに基づいて決定される。
【００４７】
ＲＯＭ１０２は、読み取り専用メモリであり、このＲＯＭ１０２には、ＣＰＵ１０１を制御するためのプログラムが格納されている。本実施の形態では、ＲＯＭ１０２に格納されている制御プログラムは、スキャナ部６で入力された画像データを処理したり、印刷部１０６を介して外部に出力したりするためのものである。
【００４８】
ＲＡＭ１０３は、ＳＲＡＭ等で構成され、プログラム制御変数や各種処理のためのデータ等を格納するためのものである。
【００４９】
ハードディスク１０４は、制御プログラムによる各種処理のためのデータを格納したり、画像データなどを格納したりするためのものである。
【００５０】
制御部１０５は、スキャナ部６や印刷部１０６と制御データの授受を行ったり、画像データの入出力などの制御を行うためのものである。
【００５１】
印刷部１０６は、出力画像を印刷して外部に出力するためのものである。この印刷部１０６は、例えば、スキャナ部６で読み取られた画像の印刷機能すなわち複写機としての機能に限らず、ネットワーク２を介して取得した文書データや画像ファイルなどに基づいて画像を印刷するいわゆるプリント機能や、一般電話回線を介して受信したＦＡＸ受信データに基づいて印刷出力するＦＡＸ機能をも果たしている。
【００５２】
上記複合機１００が例えばプリンタとして機能する場合、印刷部１０６は、外部からぺージ記述言語（ＰＤＬ：Page  Description   Language）で記載されたＰＤＬデータを受け取り、当該ＰＤＬデータをハードディスク１０４に出力単位ごと（１ぺージごと）の画像データとして展開し、そのラスタデータが印刷部１０６に送られ、印刷部１０６にてプリント出力するように構成されている。また、複合機１００がカラーファクシミリ受信機として機能する場合、印刷部１０６は、ＰＤＬデータに代えてＦＡＸ受信データを受け取り、印刷部１０６にてＬａｂ信号に変換した後、印刷部１０６にてプリント出力する。
【００５３】
スキャナ部６は、原稿を読取って、画像データを入力するためのものである。
【００５４】
操作表示パネル８は、スキャン動作の設定を行う画面を表示したり、スキャン指示を行ったりするためのものである。また、ソフトウェアをダウンロードする際の同意処理等の操作なども行うように構成されている。
【００５５】
システム時計１０７は、時計用チップにより構成され、時刻情報（年月日、時分秒）をＣＰＵ１０１に提供するためのものである。システム時計１０７は、システム電源の遮断時や停電時等に時刻情報が消滅しないようバックアップ用電池を備え、常に現時点の時刻を保持している。
【００５６】
画像処理部１０８は、入出力される画像に対する処理などを行うためのものである。
【００５７】
ソフトウェア制御部１０９は、ソフトウェアの入力処理や、インストール処理の制御などを行うためのものである。
【００５８】
ソフトウェア管理部１１０は、ソフトウェアの種別の判断や、ソフトウェアの種別及び他の属性情報などソフトウェアの情報を管理するためのものである。
【００５９】
同意制御部１１１は、ソフトウェア入力処理の同意が必要かどうかを判断したり、管理者に対する同意処理を行なうためのものである。
【００６０】
状態管理部１１２は、自己の装置で処理するジョブのログ情報や自己の装置の用紙トレイやトナーなどの各部位の状態情報や自己の装置の異常や警告などのイベントのログ情報など、自己の装置での状態情報を管理するためのものである。
【００６１】
以上の構成において、この実施の形態に係る複合機では、次のようにして、ネットワーク経由など外部からソフトウェアをダウンロードするなどして入力する場合に、ソフトウェアの種別によって適切にダウンロードの同意が必要か否かを判断することができ、ダウンロードの同意に関してはバランスの取れた好適なＴＣＯ（Total   Cost  of  Ownership ）の実現が可能となっている。
【００６２】
上記複合機１００は、予めハードディスク１０４などに記憶されたソフトウェアに基づいて、プリント動作やコピー動作などが制御されるが、図１に示すように、ネットワーク２を経由して外部の管理サーバ３００からソフトウェアをダウンロードして入力することが可能となっている。
【００６３】
図６は、この実施の形態に係る情報処理装置としての複合機の処理フローの例を示すフローチャートである。
【００６４】
上記複合機１００では、まず最初に、図６に示すように、ＣＰＵ１０１によって、外部から入力するソフトウェアに関する情報を取得する（ステップ１０１）。この実施の形態では、図１に示すように、複合機１００がネットワーク２を介して管理サーバ３００と通信を行い、当該管理サーバ３００内に設けられた図示しないソフトウェア情報取得用のｗｅｂサイトから、ＨＴＴＰなどの通信プロトコルによって、ソフトウェアに関する情報を取得するものとする。ここでは予め規定されている特定のＵＲＬであるhttp://server.software-download.mfmaker.co.jp/download/softeare.infoのファイルを取得するものとする。
【００６５】
次に、ＣＰＵ１０１は、図６に示すように、ソフトウェア情報の取得が正常終了したか否かを判別し（ステップ１０２）、ソフトウェア情報の取得が正常終了した場合には、ソフトウェアの種別を判断する（ステップ１０３）。なお、ソフトウェア情報の取得が正常終了しなかった場合には、ステップ１０１に戻る。
【００６６】
ここで、図７はソフトウェア情報の管理テーブルを示すものである。このソフトウェア情報管理テーブルは、管理サーバ３００などに設けられているソフトウェア情報を管理するためのテーブルである。
【００６７】
図７のＩＤは管理上のＩＤを示し、ソフトウェア名称は当該ソフトウェアの名称を示し、バージョンはソフトウェアのバージョンを示し、適用種別は当該ソフトウェアの適用が必須か任意であるかを表す種別を示し、エラー種別はソフトウェアが修正するエラーの度合いや機能追加、新規ソフトウェアなどのどれに該当するかの種別を示し、レイヤ種別はいわゆるどのレイヤに該当するかの種別を示し、品質種別はソフトウェアが提供元などにより品質保証されているかどうかの種別を示し、サイズはソフトウェアのサイズを表す属性を示し、提供元はソフトウェアの提供元を表す属性を示し、リリース日はソフトウェアのリリース日を表す属性を示し、依存ソフトウェアはソフトウェアが動作するために依存しているソフトウェアを表す属性を示し、依存バージョンは依存ソフトウェアのバージョンを示し、場所はソフトウェアを取得するための場所を示している。
【００６８】
この実施の形態では、ステップ１０１で取得したソフトウェア情報を格納したファイルに、図７で示したソフトウェア情報管理テーブルで管理されているソフトウェア情報の一部または全部が格納されているものとする。このソフトウェア情報は、例えば、ソフトウェア管理部１１０に格納される。上記ソフトウェア情報は、ソフトウェア情報を格納したファイルの中で予め規定されたフォーマットで、１行で１つのＩＤの情報をいわゆる" 項目：値" のフォーマットで記述されているものとし、例えば、ＩＤ：４，ソフトウェア名称：ImageApp1-Up315NA ，バージョン：3.15，適用種別：適用任意，エラー種別：機能追加，レイヤ種別：アプリケーション，品質種別：未保証，サイズ：3.9MB ，提供元：HIJKSoft，リリース日：2004/01/18，依存ソフトウェア：ImageAppl ，依存バージョン：1.00，場所：http://server.software-download.mfmaker.co.jp/download/4/ImageApp1-Up315NA.lzhと記述されているものとする。
【００６９】
いま、上記ステップ１０３において、図７に示すファイルから適用種別の「適用任意」が取得できたとする。次に、ＣＰＵ１０１は、ソフトウェアの種別の判断が正常に終了したか否かを判別し（ステップ１０４）、ソフトウェアの種別の判断が正常終了した場合は、種別からソフトウェア入力に対する同意が必要かどうかを判断する（ステップ１０５）。同意が必要かどうかの判断処理については後述する。なお、ソフトウェアの種別の判断が正常終了しなかった場合には、ステップ１０８に進む。
【００７０】
次に、ＣＰＵ１０１は、同意の判断が正常終了したか否かを判別し（ステップ１０６）、同意の判断が正常終了した場合には、ソフトウェアの入力に対して同意が必要か否かが判別される（ステップ１０７）。なお、同意の判断が正常終了しなかった場合には、ステップ１０８に進む。そして、ソフトウエアの入力に対して同意が必要と判別された場合には、ソフトウエアの入力に対する同意の処理を行なう（ステップ１０８）。ここで、同意の処理については、例えば、操作表示パネル８上に図示しない同意画面を表示することでそれに対する管理者の同意確認の応答をもらうことで同意を得る。なお、ソフトウェアの入力に対して同意が必要でない場合には、ステップ１１０に進む。
【００７１】
その後、ＣＰＵ１０１は、ソフトウェア入力が同意されたか否かを判別し（ステップ１０９）、ソフトウェア入力が同意された場合は、ソフトウェアの入力処理を行ない（ステップ１１０）、同意されなかった場合には、処理を終了する。ソフトウェアの入力処理としては、ソフトウェアのダウンロード及びインストール及び入力された処理などを行なう。ここでは、ソフトウェア情報から取得したＵＲＬからＨＴＴＰプロトコルで取得してインストールするものとする。ソフトウェアの入力処理が終了したら、当該処理を終了する。
【００７２】
ここで、図８にソフトウェアの種別から同意が必要かどうかを判断する処理のフローの例を示す。
【００７３】
ＣＰＵ１０１は、図８のステップ２０１に示すように、ソフトウェアの種別を入力する。ここでは、例えば、上述したように、種別として「適用任意」が入力されるものとする。次に、ソフトウェアの種別が入力されると、当該種別から該当する同意設定を取得するとともに（ステップ２０２）、同意設定が取得できたか否かを判別する（ステップ２０３）。そして、同意設定を取得できた場合には、同意設定から同意が必要か否かを判別する（ステップ２０４）。なお、同意設定を取得できなかった場合には、異常終了として処理を終了する。
【００７４】
ここで、図９は同意設定テーブルの例を示すものである。同意設定テーブルは、ソフトウェアの種別毎に同意が必要かどうかの同意設定を管理するためのものである。この実施の形態では、複合機１００の内部に保持されているものとする。
【００７５】
図９のＩＤは設定のＩＤを示し、種別カテゴリはソフトウェアの種別のカテゴリを示し、種別はソフトウェアの種別を示し、同意設定は同意が必要かどうかの設定値を示し、デフォルトは同意設定のデフォルト値を示す。ここでは、種別として「適用任意」が入力されているので、図９のＩＤ＝２の同意設定の「必要」が取得できるものとする。
【００７６】
同意設定が取得でき、同意が不要である場合には、図８に示すように、ステップ２０５を実行し、同意が必要である場合は、ステップ２０６を実行し、同意設定が取得できなかった場合には処理を異常終了する。ステップ２０５では同意が不要と決定したとして処理を正常終了する。ステップ２０６では同意が必要と決定したとして処理を正常終了する。
【００７７】
このように、上記実施の形態１によれば、情報処理装置である複合機１００で、ソフトウェアの種別を判断し、判断した種別からソフトウェアを入力するために同意が必要かどうかを判断することが可能になる。
【００７８】
そのため、上記実施の形態１では、ネットワーク２を経由して、外部の管理サーバ３００からからソフトウェアをダウンロードするなどして入力する場合に、ソフトウェアの種別によって適切にダウンロードの同意が必要か否かを判断することができ、ダウンロードの同意に関してはバランスの取れた好適なＴＣＯ（Total   Cost  of  Ownership ）の実現が可能となっている。
【００７９】
また、本実施の形態では、ソフトウェアに関する情報を取得するために予め規定されている特定のＵＲＬのファイルを取得するようにしていたが、管理サーバ３００からの電子メールを受信するようにするなど、管理サーバ３００からのソフトウェア情報を含む通知を受信するようにしてもよい。また、電子メールを受信する場合は、電子メールの本文にソフトウェアに関する情報が含まれているようにすればよい。また、特定のＵＲＬのファイルを取得するにしても、スケジュール機能などによって所定のタイミングで自動的に取りに行くように構成してもよい。
【００８０】
また、本実施の形態では、ソフトウェアの種別として適用種別の「適用任意」を取得していたが、エラー種別を取得するようにしてもよい。エラー種別では、ソフトウェアがエラーを修正するものか、ワーニングを修正するものなのか、機能追加するものか、新規のソフトウェアなのかを種別として表している。エラーの場合には、システムに致命的な障害をもたらすシステムエラーなのか、ソフトウェアの単なるエラーなのかも種別している。これにより、システムダウンをもたらす致命的なエラーやセキュリティホールを修正するセキュリティパッチなどの緊急適用すべきソフトウェアに対しては同意を不要として、適用されるので、適用漏れのようなことがなくなり、一方、バージョンアップや新規ソフトウェアの場合は、管理者の同意を得ることで、管理者がソフトウェアの入力を選択することができるのである。
【００８１】
また、本実施の形態では、ソフトウェアの種別として適用種別の「適用任意」を取得していたが、レイヤ種別を取得するようにしてもよい。レイヤ種別では、ソフトウェアが該当するレイヤの種別を表している。これにより、例えば、オペレーティングシステムやシステムデーモンなど、システムソフトウェアは同意を不要として速やかに漏れなく適用し、サードパーティもしくはユーザレベルの第三者が開発したアプリケーションソフトウェアは、管理者に同意を得ることで適切に判断してもらえるようになる。
【００８２】
また、本実施の形態では、ソフトウェアの種別として適用種別の「適用任意」を取得していたが、品質種別を取得するようにしてもよい。品質種別では、ソフトウェアが開発元もしくは提供元によって品質が保証されているかどうかの種別を示す。これにより、例えば、品質保証されているソフトウェアであれば安心して使用できるので同意は不要であるが、品質保証されていないソフトウェアの場合には管理者に同意を求め、適切に判断してもらえるようになる。
【００８３】
また、本実施の形態では、同意設定テーブルで「同意設定」により、ソフトウェアの種別と同意が必要かどうかの関係を管理していたが、同意設定値を設定する手段を提供するようにしてもよい。また、同意設定値のデフォルト値を設定する手段を提供するようにしてもよい。装置の管理者やユーザのポリシーによってどの種別のときに同意が必要かどうかは変わってくるものであり、これにより柔軟に対応することが可能になる。
【００８４】
また、本実施の形態では、ソフトウェアの種別を、ソフトウェア情報に含まれる種別の情報から判断していたが、ソフトウェア情報に含まれる属性情報を組み合わせて新たな種別を作成できるようにしてもよい。ここでは新たな種別を複合種別と呼ぶことにする。
【００８５】
ここで、図１０に、複合種別同意設定テーブルの例を示す。複合種別管理テーブルは、図９の同意設定テーブルを拡張したものである。
【００８６】
図１０において、ＩＤは複合種別のＩＤを示し、種別カテゴリは種別のカテゴリを示し、種別は作成した複合種別を示し、属性１はソフトウェアの第一の属性情報を示し、属性値１は属性1 の属性値を示し、属性２はソフトウェアの第二の属性情報を示し、属性値２は属性２の属性値を示し、同意設定は同意が必要かどうかの設定値を示し、デフォルトは同意設定値のデフォルト値を示す。複合種別同意設定テーブルは、装置内に格納するようにしてもよいし、外部の装置に格納するようにして、複数の複合機で共用するようにしてもよい。複合種別同意設定テーブルにより、装置の管理者が新たな種別を作成し、同意設定を適切に設定し、利用することが可能になるのである。
【００８７】
例えば、図１０では、サイズという属性と、提供元という属性を組み合わせることで新たな種別を作成している。この場合、ソフトウェアのサイズがある閾値以上の場合には管理者による同意が必要としたが、提供元によってサイズの閾値を変更したいときに有効である。具体的には、複合機１００の提供元である製造メーカーが提供するソフトウェアであれば５ＭＢを閾値とし、サードベンダであるHIJKSoftが提供するソフトウェアの場合には、３ＭＢを閾値として判断することが可能になる。このように様々なソフトウェアの属性値を組み合わせて種別を作成し、作成した種別に基づいて、好適に同意が必要かどうかを判断することが可能になる。
【００８８】
また、本実施の形態においては、ソフトウェア情報管理テーブルで示したソフトウェアの情報からソフトウェアの種別を判断していたが、ソフトウェアの名称やファイル名から予め決めた命名則に基づいて、ソフトウェアの情報を取得し、種別を判断するようにしてもよい。例えば、図７のＩＤ＝１の「System-Fix203A」というソフトウェア名称の場合には、「System」から下位システムのソフトウェアであり、「Fix 」から修正ソフトウェアであり、「203 」からバージョンが2.03であり、「A 」から品質保証されているソフトウェアであると、ソフトウェアの情報が取得でき、種別が判断可能となる。これにより、ソフトウェアの名称かファイル名さえわかればよいので、より単純にソフトウェア情報が判断可能となる。更に、ソフトウェアの情報として、ソフトウェアのウンロード元のＵＲＬなどの場所の情報を取得し、種別を判断するようにしてもよい。
【００８９】
例えば、「http://server.software-down1oad.mfmaker.cojp/download/mandatory/..... 」のように、ＵＲＬ上mandatory ディレクトリから取得するソフトウェアの場合は、適用が必須なので同意は不要とし、「http://server.software-down1oad.mfmaker.co,jp/download/option/..... 」のように、ＵＲＬ上optionディレクトリから取得するソフトウェアの場合は、適用が任意なので同意を求める、というようにしてもよい。
【００９０】
また、本実施の形態においては、ソフトウェア入力に対する同意の処理を装置の図示しない操作パネル上で行なうようにしていたが、図１のパーソナルコンピュータ（ＰＣ）２００で示したようにリモートサイトのパーソナルコンピュータ（ＰＣ）から管理者に同意してもらうようにしてもよい。例えば、リモートの管理者に対して同意を求める旨を記載した電子メールを送信し、リモートの管理者が返信する電子メールから同意結果を判断することで同意処理とする。これにより、ＳＯＨＯなど管理者が不在の装置に対しても、リモートから管理者が適切にソフトウェア入力の同意をすることが可能となる。
【００９１】
また、本実施の形態においては、ソフトウェアはネットワーク経由でダウンロードすることにしているが、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭなどのメディアから読取ることで、ソフトウェアを装置に入力するようにしてもよい。
【００９２】
また、本実施の形態においては、図１の管理サーバ３００からソフトウェアをダウンロードするようにしていたが、複数のサーバからダウンロードするようにしても問題はない。
【００９３】
また、本実施の形態においては、ソフトウェアは外部の管理サーバからネットワーク経由でダウンロードする、即ちプルすることにしているが、ソフトウェアが致命的なシステムエラーを修正するソフトウェアの種別である場合には、装置側からプルするだけでなく、外部の管理サーバからのソフトウェア入力要求を強制的に受け入れるようにしてソフトウェアを入力できるようにしてもよい。これにより、装置の管理者が意図に反して誤って、同意設定をシステムエラーを修正するソフトウェアの種別に対しても同意をすると設定した場合にでも、もれなくソフトウェアを入力させ修正することが可能になる。
【００９４】
また、本実施の形態においては、ソフトウェアの種別に基づいてソフトウェア入力の同意が必要かどうかを判断していたが、ソフトウェアの種別に加えて、自装置で処理したジョブのログ情報や自装置の各部位の状態情報や自装置で発生した異常もしくは警告イベントの情報などにも基づいて、ソフトウェア入力の同意が必要かどうかを判断したり、複数のソフトウェアの入力順序に優先順位を付けて、より柔軟に対応できるようにしてもよい。例えば、図示しない自装置のジョブログ情報の中に、「PrintJob  was   fail  becausesome error was happend on ImageAppl. 」というImageApp1 でエラーが発生したので印刷ジョブが失敗した」と記録された場合は、ジョブログ情報の中からImageApp1 でエラーが発生したことを状態管理部１１２で検出する。
【００９５】
ImageApp1 は図９のレイヤ種別ではアプリケーションであり、本来は同意が必要であるが、この場合は同意不要として緊急にソフトウェアを入力するようにしてもよい。また、管理サーバから取得したソフトウェア情報の中にImageApp1 以外にも複数のソフトウェアに関する情報があった場合には、ImageApp1 を重要と判断し、優先的に入力するようにしてもよい。
【００９６】
また、本実施の形態において、図１０の複合同意設定テーブルでは、ソフトウェアの属性情報の組合せで新たなソフトウェア種別を作成し、同意設定も設定していたが、自装置の状態情報も取り入れた組合せで新たなソフトウェア種別を作成し、同意設定も設定できるようにしてもよい。
【００９７】
本発明による情報処理装置は、上記実施の形態から明らかなように、ネットワーク経由など外部からソフトウェアをダウンロードするなどして入力する場合に、ソフトウェアの種別によって適切にダウンロードの同意が必要かどうかを判断することが可能になり、ダウンロードの同意に関してはバランスの取れた好適なＴＣＯ実現が可能となる。例えば、従来技術では不可能であった、システムの致命的な障害を修正するためのソフトウェアやセキュリティ対策パッチソフトなど同意の有無を問わずダウンロードすることが必須の場合は自動的にダウンロードし、サードパーティが開発した機能追加のソフトウェアやオープンソースに基づいて開発された品質未保証のソフトウェアなど同意を求めた方が良い場合は管理者の同意を得てダウンロードする、ということが可能になる。また、ソフトウェアの種別と同意が必要かどうかの判断の関係も装置の管理者で設定可能であり、管理者にとって最適なＴＣＯのポリシーに基づいて管理者は設定すればよいのである。
【００９８】
また、装置の管理者は、ソフトウェアのサイズや提供元などの属性情報を組み合わせて、ソフトウェアの新しい種別を作成できるので、作成した種別に基づいてダウンロードの同意が必要かどうかを設定できる、という更に柔軟な管理も可能となる。また、従来技術のように、ダウンロード元となる管理サーバが複数ある場合にも、それぞれに設定をしておく必要はないのである。また、ソフトウェアの種別だけでなく、自装置のジョブログ情報やイベントログ情報や各部位の状態など自装置の状態情報にも基づいて、ソフトウェアのダウンロードの同意が必要かどうかを判断することも可能になる。エラーを発生させた原因であるソフトウェアを見つけるなど自装置の状態情報に基づいて、複数のダウンロード対象のソフトウェアの中から、特定のソフトウェアを重要と判断して、優先的にダウンロードすることも可能となる。更に、ソフトウェアの属性情報の組み合わせに加え、自装置の状態情報も取り入れた組み合わせで、新たなソフトウエア種別を作成し、同意が必要かどうかの設定も可能になり、自装置の状態にも柔軟に対応した環境も可能になる。
【００９９】
実施の形態２
図１１はこの発明の実施の形態２を示すものであり、前記実施の形態１と同一の部分には同一の符号を付して説明すると、この実施の形態２では、外部ヘソフトウェアの出力要求を出力するためのソフトウェア出力要求手段と、前記ソフトウェアを出力するためのソフトウェア出力手段と、前記ソフトウェアに関する情報であるソフトウェア情報を取得するためのソフトウェア情報取得手段と、前記ソフトウェア情報取得手段によって取得したソフトウェア情報から前記ソフトウェアの種別を判断するための種別判断手段と、前記種別判断手段が判断した前記ソフトウェアの種別に基づき、前記ソフトウェアを出力するための出力先からの同意を得ることが必要かどうかを判断するための同意判断手段と、前記同意判断手段の判断結果に基づき、前記ソフトウェアを出力するための出力先との同意の処理を制御するための同意制御手段と、前記同意判断手段の判断結果もしくは前記同意制御手段の出力先との同意の処理の結果に基づき、前記ソフトウェア出力手段でソフトウェアを出力するかどうかを制御するためのソフトウェア出力制御手段と、を備えるように構成されている。
【０１００】
また、この実施の形態２に係る情報処理システムは、外部ヘソフトウェアの出力要求を出力するためのソフトウェア出力要求手段と、前記ソフトウェアを出力するためのソフトウェア出力手段と、前記ソフトウェアに関する情報であるソフトウェア情報を取得するためのソフトウェア情報取得手段と、前記ソフトウェア情報から前記ソフトウェアの種別を判断するための種別判断手段と、前記種別判断手段が判断した前記ソフトウェアの種別に基づき、前記ソフトウェアを出力するための出力先からの同意を得ることが必要かどうかを判断するための同意判断手段と、前記同意判断手段の判断結果に基づき、前記ソフトウェアを出力するための出力先との同意の処理を制御するための同意制御手段と、前記同意判断手段の判断結果もしくは前記同意制御手段の出力先との同意の処理の結果に基づき、前記ソフトウェア出力手段でソフトウェアを出力するかどうかを制御するためのソフトウェア出力制御手段と、を備える情報管理装置と、外部からのソフトウェア入力要求を入力するためのソフトウェア入力要求手段と、前記ソフトウェアを入力するためのソフトウェア入力手段と、前記ソフトウェアを入力するための入力元との同意の処理を制御するための入力同意制御手段と、前記入力同意制御手段の同意の処理の結果に基づき、前記ソフトウェア入力手段でソフトウェアを入力するかどうかを制御するためのソフトウェア入力制御手段と、を備える情報利用装置と、を備えるように構成されている。
【０１０１】
２．情報処理システムの構成
この情報処理システム１は、基本的に、図１１に示すように、ソフトウェアをダウンロードして入力する情報利用装置としての複合機（マルチファンクション機：ＭＦ機）４００（情報処理装置）と、当該複合機４００に対して、リモートサイトの管理者による同意を与える手段としてのパーソナルコンピュータ（ＰＣ）２００と、情報管理装置として機能する管理サーバ３００（情報処理装置）と、これら複合機４００とパーソナルコンピュータ（ＰＣ）２００とサーバ３００とを互いに通信可能に接続するネットワーク２とから構成されている。なお、上記管理サーバ３００は、ソフトウェアのダウンロード元であるソフトウェア製造メーカや開発者等のソフトウェアの提供元として機能するものであり、当該管理サーバ３００では、ソフトウェアに関する情報の管理をも行っている。
【０１０２】
なお、図示例では、複合機が１台、パーソナルコンピュータ（ＰＣ）が１台、管理サーバが１台のみ図示されているが、これらの台数に制限はなく、任意台数の複合機やパーソナルコンピュータ（ＰＣ）、あるいは管理サーバがネットワーク２に接続されていても良いことは勿論である。また、情報利用装置としては、ネットワーク機能を搭載した複合機に限定されるものではなく、ネットワークスキャナ装置などの装置をも広く含むものであり、又、パーソナルコンピュータ（ＰＣ）やワークステーション（ＷＳ）などであっても良いことは勿論である。
【０１０３】
すなわち、この実施の形態２では、外部ヘソフトウェアを出力する情報管理装置である管理サーバ３００と、ソフトウェアを入力する情報利用装置である複合機４００とを含むように構成されている。なお、図１１のパーソナルコンピュータ（ＰＣ）２００は、リモートサイトから複合機４００を管理するための管理者用ＰＣである。
【０１０４】
２−１．情報管理装置の構成及び動作
情報管理装置としての管理サーバ３００は、図１２に示すように、ＣＰＵ３０１と、ＲＯＭ３０２と、ＲＡＭ３０３と、ハードディスク３０４と、制御部３０５と、ソフトウエア管理部３０６と、ソフトウェア格納部３０７と、操作表示パネル３０８と、システム時計３０９と、通知部３１０と、ソフトウェア制御部３１１と、同意制御部３１２と、インターフェース部３１３とから構成されている。
【０１０５】
ＣＰＵ３０１はシステムバス３１４を介して管理サーバ全体の制御を行うものである。ＲＯＭ３０２はＣＰＵ３０１の制御プログラムを格納するものである。本実施の形態のＲＯＭ３０２に格納されている制御プログラムは、いわゆるオペレーティングシステム相当の機能を提供するプログラムであるものとする。ＲＡＭ３０３はＳＲＡＭ等で構成され、プログラム制御変数や各種処理のためのデータ等を格納するためのものである。ハードディスク３０４は、制御プログラムによる各種処理のためのデータを格納したり、ソフトウェアデータなどを格納したりするためのものである。制御部３０５は、ソフトウエア管理部３０６やソフトウェア格納部３０７と制御データの授受を行ったり、各種データの入出力などの制御を行うためのものである。
【０１０６】
ソフトウェア管理部３０６は、外部へ出力するソフトウェアの種別の判断や、ソフトウェアの種別及び他の属性情報などソフトウェアの情報を管理するためのものである。ソフトウェア格納部３０７は、ソフトウェア自体を格納するためのものである。操作表示パネル３０８は、本装置の各種設定を行う画面を表示したり、管理者が指示を行ったりするためのものである。システム時計３０９は、時計用チップにより構成され時刻情報（年月日、時分秒）をＣＰＵ３０１に提供する。システム時計３０９は、システム電源断時や停電時等に時刻情報が消滅しないようバックアップ用電池を備え、常に現時点の時刻を保持している。通知部３１０は、外部に通知するためのものである。
【０１０７】
ソフトウェア制御部３１１は、ソフトウェアの入力処理や、ソフトウェアの出力処理や、ソフトウェア格納部３０７の制御などを行うためのものである。同意制御部３１２は、ソフトウェア出力処理に関する出力先の同意が必要かどうかを判断したり、出力先との同意処理を行なうためのものである。インターフェース部３１３は、外部の機器と通信を行なうためのものである。
【０１０８】
図１３は、この実施の形態２に係る情報管理装置としての管理サーバの処理フローを示すフローチャートである。
【０１０９】
上記管理サーバ３００のＣＰＵ３０１は、まず最初に、図１３のステップ３０１において、外部に出力するソフトウェアに関する情報を取得する。
【０１１０】
ここで、図１４にソフトウェアの情報を管理するテーブルの例を示す。ソフトウェア情報管理テーブルは、管理サーバ３００で管理されているソフトウェア情報を管理するためのテーブルである。
【０１１１】
図１４のＩＤは管理上のＩＤを示し、ソフトウェア名称は当該ソフトウェアの名称を示し、バージョンはソフトウェアのバージョンを示し、適用種別はソフトウェアとして適用すべきかどうかを表す種別を示し、エラー種別はソフトウェアが修正するエラーの度合いや機能追加、新規ソフトウェアなどのいずれに該当するかの種別を示し、レイヤ種別はいわゆるどのレイヤに該当するかの種別を示し、品質種別はソフトウェアが提供元などにより品質保証されているかどうかの種別を示し、サイズはソフトウェアのサイズを表す属性を示し、提供元はソフトウェアの提供元を表す属性を示し、リリース日はソフトウェアのリリース日を表す属性を示し、依存ソフトウェアはソフトウェアが動作するために依存しているソフトウェアを表す属性を示し、依存バージョンは依存ソフトウェアのバージョンを示し、場所はソフトウェアを取得するための場所を示すものである。
【０１１２】
上記ステップ３０１では、上記ソフトウェア情報管理テーブルから追加されたソフトウェアや更新されたソフトウェアなどをバージョンやリリース日から判断して、ソフトウェア情報を取得するものとする。ソフトウェア情報は、図１４で示したソフトウェア情報管理テーブルで管理されているソフトウェア情報の一部または全部であるが、ここでは、例えば、" ＩＤ：４，ソフトウェア名称：ImageApp1-Up315NA ，バージョン：3.15，適用種別：適用任意，エラー種別：機能追加，レイヤ種別：アプリケーション，品質種別：未保証，サイズ：3.9MB ，提供元：HIJKSoft，リリース日：2004/01/18，依存ソフトウェア：ImageApp1 ，依存バージョン：1.00，場所：http//serversoftware-down1oadmfmakerco/download/4/ImaeA1-U315NAlzh" が取得できたものとする。
【０１１３】
次に、ＣＰＵ３０１は、図１３に示すように、ソフトウェア情報の取得が正常終了したか否かを判別し（ステップ３０２）、ソフトウェア情報の取得が正常終了した場合には、ソフトウエアの種別を判断する（ステップ３０３）。なお、正常終了しなかった場合はステップ３０１に戻る。ここではステップ３０３を実行する。
【０１１４】
次に、ＣＰＵ３０１は、ソフトウェアの種別の判断が正常に終了したか否かを判別し  （ステップ３０４）、ソフトウェアの種別の判断が正常終了した場合は、ステップ３０５を実行し、正常終了しなかった場合はステップ３０８を実行する。ここではステップ３０５を実行する。ステップ３０５において、種別からソフトウェア出力に対する出力先の同意が必要かどうかを判断する。同意が必要かどうかの判断処理については後述する。
【０１１５】
その後、ＣＰＵ３０１は、同意を得る必要か否かの判断が正常に終了したか否かを判別し（ステップ３０６）、同意を得る必要か否かの判断が正常に終了した場合には、出力先の同意が必要か否かを判別する（ステップ３０６）。そして、出力先の同意が必要と判別されるか、又は同意を得る必要か否かの判断が正常に終了しなかった場合には、同意要求を含むソフトウェアの出力要求を複合機１００に送信するとともに（ステップ３０８）、出力先からの同意の結果を受信する（ステップ３０９）。
【０１１６】
次に、ＣＰＵ３０１は、出力先が同意したか否かを判別し（ステップ３１０）、出力先が同意した場合は、ソフトウェアの出力処理を行なった後（ステップ３１１）、処理を終了する。
【０１１７】
なお、ステップ３０７において、出力先の同意が必要でないと判別された場合は、同意要求を含まないソフトウェアの出力要求を複合機１００に送信した後（ステップ３１２）、ステップ３１１に進んで、ソフトウェアの出力要求を行う。
【０１１８】
ここで、図１５に装置情報管理テーブルの例を示す。この装置情報管理テーブルでは、図示していないが、アドレスなどの装置に関する基本情報、及び装置で使用されているソフトウェアとバージョンなどを管理するためのテーブルである。
【０１１９】
図１５のＩＤは管理上のＩＤを示し、機械番号は装置を識別するためのユニークな番号であり、機種は装置の機械の種類を示し、ソフトウェア１とバージョン２はそれぞれ装置で使用されているソフトウェアとバージョンを示す。これにより対象とするソフトウェアを使用している装置を出力先として見つけ、同意要求を含む／含まないソフトウェア出力要求を送信するのである。
【０１２０】
ソフトウェア出力要求の送信、及び出力先からの同意の結果の受信は、ＨＴＴＰ（Hyper Text Transfer Protocol）やＦＴＰ（Fi1e Transfer Protocol）、Socketインタフェースを使用した通信など、一般的な通信プロトコルを使用して行なうものとする。ここで出力先の同意の処理については、出力先の操作パネル上に図示しない同意画面を表示することで、それに対する管理者の同意確認の応答をもらうことで同意を得る。出力先から結果が受信できるものとする。
【０１２１】
出力先から受信した結果から、ソフトウェア出力が出力先によって同意された場合は、ステップ３１１を実行し、出力先によって同意されなかった場合には処理を終了する。ここでは、ステップ３１１を実行する。次にステップ３１１においては、ソフトウェアの出力処理を行なう。ソフトウェア出力処理としては、ソフトウェアのダウンロード処理などを行なう。ここでは、出力先に対してＨＴＴＰ（Hyper Text Transfer Protocol）やＦＴＰ（FiIe Transfer Protocol）、Socketインタフェースを使用した通信など、一般的な通信プロトコルを使用して行なうものとする。ソフトウェア出力処理が終了したら、処理を終了する。
【０１２２】
ここで、図１６にソフトウェアの種別から出力先の同意が必要かどうかを判断する処理のフローの例を示す。
【０１２３】
図１６のステップ４０１では、ソフトウェアの種別を入力する。ここでは、種別として「適用任意」が入力されるものとする。次に、ＣＰＵ３０１は、ソフトウェアの種別から同意設定を取得する（ステップ４０２）。
【０１２４】
ここで、図１７に同意設定テーブルの例を示す。同意設定テーブルは、ソフトウェアの種別毎に出力先の同意が必要かどうかの同意設定を管理するためのものである。ここでは、管理サーバ３００内に保持するものとする。
【０１２５】
図１７のＩＤは設定のＩＤを示し、機械番号は出力先の装置を識別するためのユニークな番号を示し、種別カテゴリはソフトウェアの種別のカテゴリを示し、種別はソフトウェアの種別を示し、同意設定は出力先の同意が必要かどうかの設定値を示し、デフォルトは同意設定のデフォルト値を示す。ここでは、種別として「適用必須」が入力されているので、図１７のＩＤ＝２の同意設定の必要が取得できるものとする。
【０１２６】
次に、ＣＰＵ３０１は、同意設定が取得できたか否かを判別し（ステップ４０３）、同意設定が取得できた場合は、取得した同意設定から同意が必要か否かを判別する（ステップ４０４）。そして、取得した同意設定から同意が必要と判別した場合には、出力先の同意が必要に決定し（ステップ４０５）、同意設定から同意が必要でない判別した場合には、出力先の同意が不要に決定して（ステップ４０６）、当該処理を終了する。
【０１２７】
なお、同意設定が取得できなかった場合は、同意の有無を判断できないため、異常動作として終了する。
【０１２８】
このように、上記実施の形態２に係る情報管理装置としての管理サーバ３００では、ソフトウェアの種別を判断し、判断した種別からソフトウェアを出力するために出力先の同意が必要かどうかを判断することが可能になる。
【０１２９】
２−２情報利用装置の構成及び動作
図１８はこの実施の形態２に係る情報利用装置としての複合機を示す構成図である。図１８の複合機４００は、図１０の複合機４００に対応している。
【０１３０】
この情報利用装置として機能する複合機４００では、図１８に示すように、基本的に、複合機１００と同様に、スキャナ部６で入力された画像の画像データを生成し、印刷部４０６で外部へ出力するように構成されている。
【０１３１】
ところで、この実施の形態では、外部からのソフトウェア入力要求を入力するためのソフトウェア入力要求手段と、前記ソフトウェアを入力するためのソフトウェア入力手段と、前記ソフトウェアを入力するための入力元との同意の処理を制御するための入力同意制御手段と、前記入力同意制御手段の同意の処理の結果に基づき、前記ソフトウェア入力手段でソフトウェアを入力するかどうかを制御するためのソフトウェア入力制御手段と、を備えるように構成されている。
【０１３２】
この複合機４００は、図１９に示すように、ＣＰＵ（Central Processing Unit ）４０１と、ＲＯＭ（Read  Only  Memory）４０２と、ＲＡＭ（Random Access Memory）４０３と、ハードディスク４０４と、制御部４０５と、印刷部４０６と、スキャナ部６と、操作表示パネル８と、システム時計４０７と、画像処理部４０８と、ソフトウエア制御部４０９と、ソフトウエア管理部４１０と、同意制御部４１１と、Ｉ／Ｆ（外部インターフェース）部４１２とを備えるように構成されている。
【０１３３】
ＣＰＵ４０１は、当該複合機４００を構成するＲＯＭ４０２と、ＲＡＭ４０３と、ハードディスク４０４と、制御部４０５と、印刷部４０６と、スキャナ部６と、操作表示パネル８と、システム時計４０７と、画像処理部４０８と、ソフトウエア制御部４０９と、ソフトウエア管理部４１０と、同意制御部４１１と、Ｉ／Ｆ（外部インタフェース）部４１３とを、システムバス４１３を介して制御する中央演算処理装置である。この複合機４００におけるプリント動作や、コピー動作、あるいはファクシミリとしての各種の動作、及びソフトウエアの動作確認等は、ＣＰＵ４０１及びソフトウエア制御部４０９等の制御のもとに実行される。上記ＣＰＵ４０１による制御動作は、プログラムに基づいて決定される。
【０１３４】
ＲＯＭ４０２は、読み取り専用メモリであり、このＲＯＭ４０２には、ＣＰＵ４０１を制御するためのプログラムが格納されている。本実施の形態では、ＲＯＭ４０２に格納されている制御プログラムは、スキャナ部６で入力された画像データを処理したり、印刷部４０６を介して外部に出力したりするためのものである。
【０１３５】
ＲＡＭ４０３は、ＳＲＡＭ等で構成され、プログラム制御変数や各種処理のためのデータ等を格納するためのものである。
【０１３６】
ハードディスク４０４は、制御プログラムによる各種処理のためのデータを格納したり、画像データなどを格納したりするためのものである。
【０１３７】
制御部４０５は、スキャナ部６や印刷部４０６と制御データの授受を行ったり、画像データの入出力などの制御を行うためのものである。
【０１３８】
印刷部４０６は、出力画像を印刷して外部に出力するためのものである。この印刷部４０６は、例えば、スキャナ部６で読み取られた画像の印刷機能すなわち複写装置機能に限らず、ネットワーク２を介して取得した文書データや画像ファイルなどに基づいて画像を印刷するいわゆるプリント機能や、一般電話回線を介して受信したＦＡＸ受信データに基づいて印刷出力するＦＡＸ機能をも果たしている。
【０１３９】
上記複合機４００が例えばプリンタとして機能する場合、印刷部４０６は、外部からぺージ記述言語（ＰＤＬ：Page  Description   Language）で記載されたＰＤＬデータを受け取り、当該ＰＤＬデータをハードディスク４０４に出力単位ごと（１ぺージごと）の画像データとして展開し、そのラスタデータが印刷部４０６に送られ、印刷部４０６にてプリント出力するように構成されている。また、複合機４００がカラーファクシミリ受信機として機能する場合、印刷部４０６は、ＰＤＬデータに代えてＦＡＸ受信データを受け取り、印刷部４０６にてＬａｂ信号に変換した後、印刷部２０６にてプリント出力する。
【０１４０】
スキャナ部６は、原稿を読取って、画像データを入力するためのものである。
【０１４１】
操作表示パネル８は、スキャン動作の設定を行う画面を表示したり、スキャン指示を行ったりするためのものである。また、ソフトウエアのダウンロード等の操作なども行うように構成されている。
【０１４２】
システム時計４０７は、時計用チップにより構成され、時刻情報（年月日、時分秒）をＣＰＵ４０１に提供するためのものである。システム時計４０７は、システム電源の遮断時や停電時等に時刻情報が消滅しないようバックアップ用電池を備え、常に現時点の時刻を保持している。
【０１４３】
画像処理部４０８は、入出力される画像に対する処理などを行うためのものである。
【０１４４】
ソフトウェア制御部４０９は、ソフトウェアの入力処理や、インストール処理の制御などを行うためのものである。
【０１４５】
ソフトウェア管理部４１０は、ダウンロード、及びインストールされているソフトウェアの種別の判断、及び他の属性情報などソフトウェアの情報を管理するためのものである。
【０１４６】
同意制御部４１１は、管理サーバ３００から同意要求の処理と結果受信、及び装置の管理者に対する同意処理を行なうためのものである。
【０１４７】
以上の構成において、この実施の形態に係る複合機では、次のようにして、ネットワーク経由など外部からソフトウェアをダウンロードするなどして入力する場合に、ソフトウェアの種別によって適切にダウンロードの同意が必要か否かを判断することができ、ダウンロードの同意に関してはバランスの取れた好適なＴＣＯ（Total   Cost  of  Ownership ）の実現が可能となっている。
【０１４８】
次に、図２０に従い、本実施の形態における情報利用装置の処理フローの例を説明する。
【０１４９】
上記複合機４００のＣＰＵ４０１では、まず最初に、図２０のステップ５０１において、外部からソフトウェア入力要求を受信する。ここでは、管理サーバ３００からＨＴＴＰ（Hyper Text Transfer Protocol）やＦＴＰ（File Transfer Protocol）、Socketインタフェースを使用した通信など、一般的な通信プロトコルを使用して行なうものとする。
【０１５０】
ここでは、ステップ５０１で取得したソフトウェア入力要求には、図１４で示したソフトウェア情報管理テーブルで管理されているソフトウェア情報の一部または全部が含まれている。例えば、“ＩＤ：１，ソフトウェア名称：System-Fix203A，バージョン：2.03，適用種別：適用必須，エラー種別：システムエラー，レイヤ種別：下位システム，品質種別：保証，サイズ：890KB ，提供元：MFMaker ，リリース日：2004/01/25，依存ソフトウェア：Sysmtem ，依存バージョン：2.00，場所http//serversoftware-downloadmfmakerco/download/1/Sstem-F1x203A1zh，同意：必要" という入力要求が受信されるものとする。最後の“同意：必要" から同意要求が含まれているかを確認するのである。
【０１５１】
次に、ＣＰＵ４０１は、ソフトウェア入力要求の受信が正常終了したか否かを判別し  （ステップ５０２）、ソフトウェア入力要求の受信が正常終了した場合は、ソフトウェア入力に対する同意要求が含まれているかを確認する（ステップ５０３）。その後、ソフトウェア入力に対する同意要求が含まれているか否かを判別し（ステップ５０４）、同意要求が含まれている場合は、ソフトウェア入力に対する同意の処理を行なう（ステップ５０５）。
【０１５２】
次に、ＣＰＵ４０１は、ソフトウェア入力の同意処理が正常に終了したか否かを判別し（ステップ５０６）、ソフトウェア入力の同意処理が正常に終了した場合には、同意の結果を管理サーバ３００に対して返信する（ステップ５０７）。なお、ソフトウェア入力の同意処理が正常に終了しなかった場合には、異常動作として終了する。
【０１５３】
その後、ＣＰＵ４０１は、同意の結果の返信は正常に終了したか否かを判別し（ステップ５０８）、同意の結果の返信は正常に終了した場合には、ソフトウェア入力は同意されたか否かを判別する（ステッ５０９）。そして、ソフトウェア入力が同意された場合には、ソフトウェアの入力処理を行なう（ステップ５１０）。
【０１５４】
ソフトウェア入力処理としては、ソフトウェアのダウンロード及びインストール及び入力された処理などを行なう。ここでは、ＨＴＴＰ（Hyper Text Transfer Protocol）やＦＴＰ（Fi1e Transfer Protocol）、Socketインタフェースを使用した通信など、一般的な通信プロトコルを使用して行なうものとする。ソフトウェア入力処理が終了したら、処理を終了する。
【０１５５】
また、同意の結果の返信が正常に終了しなかったか、又はソフトウェアの入力が同意されなかった場合には、異常動作として終了する。
【０１５６】
このように、上記実施の形態２における情報利用装置によれば、管理サーバ３００側のソフトウェアの種別に基づく判断されたソフトウェア入力の同意要求に対して、同意処理を行ない同意の結果を返信することが可能になる。
【０１５７】
また、上記実施の形態２に係る情報管理装置では、ソフトウェアの種別に基づきソフトウェア入力に同意が必要かどうかを判断し、情報利用装置４００では、情報管理装置３００からの同意要求に対して同意処理を行ない同意の結果を返信することが可能になる。
【０１５８】
また、本実施の形態２では、ソフトウェア入力要求の送信に対してＨＴＴＰプロトコルを使用していたが、電子メールを使用するようにしてもよい。電子メールの場合は、電子メールの本文にソフトウェアに関する情報と同意要求を含むソフトウェア入力要求を含むようにすればよい。
【０１５９】
また、本実施の形態２では、情報管理装置側でソフトウェアが更新されるか追加されるタイミングで処理を開始していたが、スケジュール機能など自動的に定期的に、情報管理装置で管理しているソフトウェアの情報を確認して処理を開始するようにしてもよい。
【０１６０】
また、本実施の形態２では、ソフトウェアの種別として適用種別の適用任意を取得していたが、エラー種別を取得するようにしてもよい。エラー種別では、ソフトウェアがエラーを修正するものか、ワーニングを修正するものなのか、機能追加するものか、新規のソフトウェアなのかを種別として表している。エラーの場合にはシステムに致命的な障害をもたらすシステムエラーなのか、ソフトウェアの単なるエラーなのかも種別している。これにより、システムダウンをもたらす致命的なエラーやセキュリティホールを修正するセキュリティパッチなどの緊急適用すべきソフトウェアに対しては同意を不要として、適用されるので、適用漏れのようなことがなくなり、一方、バージョンアップや新規ソフトウェアの場合は、管理者の同意を得ることで、管理者がソフトウェアの入力を選択することができるのである。
【０１６１】
また、本実施の形態２では、ソフトウェアの種別として適用種別の適用任意を取得していたが、レイヤ種別を取得するようにしてもよい。レイヤ種別では、ソフトウェアが該当するレイヤの種別を表している。これにより、例えば、オペレーティングシステムやシステムデーモンなど、システムソフトウェアは同意を不要として速やかに漏れなく適用し、サードパーティもしくはユーザレベルの第三者が開発したアプリケーションソフトウェアは管理者に同意を得ることで適切に判断してもらえるようになる。
【０１６２】
また、本実施の形態２では、ソフトウェアの種別として適用種別の適用任意を取得していたが、品質種別を取得するようにしてもよい。品質種別では、ソフトウェアが開発元もしくは提供元によって品質が保証されているかどうかの種別を示す。これにより、例えば、品質保証されているソフトウェアであれば安心して使用できるので同意は不要であるが、品質保証されていないソフトウェアの場合には管理者に同意を求め、適切に判断してもらえるようになる。
【０１６３】
また、本実施の形態２では、同意設定テーブルで同意設定により、ソフトウェアの種別と同意が必要かどうかの関係を管理していたが、情報利用装置側、もしくは情報利用装置の管理者ＰＣから情報管理装置で管理している同意設定テーブルの同意設定値を設定する手段を提供するようにしてもよい。また、同意設定値のデフォルト値を設定する手段を提供するようにしてもよい。装置の管理者やユーザのポリシーによってどの種別のときに同意が必要かどうかは変わってくるものであり、これにより柔軟に対応することが可能になる。
【０１６４】
また、本実施の形態２では、ソフトウェアの種別を、ソフトウェア情報に含まれる種別の情報から判断していたが、情報利用装置側、もしくは情報利用装置の管理者ＰＣから、ソフトウェア情報に含まれる属性情報を組み合わせて新たな種別を作成できるようにしてもよい。ここでは新たな種別を複合種別と呼ぶことにする。
【０１６５】
ここで、図２１に、複合種別同意設定テーブルの例を示す。複合種別管理テーブルは、図１７の同意設定テーブルを拡張したものである。図２１において、ＩＤは複合種別のＩＤを示し、機械番号は装置をユニークに識別できる番号を示し、種別カテゴリは種別のカテゴリを示し、種別は作成した複合種別を示し、属性１はソフトウェアの第一の属性情報を示し、属性値1 は属性1 の属惟値を示し、属性２はソフトウェアの第二の属性情報を示し、属性値2 は属性2 の属性値を示し、同意設定は同意が必要かどうかの設定値を示し、デフォルトは同意設定値のデフォルト値を示す。複合種別同意設定テーブルは情報管理装置内に格納するようにしてもよいし、外部の装置に格納するようにして複数の情報管理装置で共用するようにしてもよい。複合種別同意設定テーブルにより、装置の管理者が新たな種別を作成し、同意設定を適切に設定し、利用することが可能になるのである。例えば、図６では、サイズという属性と、提供元という属性を組み合わせることで新たな種別を作成している。この場合、ソフトウェアのサイズがある閾値以上の場合には管理者による同意が必要としたいが、提供元によってサイズの閾値を変更したいときに有効である。
【０１６６】
具体的には、複合機４００の提供元であるMFMaker が提供するソフトウェアであれば５ＭＢを閾値と、サードベンダであるHIJKSoftが提供するソフトウェアの場合には、３ＭＢを閾値として判断することが可能になる。このように様々なソフトウェアの属性値を組み合わせて種別を作成し、作成した種別に基づいて、好適に同意が必要かどうかを判断することが可能になる。
【０１６７】
また、本実施の形態２においては、ソフトウェア情報管理テーブルで示したソフトウェアの情報からソフトウェアの種別を判断していたが、ソフトウェアの名称やファイル名から予め決めた命名則に某づいて、ソフトウェアの情報を取得し、種別を判断するようにしてもよい。例えば、図１４のＩＤ＝１の「System-Fix203A」というソフトウェア名称の場合には、「System」から下位システムのソフトウェアであり、「Fix 」から修正ソフトウェアであり、「203 」からバージョンが2.03であり、「A 」から品質保証されているソフトウェアであると、ソフトウェアの情報が取得でき、種別が判断可能となる。これにより、ソフトウェアの名称かファイル名さえわかればよいので、より単純にソフトウェア情報が判断可能となる。更に、ソフトウェアの情報として、ソフトウェアのウンロード元のURL などの場所の情報を取得し、種別を判断するようにしてもよい。
【０１６８】
例えば、「http: 〃server.software-down1oad.mfmaker.co.jp/down1oad/mandatory/..... 」のように、ＵＲＬ上mandatory ディレクトリから取得するソフトウェアの場合は、適用が必須なので同意は不要とし、「http://server.software-down1oad.mfmaker.cojp/down1oad/option/.....」のように、ＵＲＬ上optionディレクトリから取得するソフトウェアの場合は、適用が任意なので同意を求める、というようにしてもよい。
【０１６９】
また、本実施の形態２においては、ソフトウェア入力に対する同意の処理を装置の図示しない操作パネル上で行なうようにしていたが、図１０のＰＣ２００で示したようにリモートサイトのＰＣ２００から管理者に同意してもらうようにしてもよい。例えば、リモートの管理者に対して同意を求める旨を記載した電子メールを送信し、リモートの管理者が返信する電子メールから同意結果を判断することで同意処理とする。これにより、SOH0など管理者が不在の装置に対しても、リモートから管理者が適切にソフトウェア入力の同意をすることが可能となる。
【０１７０】
また、本実施の形態２においては、ソフトウェアはネットワーク経由でダウンロードすることにしているが、RS-232C,IEEE1394,USBなどのシリアルケーブル経由やパラレル経由でダウンロードするようにしてもよい。
【０１７１】
また、本実施の形態２においては、図１０の管理サーバ３００からソフトウェアをダウンロードするようにしていたが、複数の複合機に対して、サーバからダウンロードするようにしても問題はないし、管理サーバも複数存在しても問題はない。
【０１７２】
また、本実施の形態２においては、ソフトウェアは管理サーバ３００からネットワーク２を経由してダウンロードの要求を送る、即ちプッシュすることにしているが、複合機４００側で致命的なシステムエラーが発生した場合などは、管理サーバ側からプッシュするだけでなく、複合機４００側から強制的にソフトウェアを入力できるようにしてもよい。これにより、複合機４００側のシステムエラー時の緊急リカバリなど、管理サーバ３００側からのプッシュ配信を待つことなく、また同意を必要とすることなく、速やかにソフトウェアを入力させ修正することが可能になる。
【０１７３】
本発明による情報管理装置、情報利用装置及び情報処理システムは、上記実施例から明らかなように、情報管理装置からネットワーク経由など外部ヘソフトウェアをダウンロードするなどして出力する場合に、ソフトウェアの種別によって適切にダウンロードの同意が必要かどうかを判断することが可能になり、ダウンロードの同意に関してはバランスの取れた好適なＴＣＯ実現が可能となる。例えば、従来技術では不可能であった、システムの致命的な障害を修正するためのソフトウェアやセキュリティ対策パッチソフトなど同意の有無を問わずダウンロードすることが必須の場合は白動的にダウンロードし、サードパーティが開発した機能追加のソフトウェアやオープンソースに基づいて開発された品質未保証のソフトウェアなど同意を求めた方が良い場合は管理者の同意を得てダウンロードする、ということが可能になる。
【０１７４】
また、ソフトウェアの種別と同意が必要かどうかの判断の関係も装置の管理者で設定可能であり、管理者にとって最適なＴＣＯのポリシーに基づいて管理者は設定すればよいのである。また、装置の管理者は、ソフトウェアのサイズや提供元などの属性情報を組み合わせて、ソフトウェアの新しい種別を作成そきるので、作成した種別に基づいてダウンロードの同意が必要かどうかを設定できる、という更に柔軟な管理も可能となる。
【図面の簡単な説明】
【０１７５】
【図１】図１はこの発明の実施の形態１に係る情報処理装置を適用した情報処理システムを示す構成図である。
【図２】図２はこの発明の実施の形態１に係る情報処理装置としての複合機を示す構成図である。
【図３】図３はパーソナルコンピュータを示す構成図である。
【図４】図４は管理サーバを示す構成図である。
【図５】図５はこの発明の実施の形態１に係る情報処理装置としての複合機を示すブロック構成図である。
【図６】図６はこの発明の実施の形態１に係る情報処理装置としての複合機の動作を示すフローチャートである。
【図７】図７はソフトウェア情報管理テーブルを示す図表である。
【図８】図８はソフトウェアの種別から同意が必要かどうかを判断する処理を示すフローチャートである。
【図９】図９は同意設定テーブルを示す図表である。
【図１０】図１０は複合種別同意設定テーブルを示す図表である。
【図１１】図１１はこの発明の実施の形態２に係る情報管理装置を適用した情報処理システムを示す構成図である。
【図１２】図１２はこの発明の実施の形態２に係る情報管理装置としての管理サーバを示すブロック構成図である。
【図１３】図１３はこの発明の実施の形態２に係る情報管理装置としての管理サーバの動作を示すフローチャートである。
【図１４】図１４はソフトウェア情報管理テーブルを示す図表である。
【図１５】図１５は装置情報管理テーブルを示す図表である。
【図１６】図１６はソフトウェアの種別から同意が必要かどうかを判断する処理を示すフローチャートである。
【図１７】図１７は同意設定テーブルを示す図表である。
【図１８】図１８はこの発明の実施の形態２に係る情報利用装置としての複合機を示す構成図である。
【図１９】図１９はこの発明の実施の形態２に係る情報利用装置としての複合機を示すブロック構成図である。
【図２０】図２０はこの発明の実施の形態２に係る情報利用装置としての複合機の動作を示すフローチャートである。
【図２１】図２１は複合種別同意設定テーブルを示す図表である。
【図２２】図２２は従来の装置の動作を示すフローチャートである。
【図２３】図２３は従来の装置の動作を示すフローチャートである。
【符号の説明】
【０１７６】
１０１：ＣＰＵ、１０９：ソフトウェア制御部、１１０：ソフトウェア管理部、１１１：同意制御部。
【図１】
2006099184.tif 000003
【図２】
2006099184.tif 000004
【図３】
2006099184.tif 000005
【図４】
2006099184.tif 000006
【図５】
2006099184.tif 000007
【図６】
2006099184.tif 000008
【図７】
2006099184.tif 000009
【図８】
2006099184.tif 000010
【図９】
2006099184.tif 000011
【図１０】
2006099184.tif 000012
【図１１】
2006099184.tif 000013
【図１２】
2006099184.tif 000014
【図１３】
2006099184.tif 000015
【図１４】
2006099184.tif 000016
【図１５】
2006099184.tif 000017
【図１６】
2006099184.tif 000018
【図１７】
2006099184.tif 000019
【図１８】
2006099184.tif 000020
【図１９】
2006099184.tif 000021
【図２０】
2006099184.tif 000022
【図２１】
2006099184.tif 000023
【図２２】
2006099184.tif 000024
【図２３】
2006099184.tif 000025