(57)【要約】【課題】  利用側が求めるプログラムを適正に供給可能とし、プログラムの利用契約、課金上の問題を伴うインストールの実行手続きを円滑に行う。【解決手段】  ダウンロードすべきプログラムを格納しているプログラム供給側に対し自機に使用可能なプログラムのリストを要求し、それを受け取る（Ｓ４０５）。プログラムリストの中から要望するプログラムを指定し、供給側に対し指定したプログラムの利用関連情報（プログラム利用契約の有無、プログラム利用契約により発生する対価、プログラム利用契約の有効期限を含む）の取得要求をし、それを受け取る（Ｓ４０６）。次いで利用予定のプログラムの取得要求をし（Ｓ４０９）、ダウンロードした該プログラムの正当性を確認し、正当性を条件に供給側に対し該プログラムの利用契約の締結を依頼し（Ｓ４１１）、許可情報を受け取って、手続きを終える。【選択図】          図４
2005242407.tif 000002
【特許請求の範囲】
【請求項１】
プログラムの提供を受けるために提供側との通信を可能とした情報処理装置であって、装置の機器ＩＤ及び機器構成情報を含む機器情報を生成する手段と、使用可能なプログラムリストを得るために前記機器情報を付して、提供側に対しプログラムリスト取得要求を行う手段と、該取得要求に応じて提供側から送られてくるプログラムリストを受け取る手段を備えたことを特徴とする情報処理装置。
【請求項２】
請求項１に記載された情報処理装置において、取得した前記プログラムリストの中から要望するプログラムを指定する手段と、提供側に対し要望するプログラムの利用関連情報の取得要求を行う手段と、該取得要求に応じて提供側から送られてくる要望するプログラムの利用関連情報を受け取る手段を備えたことを特徴とする情報処理装置。
【請求項３】
請求項２に記載された情報処理装置において、前記要望するプログラムの利用関連情報に含まれる、プログラム利用契約の有無、プログラム利用契約により発生する対価、プログラム利用契約の有効期限を認識する手段を備えたことを特徴とする情報処理装置。
【請求項４】
請求項１乃至３のいずれかに記載された情報処理装置において、取得した前記プログラムリストの中から利用予定のプログラムを指定する手段と、提供側に対し指定した利用予定プログラムの取得要求を行う手段と、該取得要求に応じて提供側から送られてくる利用予定プログラムを受け取る手段を備えたことを特徴とする情報処理装置。
【請求項５】
請求項４に記載された情報処理装置において、受け取った利用予定プログラムの正当性を確認する手段と、利用予定プログラムの正当性の確認を条件に提供側に対し該プログラムの利用契約の締結要求を行う手段と、該締結要求に応じて提供側から送られてくる許可情報を受け取る手段を備えたことを特徴とする情報処理装置。
【請求項６】
プログラムの提供を受けるために提供側との通信を可能とした情報処理装置が有するコンピュータに、装置所有の機器情報を生成する手順と、前記機器情報を付して、提供側に対しプログラムリスト取得要求を行う手順と、取得要求に応じて提供側から送られてくるプログラムリストを受け取る手順と、プログラムリストの中から要望するプログラムを指定する手順と、提供側に対し要望するプログラムの利用関連情報の取得要求を行う手順と、取得要求に応じて提供側から送られてくる要望するプログラムの利用関連情報を受け取る手順と、取得したプログラムリストの中から利用予定のプログラムを指定する手順と、提供側に対し指定した利用予定プログラムの取得要求を行う手順と、取得要求に応じて提供側から送られてくる利用予定プログラムを受け取る手順と、受け取った利用予定プログラムの正当性を確認する手順と、利用予定プログラムの正当性の確認を条件に提供側に対し該プログラムの利用契約の締結要求を行う手順と、締結要求に応じて提供側から送られてくる許可情報を受け取る手順を実行させるためのプログラム。
【請求項７】
プログラムを提供するために利用側との通信を可能としたプログラム提供装置であって、利用側から装置所有の機器情報を付して送られてくるプログラムリスト取得要求を受け取る手段と、該取得要求に応じて利用側で使用可能なプログラムのリストを作成する手段と、作成したプログラムリストを利用側に送る手段を備えたことを特徴とするプログラム提供装置。
【請求項８】
プログラムを提供するために利用側との通信を可能としたプログラム提供装置であって、利用を要望するプログラムを指定して利用側から送られてくるプログラムの利用関連情報の取得要求を受け取る手段と、該取得要求に応じてプログラムの利用関連情報を生成する手段と、生成したプログラムの利用関連情報を利用側に送る手段を備えたことを特徴とするプログラム提供装置。
【請求項９】
請求項８に記載されたプログラム提供装置において、前記プログラムの利用関連情報は、プログラム利用契約の有無、プログラム利用契約により発生する対価、プログラム利用契約の有効期限を含むこと特徴とするプログラム提供装置。
【請求項１０】
請求項７乃至９のいずれかに記載されたプログラム提供装置において、利用を予定するプログラムを指定して利用側から送られてくるプログラムの取得要求を受け取る手段と、該取得要求に応じてプログラムを利用側に送る手段を備えたことを特徴とするプログラム提供装置。
【請求項１１】
請求項７乃至１０のいずれかに記載されたプログラム提供装置において、利用を予定するプログラムを指定して利用側から送られてくるプログラム利用契約の締結要求を受け取る手段と、プログラム利用契約の締結要求に応じて課金条件を記した許可情報を利用側に送る手段を備えたことを特徴とするプログラム提供装置。
【請求項１２】
プログラムを提供するために利用側との通信を可能としたプログラム提供装置が有するコンピュータに、利用側から装置所有の機器情報を付して送られてくるプログラムリスト取得要求を受け取る手順と、取得要求に応じて利用側で使用可能なプログラムのリストを作成する手順と、作成したプログラムリストを利用側に送る手順と、利用を予定するプログラムを指定して利用側から送られてくるプログラムの取得要求を受け取る手順と、取得要求に応じてプログラムを利用側に送る手順を実行させるためのプログラム。
【請求項１３】
プログラムを提供するために利用側との通信を可能としたプログラム提供装置が有するコンピュータに、利用を要望するプログラムを指定して利用側から送られてくるプログラムの利用関連情報の取得要求を受け取る手順と、取得要求に応じてプログラムの利用関連情報を生成する手順と、生成したプログラムの利用関連情報を利用側に送る手順と、利用を予定するプログラムを指定して利用側から送られてくるプログラム利用契約の締結要求を受け取る手順と、プログラム利用契約の締結要求に応じて課金条件を記した許可情報を利用側に送る手順を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外部から通信手段によってプログラムを提供することを可能とした情報処理装置に関し、特にマルチファンクションペリフェラルにおいて利用するプログラムに対して好適な、プログラム管理機能を実現する手段を備えた情報処理装置、プログラム提供装置及び同装置に用いるプログラムに関する。
【背景技術】
【０００２】
今日、諸種の情報処理装置で機能の複合化が進展しており、搭載したソフトウェア（プログラム）の変更、追加により多機能化を図ることが一般的な方法となっている。装置の機能に必要なプログラムは、電源ＯＦＦでもデータが消えない様なデバイス（例えば、不揮発性のFlash（フラッシュ）ＲＯＭ等）内に予め格納する方式が従来から普通に採用されている。
プリンタ、マルチファンクションペリフェラル（以下「ＭＦＰ」と記す）といった情報処理装置において、上記した方式をとる場合、ユーザへ機器を納入した後に、機器のプログラム（アプリケーションプログラム、システム制御プログラム、オペレーションプログラム等）に不具合が発見された場合、不具合のあるＲＯＭ、FlashＲＯＭを不具合を解消させたプログラムを焼き付けたＲＯＭ、FlashＲＯＭに置き換えることが多いが、他の方法として、メモリカードに不具合対策を行ったプログラムを書き込み、これを機器に接続して、メモリカードから機器のＲＯＭ、FlashＲＯＭ又はＨＤＤに直接インストールするといった方法で、対応している。
【０００３】
また、ネットワーク上のサーバからプログラムをダウンロードする方法による提案もなされており、この例として、下記特許文献１を挙げることができる。
特許文献１には、マルチファンクションペリフェラルで使用する各種のプログラムをネットワーク上のファイルサーバに格納しておき、マルチファンクションペリフェラルは、ファイルサーバに格納されたプログラムをダウンロードし、このプログラムを使用して各種の機能を実現する、としている。また、ファイルサーバに格納されたプログラムの格納位置情報は、ネットワーク上の検索サーバによって管理されているので、マルチファンクションペリフェラルは、所望のプログラムを取得する際に、格納位置を検索サーバに問い合せ、ダウンロードを行う。
ただし、特許文献１では、ファイルサーバから取得する各種のシステムプログラムは、ＲＡＭに展開するとし、FlashＲＯＭやＨＤＤに保存せず、不揮発性の記憶部の記憶容量を小さくて済ませるようにし、システムプログラムをバージョンアップする場合にも、ファイルサーバでバージョンアップするだけで済み、個別のＭＦＰに対してＲＯＭ交換等のバージョンアップ作業を行なう必要がなくなるので、これらプログラムの管理が容易になる、としている。
【特許文献１】特開2001-243075号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記特許文献１のシステムと違い、機器側にプログラムを保存し、必要なときにサーバからプログラムの提供を受けるというシステムで、顧客側の機器にプログラムをインストールする場合には、次のような問題が生じる。即ち、プログラムをインストールするケースとして、不具合対策によりインストールするケース、新しい拡張装置を利用するためにインストールするケース、新しいアプリケーションプログラムを利用するためにインストールするケースなど、利用するケースが多岐にわたるため、プログラムのインストール、利用に関して契約、課金上の問題を抜きに、プログラムのインストールを実行できないという状況が起きる。このような契約、課金上の観点は、上記特許文献１のシステムに示すところがなく、未解決の問題として残されている。
本発明は、情報処理装置に外部から通信手段によってプログラムを提供するシステムにおける上記した従来技術において生じる問題に鑑み、これを解決するためになされたもので、情報処理装置（利用者）側が求めるプログラムを適正に供給することを可能にし、特に顧客側の情報処理装置にプログラムをインストールするといった場合に必要となる、プログラムの利用に関する契約、課金上の問題を伴うインストールの実行手続きを円滑に行うことを可能にすることにある。
【課題を解決するための手段】
【０００５】
請求項１の発明は、プログラムの提供を受けるために提供側との通信を可能とした情報処理装置であって、装置の機器ＩＤ及び機器構成情報を含む機器情報を生成する手段と、使用可能なプログラムリストを得るために前記機器情報を付して、提供側に対しプログラムリスト取得要求を行う手段と、該取得要求に応じて提供側から送られてくるプログラムリストを受け取る手段を備えたことを特徴とする情報処理装置である。
請求項２の発明は、請求項１に記載された情報処理装置において、取得した前記プログラムリストの中から要望するプログラムを指定する手段と、提供側に対し要望するプログラムの利用関連情報の取得要求を行う手段と、該取得要求に応じて提供側から送られてくる要望するプログラムの利用関連情報を受け取る手段を備えたことを特徴とするものである。
【０００６】
請求項３の発明は、請求項２に記載された情報処理装置において、前記要望するプログラムの利用関連情報に含まれる、プログラム利用契約の有無、プログラム利用契約により発生する対価、プログラム利用契約の有効期限を認識する手段を備えたことを特徴とするものである。
請求項４の発明は、  請求項１乃至３のいずれかに記載された情報処理装置において、取得した前記プログラムリストの中から利用予定のプログラムを指定する手段と、提供側に対し指定した利用予定プログラムの取得要求を行う手段と、該取得要求に応じて提供側から送られてくる利用予定プログラムを受け取る手段を備えたことを特徴とするものである。
請求項５の発明は、  請求項４に記載された情報処理装置において、受け取った利用予定プログラムの正当性を確認する手段と、利用予定プログラムの正当性の確認を条件に提供側に対し該プログラムの利用契約の締結要求を行う手段と、該締結要求に応じて提供側から送られてくる許可情報を受け取る手段を備えたことを特徴とするものである。
【０００７】
請求項６の発明は、プログラムの提供を受けるために提供側との通信を可能とした情報処理装置が有するコンピュータに、装置所有の機器情報を生成する手順と、前記機器情報を付して、提供側に対しプログラムリスト取得要求を行う手順と、取得要求に応じて提供側から送られてくるプログラムリストを受け取る手順と、プログラムリストの中から要望するプログラムを指定する手順と、提供側に対し要望するプログラムの利用関連情報の取得要求を行う手順と、取得要求に応じて提供側から送られてくる要望するプログラムの利用関連情報を受け取る手順と、取得したプログラムリストの中から利用予定のプログラムを指定する手順と、提供側に対し指定した利用予定プログラムの取得要求を行う手順と、取得要求に応じて提供側から送られてくる利用予定プログラムを受け取る手順と、受け取った利用予定プログラムの正当性を確認する手順と、利用予定プログラムの正当性の確認を条件に提供側に対し該プログラムの利用契約の締結要求を行う手順と、締結要求に応じて提供側から送られてくる許可情報を受け取る手順を実行させるためのプログラムである。
【０００８】
請求項７の発明は、プログラムを提供するために利用側との通信を可能としたプログラム提供装置であって、利用側から装置所有の機器情報を付して送られてくるプログラムリスト取得要求を受け取る手段と、該取得要求に応じて利用側で使用可能なプログラムのリストを作成する手段と、作成したプログラムリストを利用側に送る手段を備えたことを特徴とするプログラム提供装置である。
請求項８の発明は、プログラムを提供するために利用側との通信を可能としたプログラム提供装置であって、利用を要望するプログラムを指定して利用側から送られてくるプログラムの利用関連情報の取得要求を受け取る手段と、該取得要求に応じてプログラムの利用関連情報を生成する手段と、生成したプログラムの利用関連情報を利用側に送る手段を備えたことを特徴とするプログラム提供装置である。
請求項９の発明は、請求項８に記載されたプログラム提供装置において、前記プログラムの利用関連情報は、プログラム利用契約の有無、プログラム利用契約により発生する対価、プログラム利用契約の有効期限を含むこと特徴とするものである。
請求項１０の発明は、請求項７乃至９のいずれかに記載されたプログラム提供装置において、利用を予定するプログラムを指定して利用側から送られてくるプログラムの取得要求を受け取る手段と、該取得要求に応じてプログラムを利用側に送る手段を備えたことを特徴とするものである。
請求項１１の発明は、請求項７乃至１０のいずれかに記載されたプログラム提供装置において、利用を予定するプログラムを指定して利用側から送られてくるプログラム利用契約の締結要求を受け取る手段と、プログラム利用契約の締結要求に応じて課金条件を記した許可情報を利用側に送る手段を備えたことを特徴とするものである。
【０００９】
請求項１２の発明は、プログラムを提供するために利用側との通信を可能としたプログラム提供装置が有するコンピュータに、利用側から装置所有の機器情報を付して送られてくるプログラムリスト取得要求を受け取る手順と、取得要求に応じて利用側で使用可能なプログラムのリストを作成する手順と、作成したプログラムリストを利用側に送る手順と、利用を予定するプログラムを指定して利用側から送られてくるプログラムの取得要求を受け取る手順と、取得要求に応じてプログラムを利用側に送る手順を実行させるためのプログラムである。
請求項１３の発明は、プログラムを提供するために利用側との通信を可能としたプログラム提供装置が有するコンピュータに、利用を要望するプログラムを指定して利用側から送られてくるプログラムの利用関連情報の取得要求を受け取る手順と、取得要求に応じてプログラムの利用関連情報を生成する手順と、生成したプログラムの利用関連情報を利用側に送る手順と、利用を予定するプログラムを指定して利用側から送られてくるプログラム利用契約の締結要求を受け取る手順と、プログラム利用契約の締結要求に応じて課金条件を記した許可情報を利用側に送る手順を実行させるためのプログラムである。
【発明の効果】
【００１０】
請求項１〜６の発明によると、プログラムを利用する装置の機器ＩＤ及び機器構成情報により使用可能なプログラムを特定し、その中から利用者が要望するプログラムの利用関連情報を得、そこに示される条件を考慮して利用者が決めた利用予定プログラムを取得し、利用契約の締結要求を行い、締結要求に応じて提供側から送られてくる許可情報を受け取るという、各々の処理機能を情報処理装置に備えることにより、プログラムの利用に関する契約、課金上の問題を伴うプログラムのインストールの実行手続きを円滑に行うことを可能にする。
また、請求項７，１０〜１２の発明によると、プログラムの利用に関する契約、課金上の問題を伴うプログラムのインストールの実行手続きを行うためにプログラム提供装置において必要な機能である、利用側の特定の装置で使用可能なプログラムのリストを取得要求に応じて作成、提供し、利用者の要求に従って利用予定プログラムを提供するという機能を実現する。
また、請求項８〜１１，１３の発明により、取得要求に応じてプログラムの利用関連情報を生成しこれを利用側に送り、利用を予定するプログラムを指定して利用側から送られてくるプログラム利用契約の締結要求を受け取り、プログラム利用契約の締結要求に応じて課金条件を記した許可情報を利用側に送る、という、各々の処理機能をプログラム提供装置に備えることにより、プログラムの利用に関する契約、課金上の問題を伴うプログラムのインストールの実行手続きを円滑に行うことを可能にする。
【発明を実施するための最良の形態】
【００１１】
本発明を添付する図面とともに示す以下の実施形態に基づき説明する。なお、以下には本発明の情報処理装置をプリンタ、コピー、スキャナ及びＦＡＸ等のアプリケーションによって多機能の処理を行うＭＦＰに適用した例を示す。また。情報処理装置には外部から通信手段によってアプリケーションプログラム、システム制御プログラム、オペレーションプログラム等のプログラムが提供される。ここでは、情報処理装置に通信手段で接続されたプログラム格納装置、プログラム管理装置を要素としてプログラム管理システムを構成し、プログラムの提供、その管理を行う。なお、情報処理装置、プログラム格納装置、プログラム管理装置それぞれのハードウェア構成については、公知の構成により実施し得るので、詳細な記載はしない。
図1は、本実施形態に係わるプログラム管理システムの構成の概略を示す図である。
本例のプログラム管理システムは、図1に示すように、情報処理装置１０１、プログラム格納装置１０２、プログラム管理装置１０３をシステム要素としている。これらの要素は、各々のＬＡＮ１０４，１０４ａ，１０４ｂに接続され、また、各ＬＡＮ１０４，１０４ａ，１０４ｂは、それぞれのファイアウォール１０５，１０５ａ，１０５ｂを介してネットワークを広域接続するためにＷＡＮ１０６に接続している。なお、情報処理装置１０１が接続されたＬＡＮ１０４には同種の情報処理装置１０１ａが接続されている。
【００１２】
図２は、本実施形態の情報処理装置における回路部の構成を示す図で、各種の機能を実現するアプリケーションを動作させることによって生成されるデータに基づいて画像出力処理を行うコントローラ２０１を中心にしたブロック図である。
コントローラ２０１は、紙媒体上に画像データを印画する画像形成エンジン２０２の動作を制御する。即ち、出力画像を展開し、展開した画像データを画像形成エンジン２０２における画像書き込み信号として出力し、画像形成処理を行う、といったエンジン２０２における一連の画像形成過程の動作を制御する。
コントローラ２０１は、また、出力画像の展開や画像形成制御を始めとして、装置全体を制御するメインコントローラとして機能し、制御、処理動作に必要な要素としてＣＰＵ２０３と、展開された画像データや処理対象の各種データを１次保存する主記憶装置２０４と、ＬＡＮ１０４を介して他の情報処理装置１０１ａと通信をしたり、ＷＡＮ１０６経由で広域のネットワーク接続によってプログラム格納装置１０２やプログラム管理装置１０３と通信を行うネットワークコントローラ（ＮＩＣ）２０５と、印画に用いる画像に対し補正、変換等を施すことにより適正な出力画像データとして処理する画像処理部（ＩＰＵ）２０６と、展開された画像データ或いは蓄積しておく画像データ等の大容量を必要とするデータを記憶するＨＤＤ等の２次記憶装置２０７と、出力画像の展開や画像形成制御を始めとして、装置全体の制御、処理を行うために用いる各種のプログラムを記憶するFlash（フラッシュ）ＲＯＭ２０８を備える。なお、図２には示していないが、コントローラ２０１には操作部が動作接続されており、操作部のキー等に対するユーザの入力操作によって行われる装置の動作モード（動作条件）の設定や指令入力をコントローラ２０１に伝える。
【００１３】
FlashＲＯＭ２０８には、装置全体の制御、処理を行うために用いる各種のプログラムを記憶するが、本実施形態の情報処理装置はＭＦＰであるから、例えば、図３に示すようなファイル構成をとる。
図３を参照すると、オペレーションプログラムの他、プログラムオブジェクトとして、アプリケーションプログラム、システム制御プログラム、デバイスドライバプログラム及びローダプログラムを格納している。
本実施形態におけるように、ネットワーク経由でプログラムをダウンロードする場合には、ネットワークローダプログラムを用いてその処理を行う。
また、図３に示すようなプログラムファイル構成を参照することにより、情報処理装置が搭載しているプログラムを知ることができるので、プログラムのバージョンアップ時に提供が必要なプログラムを特定することが可能になる。さらに、プログラムファイル構成が機器の構成を表すものとみなして、ここから機器の構成情報を取得することも可能となる。
【００１４】
次に、上記したプログラム管理システム（図１）におけるプログラムのインストール及びアップデート（Update）処理について説明する。
本処理は、情報処理装置１０１で使用が可能なプログラムの中、利用者が要求するプログラムを供給側から情報処理装置１０１に供給するために実行する一連の手順よりなる。ここで実行する、プログラムのインストール及びアップデート（なお以下、単に“インストール”という場合、“インストール及びアップデート”を意味する）処理は、利用者の要求に従い、情報処理装置１０１で使用可能なプログラムを適正に供給することを可能にするだけではなく、顧客の情報処理装置にインストールするといった場合に必要となる、プログラムの利用に関する契約、課金上の問題を伴うインストールの実行手続きを円滑に行うことを可能にすることにある。
このために、情報処理装置１０１は、以下に示す(1)〜(4)の基本的な動作に従ってインストール処理を行う。
（１）ダウンロードすべきプログラムを格納しているプログラム格納装置１０２に対し自機に使用可能なプログラムのリストを要求し、リストを取得する。
（２）プログラムリストの中から要望するプログラムを指定し、プログラム管理装置１０３に対し指定したプログラムの利用関連情報（プログラム利用契約の有無、プログラム利用契約により発生する対価、プログラム利用契約の有効期限を含む）の取得要求をし、該情報を取得する。
（３）プログラムリストの中から利用予定プログラムを指定し、プログラム格納装置１０２に対し指定した利用予定プログラムの取得要求をし、該プログラムを取得する。
（４）利用予定プログラムの正当性を確認し、正当性の確認を条件にプログラム管理装置１０３に対し該プログラムの利用契約の締結を要求し、プログラム管理装置１０３からの許可情報を受け取る。
【００１５】
上記(1)〜(4)の基本的な動作に従って行われるインストール処理の手順は、情報処理装置１０１（利用者）の要求に供給側のプログラム格納装置１０２、プログラム管理装置１０３が応えるという形で進行するので、情報処理装置１０１が主体的に行うこの処理の手順を追って実施形態を説明する。
図４は、情報処理装置１０１が実行する本実施形態のインストール処理のフロー図を示す。このインストール処理は、コントローラ２０１のＣＰＵがドライブする処理プログラムの一つとして、この処理に必要なプログラムをFlashＲＯＭ２０８に搭載させる。
情報処理装置の操作部からのインストール処理を起動する指令の入力操作により処理を開始するので、手順としては、図４に示すように、先ず、操作部から管理者操作モードへの移行を要求するキーの操作を待ち、入力操作があれば（ステップＳ４０１-YES）、パスワードのチェックを掛けるために、パスワード入力画面を表示し、パスワードの入力を促す（ステップＳ４０２）。ここで、パスワードの入力を受け付けたら（ステップＳ４０３-YES）、受け付けたパスワードの認証を行って、その結果がＯＫであれば（ステップＳ４０４-YES）、プログラムのインストール及びアップデート（Update）を行うための処理手順に入る。
【００１６】
プログラムのインストール及びアップデート処理における前段の手順として、自機に使用可能なプログラムのリストをプログラム格納装置１０２から取得する。このとき、自機に使用可能なプログラムを特定するために、機器情報を用いる。ここでいう機器情報は、プログラムを特定するために用いる情報であり、プログラムＩＤのような直接プログラムを示す情報があれば良いが、機器ＩＤ或いは機器構成情報（機器に接続されているデバイス、拡張装置に関する情報等）を示すことによっても、実行できるようにする。機器情報を示したプログラムリスト取得要求をプログラム格納装置１０２に送信すると、全てのプログラムを保有し、管理するプログラム格納装置１０２では、機器情報からの要求に応じて、機器に使用可能なプログラムのリストを作成、返信することができ、プログラムリストの取得が可能になる。
処理フローとしては、前記機器情報を付したプログラムリスト取得要求をプログラム格納装置１０２に送信し、要求に応えて送信されてくるプログラムリストを受信し、該リストを得る（ステップＳ４０５）。
【００１７】
次いで、自機に使用可能なプログラムの中からインストール及びアップデートを要望するプログラムを指定して、そのプログラムの利用関連情報をプログラム管理装置１０３から取得する。このとき、先に得た自機に使用可能なプログラムのリストを用いてその中から要望するプログラムを選択し、指示する。
ここでいう利用関連情報は、プログラム利用契約の有無、プログラム利用契約により発生する対価、プログラム利用契約の有効期限といった情報を含んでおり、プログラムの提供側から顧客の情報処理装置にインストールするといった場合にも、ユーザの判断に必要な情報として有効に用いられるものが提供されるようにする（図７参照）。
処理フローとしては、先に取得したプログラムリストにユーザ操作により選択マークをつける等の方法により要望するプログラムを指定して、利用関連情報の取得要求をプログラム管理装置１０３に送信し、要求に応えて送信されてくる利用関連情報を受信する（ステップＳ４０６）。この時に、指定プログラムをプログラム管理装置１０３が認識できるように、プログラムＩＤによって送信するが、それに付加し、要求元である情報処理装置の機器ＩＤを送る。機器ＩＤは、プログラム管理装置１０３が管理下にある機器の中から要求元の機器を特定し、その利用関連情報を検索し、利用関連情報の返信先を指定するために必要となる情報である。
【００１８】
インストール及びアップデートを要望するプログラムの利用関連情報をプログラム管理装置１０３から受け取った情報処理装置は、プログラム利用契約の有無、プログラム利用契約により発生する対価、プログラム利用契約の有効期限といった各々の利用関連情報を認識してユーザに提供するとともに、インストール及びアップデートをするか否かを判断し、インストール及びアップデートを予定するプログラムをチェックするためのプログラムInstall／Update画面表示を行う（ステップＳ４０７）。この画面は、プログラムの利用関連情報と先に受け取ったプログラムリストに基づいて作成される。
図７は、本実施形態のプログラムInstall／Update画面表示を例示する。この例ではプログラムの種別として、アプリケーションプログラム、システム制御プログラム、デバイスドライバプログラムとして、それぞれを別画面に分けるようにして、図示ではデバイスドライバプログラムが開かれている。表示項目は、プログラム名とその現行バージョンとこれからInstall／Update可能な最新のバージョンを示している。また、各プログラムの中で無償で提供されるプログラム以外については、利用契約により発生する対価を示すとともに、プログラム利用契約の有効期限を示している。
ユーザは、上記のような形式の画面表示をみて、インストール及びアップデートを予定するプログラムを判断し、その表示項目に対するキーの押下等の入力操作により、予定するプログラムの選択を可能にする。装置側は、表示画面に対するユーザの操作によってインストール及びアップデートを予定しているプログラムを認識し、選択されたプログラムの表示を他と異なる表示に変え（図７中では、網掛け表示）、受け付けたことを確認する（ステップＳ４０８）。
【００１９】
この後、Install／Updateの開始ボタンの押下を検出したら、プログラム格納装置１０２から指示されたインストール及びアップデートを予定するプログラムのダウンロードを開始する（ステップＳ４０９-YES）。
ダウンロードは、予定するプログラムを指定したダウンロードの要求をプログラム格納装置１０２に送信し、要求に応えてダウンロードされてくるデータをFlashＲＯＭ２０８に格納する。この時にダウンロードされたプログラムの正当性を確認する（ステップＳ４１０）。プログラムの正当性をチェックする方法は、公知の方法を適用することにより実施し得る。
次いで、ダウンロードされたプログラムの正当性、プログラム利用契約事項等の確認を条件にプログラムの利用契約の締結を行うために、プログラム管理装置１０３に対し契約の締結を依頼する（ステップＳ４１１）。
この後、締結依頼に応じてプログラム管理装置１０３から送られてくる利用許可情報を受け取ることによって（ステップＳ４１２-YES）、本処理フローを終了する。
【００２０】
次に、プログラム供給側のプログラム格納装置１０２、プログラム管理装置１０３におけるインストール及びアップデート処理の手順について説明する。
上記のように、本実施形態のプログラム管理システムにおけるインストール及びアップデート処理は、上記したように、情報処理装置１０１（利用者）が主体的に処理を進行させる。以下には、情報処理装置１０１の要求に応えてプログラム格納装置１０２、プログラム管理装置１０３が個別に実行するという形態をとる本実施形態の処理手順を示す。
プログラム格納装置１０２は、プログラムのサーバとして情報処理装置で使用する全てのプログラムを格納し、その管理をしているので、情報処理装置１０１の要求に応えて、プログラムリスト及びプログラムそのものを提供する。また、プログラム管理装置１０３は、プログラム利用関連情報を提供し、プログラム利用契約締結要求に応えて利用許可情報を送信する。
なお、供給側の装置を本実施形態のようにプログラム格納装置１０２とプログラム管理装置１０３の機能として分割しないで、一つの装置の機能として統合するような実施形態によっても実施することが可能である。
【００２１】
図５は、プログラム格納装置１０２が実行する本実施形態のインストール処理のフロー図を示す。
プログラム格納装置１０２は、情報処理装置１０１からのプログラムリストの取得要求と、利用予定プログラムのダウンロード要求に応答するので、これらの要求が送られてくるのを所定のサイクルでチェックする（ステップＳ５０１、Ｓ５０５）。
プログラムリストの取得要求を受け取った場合には（ステップＳ５０１-YES）、受信要求内容に示されている機器ＩＤ、機器構成情報等の機器情報を取り出す（ステップＳ５０２）。取り出した機器情報を検索条件として要求元の情報処理装置１０１で使用可能なプログラムを検索し、検索結果をもとにプログラムリストを作成し（ステップＳ５０３）、作成したプログラムリストを要求元の情報処理装置１０１に返信し（ステップＳ５０４）、この処理フローを終了する。
利用予定プログラムのダウンロード要求を受け取った場合には（ステップＳ５０５-YES）、受信要求内容に示されているプログラム名とそのバージョン或いはプログラムＩＤによって格納しているプログラムを取り出し、取り出したプログラムを要求元の情報処理装置１０１に送信し（ステップＳ５０６）、この処理フローを終了する。
【００２２】
図６は、プログラム管理装置１０３が実行する本実施形態のインストール処理のフロー図を示す。
プログラム格納装置１０３は、情報処理装置１０１からのプログラム利用関連情報の取得要求と、プログラム利用契約締結要求に応答するので、これらの要求が送られてくるのを所定のサイクルでチェックする（ステップＳ６０１、Ｓ６０４）。
プログラム利用関連情報の取得要求を受け取った場合には（ステップＳ６０４-YES）、受信要求内容に示されている情報処理装置１０１の機器ＩＤ及びプログラム名とそのバージョン或いはプログラムＩＤを取り出し、取り出したこれらの情報をもとに該当する機器が使用する該当するプログラムにおけるプログラム利用契約の有無、プログラム利用契約により発生する対価、プログラム利用契約の有効期限といった利用関連情報を要求元の情報処理装置１０１に送信し（ステップＳ６０５）、この処理フローを終了する。
プログラム利用契約締結要求を受け取った場合には（ステップＳ６０１-YES）、受信要求内容に示されている契約先の機器ＩＤ及び契約対象となるプログラム名とそのバージョン或いはプログラムＩＤを取り出し、取り出した機器ＩＤとプログラムに対応したユーザ関連情報を呼び出して、この機器ＩＤ（ユーザ）に対してプログラム利用契約期間に相当する対価を課金し（ステップＳ６０２）、次いで利用契約を締結したプログラムの利用許可情報を契約締結要求元の情報処理装置１０１に送信し（ステップＳ６０３）、この処理フローを終了する。
【図面の簡単な説明】
【００２３】
【図１】本発明の実施形態に係わるプログラム管理システムの構成の概略を示す。
【図２】図１のシステムを構成する情報処理装置における回路部の構成を示す。
【図３】情報処理装置のFlashＲＯＭに格納したプログラムファイルの構成の１例を示す。
【図４】情報処理装置が実行するインストール処理の１実施形態を示すフロー図である。
【図５】プログラム格納装置が実行するインストール処理の１実施形態のフロー図を示す。
【図６】プログラム管理装置が実行するインストール処理の１実施形態のフロー図を示す。
【図７】インストール処理の過程で情報処理装置の操作部に表示されるプログラムInstall／Update画面の１例を示す。
【符号の説明】
【００２４】
１０１，１０１ａ・・情報処理装置、１０２・・プログラム格納装置、１０３・・プログラム管理装置、１０４，１０４ａ、１０４ｂ・・ＬＡＮ（Local Area Network）、１０５，１０５ａ、１０５ｂ・・ファイアウォール、１０６・・ＷＡＮ（Wide Area Network）、２０１・・コントローラ、２０２・・画像形成エンジン、１４０・・ＲＯＭ更新部、２０２・・画像形成エンジン、２０３・・ＣＰＵ、２０４・・主記憶装置、２０５・・ＮＩＣ（ネットワークコントローラ）、２０６・・ＩＰＵ（画像処理部）、２０２・・２次記憶装置。
【図１】
2005242407.tif 000003
【図２】
2005242407.tif 000004
【図３】
2005242407.tif 000005
【図４】
2005242407.tif 000006
【図５】
2005242407.tif 000007
【図６】
2005242407.tif 000008
【図７】
2005242407.tif 000009