(57)【要約】【課題】プログラムの部品の切り替えによるシステム資源使用量の変化を加味したシステム資源の検査を行うことを可能とする。【解決手段】カスタマイズ機構１０２は、アプリケーション１０３の部品の切り替えによるシステム資源使用量の増減値を算出し、その増減値を加味したアプリケーション１０３のシステム資源使用量を算出する。そして、カスタマイズ機構１０２は、算出したアプリケーション１０３のシステム資源使用量に基づいて、アプリケーション１０３の部品の切り替え後におけるシステム資源使用量が所定のシステム資源の使用可能範囲に収まるか否かを判定する。【選択図】図１
2008191786.tif 000002
【特許請求の範囲】
【請求項１】
プログラムの部品の切り替えによるシステム資源使用量の増減値を算出する第１の算出手段と、
前記増減値を加味した前記プログラムのシステム資源使用量を算出する第２の算出手段と、
前記第２の算出手段により算出された前記プログラムのシステム資源使用量に基づいて、前記プログラムの部品の切り替え後におけるシステム資源使用量が所定のシステム資源の使用可能範囲に収まるか否かを判定する判定手段とを有することを特徴とするプログラム管理装置。
【請求項２】
前記プログラムのシステム資源使用量を含むシステム資源使用量の総和を算出する第３の算出手段を有し、
前記判定手段は、前記第３の算出手段により算出されたシステム資源使用量の総和と、前記所定のシステム資源の使用可能範囲とを比較することにより、前記プログラムの部品の切り替え後におけるシステム資源使用量が前記所定のシステム資源の使用可能範囲に収まるか否かを判定することを特徴とする請求項１に記載のプログラム管理装置。
【請求項３】
前記第１の算出手段は、前回設定されていた部品のシステム資源使用量と今回設定される部品のシステム資源使用量とに基づいて前記増減値を算出することを特徴とする請求項１又は２に記載のプログラム管理装置。
【請求項４】
ユーザの操作に応じて切り替える前記プログラムの部品が指定された指定情報を受け付ける受付手段を有し、
前記第１の算出手段は、前記受付手段により受け付けられた前記指定情報に対応する前回設定されていた部品と今回設定される部品とのシステム資源使用量を取得し、前記増減値を算出することを特徴とする請求項３に記載のプログラム管理装置。
【請求項５】
前記判定手段による判定の結果、前記プログラムの部品の切り替え後におけるシステム資源使用量が前記所定のシステム資源の使用可能範囲に収まる場合、前記プログラムの部品を切り替える部品切替手段を有することを特徴とする請求項１乃至４の何れか１項に記載のプログラム管理装置。
【請求項６】
前記判定手段による判定の結果、前記プログラムの部品の切り替え後におけるシステム資源使用量が所定のシステム資源の使用可能範囲に収まらない場合、その旨を通知する通知手段を有することを特徴とする請求項１乃至５の何れか１項に記載のプログラム管理装置。
【請求項７】
前記システム資源使用量は、前記プログラムが使用するメモリ容量、前記プログラムが使用するハードディスク容量、前記プログラムが使用するファイル数、前記プログラムが使用するソケット数、及び、前記プログラムが使用するスレッド数のうちの少なくとも何れか一つを含むことを特徴とする請求項１乃至６の何れか１項に記載のプログラム管理装置。
【請求項８】
プログラム管理装置によるプログラム管理方法であって、
プログラムの部品の切り替えによるシステム資源使用量の増減値を算出する第１の算出ステップと、
前記増減値を加味した前記プログラムのシステム資源使用量を算出する第２の算出ステップと、
前記第２の算出ステップにより算出された前記プログラムのシステム資源使用量に基づいて、前記プログラムの部品の切り替え後におけるシステム資源使用量が所定のシステム資源の使用可能範囲に収まるか否かを判定する判定ステップとを含むことを特徴とするプログラム管理方法。
【請求項９】
プログラム管理装置によるプログラム管理方法をコンピュータに実行させるためのプログラムであって、
プログラムの部品の切り替えによるシステム資源使用量の増減値を算出する第１の算出ステップと、
前記増減値を加味した前記プログラムのシステム資源使用量を算出する第２の算出ステップと、
前記第２の算出ステップにより算出された前記プログラムのシステム資源使用量に基づいて、前記プログラムの部品の切り替え後におけるシステム資源使用量が所定のシステム資源の使用可能範囲に収まるか否かを判定する判定ステップとをコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラムの部品の切り替えによるシステム資源使用量を加味したシステム資源の検査を行う技術に関するものである。
【背景技術】
【０００２】
従来、アプリケーションをカスタマイズするための技術やアップグレードをするための技術が存在する。特に、プラグイン機構によってプラットフォームの機能を拡張することが可能なシステムが知られている（例えば、特許文献１参照）。
【０００３】
また、ソフトウェアモジュールのアップグレードをアプリケーションの変更を伴わずに行うシステムが知られている（例えば、特許文献２参照）。
【０００４】
さらに、アプリケーションを動的にインストールするシステムにおいて、インストールに際してシステム資源の空きを検査してインストールの可否を制御するシステムが知られている（例えば、特許文献３参照）。
【０００５】
【特許文献１】特表２００６−５１１１００号公報
【特許文献２】特表２００２−５０７０２４号公報
【特許文献３】特開２００４−００５４１９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１及び２に開示される発明では、ソフトウェアモジュールを切り替える際に、ソフトウェアモジュールが使用するシステム資源の増加によるシステムへの影響が考慮されていなかった。このため、ソフトウェアモジュールを切り替える前には動作していたシステムが、ソフトウェアモジュールを切り替えた後にはシステム資源の不足により動作しなくなるという問題があった。
【０００７】
また、特許文献３に開示される発明では、アプリケーションのインストールに際してのシステム資源の検査は行われている。しかしながら、アプリケーションが使用するアプリケーション部品の切り替えに関しては、アプリケーション部品が使用するシステム資源が考慮されておらず、適切なシステム資源の検査が行われず、同様な問題があった。
【０００８】
そこで、本発明の目的は、プログラムの部品の切り替えによるシステム資源使用量の変化を加味したシステム資源の検査を行うことを可能とすることにある。
【課題を解決するための手段】
【０００９】
本発明のプログラム管理装置は、プログラムの部品の切り替えによるシステム資源使用量の増減値を算出する第１の算出手段と、前記増減値を加味した前記プログラムのシステム資源使用量を算出する第２の算出手段と、前記第２の算出手段により算出された前記プログラムのシステム資源使用量に基づいて、前記プログラムの部品の切り替え後におけるシステム資源使用量が所定のシステム資源の使用可能範囲に収まるか否かを判定する判定手段とを有することを特徴とする。
本発明のプログラム管理方法は、プログラム管理装置によるプログラム管理方法であって、プログラムの部品の切り替えによるシステム資源使用量の増減値を算出する第１の算出ステップと、前記増減値を加味した前記プログラムのシステム資源使用量を算出する第２の算出ステップと、前記第２の算出ステップにより算出された前記プログラムのシステム資源使用量に基づいて、前記プログラムの部品の切り替え後におけるシステム資源使用量が所定のシステム資源の使用可能範囲に収まるか否かを判定する判定ステップとを含むことを特徴とする。
本発明のプログラムは、プログラム管理装置によるプログラム管理方法をコンピュータに実行させるためのプログラムであって、プログラムの部品の切り替えによるシステム資源使用量の増減値を算出する第１の算出ステップと、前記増減値を加味した前記プログラムのシステム資源使用量を算出する第２の算出ステップと、前記第２の算出ステップにより算出された前記プログラムのシステム資源使用量に基づいて、前記プログラムの部品の切り替え後におけるシステム資源使用量が所定のシステム資源の使用可能範囲に収まるか否かを判定する判定ステップとをコンピュータに実行させることを特徴とする。
【発明の効果】
【００１０】
本発明においては、プログラムの部品の切り替えによるシステム資源使用量の増減値を算出し、上記増減値を加味した当該プログラムのシステム資源使用量を算出する。そして、算出された当該プログラムの部品の切り替え後におけるシステム資源使用量に基づいて、当該プログラムの部品の切り替え後におけるシステム資源使用量が所定のシステム資源の使用可能範囲に収まるか否かを判定するように構成している。従って、本発明によれば、プログラムの部品の切り替えによるシステム資源使用量の変化を加味したシステム資源の検査を行うことが可能となる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明を適用した好適な実施形態を、添付図面を参照しながら詳細に説明する。
【００１２】
図１は、本発明の実施形態に係るアプリケーション管理システムの機能構成を概略的に示す図である。なお、図１に示すアプリケーション管理システムの構成は飽くまでも一例であり、その実行環境が搭載されていれば、いかなる機器でも実現可能であり、また、その構成要素を複数の機器に分散して実現するようにしてもよい。図１に示すアプリケーション管理システムは、本発明のプログラム管理装置の一適用例となる構成である。
【００１３】
図１において、１００はアプリケーション管理システムである。１０１は、アプリケーションプログラム（以下、単にアプリケーションと称す）を管理するアプリケーション管理フレームワークである。
【００１４】
１０２は、部品の切り替えを行うことによってアプリケーションをカスタマイズする機能を担うカスタマイズ機構である。
【００１５】
１０３は、アプリケーションである。個々のアプリケーション１０３は、アプリケーション管理フレームワーク１０１の管理単位である。アプリケーション管理フレームワーク１０１は、一乃至複数のアプリケーション１０３をアプリケーション管理システム１００内にインストールする。そして、アプリケーション１０３の開始、終了及びアンインストールといったライフサイクル全般に渡る管理を行う。
【００１６】
アプリケーション１０３は、当該アプリケーション１０３が使用する部品（以下、アプリケーション部品と称す）に係る情報を使用部品情報１０４として保持している。さらに、アプリケーション１０３は、当該アプリケーション１０３のシステム資源使用量を示す情報を、システム資源情報１０５として保持している。
【００１７】
１０６は、アプリケーション部品である。アプリケーション１０３はこれを使用することができる。個々のアプリケーション部品１０６もまたアプリケーション管理フレームワーク１０１の管理単位である。
【００１８】
アプリケーション管理フレームワーク１０１は、一乃至複数のアプリケーション部品１０６をアプリケーション管理システム１００内にインストール或いはアンインストールする。
【００１９】
アプリケーション部品１０６は、当該アプリケーション部品１０６に係る情報を部品情報１０７として保持している。さらに、アプリケーション部品１０６は、当該アプリケーション部品１０６のシステム資源使用量を示す情報を、システム資源情報１０８として保持している。
【００２０】
１０９は、部品切り替え時にアプリケーション部品１０６の選択を指示する部品選択指示手段である。１１０は、後述するアプリケーション部品１０６の各種管理情報を記憶する記憶手段である。
【００２１】
図２は、アプリケーション管理システム１００のハードウェア構成を示すブロック図である。
【００２２】
アプリケーション管理システム１００は、主な構成要素として、コントローラ部２０１、操作部２０６、表示部２０７、ハードディスク２０８及びＬＡＮ制御部２０９等を備える。コントローラ部２０１は、アプリケーション管理システム１００の制御を司る。操作部２０６は、キーボードやマウス等の入力手段によって構成される。ＬＡＮ制御部２０９は、ネットワークを介してアプリケーション管理システム１００が外部装置と通信するための制御部である。
【００２３】
コントローラ部２０１は、ＣＰＵ２０２、ＲＯＭ２０３、ＲＡＭ２０４及びタイマ２０５等を備える。ＣＰＵ２０２が実行する各種プログラムやプログラムが必要とするデータ等は、予めＲＯＭ２０３に記憶されている。また、一部のプログラムやデータはハードディスク２０８に予め格納されており、ＲＡＭ２０４に読み出して実行することが可能である。タイマ２０５は、各種時間を計測するのに用いられる。なお、本実施形態に係るアプリケーション管理システム１００のハードウェア構成は、図２に挙げた構成に限らず、これらの構成の一部を備えていないものであってもよいし、他の構成を備えるものであってもよい。
【００２４】
図１の部品選択指示手段は、例えば、操作部２０６及び表示部２０７によって構成される。記憶手段１１０は、例えばＲＡＭ２０４の一部記憶領域に相当する構成である。カスタマイズ機構１０２及びアプリケーション管理フレームワーク１０１は、例えば、ＣＰＵ２０２がハードディスク２０８からＲＡＭ２０４に該当するプログラムをロードし、ＣＰＵ２０２がこれを実行することにより実現する構成である。また、アプリケーション管理フレームワーク１０１は、後述するアプリケーション一覧情報３００を格納しておくためのＲＡＭ２０４の一部記憶領域も含む。アプリケーション１０３及びアプリケーション部品１０６は、ハードディスク２０８内に格納されている。
【００２５】
次に、アプリケーション１０３がアプリケーション部品１０６に係る情報をカスタマイズ機構１０２に対して登録する手順を、図３を参照しながら説明する。図３は、アプリケーション１０３がアプリケーション部品１０６に係る情報をカスタマイズ機構１０２に対して登録する手順を示すフローチャートである。アプリケーション部品１０６に係る情報の登録手順は、アプリケーション１０３のインストール或いはアプリケーション１０３の開始によって実行される。
【００２６】
まず、アプリケーション１０３は、当該アプリケーション１０３を他のアプリケーションと識別するためのアプリケーションＩＤを、アプリケーション管理フレームワーク１０１から取得する（ステップＳ１１０１）。
【００２７】
アプリケーション１０３は、アプリケーション管理システム１００内に複数個インストールすることが可能である。アプリケーション管理フレームワーク１０１は、各々のアプリケーション１０３に対してアプリケーションＩＤを与え、アプリケーションＩＤを用いて夫々を識別することが可能である。
【００２８】
図９は、アプリケーション管理システム１００内にインストールされたアプリケーション１０３の一覧を示すアプリケーション一覧情報３００を模式的に示す図である。アプリケーション一覧情報３００は、アプリケーション管理フレームワーク１０１によって生成され、アプリケーション管理フレームワーク１０１内において格納される情報である。
【００２９】
アプリケーション管理フレームワーク１０１は、アプリケーション１０３をインストールするとき、当該アプリケーション１０３のアプリケーション名３０１と当該アプリケーション１０３に付与されたアプリケーションＩＤ３０２とを対応付ける。この対応付けの一覧情報がアプリケーション一覧情報３００として扱われ、アプリケーション管理フレームワーク１０１内部において格納される。
【００３０】
アプリケーション１０３からの要求があると、アプリケーション管理フレームワーク１０１は、アプリケーション一覧情報３００を参照し、要求に該当するアプリケーションＩＤ３０２を返す。即ち、アプリケーション１０３は、自らのアプリケーション名を含むアプリケーションＩＤの取得要求を発行する。アプリケーション管理フレームワーク１０１は、その要求に含まれるアプリケーション名に対応付けられるアプリケーションＩＤをアプリケーション１０３に対して返す。
【００３１】
次に、アプリケーション１０３は、カスタマイズ機構１０２のオブジェクトを取得する（ステップＳ１１０２）。そして、アプリケーション１０３は、自ら使用するアプリケーション部品１０６の名前とアプリケーション部品１０６の型等の情報を使用部品情報１０４から取得し、カスタマイズ機構１０２に登録する（ステップＳ１１０３）。
【００３２】
図１０は、使用部品情報１０４の詳細な構成を模式的に示す図である。使用部品情報１０４は、アプリケーション１０３内部において保持されるデータである。
【００３３】
図１０に示すように、使用部品情報１０４は、部品名４０１毎に、部品型４０２、デフォルト部品クラス名４０３及び部品使用数４０４を有する。
【００３４】
部品名４０１は、当該アプリケーション１０３が使用するアプリケーション部品１０６の名前である。部品の型４０２は、当該アプリケーション１０３が使用するアプリケーション部品１０６の型である。デフォルト部品クラス名４０３は、ユーザによってアプリケーション部品１０６が明示的に選択されない場合に使用されるアプリケーション部品１０６のクラス名である。なお、デフォルト部品クラス名４０３は、使用部品情報１０４から省略することも可能である。部品使用数４０４は、アプリケーション１０３が使用する当該アプリケーション部品１０６の個数である。
【００３５】
図１０の例では、部品名が"Panel1"、"Panel2"及び"Button"等のアプリケーション部品１０６を当該アプリケーション１０３が使用していることを示している。また、使用部品情報１０４では、例えば、部品名が"Panel1"であるアプリケーション部品１０６に関しては、部品型が"AbstractPanel"、デフォルト部品クラス名が"SimplePanel"、部品の使用個数が"3"であることを示している。
【００３６】
次に、アプリケーション１０３は、自らのシステム資源使用量をシステム資源情報１０５から取得し、カスタマイズ機構１０２に登録する（ステップＳ１１０４）。
【００３７】
図１２は、システム資源情報１０５の詳細な構成を模式的に示す図である。システム資源情報１０５は、アプリケーション１０３内部で保持されるデータである。
【００３８】
図１２に示すように、システム資源情報１０５は、メモリ容量６０１、ディスク容量６０２、ファイル数６０３、ソケット数６０４及びスレッド数６０５を有する。メモリ容量６０１は、当該アプリケーション１０３が使用するメモリ容量である。ディスク容量６０２は、当該アプリケーション１０３が使用するハードディスク容量である。ファイル数６０３は、当該アプリケーション１０３が使用するファイル数である。ソケット数６０４は、当該アプリケーション１０３が使用するソケット数である。スレッド数６０５は、当該アプリケーション１０３が使用するスレッド数である。本実施形態においては、メモリ容量６０１、ディスク容量６０２、ファイル数６０３、ソケット数６０４及びスレッド数６０５全てをシステム資源情報１０５として扱っている。しかし、本発明はこれに限らず、そのうちの少なくとも一つをシステム資源情報としてもよいし、それ以外の要素をシステム資源情報として加えてもよい。
【００３９】
カスタマイズ機構１０２は、ステップＳ１１０３及びＳ１１０４で登録対象となった情報を、アプリケーション情報７０１として記憶手段１１０に格納する。
【００４０】
図１３は、アプリケーション情報７０１の構成を模式的に示す図である。図１３に示すように、アプリケーション情報７０１は、アプリケーションＩＤ３０２毎に、ステップＳ１１０３及びＳ１１０４で登録対象となった情報を保持する。なお、部品クラス名７０２は、ステップＳ１１０３及びＳ１１０４での登録対象外であるが、これについては後述する。
【００４１】
次に、アプリケーション部品１０６が当該アプリケーション部品１０６に係る情報をカスタマイズ機構１０２に対して登録する手順を、図４を参照しながら説明する。図４は、アプリケーション部品１０６が当該アプリケーション部品１０６に係る情報をカスタマイズ機構１０２に対して登録する手順を示すフローチャートである。図４に示す処理は、アプリケーション部品１０６のインストール或いはアプリケーション部品１０６の開始によって実行される。
【００４２】
まず、アプリケーション部品１０６は、カスタマイズ機構１０２のオブジェクトを取得する（ステップＳ１２０１）。
【００４３】
次いで、アプリケーション部品１０６は、自らのクラス名や型等の情報を部品情報１０７から取得し、カスタマイズ機構１０２に登録する（ステップＳ１２０２）。
【００４４】
図１１は、部品情報１０７の詳細な構成を模式的に示す図である。部品情報１０７は、アプリケーション部品１０６内部において保持されるデータである。図１１に示すように、部品情報１０７は、当該アプリケーション部品１０６の部品型５０１及び部品クラス名５０２を有する。
【００４５】
部品型５０１は、当該アプリケーション部品１０６の型である。部品クラス名５０２は、当該アプリケーション部品１０６のクラス名であり、アプリケーション部品１０６の実装の型を示す名前である。図１１の例では、当該アプリケーション部品１０６の部品型５０１は"AbstractPanel"、当該アプリケーション部品１０６の部品クラス名５０２は"SimplePanel"であることを示している。
【００４６】
次に、アプリケーション部品１０６は、自らのシステム資源使用量をシステム資源情報１０８から取得し、カスタマイズ機構１０２に登録する（ステップＳ１２０３）。システム資源情報１０８の詳細な構成は、図１２に示した構成と同じであり、システム資源情報１０８は、アプリケーション部品１０６内部で保持されるデータである。
【００４７】
カスタマイズ機構１０２は、ステップＳ１２０２及びＳ１２０３で登録対象となった情報を、アプリケーション部品情報７０３として記憶手段１１０に格納する。
【００４８】
図１４は、アプリケーション部品情報７０３の構成を模式的に示す図である。図１４に示すように、アプリケーション部品情報７０３は、部品型５０１毎に部品クラス名５０２が対応付けられており、また、部品クラス名５０２毎にシステム資源使用量が対応付けられている。アプリケーション部品情報７０３は、このようなデータ構造によってステップＳ１２０２及びＳ１２０３で登録対象となった情報を保持する。
【００４９】
次に、ユーザによる部品選択指示手段１０９の操作に応じたアプリケーション部品１０６の選択手順を、図５を参照しながら説明する。図５は、ユーザによる部品選択指示手段１０９の操作に応じたアプリケーション部品１０６の選択手順を示すフローチャートである。
【００５０】
部品選択指示手段１０９は、表示部２０７及び操作部２０６等から構成される。アプリケーション部品１０６の選択は、ユーザが表示部２０７上に表示されたユーザインタフェースを参照し、操作部２０６を操作することにより行われるものである。本実施形態では、ウェブブラウザを用いて表示部２０７においてユーザインタフェースを表示するものであるが、本発明は、これに限定されるものではない。例えば、部品選択指示手段１０９をアプリケーション管理システム１００外のシステム上に備えてもよい。この場合、アプリケーション管理システム１００のカスタマイズ機構１０２がアプリケーション部品１０６を選択するためのウェブページをインターネットやイントラネットを介して送出する。部品選択指示手段１０９は、そのウェブページに基づくアプリケーション部品１０６を選択するためのウェブインタフェースを表示する。
【００５１】
アプリケーション部品１０６の選択手順では、まず、ユーザがアプリケーション部品１０６を設定しようとするアプリケーション１０３を選択する（ステップＳ１３０１）。
【００５２】
このとき表示部２０７に表示されるアプリケーション選択画面の一例を図１５に示す。図１５において、８０１は、ウェブブラウザにより表示されるアプリケーション選択画面である。８０２は、アプリケーション１０３の一覧表示欄である。８０３は、設定ボタンである。アプリケーション一覧表示欄８０２は、カスタマイズ機構１０２がアプリケーション管理フレームワーク１０１内のアプリケーション一覧情報３００からアプリケーション名３０１を取得して表示する。ユーザはこの一覧から一つのアプリケーション１０３を選択して設定ボタン８０３を押す。
【００５３】
ユーザが選択したアプリケーション１０３に基づき、カスタマイズ機構１０２は次にアプリケーション部品１０６を選択させるページを表示する。図１６は、アプリケーション部品選択画面の一例を示す図である。
【００５４】
図１６において、９０１は、ウェブブラウザにより表示されるアプリケーション部品選択画面である。９０２は、アプリケーション選択画面で選択されたアプリケーション１０３が使用するアプリケーション部品名の一覧を表示する一覧表示欄である。９０３は、各アプリケーション部品名に対応して選択されているアプリケーション部品１０６の部品クラス名を表示する部品クラス名表示欄である。
【００５５】
アプリケーション部品名の一覧表示欄９０２に表示される情報は、図１３に示すアプリケーション情報７０１のうち、選択されたアプリケーション１０３のアプリケーションＩＤに対応付けられる部品名４０１から取得される。そして、部品クラス名表示欄９０３に表示される情報は、アプリケーション情報７０１において部品名４０１毎に対応付けられる部品クラス名７０２から取得される。但し、初めて設定するときは部品クラス名７０２には何も登録されていない。デフォルト部品クラス名４０３が設定されているときにはこれを表示するが、デフォルト部品クラス名４０３も設定されていないときには、部品クラス名表示欄９０３には何も表示されない。
【００５６】
アプリケーション部品情報７０３に保持されている部品型４０２と同じ部品型５０１に対応する部品クラス名５０２がカスタマイズ機構１０２により表示ページの中に埋め込まれることによって、部品クラス名表示欄９０３の情報が表示されることになる。
【００５７】
図１３の例に示すアプリケーション情報７０１では、"Panel2"の部品名４０１に対応する部品型４０２は"AbstractPanel"である。図１４に示すアプリケーション部品情報７０３では、"Abstractpanel"の部品型５０１に対応する部品クラス名５０２には"SimplePanel"と"FancyPanel"とが存在する。従って、クラス名表示欄９０３には、"Panel2"に対して"SimplePanel"と"FancyPanel"とが表示され、ユーザは、"SimplePanel"及び"FancyPanel"から一つを選択できる。
【００５８】
以上のようなユーザインタフェースを用いて、ユーザは各アプリケーション部品名に対し、実際に使用するアプリケーション部品１０６のクラス名を選択する。部品選択指示手段１０９は、ユーザの操作内容を受け付ける（ステップＳ１３０２）。
【００５９】
部品選択指示手段１０９は、選択されたアプリケーション１０３のアプリケーションＩＤと、アプリケーション部品名毎に選択されたアプリケーション部品１０６のクラス名とをカスタマイズ機構１０２に対して通知する（ステップＳ１３０３）。
【００６０】
そして、部品選択指示手段１０９は、カスタマイズ機構１０２によるアプリケーション部品１０６の設定結果を判定する（ステップＳ１３０４）。カスタマイズ機構１０２からエラー通知があった場合には、部品選択指示手段１０９は、エラー情報を表示してユーザに通知する（ステップＳ１３０５）。
【００６１】
このエラー情報は、図１６に示すアプリケーション部品選択画面上に重畳して表示される。エラー情報としては、例えば、「システム資源が不足しているため、Panel2を設定できません。メモリが2MB超過します。」等のダイアログボックスが挙げられる。
【００６２】
次に、カスタマイズ機構１０２によるアプリケーション部品１０６の設定手順を、図６を参照しながら説明する。図６は、カスタマイズ機構１０２によるアプリケーション部品１０６の設定手順を示すフローチャートである。
【００６３】
カスタマイズ機構１０２は、アプリケーションＩＤと、各アプリケーション部品名に対応する部品クラス名とをアプリケーション部品１０６の切り替え内容の指定情報として部品選択指示手段１０９から受け付ける（ステップＳ１４０１）。ステップＳ１４０１は、本発明の受付手段による一処理例である。
【００６４】
次に、カスタマイズ機構１０２は、アプリケーションＩＤに該当するシステム資源情報１０５を図１３に示すアプリケーション情報７０１から取得する（ステップＳ１４０２）。
【００６５】
次に、カスタマイズ機構１０２は、アプリケーションＩＤに該当するアプリケーション部品１０６の、以前に選択されていた部品クラス名７０２をアプリケーション情報７０１から得る。そして、カスタマイズ機構１０２は、当該部品クラス名７０２に該当するシステム資源情報１０８を図１４に示すアプリケーション部品情報７０３から取得する（ステップＳ１４０３）。
【００６６】
さらに、カスタマイズ機構１０２は、アプリケーションＩＤに該当するアプリケーション部品１０６の、今回選択された部品クラス名７０２をアプリケーション情報７０１から得る。そして、カスタマイズ機構１０２は、当該部品クラス名７０２に該当するシステム資源情報１０８をアプリケーション部品情報７０３から取得する（ステップＳ１４０４）。
【００６７】
そして、カスタマイズ機構１０２は、取得したシステム資源情報１０５、１０８に基づいて、該当するアプリケーション１０３のシステム資源使用量と、該当するアプリケーション部品１０６のシステム資源使用量とを計算する。アプリケーション部品１０６のシステム資源使用量は、アプリケーション部品１０６が切り替わることによって増減する。この増減は、以前に選択されていた（前回設定されていた）アプリケーション部品１０６の部品クラスのシステム資源使用量と今回選択された（今回設定される）アプリケーション部品１０６の部品クラスのシステム資源使用量との差分によって求められる。そして、カスタマイズ機構１０２は、アプリケーション１０３のシステム資源使用量にアプリケーション部品１０６の資源使用量を反映させる。即ち、アプリケーション部品１０６の増減値がアプリケーション１０３のシステム資源使用量に反映され、アプリケーション部品１０６の増減値が加味されたアプリケーション１０３のシステム資源使用量が算出されることになる。次に、カスタマイズ機構１０２は、アプリケーション１０３のシステム資源使用量にアプリケーション部品１０６の資源使用量を反映させた結果に基づいて、他のアプリケーションを含めたシステム資源使用量の総和を算出する（ステップＳ１４０５）。ステップＳ１４０３、Ｓ１４０４及びＳ１４０５は、本発明の第１の算出手段、第２の算出手段及び第３の算出手段による一処理例である。
【００６８】
次に、カスタマイズ機構１０２は、システム資源使用量の総和がアプリケーション管理システム１００の定めるシステム資源の使用可能範囲（所定のシステム資源の使用可能範囲）に収まるか否かをこれらを比較することにより判定する（ステップＳ１４０６）。ステップＳ１４０６は、本発明の判定手段による一処理例である。
【００６９】
システム資源の使用可能範囲に収まる場合は、カスタマイズ機構１０２は、選択されたアプリケーション部品１０６の部品クラス名を、図１３に示すアプリケーション情報７０１の部品クラス名７０２に設定する（ステップＳ１４０７）。一方、収まらない場合、カスタマイズ機構１０２は、アプリケーション部品１０６の設定にエラーがあった旨を部品選択指示手段１０９に通知する（ステップＳ１４０８）。ステップＳ１４０７は、本発明の部品切替手段による一処理例である。ステップＳ１４０８は、本発明の通知手段の一処理例である。
【００７０】
次に、カスタマイズ機構１０２によるアプリケーション部品オブジェクトの作成手順について図７を参照しながら説明する。図７は、カスタマイズ機構１０２によるアプリケーション部品オブジェクトの作成手順を示すフローチャートである。なお、カスタマイズ機構１０２に対してアプリケーション部品オブジェクトの作成要求を行うのは、アプリケーション１０３である。
【００７１】
まず、カスタマイズ機構１０２は、アプリケーションＩＤとアプリケーション部品名とをパラメータとするアプリケーション部品作成要求をアプリケーション１０３から受け付ける（ステップＳ１５０１）。
【００７２】
次に、カスタマイズ機構１０２は、アプリケーションＩＤ及びアプリケーション部品名に関連付けられているアプリケーション部品１０６の部品クラス名を取得する（ステップＳ１５０２）。これは、図１３に示すアプリケーション情報７０１を用いて行われる。
【００７３】
次に、カスタマイズ機構１０２は、取得した部品クラス名が示す部品クラスのオブジェクトを作成する（ステップＳ１５０３）。
【００７４】
次に、カスタマイズ機構１０２は、作成したオブジェクトをアプリケーション１０３に返す（ステップＳ１５０４）。
【００７５】
次に、アプリケーション管理フレームワーク１０１によるアプリケーション起動の手順について図８を参照しながら説明する。図８は、アプリケーション管理フレームワーク１０１によるアプリケーション起動の手順を示すフローチャートである。
【００７６】
一度、図７の手順により新たな部品クラスのオブジェクトがアプリケーション１０３に対して返されると、アプリケーション１０３の次回の起動からは、当該オブジェクトであるアプリケーション部品１０６が使用されることになる。
【００７７】
まず、アプリケーション管理フレームワーク１０１は、アプリケーション１０３の起動要求を受け付ける（ステップＳ１６０１）。
【００７８】
次に、アプリケーション管理フレームワーク１０１は、図１３に示すアプリケーション情報７０１から、該当するアプリケーション１０３のシステム資源情報１０５を取得する（ステップＳ１６０２）。
【００７９】
次に、アプリケーション管理フレームワーク１０１は、アプリケーション情報７０１から該当するアプリケーション１０３の部品クラス名７０２を得る。そして、アプリケーション管理フレームワーク１０１は、アプリケーション部品情報７０３からその部品クラス名に対応するシステム資源情報１０８を取得する（ステップＳ１６０３）。
【００８０】
そして、アプリケーション管理フレームワーク１０１は、該当するアプリケーション１０３のシステム資源使用量と該当するアプリケーション部品１０６のシステム資源使用量とを計算する。次に、アプリケーション管理フレームワーク１０１は、ステップＳ１４０５と同様に、システム資源使用量の総和を求める（ステップＳ１６０４）。但し、ここでは、前回のアプリケーション部品１０６を使用した場合のシステム資源使用量と今回のアプリケーション部品１０６を使用した場合のシステム資源使用量との差分は求める必要はない。
【００８１】
次に、アプリケーション管理フレームワーク１０１は、求めたシステム資源使用量の総和がアプリケーション管理システム１００の定めるシステム資源の使用可能範囲に収まるか否かを判定する（ステップＳ１６０５）。
【００８２】
システム資源の使用可能範囲に収まる場合、アプリケーション管理フレームワーク１０１は、アプリケーション１０３を起動する（ステップＳ１６０６）。一方、収まらない場合、アプリケーション管理フレームワーク１０１は、アプリケーション１０３を起動せず、アプリケーション１０３の起動にエラーがあった旨をユーザに通知する（ステップＳ１６０７）。
【００８３】
上述した実施形態においては、アプリケーション１０３の部品の切り替えによるシステム資源使用量の増減値を算出し、上記増減値を加味したアプリケーション１０３のシステム資源使用量を算出する。そして、算出されたアプリケーション１０３の部品の切り替え後におけるシステム資源使用量に基づいて、アプリケーション１０３の部品の切り替え後におけるシステム資源使用量が所定のシステム資源の使用可能範囲に収まるか否かを判定するようにしている。従って、本実施形態によれば、アプリケーション１０３の部品の切り替えによるシステム資源使用量の変化を加味したシステム資源の検査を行うことが可能となる。
【００８４】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体をシステム或いは装置に供給し、そのシステム等のコンピュータが記憶媒体からプログラムコードを読み出し実行することによっても達成される。
【００８５】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、プログラムコード自体及びそのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００８６】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【００８７】
また、コンピュータが読み出したプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００８８】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに接続された機能拡張ユニット等に備わるメモリに書込まれた後、そのプログラムコードの指示に基づきＣＰＵ等が実際の処理を行い、前述した実施形態の機能が実現される場合も含まれる。
【００８９】
さらに、プログラムコードをインターネット等の通信媒体を介してコンピュータに供給される構成も本発明の範疇に含まれる。
【図面の簡単な説明】
【００９０】
【図１】本発明の実施形態に係るアプリケーション管理システムの機能構成を概略的に示す図である。
【図２】アプリケーション管理システムのハードウェア構成を示すブロック図である。
【図３】アプリケーションがアプリケーション部品に係る情報をカスタマイズ機構に対して登録する手順を示すフローチャートである。
【図４】アプリケーション部品がアプリケーション部品に係る情報をカスタマイズ機構に対して登録する手順を示すフローチャートである。
【図５】ユーザによる部品選択指示手段の操作に応じたアプリケーション部品の選択手順を示すフローチャートである。
【図６】カスタマイズ機構によるアプリケーション部品の設定手順を示すフローチャートである。
【図７】カスタマイズ機構によるアプリケーション部品オブジェクトの作成手順を示すフローチャートである。
【図８】アプリケーション管理フレームによるアプリケーション起動の手順を示すフローチャートである。
【図９】アプリケーション管理システム内にインストールされたアプリケーションの一覧を示すアプリケーション一覧情報を模式的に示す図である。
【図１０】使用部品情報の詳細な構成を模式的に示す図である。
【図１１】部品情報の詳細な構成を模式的に示す図である。
【図１２】システム資源情報の詳細な構成を模式的に示す図である。
【図１３】アプリケーション情報の構成を模式的に示す図である。
【図１４】アプリケーション部品情報の構成を模式的に示す図である。
【図１５】アプリケーション選択画面の一例を示す図である。
【図１６】アプリケーション部品選択画面の一例を示す図である。
【符号の説明】
【００９１】
１００  アプリケーション管理システム
１０１  アプリケーション管理フレームワーク
１０２  カスタマイズ機構
１０３  アプリケーション
１０４  使用部品情報
１０５  システム資源情報
１０６  アプリケーション部品
１０７  部品情報
１０８  システム資源情報
１０９  部品選択指示手段
１１０  記憶手段
２０１  コントローラ部
２０２  ＣＰＵ
２０３  ＲＯＭ
２０４  ＲＡＭ
２０５  タイマ
２０６  操作部
２０７  表示部
２０８  ハードディスク
２０９  ＬＡＮ制御部
【図１】
2008191786.tif 000003
【図２】
2008191786.tif 000004
【図３】
2008191786.tif 000005
【図４】
2008191786.tif 000006
【図５】
2008191786.tif 000007
【図６】
2008191786.tif 000008
【図７】
2008191786.tif 000009
【図８】
2008191786.tif 000010
【図９】
2008191786.tif 000011
【図１０】
2008191786.tif 000012
【図１１】
2008191786.tif 000013
【図１２】
2008191786.tif 000014
【図１３】
2008191786.tif 000015
【図１４】
2008191786.tif 000016
【図１５】
2008191786.tif 000017
【図１６】
2008191786.tif 000018