(57)【要約】  【課題】  ソフトウェアコンポーネントの更新に必要な様々な処理を適切に行うことが可能な情報処理システム及びインストール制御方法を提供する。  【解決手段】  ＭＦシステム１００は、情報処理に関するサービスを実現する複数のソフトウェアコンポーネントを実装するものであって、ソフトウェアコンポーネントと、該ソフトウェアコンポーネントの関連情報とを含むＣＡＲファイルを取得し、関連情報に基づいて行われるソフトウェアコンポーネントのインストールを制御するコンポーネントインストーラ１３０を有する。【選択図】  図１
2006091943.tif 000002
【特許請求の範囲】
【請求項１】
情報処理に関するサービスを実現する複数のソフトウェアコンポーネントを実装する情報処理システムであって、
前記ソフトウェアコンポーネントと、該ソフトウェアコンポーネントの関連情報とを含むコンポーネントインストール用ファイルを取得するファイル取得手段と、
前記ファイル取得手段により前記コンポーネントインストール用ファイルが取得された場合に、前記関連情報に基づいて行われる前記ソフトウェアコンポーネントのインストールを制御するインストール制御手段とを有することを特徴とする情報処理システム。
【請求項２】
前記コンポーネントインストール用ファイルは、認証情報を含み、
前記認証情報に基づく認証を行う認証手段を有し、
前記インストール制御手段は、前記認証手段による認証が成功した場合に、前記ソフトウェアコンポーネントのインストールを可能とすることを特徴とする請求項１に記載の情報処理システム。
【請求項３】
前記コンポーネントインストール用ファイルは、複数の前記ソフトウェアコンポーネントと、複数の前記ソフトウェアコンポーネントのインストール手順を示す手順情報とを含み、
前記インストール制御手段は、前記手順情報に応じて、前記複数のソフトウェアコンポーネントのインストールを制御することを特徴とする請求項１又は２に記載の情報処理システム。
【請求項４】
前記コンポーネントインストール用ファイルは、データ圧縮された情報と、データ伸張を行う伸張用プログラムとを有し、
前記インストール制御手段は、前記伸張用プログラムを実行して、前記データ圧縮された情報を伸張することを特徴とする請求項１乃至３のいずれかに記載の情報処理システム。
【請求項５】
前記コンポーネントインストール用ファイルは、暗号化された情報と、復号を行う復号用プログラムとを有し、
前記インストール制御手段は、前記復号用プログラムを実行して、前記暗号化された情報を復号することを特徴とする請求項１乃至４のいずれかに記載の情報処理システム。
【請求項６】
前記コンポーネントインストール用ファイルは、内部の前記ソフトウェアコンポーネントが利用すべき他のソフトウェアコンポーネントのバージョン情報を含み、
前記インストール制御手段は、前記インストール済みの他のソフトウェアコンポーネントのバージョン情報と、前記コンポーネントインストール用ファイルに含まれるバージョン情報とを比較し、前記インストール済みの他のソフトウェアコンポーネントのバージョン情報が前記コンポーネントインストール用ファイルに含まれるバージョン情報以上である場合に、前記ソフトウェアコンポーネントをインストールする制御を行うことを特徴とする請求項１乃至５のいずれかに記載の情報処理システム。
【請求項７】
前記コンポーネントインストール用ファイル内の情報を提示する情報提示手段と、
指示を受け付ける指示受付手段とを有し、
前記前記インストール制御手段は、前記操作指示受付手段によりインストールの指示が受け付けられた場合に、前記ソフトウェアコンポーネントのインストールを制御することを特徴とする請求項１乃至６のいずれかに記載の情報処理システム。
【請求項８】
前記ファイル取得手段は、所定の記録媒体から前記コンポーネントインストール用ファイルを読み出すことを特徴とする請求項１乃至７のいずれかに記載の情報処理システム。
【請求項９】
前記ファイル取得手段は、所定の通信装置から送信される前記コンポーネントインストール用ファイルを受信することを特徴とする請求項１乃至８のいずれかに記載の情報処理システム。
【請求項１０】
情報処理に関するサービスを実現する複数のソフトウェアコンポーネントを実装する情報処理システムにおけるインストール制御方法であって、
前記ソフトウェアコンポーネントと、該ソフトウェアコンポーネントの関連情報とを含むコンポーネントインストール用ファイルを取得するファイル取得ステップと、
前記ファイル取得ステップにおいて前記コンポーネントインストール用ファイルが取得された場合に、前記関連情報に基づいて行われる前記ソフトウェアコンポーネントのインストールを制御するインストール制御ステップとを有することを特徴とするインストール制御方法。
【請求項１１】
前記コンポーネントインストール用ファイルは、認証情報を含み、
前記認証情報に基づく認証を行う認証ステップを有し、
前記インストール制御ステップは、前記認証ステップにおける認証が成功した場合に、前記ソフトウェアコンポーネントのインストールを可能とすることを特徴とする請求項１０に記載のインストール制御方法。
【請求項１２】
前記コンポーネントインストール用ファイルは、複数の前記ソフトウェアコンポーネントと、複数の前記ソフトウェアコンポーネントのインストール手順を示す手順情報とを含み、
前記インストール制御ステップは、前記手順情報に応じて、前記複数のソフトウェアコンポーネントのインストールを制御することを特徴とする請求項１０又は１１に記載のインストール制御方法。
【請求項１３】
前記コンポーネントインストール用ファイルは、データ圧縮された情報と、データ伸張を行う伸張用プログラムとを有し、
前記インストール制御ステップは、前記伸張用プログラムを実行して、前記データ圧縮された情報を伸張することを特徴とする請求項１０乃至１２のいずれかに記載のインストール制御方法。
【請求項１４】
前記コンポーネントインストール用ファイルは、暗号化された情報と、復号を行う復号用プログラムとを有し、
前記インストール制御ステップは、前記復号用プログラムを実行して、前記暗号化された情報を復号することを特徴とする請求項１０乃至１３のいずれかに記載のインストール制御方法。
【請求項１５】
前記コンポーネントインストール用ファイルは、内部の前記ソフトウェアコンポーネントが利用すべき他のソフトウェアコンポーネントのバージョン情報を含み、
前記インストール制御ステップは、前記インストール済みの他のソフトウェアコンポーネントのバージョン情報と、前記コンポーネントインストール用ファイルに含まれるバージョン情報とを比較し、前記インストール済みの他のソフトウェアコンポーネントのバージョン情報が前記コンポーネントインストール用ファイルに含まれるバージョン情報以上である場合に、前記ソフトウェアコンポーネントをインストールする制御を行うことを特徴とする請求項１０乃至１４のいずれかに記載のインストール制御方法。
【請求項１６】
前記コンポーネントインストール用ファイル内の情報を提示する情報提示ステップと、
指示を受け付ける指示受付ステップとを有し、
前記前記インストール制御ステップは、前記操作指示受付ステップにおいてインストールの指示が受け付けられた場合に、前記ソフトウェアコンポーネントのインストールを制御することを特徴とする請求項１０乃至１５のいずれかに記載のインストール制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理に関するサービスを実現する複数のソフトウェアコンポーネントを実装する情報処理システム及び当該情報処理システムにおけるインストール制御方法に関する。
【背景技術】
【０００２】
従来から、様々なソフトウェアコンポーネントを組み合わせて情報処理を行う情報処理システム（例えば、特許文献１及び２参照）が提供されている。このような情報処理システムは、機能の追加や変更等がなされる場合に、システムの変更範囲の局所化が可能であるという利点を有する。例えば、いわゆる組込み制御系の情報処理システムでは、高機能化及びネットワーク化等に伴い、市場導入後においてもソフトウェアコンポーネントを必要に応じて更新することが要求され、様々な更新方法が提供されている（例えば、特許文献１乃至３参照）。
【特許文献１】特開平１０−９１４４５号公報
【特許文献２】特開平１０−２１４１９２号公報
【特許文献３】特開２００３−２０２９８９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、従来のソフトウェアコンポーネントの更新方法では、ソフトウェアコンポーネントが圧縮されていたり、暗号化されている場合等において、利用者が伸張や復号のための操作指示を行う必要があり、十分に自動化されているとはいえなかった。また、情報処理システムの陳腐化を防止すべく、圧縮技術やセキュリティ技術等の新規な技術を採用するためには、単にソフトウェアをインストールするのみならず、インストールに伴うシステム上の様々な設定の更新等が必要となる場合があるが、従来のソフトウェアコンポーネントの更新方法では、このようなソフトウェアコンポーネントの更新以外の処理を適切に行うことができない。
【０００４】
本発明は、前述したような従来の問題を解決するためになされたもので、ソフトウェアコンポーネントの更新に必要な様々な処理を適切に行うことが可能な情報処理システム及びインストール制御方法を提供するものである。
【課題を解決するための手段】
【０００５】
本発明の情報処理システムは、情報処理に関するサービスを実現する複数のソフトウェアコンポーネントを実装するものであって、前記ソフトウェアコンポーネントと、該ソフトウェアコンポーネントの関連情報とを含むコンポーネントインストール用ファイルを取得するファイル取得手段と、前記ファイル取得手段により前記コンポーネントインストール用ファイルが取得された場合に、前記関連情報に基づいて行われる前記ソフトウェアコンポーネントのインストールを制御するインストール制御手段とを有する。
【０００６】
この構成により、ソフトウェアコンポーネントの更新には、当該ソフトウェアコンポーネントと、当該ソフトウェアコンポーネントの関連情報とを含むコンポーネントインストール用ファイルが用いられ、単にソフトウェアコンポーネントがインストールされるのみならず、関連情報を用いた様々な処理が可能となる。従って、ソフトウェアコンポーネントの更新に必要な様々な処理を適切に行うことが可能となる。
【０００７】
また、本発明の情報処理システムは、前記コンポーネントインストール用ファイルが、認証情報を含み、前記認証情報に基づく認証を行う認証手段を有し、前記インストール制御手段は、前記認証手段による認証が成功した場合に、前記ソフトウェアコンポーネントのインストールを可能とする。
【０００８】
この構成により、ソフトウェアコンポーネントが不正にインストールされることが防止される。
【０００９】
また、本発明の情報処理システムは、前記コンポーネントインストール用ファイルが、複数の前記ソフトウェアコンポーネントと、複数の前記ソフトウェアコンポーネントのインストール手順を示す手順情報とを含み、前記インストール制御手段が、前記手順情報に応じて、前記複数のソフトウェアコンポーネントのインストールを制御する。
【００１０】
この構成により、複数のソフトウェアコンポーネントが一括してインストールされる場合において、手順情報に基づく適切なインストールが可能となる。
【００１１】
また、本発明の情報処理システムは、前記コンポーネントインストール用ファイルが、データ圧縮された情報と、データ伸張を行う伸張用プログラムとを有し、前記インストール制御手段が、前記伸張用プログラムを実行して、前記データ圧縮された情報を伸張する。
【００１２】
この構成により、コンポーネントインストール用ファイルにデータ圧縮された情報が含まれる場合にも、伸張を行った上で適切なインストールが可能となり、情報処理システムに入力される情報量の削減を図ることができる。
【００１３】
また、本発明の情報処理システムは、前記コンポーネントインストール用ファイルが、暗号化された情報と、復号を行う復号用プログラムとを有し、前記インストール制御手段が、前記復号用プログラムを実行して、前記暗号化された情報を復号する。
【００１４】
この構成により、コンポーネントインストール用ファイルに暗号化された情報が含まれる場合にも、復号を行った上で適切なインストールが可能となり、情報処理システムに入力される情報のセキュリティを向上させることができる。
【００１５】
また、本発明の情報処理システムは、前記コンポーネントインストール用ファイルが、内部の前記ソフトウェアコンポーネントが利用すべき他のソフトウェアコンポーネントのバージョン情報を含み、前記インストール制御手段が、前記インストール済みの他のソフトウェアコンポーネントのバージョン情報と、前記コンポーネントインストール用ファイルに含まれるバージョン情報とを比較し、前記インストール済みの他のソフトウェアコンポーネントのバージョン情報が前記コンポーネントインストール用ファイルに含まれるバージョン情報以上である場合に、前記ソフトウェアコンポーネントをインストールする制御を行う。
【００１６】
この構成により、ソフトウェアコンポーネントのバージョン管理が可能となり、バージョンを考慮した適切なインストールが可能となる。
【００１７】
また、本発明の情報処理システムは、前記コンポーネントインストール用ファイル内の情報を提示する情報提示手段と、指示を受け付ける指示受付手段とを有し、前記前記インストール制御手段が、前記操作指示受付手段によりインストールの指示が受け付けられた場合に、前記ソフトウェアコンポーネントのインストールを制御する。
【００１８】
この構成により、利用者の要求にも対応した適切なインストールが可能となる。
【００１９】
また、本発明の情報処理システムは、前記ファイル取得手段が、所定の記録媒体から前記コンポーネントインストール用ファイルを読み出す。
【００２０】
また、本発明の情報処理システムは、前記ファイル取得手段が、所定の通信装置から送信される前記コンポーネントインストール用ファイルを受信する。
【００２１】
また、本発明のインストール制御方法は、情報処理に関するサービスを実現する複数のソフトウェアコンポーネントを実装する情報処理システムにおけるものであって、前記ソフトウェアコンポーネントと、該ソフトウェアコンポーネントの関連情報とを含むコンポーネントインストール用ファイルを取得するファイル取得ステップと、前記ファイル取得ステップにおいて前記コンポーネントインストール用ファイルが取得された場合に、前記関連情報に基づいて行われる前記ソフトウェアコンポーネントのインストールを制御するインストール制御ステップとを有する。
【００２２】
また、本発明のインストール制御方法は、前記コンポーネントインストール用ファイルが、認証情報を含み、前記認証情報に基づく認証を行う認証ステップを有し、前記インストール制御ステップが、前記認証ステップにおける認証が成功した場合に、前記ソフトウェアコンポーネントのインストールを可能とする。
【００２３】
また、本発明のインストール制御方法は、前記コンポーネントインストール用ファイルが、複数の前記ソフトウェアコンポーネントと、複数の前記ソフトウェアコンポーネントのインストール手順を示す手順情報とを含み、前記インストール制御ステップが、前記手順情報に応じて、前記複数のソフトウェアコンポーネントのインストールを制御する。
【００２４】
また、本発明のインストール制御方法は、前記コンポーネントインストール用ファイルが、データ圧縮された情報と、データ伸張を行う伸張用プログラムとを有し、前記インストール制御ステップが、前記伸張用プログラムを実行して、前記データ圧縮された情報を伸張する。
【００２５】
また、本発明のインストール制御方法は、前記コンポーネントインストール用ファイルが、暗号化された情報と、復号を行う復号用プログラムとを有し、前記インストール制御ステップが、前記復号用プログラムを実行して、前記暗号化された情報を復号する。
【００２６】
また、本発明のインストール制御方法は、前記コンポーネントインストール用ファイルが、内部の前記ソフトウェアコンポーネントが利用すべき他のソフトウェアコンポーネントのバージョン情報を含み、前記インストール制御ステップが、前記インストール済みの他のソフトウェアコンポーネントのバージョン情報と、前記コンポーネントインストール用ファイルに含まれるバージョン情報とを比較し、前記インストール済みの他のソフトウェアコンポーネントのバージョン情報が前記コンポーネントインストール用ファイルに含まれるバージョン情報以上である場合に、前記ソフトウェアコンポーネントをインストールする制御を行う。
【００２７】
また、本発明のインストール制御方法は、前記コンポーネントインストール用ファイル内の情報を提示する情報提示ステップと、指示を受け付ける指示受付ステップとを有し、前記前記インストール制御ステップが、前記操作指示受付ステップにおいてインストールの指示が受け付けられた場合に、前記ソフトウェアコンポーネントのインストールを制御する。
【発明の効果】
【００２８】
本発明によれば、ソフトウェアコンポーネントの更新に必要な様々な処理を適切に行うことが可能となる。
【発明を実施するための最良の形態】
【００２９】
以下、本発明の実施の形態の情報処理システムについて、図面を用いて説明する。
【００３０】
図１は、本実施形態の情報処理システムとしてのマルチファンクションシステム（ＭＦシステム）の構成を示す図である。図１に示すＭＦシステム１００は、例えば、プリント機能、コピー機能、スキャナ機能等を有するいわゆるデジタル複合機であり、コントローラ１１０、主記憶装置１６０、不揮発記憶装置１７０、スキャナデバイス１８０及びＩＯＴデバイス１９０、表示部２００及び操作部２１０を有する。
【００３１】
これらのうち、コントローラ１１０は、複数のソフトウェアコンポーネント（以下、単に「コンポーネント」と称する）Ａ乃至Ｎを有する。例えば、コンポーネントＭは、スキャナデバイス１８０を動作させるためのものであり、コンポーネントＮは、ＩＯＴデバイス１９０を動作させるためのものである。また、コントローラ１１０は、コンポーネントと、当該コンポーネントをインストールするために必要な各種情報とによって構成されるコンポーネントアーカイブ（ＣＡＲ）ファイルを入力し、コンポーネントをＭＦシステム１００にインストールするためのコンポーネントインストーラ１３０と、これらコンポーネントを管理して様々な処理を行うコンポーネント管理機構１４０と、コンポーネント間の通信を制御するコンポーネント通信機構１５０とを有する。
【００３２】
図２は、コンポーネントインストーラ１３０と、当該コンポーネントインストーラ１３０に入力されるＣＡＲファイルの構成を示す図である。図２に示すコンポーネントインストーラ１３０は、メモリカードリーダ１３２及びネットワークコントローラ１３４を有する。
【００３３】
ＣＡＲファイル５００は、コンポーネントのプログラムコードと、そのコンポーネントに対応するコンポーネント定義記述情報とを含む。コンポーネント定義記述情報は、対応するコンポーネントと他のコンポーネントとの関係を規定するインタフェース情報や、対応するコンポーネントのバージョン情報等を含む。また、ＣＡＲファイル５００は、コンポーネントのインストールの正当性を判断する際に用いられる認証キー、複数のコンポーネントがインストールされる場合におけるインストールの手順を示すインストール手順情報、対応するコンポーネントが利用する他のコンポーネントのバージョンを示す要求バージョン情報、ＣＡＲファイル５００内の情報がデータ圧縮及び暗号化されている場合に、データ伸張及び復号を行う伸張・復号プログラムを有する。
【００３４】
このＣＡＲファイル５００は、メモリカード３００や携帯端末４００に記憶されている。コンポーネントインストーラ１３０内のメモリカードリーダ１３２は、メモリカード３００内のＣＡＲファイル５００を読み取る。また、コンポーネントインストーラ１３０内のネットワークコントローラ１３４は、携帯端末４００と通信を行い、当該携帯端末４００内のＣＡＲファイル５００を受信する。
【００３５】
次に、ＣＡＲファイル５００を利用したコンポーネントのインストール制御を説明する。図３及び図４は、コンポーネントのインストール制御を示すフローチャートである。
【００３６】
コンポーネントインストーラ１３０は、ＣＡＲファイル５００を取得する（Ｓ１０１）。上述したように、コンポーネントインストーラ１３０内のメモリカードリーダ１３２が、メモリカード３００内のＣＡＲファイル５００を読み取ることにより、あるいは、コンポーネントインストーラ１３０内のネットワークコントローラ１３４が、携帯端末４００と通信を行って当該携帯端末４００から送信されるＣＡＲファイル５００を受信することにより、コンポーネントインストーラ１３０は、ＣＡＲファイル５００を取得する。
【００３７】
次に、コンポーネントインストーラ１３０は、ＣＡＲファイル５００に認証キーが含まれているか否かを判定し、含まれている場合には、その認証キーに基づく認証を行い（Ｓ１０２）、認証が成功したか否かを判定する（Ｓ１０３）。
【００３８】
認証が失敗した場合には、ＣＡＲファイル５００の正当性が保証されない。このため、不正なインストールを防止すべく、コンポーネントのインストールは中止される（Ｓ１０４）。一方、認証が成功した場合には、ＣＡＲファイル５００の正当性が保証される。この場合、コンポーネントインストーラ１３０は、ＣＡＲファイル５００に伸張・復号プログラムが含まれているか否かを判定し、含まれている場合には、その伸張・復号プログラムを実行して、ＣＡＲファイル５００内のデータ圧縮及び暗号化された情報を伸張及び復号する（Ｓ１０５）。
【００３９】
その後、図４の動作に移行し、コンポーネントインストーラ１３０は、ＣＡＲファイル５００内のインストール手順情報の存在確認を行う（Ｓ１０６、Ｓ１０７）。そして、ＣＡＲファイル５００内にインストール手順情報が存在しない場合には、コンポーネントインストーラ１３０は、コンポーネント管理機構１４０にインストール処理を依頼する（Ｓ１０８）。この際、コンポーネントインストーラ１３０は、ＣＡＲファイル５００内のコンポーネントのプログラムコードとコンポーネント定義記述情報とをコンポーネント管理機構１４０に出力する。コンポーネント管理機構１４０は、コンポーネントインストーラ１３０の依頼に応じ、コンポーネントのプログラムコードとコンポーネント定義記述情報とを用いてコンポーネントのインストールを行い、不揮発記憶装置１７０に各種情報を格納する。不揮発記憶装置１７０の情報の格納状態については後述する。
【００４０】
一方、ＣＡＲファイル５００内にインストール手順情報が存在する場合には、コンポーネントインストーラ１３０は、予め設定されているシステム情報を参照し、インストール処理の自動実行が可能であるか否かを判定する（Ｓ１０９、Ｓ１１０）。システム情報は例えば、利用者によって設定されるものである。
【００４１】
インストール処理の自動実行が可能である場合、コンポーネントインストーラ１３０は、コンポーネント管理機構１４０にインストール手順情報に基づくインストール処理を依頼する（Ｓ１１１）。この際、コンポーネントインストーラ１３０は、ＣＡＲファイル５００内のコンポーネントのプログラムコード、コンポーネント定義記述情報及びインストール手順情報をコンポーネント管理機構１４０に出力する。コンポーネント管理機構１４０は、コンポーネントインストーラ１３０の依頼に応じ、コンポーネントのプログラムコード、コンポーネント定義記述情報及びインストール手順情報を用いてコンポーネントのインストールを行い、不揮発記憶装置１７０に各種情報を格納する。
【００４２】
一方、インストールの自動実行が付加である場合、コンポーネントインストーラ１３０は、利用者に対して自動実行の可否を確認する（Ｓ１１２）。例えば、コンポーネントインストーラ１３０は、表示部２００に自動実行の可否を選択する画面を表示し、利用者に対して自動実行の可否の選択を促す。
【００４３】
そして、コンポーネントインストーラ１３０は、利用者によって自動実行が指示されたか否かを判定する（Ｓ１１３）。例えば、利用者が操作部２１０を用いて所定の操作を行うことにより、自動実行を指示した場合、コンポーネントインストーラ１３０は、コンポーネント管理機構１４０にインストール手順情報に基づくインストール処理を依頼する（Ｓ１１１）。コンポーネント管理機構１４０は、コンポーネントインストーラ１３０の依頼に応じ、コンポーネントのインストールを行い、不揮発記憶装置１７０に各種情報を格納する。
【００４４】
一方、利用者によって自動実行が指示されなかった場合、コンポーネントインストーラ１３０は、表示部２００にＣＡＲファイル５００の内容を表示する（Ｓ１１４）。そして、コンポーネントインストーラ１３０は、利用者によってインストールに関する指示がなされたか否かを判定する（Ｓ１１５）。利用者が操作部２１０を用いて所定の操作を行うことにより、インストールに関する指示を行った場合、コンポーネントインストーラ１３０は、コンポーネント管理機構１４０に、その指示に基づくインストール処理を依頼する（Ｓ１１５）。コンポーネント管理機構１４０は、コンポーネントインストーラ１３０の依頼に応じ、コンポーネントのインストールを行い、不揮発記憶装置１７０に各種情報を格納する。
【００４５】
図５は、不揮発記憶装置１７０の格納状態を示す図である。図５に示す不揮発記憶装置１７０は、コンポーネント管理情報領域１７２、プログラムコード格納領域１７４及びアクセス制御部１７６を有する。
【００４６】
コンポーネント管理情報領域１７２には、各コンポーネントを特定するためのコンポーネント情報登録テーブルと、コンポーネント毎に構成され、コンポーネントに関する情報を含むコンポーネント情報テーブルとが格納される。また、プログラムコード格納領域１７４には、コンポーネントのプログラムコードが格納される。アクセス制御部１７６は、コンポーネント管理機構１４０との間の通信の制御を行う。
【００４７】
不揮発記憶装置１７０には、コンポーネント管理機構１４０によるコンポーネントのインストール処理によって各種情報が格納される。
【００４８】
具体的には、コンポーネント管理機構１４０は、コンポーネント管理情報領域１７２に、インストール対象のコンポーネントに対応するコンポーネント情報テーブルを１つ作成する。そして、コンポーネント管理機構１４０は、作成したコンポーネント情報テーブルに、インストール対象のコンポーネントのＩＤ（コンポーネントＩＤ）、インストール対象のコンポーネントが従うコンポーネントスペックのＩＤ（コンポーネントスペックＩＤ）、バージョン情報を登録する。これらコンポーネントＩＤ、コンポーネントスペックＩＤ及びバージョン情報は、コンポーネント定義記述情報の内容に対応するものが登録される。
【００４９】
また、コンポーネント管理機構１４０は、コンポーネント情報登録テーブルに新たにエントリを１つ追加し、新規に作成したコンポーネント情報テーブルへのポインタ（コンポーネント情報テーブルのアドレス）を登録する。また、コンポーネント管理機構１４０は、入力されたコンポーネントプログラムコードをプログラムコード格納領域１７４に格納する。更に、コンポーネント管理機構１４０は、そのプログラム格納場所を新規に作成したコンポーネント情報テーブルに登録する。
【００５０】
また、コンポーネント管理機構１４０は、コンポーネントのロード処理時（コンポーネントのプログラムコードが主記憶装置１６０にロードされる時）において、コンポーネント管理情報領域１７２にロード対象のコンポーネントに対応するインタフェース（ＩＦ）情報テーブルを作成する。更に、コンポーネント管理機構１４０は、ロード対象のコンポーネントに対応するコンポーネント定義記述情報に含まれるインタフェース情報である起動用ＩＦモジュール及び応答用ＩＦモジュールへのポインタ（起動用ＩＦモジュール及び応答用ＩＦモジュールのアドレス）を登録する。ここで起動用ＩＦモジュールは、ロード対象以外のコンポーネントがロード対象のコンポーネントのサービスを利用する際に必要となるものであり、１又は複数のメソッドを含む。一方、応答用ＩＦモジュールは、ロード対象のコンポーネントが他のコンポーネントのサービスを利用する際に、他のコンポーネントがインストール対象のコンポーネントに対して応答する際に必要となるものであり、１又は複数のメソッドを含む。更に、コンポーネント管理機構１４０は、ＩＦ情報テーブルのアドレスを、ロード対象のコンポーネントに対応するコンポーネント情報テーブルに登録する。
【００５１】
また、コンポーネントの実行において他のコンポーネントが必要になる場合には、コンポーネント管理機構１４０は、実行対象のコンポーネントに対応する利用状況情報テーブルを作成し、その利用状況情報テーブルに、利用される他のコンポーネントに対応するコンポーネント情報テーブルのアドレスと、コンポーネントの実行において必要な他のコンポーネントのバージョンの情報（要求バージョン情報）とを登録する。要求バージョン情報は、ＣＡＲファイルに含まれ、コンポーネントインストーラ１３０からコンポーネント管理機構１４０に送られたものである。
【００５２】
ところで、インストール対象のコンポーネントが他のコンポーネントを利用するものである場合、インストール済みの他のコンポーネントのバージョンがインストール対象のコンポーネントが要求するバージョンよりも古いものである場合には、インストール対象のコンポーネントがインストールされても、ＭＦシステム１００を適切に動作させることができない。このような場合には、インストール対象のコンポーネントのインストールは行われないことが望ましい。
【００５３】
具体的には、コンポーネントインストーラ１３０は、入力されたＣＡＲファイル５００内の要求バージョン情報と、不揮発記憶装置１７０に記憶されているインストール対象のコンポーネントが利用する他のコンポーネントのバージョン情報とを比較する。そして、不揮発記憶装置１７０に記憶されているインストール対象のコンポーネントが利用する他のコンポーネントのバージョン情報が要求バージョン情報以上である場合、換言すれば、不揮発記憶装置１７０に記憶されている利用される他のコンポーネントのバージョンが、インストール対象のコンポーネントが要求するバージョンよりも上位である場合にのみ、コンポーネントインストーラ１３０は、コンポーネント管理機構１４０に、インストール処理を依頼し、コンポーネント管理機構１４０は、コンポーネントのインストールを行い、不揮発記憶装置１７０に各種情報を格納する。
【００５４】
コンポーネントの実行において、利用される他のコンポーネントが特定されて実行され、当該他のコンポーネントが不必要になると、当該他のコンポーネントをアンロードする処理が行われる。図６は、コンポーネントのアンロード処理を示すフローチャートである。なお、以下においては、コンポーネントＡの実行において利用された所定のバージョンのコンポーネントＢの実行が終了し、コンポーネントＢが不必要になった場合における当該コンポーネントＢのアンロード処理を示す。
【００５５】
コンポーネント通信機構１５０は、コントローラ１１０によるコンポーネントＡに利用される所定バージョンのコンポーネントＢの実行が終了し、コンポーネントＢが不必要になると、コンポーネントＡはその旨をコンポーネント管理機構１４０に通知する（Ｓ２０１）。コンポーネント管理機構１４０は、この通知を受けると、コンポーネントＡに対応する利用状況情報テーブルに登録されている実行終了した所定バージョンのコンポーネントＢのコンポーネント情報テーブルのアドレス及び起動用ＩＦモジュールのアドレスと、要求バージョン情報とを削除する（Ｓ２０２）。更に、コンポーネント管理機構１４０は、コンポーネントＡに対応するコンポーネント情報テーブルに登録されている利用状況情報テーブルのアドレスを削除する（Ｓ２０３）。
【００５６】
次に、コンポーネント管理機構１４０は、コンポーネントＡから不必要とされた所定バージョンのコンポーネントＢを利用するコンポーネントＡ以外のコンポーネントの存在確認を行い（Ｓ２０４）、存在するか否かを判定する（Ｓ２０５）。具体的には、コンポーネント管理機構１４０は、コンポーネント管理情報領域１７２におけるコンポーネント毎の利用状況情報テーブルのいずれかに、実行終了した所定バージョンのコンポーネントＢのコンポーネント情報テーブルのアドレスと起動用ＩＦモジュールのアドレスとが登録されている場合には、実行終了した所定バージョンのコンポーネントＢを利用するコンポーネントＡ以外のコンポーネントが存在すると判断する。
【００５７】
コンポーネントＡから不必要とされた所定バージョンのコンポーネントＢを利用するコンポーネントＡ以外のコンポーネントが存在する場合には、実行終了した所定バージョンのコンポーネントＢのアンロードは行われずに一連の動作が終了する。
【００５８】
一方、コンポーネントＡから不必要とされた所定バージョンのコンポーネントＢを利用するコンポーネントＡ以外のコンポーネントが存在しない場合には、コンポーネント管理機構１４０は、そのコンポーネントＢに対応するＩＦ情報テーブルを削除する（Ｓ２０６）。次に、コンポーネント管理機構１４０は、実行終了した所定バージョンのコンポーネントＢに対応するコンポーネント情報テーブルにおけるＩＦ情報テーブルのアドレスを削除する（Ｓ２０７）。更に、コンポーネント管理機構１４０は、実行終了した所定バージョンのコンポーネントＢのプログラムコードを主記憶装置１６０からアンロードする（Ｓ２０８）。
【００５９】
このように、ＭＦシステム１００では、ソフトウェアコンポーネントと、当該ソフトウェアコンポーネントに対応するコンポーネント定義記述情報等の各種情報から構成されるＣＡＲファイルを用いて、ソフトウェアコンポーネントのインストールを制御しており、単にソフトウェアコンポーネントがインストールされるのみならず、様々な処理が可能となる。
【００６０】
具体的には、ＣＡＲファイルに認証キーが含まれる場合には、当該認証キーに基づく認証により、ソフトウェアコンポーネントが不正にインストールされることが防止される。また、ＣＡＲファイルにインストール手順情報が含まれる場合には、複数のソフトウェアコンポーネントが一括してインストールされる場合において、適切な手順でインストールが可能となる。また、ＣＡＲファイル内の情報がデータ圧縮されたり、暗号化されている場合には、当該ＣＡＲファイルに伸張用及び復号用のプログラムを含ませて、データ伸張や復号を可能とすることにより、入力される情報量の削減やセキュリティの向上を図ることができる。また、ＣＡＲファイルに対応するソフトウェアコンポーネントが利用すべき他のソフトウェアコンポーネントのバージョン情報を含ませることにより、ソフトウェアコンポーネントにバージョンが存在する場合にも、そのバージョンを管理し、バージョンを考慮した適切なインストールが可能となる。
【００６１】
また、利用者の指示に応じたインストールも可能とすることにより、利用者の個々の要求に応じた適切なインストールが可能となる。
【００６２】
なお、上述した実施形態では、情報処理システムとしてのＭＦシステム１００について説明したが、複数のソフトウェアコンポーネントが実装される他の情報処理システムにおいても、本発明を適用することができる。
【産業上の利用可能性】
【００６３】
以上、説明したように、本発明に係る情報処理システム及び情報処理方法は、ソフトウェアコンポーネント間の通信を適切に行うことが可能であり、情報処理システム及び情報処理方法として有用である。
【図面の簡単な説明】
【００６４】
【図１】ＭＦシステムの構成を示す図である。
【図２】コンポーネントインストーラ及びＣＡＲファイルの構成を示す図である。
【図３】コンポーネントのインストール処理を示す第１のフローチャートである。
【図４】コンポーネントのインストール処理を示す第２のフローチャートである。
【図５】不揮発記憶装置の格納状態を示す図である。
【図６】コンポーネントのアンロード処理を示すフローチャートである。
【符号の説明】
【００６５】
１００  ＭＦシステム
１１０  コントローラ
１３０  コンポーネントインストーラ
１３２  メモリカードリーダ
１３４  ネットワークコントローラ
１４０  コンポーネント管理機構
１５０  コンポーネント通信機構
１６０  主記憶装置
１７０  不揮発記憶装置
１７２  コンポーネント管理情報領域
１７４  プログラムコード格納領域
１７４  アクセス制御部
１８０  スキャナデバイス
１９０  ＩＯＴデバイス
２００  表示部
２１０  操作部
３００  メモリカード
４００  携帯端末
５００  ＣＡＲファイル
【図１】
2006091943.tif 000003
【図２】
2006091943.tif 000004
【図３】
2006091943.tif 000005
【図４】
2006091943.tif 000006
【図５】
2006091943.tif 000007
【図６】
2006091943.tif 000008