(57)【要約】      （修正有）【課題】不具合が発生するソフトウェアコンポーネントの組み合わせを動的に記憶して、起こり得るシステム障害を未然に回避する。【解決手段】コンフリクトするソフトウェアコンポーネントの組み合わせ情報を記憶しておき、ソフトウェアコンポーネントの登録要求があった場合に、記憶された組み合わせ情報に基づいて、登録することによってコンフリクトが発生するか否かを判断し（１０８）、コンフリクトが発生しないと判断（１１０）した場合に、登録要求があったソフトウェアコンポーネントを登録する（１１２）。また、ソフトウェアコンポーネントが後に障害が発生した場合に、該登録されたソフトウェアコンポーネントを削除し、ソフトウェアコンポーネントの組み合わせ情報を記憶させる。【選択図】図６
2006268795.tif 000002
【特許請求の範囲】
【請求項１】
不具合が発生するソフトウェアコンポーネントの組み合わせ情報を記憶する記憶手段と、
ソフトウェアコンポーネントの登録要求があった場合に、前記記憶手段に記憶された組み合わせ情報に基づいて、該登録要求があったソフトウェアコンポーネントを登録することによって不具合が発生するか否かを判断する判断手段と、
前記判断手段により不具合が発生しないと判断された場合に、前記登録要求があったソフトウェアコンポーネントを登録する登録手段と、
前記登録手段により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該不具合が発生したソフトウェアコンポーネントの組み合わせ情報を前記記憶手段に記憶させる処理手段と、
を含む情報処理装置。
【請求項２】
不具合が発生するソフトウェアコンポーネントの組み合わせ情報と不具合が発生する機能を示す機能情報とを対応付けて記憶する記憶手段と、
ソフトウェアコンポーネントの登録要求があった場合に、前記記憶手段に記憶された情報に基づいて、該登録要求があったソフトウェアコンポーネントを登録するか否かを判断する判断手段と、
前記判断手段により登録すると判断された場合に、前記登録要求があったソフトウェアコンポーネントを登録する登録手段と、
前記登録手段により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該不具合が発生したときに実行された機能を示す機能情報を不具合が発生する機能を示す機能情報として、該不具合が発生したソフトウェアコンポーネントの組み合わせ情報に対応付けて前記記憶手段に記憶させる処理手段と、
を含む情報処理装置。
【請求項３】
前記判断手段は、既に登録されているソフトウェアコンポーネントと前記登録要求のあったソフトウェアコンポーネントとの組み合わせが、前記記憶手段に記憶された組み合わせ情報が示す組み合わせに該当しない場合に、該登録要求があったソフトウェアコンポーネントを登録すると判断する請求項２記載の情報処理装置。
【請求項４】
前記判断手段は、既に登録されているソフトウェアコンポーネントと前記登録要求のあったソフトウェアコンポーネントとの組み合わせが、前記記憶手段に記憶された組み合わせ情報が示す組み合わせに該当しない場合、および該組み合わせに該当した場合であっても該組み合わせ情報に対応付けられて記憶された機能情報が示す機能が予め定められた機能である場合、のいずれかの場合に、該登録要求があったソフトウェアコンポーネントを登録すると判断する請求項２記載の情報処理装置。
【請求項５】
前記登録手段が前記登録要求のあったソフトウェアコンポーネントを登録する際に、既に登録されているソフトウェアコンポーネントと前記登録要求のあったソフトウェアコンポーネントとの組み合わせが前記記憶手段に記憶された組み合わせ情報が示す組み合わせに該当する場合に、該当する組み合わせを示す組み合わせ情報に対応付けられて記憶された機能情報が示す機能を無効化する登録時機能無効化手段を更に含む請求項４記載の情報処理装置。
【請求項６】
前記登録手段により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該登録されたソフトウェアコンポーネントを削除する削除手段を更に含む請求項１乃至請求項５のいずれか１項記載の情報処理装置。
【請求項７】
前記登録手段により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該登録されたソフトウェアコンポーネントを無効化する無効化手段を更に含む請求項１乃至請求項５のいずれか１項記載の情報処理装置。
【請求項８】
不具合が発生するソフトウェアコンポーネントの組み合わせ情報と不具合が発生する機能を示す機能情報とを対応付けて記憶する記憶手段と、
ソフトウェアコンポーネントの登録要求があった場合に、前記記憶手段に記憶された情報に基づいて、該登録要求があったソフトウェアコンポーネントを登録することにより不具合が発生する機能を判断する判断手段と、
前記判断手段により不具合が発生すると判断された機能を無効化すると共に、前記登録要求があったソフトウェアコンポーネントを登録する登録手段と、
前記登録手段により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該不具合が発生したときに実行された機能を示す機能情報を不具合が発生する機能を示す機能情報として、該不具合が発生したソフトウェアコンポーネントの組み合わせ情報に対応付けて前記記憶手段に記憶させる処理手段と、
を含む情報処理装置。
【請求項９】
前記登録手段により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該不具合が発生したときに実行された機能を無効化する機能無効化手段を更に含む請求項１乃至請求項５及び請求項８のいずれか１項記載の情報処理装置。
【請求項１０】
ソフトウェアコンポーネントの登録要求があった場合に、不具合が発生するソフトウェアコンポーネントの組み合わせ情報を記憶する記憶手段に記憶された組み合わせ情報に基づいて、該登録要求があったソフトウェアコンポーネントを登録することによって不具合が発生するか否かを判断する判断工程と、
前記判断工程により不具合が発生しないと判断された場合に、前記登録要求があったソフトウェアコンポーネントを登録する登録工程と、
前記登録工程により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該不具合が発生したソフトウェアコンポーネントの組み合わせ情報を前記記憶手段に記憶させる処理工程と、
を含む情報処理方法。
【請求項１１】
ソフトウェアコンポーネントの登録要求があった場合に、不具合が発生するソフトウェアコンポーネントの組み合わせ情報と不具合が発生する機能を示す機能情報とを対応付けて記憶する記憶手段に記憶された情報に基づいて、該登録要求があったソフトウェアコンポーネントを登録するか否かを判断する判断工程と、
前記判断工程により登録すると判断された場合に、前記登録要求があったソフトウェアコンポーネントを登録する登録工程と、
前記登録工程により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該不具合が発生したときに実行された機能を示す機能情報を不具合が発生する機能を示す機能情報として、該不具合が発生したソフトウェアコンポーネントの組み合わせ情報に対応付けて前記記憶手段に記憶させる処理工程と、
を含む情報処理方法。
【請求項１２】
ソフトウェアコンポーネントの登録要求があった場合に、不具合が発生するソフトウェアコンポーネントの組み合わせ情報と不具合が発生する機能を示す機能情報とを対応付けて記憶する記憶手段に記憶された情報に基づいて、該登録要求があったソフトウェアコンポーネントを登録することにより不具合が発生する機能を判断する判断工程と、
前記判断工程により不具合が発生すると判断された機能を無効化すると共に、前記登録要求があったソフトウェアコンポーネントを登録する登録工程と、
前記登録工程により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該不具合が発生したときに実行された機能を示す機能情報を不具合が発生する機能を示す機能情報として、該不具合が発生したソフトウェアコンポーネントの組み合わせ情報に対応付けて前記記憶手段に記憶させる処理工程と、
を含む情報処理方法。
【請求項１３】
コンピュータに、
ソフトウェアコンポーネントの登録要求があった場合に、不具合が発生するソフトウェアコンポーネントの組み合わせ情報を記憶する記憶手段に記憶された組み合わせ情報に基づいて、該登録要求があったソフトウェアコンポーネントを登録することによって不具合が発生するか否かを判断する判断工程と、
前記判断工程により不具合が発生しないと判断された場合に、前記登録要求があったソフトウェアコンポーネントを登録する登録工程と、
前記登録工程により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該不具合が発生したソフトウェアコンポーネントの組み合わせ情報を前記記憶手段に記憶させる処理工程と、
を実行させるプログラム。
【請求項１４】
コンピュータに、
ソフトウェアコンポーネントの登録要求があった場合に、不具合が発生するソフトウェアコンポーネントの組み合わせ情報と不具合が発生する機能を示す機能情報とを対応付けて記憶する記憶手段に記憶された情報に基づいて、該登録要求があったソフトウェアコンポーネントを登録するか否かを判断する判断工程と、
前記判断工程により登録すると判断された場合に、前記登録要求があったソフトウェアコンポーネントを登録する登録工程と、
前記登録工程により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該不具合が発生したときに実行された機能を示す機能情報を不具合が発生する機能を示す機能情報として、該不具合が発生したソフトウェアコンポーネントの組み合わせ情報に対応付けて前記記憶手段に記憶させる処理工程と、
を実行させるプログラム。
【請求項１５】
コンピュータに、
ソフトウェアコンポーネントの登録要求があった場合に、不具合が発生するソフトウェアコンポーネントの組み合わせ情報と不具合が発生する機能を示す機能情報とを対応付けて記憶する記憶手段に記憶された情報に基づいて、該登録要求があったソフトウェアコンポーネントを登録することにより不具合が発生する機能を判断する判断工程と、
前記判断工程により不具合が発生すると判断された機能を無効化すると共に、前記登録要求があったソフトウェアコンポーネントを登録する登録工程と、
前記登録工程により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該不具合が発生したときに実行された機能を示す機能情報を不具合が発生する機能を示す機能情報として、該不具合が発生したソフトウェアコンポーネントの組み合わせ情報に対応付けて前記記憶手段に記憶させる処理工程と、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法及びプログラム、特に、ソフトウェアコンポーネントを登録することにより生じる不具合の発生を回避する情報処理装置、情報処理方法及びプログラムに関するものである。
【背景技術】
【０００２】
新たなソフトウェアコンポーネントをコンピュータ機器にインストール（登録）する際に、コンピュータ機器のハードウェア資源やコンピュータ機器で提供可能なサービス種別等の静的な制約条件を検証し、制約条件を満たしていた場合に登録する技術は広く知られている。例えば、アプリケーションをインストールする際に、そのインストールによるシステムの変更を検出して、既にインストールされているアプリケーションについて定義された制約の設定に対する変化を比較し、不具合（コンフリクト等）が生じると判断された場合は、システムの変更を取り消してインストールを行わないようにするシステムが知られている（例えば、特許文献１参照。）。また、複数のソフトウェアコンポーネントにより構成された情報処理システムのアーキテクチャであって、各ソフトウェアコンポーネント間の相互依存性を最小限に抑えることによって、システムの利用可能性、保守性を高めるアーキテクチャも知られている（例えば、特許文献２参照。）。
【特許文献１】特開２００１−３５６９１４公報
【特許文献１】特開平１１−１６１４７５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上記のように、予め定義された制約の設定に対する変化を比較し、コンフリクトが生じると判断された場合にはインストールを行わないようにするシステムでは、静的な制約条件を満たしているか否かによって不具合が生じるか否かを判断することはできるが、他のソフトウェアコンポーネントとの組み合わせによって不具合が発生するか否かを判断することはできず、動作中に障害が発生してしまう虞がある。
【０００４】
また、各ソフトウェアコンポーネント間の相互依存性を最小限に抑える技術でも、ソフトウェアコンポーネント間のコンフリクト、不具合を完全に回避することはできない。
【０００５】
本発明は、上述した問題を解決するためになされたものであり、不具合が発生するソフトウェアコンポーネントの組み合わせ情報を動的に記憶することができ、起こり得るシステム障害を未然に回避することができる情報処理装置、情報処理方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、第１の発明の情報処理装置は、不具合が発生するソフトウェアコンポーネントの組み合わせ情報を記憶する記憶手段と、ソフトウェアコンポーネントの登録要求があった場合に、前記記憶手段に記憶された組み合わせ情報に基づいて、該登録要求があったソフトウェアコンポーネントを登録することによって不具合が発生するか否かを判断する判断手段と、前記判断手段により不具合が発生しないと判断された場合に、前記登録要求があったソフトウェアコンポーネントを登録する登録手段と、前記登録手段により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該不具合が発生したソフトウェアコンポーネントの組み合わせ情報を前記記憶手段に記憶させる処理手段と、を含んで構成されている。
【０００７】
第１の発明の情報処理装置は、コンフリクト等の不具合が発生するソフトウェアコンポーネントの組み合わせ情報を記憶する記憶手段を備えている。ここで、ソフトウェアコンポーネントは、何らかの機能を持ったプログラムの部品をいう。
【０００８】
判断手段は、ソフトウェアコンポーネントの登録要求があった場合に、記憶手段に記憶された組み合わせ情報に基づいて、該登録要求があったソフトウェアコンポーネントを登録することによって不具合が発生するか否かを判断する。これは、例えば、該登録要求があったソフトウェアコンポーネントを登録したときのソフトウェアコンポーネントの組み合わせが、記憶手段に記憶された組み合わせ情報が示す組み合わせのいずれかに一致する場合に、不具合が発生すると判断してもよいし、組み合わせが全く同一でなくても、上記記憶された組み合わせ情報が示す組み合わせに類似した組み合わせに適合する場合に、不具合が発生すると判断してもよい。
【０００９】
登録手段は、判断手段により不具合が発生しないと判断された場合に、登録要求があったソフトウェアコンポーネントを登録する。
【００１０】
更に第１の発明の情報処理装置は処理手段を備えている。処理手段は、登録手段によりソフトウェアコンポーネントが登録された後に障害が発生した場合に、該不具合が発生したソフトウェアコンポーネントの組み合わせ情報を上記記憶手段に記憶させる。これにより、この情報処理装置において、不具合が発生すると判断できるソフトウェアコンポーネントの組み合わせ情報が記憶手段に記憶されるため、ソフトウェアコンポーネントの登録要求があったときには、判断手段は該組み合わせ情報を参照して不具合が生じるか否かを判断することができる。
【００１１】
このように、不具合が発生するソフトウェアコンポーネントの組み合わせの情報を動的に記憶することができるため、起こり得るシステム障害を未然に回避することができる。また、これによって、ユーザがソフトウェアコンポーネントを登録する際の負担を軽減することができる。
【００１２】
第２の発明の情報処理装置は、不具合が発生するソフトウェアコンポーネントの組み合わせ情報と不具合が発生する機能を示す機能情報とを対応付けて記憶する記憶手段と、ソフトウェアコンポーネントの登録要求があった場合に、前記記憶手段に記憶された情報に基づいて、該登録要求があったソフトウェアコンポーネントを登録するか否かを判断する判断手段と、前記判断手段により登録すると判断された場合に、前記登録要求があったソフトウェアコンポーネントを登録する登録手段と、前記登録手段により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該不具合が発生したときに実行された機能を示す機能情報を不具合が発生する機能を示す機能情報として、該不具合が発生したソフトウェアコンポーネントの組み合わせ情報に対応付けて前記記憶手段に記憶させる処理手段と、を含んで構成されている。
【００１３】
第２の発明の情報処理装置は、コンフリクト等の不具合が発生するソフトウェアコンポーネントの組み合わせ情報と不具合が発生する機能を示す機能情報とを対応付けて記憶する記憶手段を備えている。
【００１４】
判断手段は、ソフトウェアコンポーネントの登録要求があった場合に、記憶手段に記憶された情報に基づいて、該登録要求があったソフトウェアコンポーネントを登録するか否かを判断する。例えば、既に登録されているソフトウェアコンポーネントと前記登録要求のあったソフトウェアコンポーネントとの組み合わせが、前記記憶手段に記憶された組み合わせ情報が示す組み合わせに該当しない場合に、該登録要求があったソフトウェアコンポーネントを登録すると判断することもできる。このとき、組み合わせが全く同一でなくても上記記憶された組み合わせ情報が示す組み合わせに類似した組み合わせに適合する組み合わせの場合には登録しないと判断し、それ以外を登録すると判断してもよい。また、既に登録されているソフトウェアコンポーネントと前記登録要求のあったソフトウェアコンポーネントとの組み合わせが、前記記憶手段に記憶された組み合わせ情報が示す組み合わせに該当しない場合、および該組み合わせに該当した場合であっても該組み合わせ情報に対応付けられて記憶された機能情報が示す機能が予め定められた機能である場合、のいずれかの場合に、該登録要求があったソフトウェアコンポーネントを登録すると判断するようにしてもよい。
【００１５】
登録手段は、判断手段により登録要求があったソフトウェアコンポーネントを登録すると判断された場合に、該登録要求があったソフトウェアコンポーネントを登録する。
【００１６】
更に第２の発明の情報処理装置は処理手段を備えている。処理手段は、登録手段によりソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該不具合が発生したときに実行された機能を示す機能情報を不具合が発生する機能を示す機能情報として、該不具合が発生したソフトウェアコンポーネントの組み合わせ情報に対応付けて記憶手段に記憶させる。これにより、不具合が発生すると判断できるソフトウェアコンポーネントの組み合わせ情報及び不具合が発生する機能を示す機能情報が対応付けられて記憶手段に記憶されるため、ソフトウェアコンポーネントの登録要求があったときには判断手段は記憶手段の情報を参照して登録するか否かを判断することができる。
【００１７】
このように、不具合が発生するソフトウェアコンポーネントの組み合わせの情報及び不具合が発生する機能を示す機能情報を動的に記憶することができるため、起こり得るシステム障害を未然に回避することができる。また、これによって、ユーザがソフトウェアコンポーネントを登録する際の負担を軽減することができる。
【００１８】
第２の発明の情報処理装置に、前記登録手段が前記登録要求のあったソフトウェアコンポーネントを登録する際に、既に登録されているソフトウェアコンポーネントと前記登録要求のあったソフトウェアコンポーネントとの組み合わせが前記記憶手段に記憶された組み合わせ情報が示す組み合わせに該当する場合に、該当する組み合わせを示す組み合わせ情報に対応付けられて記憶された機能情報が示す機能を無効化する登録時機能無効化手段を更に設けることもできる。
【００１９】
これにより、ソフトウェアコンポーネントを登録することによって不具合が発生する機能を無効化できるため、起こり得るシステム障害を未然に回避することができる。
【００２０】
なお、上記第１及び第２の発明の情報処理装置に、前記登録手段により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該登録されたソフトウェアコンポーネントを削除する削除手段を更に設けることもできる。
【００２１】
また、上記第１及び第２の発明の情報処理装置に、前記登録手段により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該登録されたソフトウェアコンポーネントを無効化する無効化手段を更に設けることもできる。
【００２２】
このように、不具合が発生した場合に登録したソフトウェアコンポーネントを削除または無効化することにより、これ以降は不具合の発生、障害の発生を回避することができる。
【００２３】
第３の発明の情報処理装置は、不具合が発生するソフトウェアコンポーネントの組み合わせ情報と不具合が発生する機能を示す機能情報とを対応付けて記憶する記憶手段と、ソフトウェアコンポーネントの登録要求があった場合に、前記記憶手段に記憶された情報に基づいて、該登録要求があったソフトウェアコンポーネントを登録することにより不具合が発生する機能を判断する判断手段と、前記判断手段により不具合が発生すると判断された機能を無効化すると共に、前記登録要求があったソフトウェアコンポーネントを登録する登録手段と、前記登録手段により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該不具合が発生したときに実行された機能を示す機能情報を不具合が発生する機能を示す機能情報として、該不具合が発生したソフトウェアコンポーネントの組み合わせ情報に対応付けて前記記憶手段に記憶させる処理手段と、を含んで構成されている。
【００２４】
第３の発明の情報処理装置は、コンフリクト等の不具合が発生するソフトウェアコンポーネントの組み合わせ情報と不具合が発生する機能を示す機能情報とを対応付けて記憶する記憶手段を備えている。
【００２５】
判断手段は、記憶手段に記憶された情報に基づいて、該登録要求があったソフトウェアコンポーネントを登録することにより不具合が発生する機能を判断する。例えば、既に登録されているソフトウェアコンポーネントと登録要求のあったソフトウェアコンポーネントとの組み合わせが記憶手段に記憶された組み合わせ情報が示す組み合わせに該当する場合に、該組み合わせ情報に対応付けられて記憶された機能情報を不具合が発生する機能と判断することができる。
【００２６】
登録手段は、判断手段により不具合が発生すると判断された機能を無効化すると共に、登録要求があったソフトウェアコンポーネントを登録する。これにより、登録要求があったソフトウェアコンポーネントを登録することにより発生する不具合を未然に防ぐことができる。
【００２７】
更に第３の発明の情報処理装置は処理手段を備えている。処理手段は、登録手段によりソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該不具合が発生したときに実行された機能を示す機能情報を不具合が発生する機能を示す機能情報として、該不具合が発生したソフトウェアコンポーネントの組み合わせ情報に対応付けて記憶手段に記憶させる。これにより、不具合が発生すると判断できるソフトウェアコンポーネントの組み合わせ情報及び不具合が発生する機能を示す機能情報が対応付けられて記憶手段に記憶されるため、以後、ソフトウェアコンポーネントの登録要求があったときには判断手段は記憶手段の情報を参照して不具合が発生する機能を判断することができる。
【００２８】
このように、不具合が発生するソフトウェアコンポーネントの組み合わせの情報及び不具合が発生する機能を示す機能情報を動的に記憶すると共に、登録時に不具合が発生する機能を無効化するため、起こり得るシステム障害を未然に回避することができる。また、これによって、ユーザがソフトウェアコンポーネントを登録する際の負担を軽減することができる。
【００２９】
なお、第１、第２、第３の発明の情報処理装置に、前記登録手段により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該不具合が発生したときに実行された機能を無効化する機能無効化手段を更に設けることもできる。
【００３０】
該機能を無効化した後は、不具合が発生することを防止することができる。
【００３１】
第４の発明の情報処理方法は、ソフトウェアコンポーネントの登録要求があった場合に、不具合が発生するソフトウェアコンポーネントの組み合わせ情報を記憶する記憶手段に記憶された組み合わせ情報に基づいて、該登録要求があったソフトウェアコンポーネントを登録することによって不具合が発生するか否かを判断する判断工程と、前記判断工程により不具合が発生しないと判断された場合に、前記登録要求があったソフトウェアコンポーネントを登録する登録工程と、前記登録工程により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該不具合が発生したソフトウェアコンポーネントの組み合わせ情報を前記記憶手段に記憶させる処理工程と、を含んで構成されている。
【００３２】
第４の発明の情報処理方法も、第１の発明の情報処理装置と同様に作用するため、不具合が発生するソフトウェアコンポーネントの組み合わせ情報を動的に記憶することができ、起こり得るシステム障害を未然に回避することができる。
【００３３】
第５の発明の情報処理方法は、ソフトウェアコンポーネントの登録要求があった場合に、不具合が発生するソフトウェアコンポーネントの組み合わせ情報と不具合が発生する機能を示す機能情報とを対応付けて記憶する記憶手段に記憶された情報に基づいて、該登録要求があったソフトウェアコンポーネントを登録するか否かを判断する判断工程と、前記判断工程により登録すると判断された場合に、前記登録要求があったソフトウェアコンポーネントを登録する登録工程と、前記登録工程により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該不具合が発生したときに実行された機能を示す機能情報を不具合が発生する機能を示す機能情報として、該不具合が発生したソフトウェアコンポーネントの組み合わせ情報に対応付けて前記記憶手段に記憶させる処理工程と、を含んで構成されている。
【００３４】
第５の発明の情報処理方法も、第２の発明の情報処理装置と同様に作用するため、不具合が発生するソフトウェアコンポーネントの組み合わせの情報及び不具合が発生する機能を示す機能情報を動的に記憶することができ、起こり得るシステム障害を未然に回避することができる。
【００３５】
第６の発明の情報処理方法は、ソフトウェアコンポーネントの登録要求があった場合に、不具合が発生するソフトウェアコンポーネントの組み合わせ情報と不具合が発生する機能を示す機能情報とを対応付けて記憶する記憶手段に記憶された情報に基づいて、該登録要求があったソフトウェアコンポーネントを登録することにより不具合が発生する機能を判断する判断工程と、前記判断工程により不具合が発生すると判断された機能を無効化すると共に、前記登録要求があったソフトウェアコンポーネントを登録する登録工程と、前記登録工程により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該不具合が発生したときに実行された機能を示す機能情報を不具合が発生する機能を示す機能情報として、該不具合が発生したソフトウェアコンポーネントの組み合わせ情報に対応付けて前記記憶手段に記憶させる処理工程と、を含んで構成されている。
【００３６】
第６の発明の情報処理方法も、第３の発明の情報処理装置と同様に作用するため、不具合が発生するソフトウェアコンポーネントの組み合わせの情報及び不具合が発生する機能を示す機能情報を動的に記憶すると共に、登録時に不具合が発生する機能を無効化するため、起こり得るシステム障害を未然に回避することができる。
【００３７】
第７の発明のプログラムは、コンピュータに、ソフトウェアコンポーネントの登録要求があった場合に、不具合が発生するソフトウェアコンポーネントの組み合わせ情報を記憶する記憶手段に記憶された組み合わせ情報に基づいて、該登録要求があったソフトウェアコンポーネントを登録することによって不具合が発生するか否かを判断する判断工程と、前記判断工程により不具合が発生しないと判断された場合に、前記登録要求があったソフトウェアコンポーネントを登録する登録工程と、前記登録工程により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該不具合が発生したソフトウェアコンポーネントの組み合わせ情報を前記記憶手段に記憶させる処理工程と、を実行させるプログラムである。
【００３８】
第７の発明のプログラムも、第１の発明の情報処理装置と同様に作用するため、不具合が発生するソフトウェアコンポーネントの組み合わせ情報を動的に記憶することができ、起こり得るシステム障害を未然に回避することができる。
【００３９】
第８の発明のプログラムは、コンピュータに、ソフトウェアコンポーネントの登録要求があった場合に、不具合が発生するソフトウェアコンポーネントの組み合わせ情報と不具合が発生する機能を示す機能情報とを対応付けて記憶する記憶手段に記憶された情報に基づいて、該登録要求があったソフトウェアコンポーネントを登録するか否かを判断する判断工程と、前記判断工程により登録すると判断された場合に、前記登録要求があったソフトウェアコンポーネントを登録する登録工程と、前記登録工程により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該不具合が発生したときに実行された機能を示す機能情報を不具合が発生する機能を示す機能情報として、該不具合が発生したソフトウェアコンポーネントの組み合わせ情報に対応付けて前記記憶手段に記憶させる処理工程と、を実行させるプログラムである。
【００４０】
第８の発明のプログラムも、第２の発明の情報処理装置と同様に作用するため、不具合が発生するソフトウェアコンポーネントの組み合わせの情報及び不具合が発生する機能を示す機能情報を動的に記憶することができ、起こり得るシステム障害を未然に回避することができる。
【００４１】
第９の発明のプログラムは、コンピュータに、ソフトウェアコンポーネントの登録要求があった場合に、不具合が発生するソフトウェアコンポーネントの組み合わせ情報と不具合が発生する機能を示す機能情報とを対応付けて記憶する記憶手段に記憶された情報に基づいて、該登録要求があったソフトウェアコンポーネントを登録することにより不具合が発生する機能を判断する判断工程と、前記判断工程により不具合が発生すると判断された機能を無効化すると共に、前記登録要求があったソフトウェアコンポーネントを登録する登録工程と、前記登録工程により前記ソフトウェアコンポーネントが登録された後に不具合が発生した場合に、該不具合が発生したときに実行された機能を示す機能情報を不具合が発生する機能を示す機能情報として、該不具合が発生したソフトウェアコンポーネントの組み合わせ情報に対応付けて前記記憶手段に記憶させる処理工程と、を実行させるプログラムである。
【００４２】
第９の発明のプログラムも、第３の発明の情報処理装置と同様に作用するため、不具合が発生するソフトウェアコンポーネントの組み合わせの情報及び不具合が発生する機能を示す機能情報を動的に記憶すると共に、登録時に不具合が発生する機能を無効化するため、起こり得るシステム障害を未然に回避することができる。
【発明の効果】
【００４３】
以上説明したように、本発明によれば、不具合が発生するソフトウェアコンポーネントの組み合わせ情報、あるいは該組み合わせ情報と不具合が発生する機能を示す機能情報とを動的に記憶することができるため、不具合発生及び起こり得るシステム障害を未然に回避することができる、という優れた効果を奏する。
【発明を実施するための最良の形態】
【００４４】
以下、図面を参照して、本発明の実施の形態について詳細に説明する。
【００４５】
図１に示すように、本実施の形態にかかる情報処理装置１０Ａ、１０Ｂ、１０Ｃは、ネットワーク１６を介してパーソナルコンピュータ（ＰＣ）１４に接続されている。本実施の形態に係る情報処理装置１０Ａ、１０Ｂ、１０Ｃは、コピー機能、スキャン機能、プリント機能等、様々な機能を備えた複合機であり、ＰＣ１４から送信された各種データや命令を受信し、それに応じて動作することができる。
【００４６】
次に、情報処理装置１０Ａ、１０Ｂ、１０Ｃの構成について説明する。なお、各情報処理装置１０Ａ、１０Ｂ、１０Ｃは同一の構成であるので、以下、情報処理装置１０Ａ、１０Ｂ、１０Ｃ各々を代表して情報処理装置１０として説明する。図２に示すように、情報処理装置１０は、ＣＰＵ２２、ＲＯＭ２４、ＲＡＭ２６、記憶装置２８、処理部３０、ネットワークインターフェイス（Ｉ／Ｆ）３２、入力装置３４、および表示装置３６がバス３８を介して相互に接続されて構成されている。
【００４７】
ＣＰＵ２２は、ＲＯＭ２４に記憶されたプログラムを実行することにより情報処理装置１０全体の動作を制御する。ＲＯＭ２４には、ＣＰＵ２２が実行するプログラムや情報処理装置１０の設定情報等が記憶されている。ＲＡＭ２６は、ワークメモリである。
【００４８】
記憶装置２８は、ハードディスクドライブ（ＨＤＤ）等から構成されている。記憶装置２８には、自装置のハードウェア資源あるいはソフトウェア資源（以下、総称して資源）の情報（図３、図４参照）や、コンフリクトする（不具合が発生する）ソフトウェアコンポーネントの組み合わせ情報（図５参照）が記憶されている。
【００４９】
なお、本実施の形態では、情報処理装置１０に新たな拡張機能を追加するために、情報処理装置１０に対して、ユーザが新たにソフトウェアコンポーネントを登録しようとしたときに、該ソフトウェアコンポーネントが既に情報処理装置１０に登録されているソフトウェアコンポーネントとの間でコンフリクトが発生するか否かを上記記憶装置２８に記憶された組み合わせ情報から判断し、コンフリクトが発生しないと判断したときには該ソフトウェアコンポーネントを登録すると共に、登録直後に障害が発生した場合には、コンフリクトが発生する組み合わせ情報として、障害発生時のソフトウェアコンポーネントの組み合わせ情報を記憶装置２８に記憶させる、という処理が行われる。
【００５０】
なお、ここで、ソフトウェアコンポーネントとは、何らかの機能を持ったプログラムの部品をいう。各ソフトウェアコンポーネントは、それぞれ特定の機能を持っているが、基本的には単体では使用されず、情報処理装置１０の基本機能の上に追加的に付加される拡張機能を他のプログラムと組み合わせて実現するための部品である。なお、本実施の形態において、ソフトウェアコンポーネントは、拡張機能を実現するためのプログラムの部品のそのものに、ソフトウェアコンポーネントが不正なものではなく確かなものであることを証明する認証情報、及びそのソフトウェアコンポーネントが動作するために必要な資源の情報が付加されて構成されている。
【００５１】
また、コンフリクトとは、複数のソフトウェアコンポーネントが同一のハードウェアリソースなどを使用することによりシステム障害が生じることをいう。
【００５２】
また、記憶装置２８には、情報処理装置１０で実行された処理の記録（ログ）がＣＰＵ２２により逐次記憶される。これにより、障害発生時に適切な対応をとることができる。
【００５３】
なお、記憶装置２８は、ここでは、ハードディスクドライブ（ＨＤＤ）等から構成されるが、これに限定されず、例えば着脱可能なＭＯ（光磁気ディスク）等の記憶媒体であってもよい。
【００５４】
処理部３０は、原稿の画像を読み取るスキャナ部（イメージインプットターミナル：ＩＩＴ）や、印刷材を用いて印刷するプリント部（イメージアウトプットターミナル：ＩＯＴ）により構成され、ＣＰＵ２２の制御によりコピー機能、スキャン機能、プリント機能等、様々な機能を実行する。
【００５５】
ネットワークＩ／Ｆ３２は、ネットワーク１６に接続され、ネットワーク１６に接続された他の装置との間で各種データの送受信を行う。
【００５６】
入力装置３４は、操作スイッチや操作ボタン等から構成され、ユーザが入力装置３４を操作することにより入力された指令や情報はバス３８を介してＣＰＵ２２に伝達される。
【００５７】
表示装置３６は、例えば液晶ディスプレイから構成されたＧＵＩ（グラフィカルユーザインタフェース）である。表示装置３６には、各種情報やメッセージ等が表示される。
【００５８】
ここで、記憶装置２８に記憶されている資源の情報とソフトウェアコンポーネントの組み合わせ情報について詳細に説明する。
【００５９】
図３は、情報処理装置１０に実装された資源の情報を記憶したテーブルの一例である。資源の情報（以下、資源情報）は、資源種別情報５０と処理能力情報５２とにより構成されている。
【００６０】
資源種別情報５０は、情報処理装置１０に実装されている資源の種別を示す情報である。図３では、資源種別情報５０から、ＩＩＴ、ＩＯＴ、ＧＵＩ、ＨＤＤ等の各種資源が情報処理装置１０に装備されていることが示されている。処理能力情報５２は、資源種別情報５０に示される各資源の処理能力の情報であり、例えば、ＩＩＴでは、原稿スキャン時の読み込み速度や解像度、カラーのスキャンが可能か、あるいは白黒のみのスキャンが可能か、等の情報が処理能力の情報として記憶されている。なお、資源情報を、図４に示されるように、ＸＭＬ形式の階層構造で記述して記憶しておくこともできる。
【００６１】
図５は、コンフリクトする（不具合が生じる）ソフトウェアコンポーネントの組み合わせ情報を記憶したテーブルの一例である。ここでは、予め自装置に登録されていたソフトウェアコンポーネントのＩＤ５４と、予め登録されていたソフトウェアコンポーネントとの間でコンフリクトが生じたため削除したソフトウェアコンポーネントのＩＤ５６と、削除したソフトウェアコンポーネントの資源情報への参照情報５８（資源情報が記述されたファイルのファイル名）が記憶されている。
【００６２】
なお、ＩＤ５４やＩＤ５６は、情報処理装置１０でそれぞれのソフトウェアコンポーネントを識別するために付与されるものである。なお、本実施の形態では、動作に必要な資源情報が異なるソフトウェアコンポーネントには異なるＩＤが付与される。すなわち、ここでは、各ソフトウェアコンポーネントの資源情報を識別するためにＩＤが付与される。
【００６３】
以下、ユーザがＰＣ１４からネットワーク１６を介して情報処理装置１０に新たにソフトウェアコンポーネントを登録しようとしたときに情報処理装置１０で行われる処理について説明する。
【００６４】
図６は、情報処理装置１０がＰＣ１４からソフトウェアコンポーネントの登録要求を受信したときにＣＰＵ２２により起動され実行される処理ルーチンの流れを示したフローチャートである。該登録要求には、登録命令及びソフトウェアコンポーネントが含まれている。
【００６５】
ステップ１００では、登録要求のあったソフトウェアコンポーネントに含まれる認証情報を確認する。ステップ１０２では、認証情報が妥当なものであるか否かを判断する。ここで、認証情報が妥当なものでないと判断されたときには、ステップ１１４に移行し、登録要求のあったソフトウェアコンポーネントは登録せずに、登録不可のメッセージを表示装置３６に表示すると共に、ＰＣ１４に登録不可の旨を示すメッセージを表示するための表示情報を送信する。ＰＣ１４は、該表示情報を受信すると、該表示情報に基づいてディスプレイ等に登録不可のメッセージを表示する。
【００６６】
また、ステップ１０２で、認証情報が妥当なものであると判断された場合には、ステップ１０４に移行する。
【００６７】
ステップ１０４では、情報処理装置１０内の資源を調査する。具体的には、記憶装置２８に記憶されている自装置の資源情報を読み出す。
【００６８】
ステップ１０６では、登録要求のあったソフトウェアコンポーネントの動作に必要な資源が自装置に装備されているか否かを判断する。前述したようにソフトウェアコンポーネントには、図４に示されるようなソフトウェアコンポーネントの動作に必要な資源情報が記述されたＸＭＬ形式のファイルが含まれている。ＣＰＵ２２は、このファイルを解析し、このソフトウェアコンポーネントの資源情報と、上記読み出した情報処理装置１０の資源情報とを比較する。比較することにより、例えば、登録要求のあったソフトウェアコンポーネントの動作に必要な資源にＩＩＴが含まれていた場合に該ＩＩＴが情報処理装置１０に装備されているかを判断したり、更に、装備されているＩＩＴの解像度が登録要求のあったソフトウェアコンポーネントの動作に必要な解像度を満たしているか否かを判断したりすることができる。比較の結果、情報処理装置１０の資源情報が、登録要求のあったソフトウェアコンポーネントの資源情報を満たしていないときには、登録不可能と判断して、ステップ１１４に移行し、上記と同様の処理を行う。
【００６９】
一方、情報処理装置１０の資源情報が、登録要求のあったソフトウェアコンポーネントの資源情報を満たしていると判断したときには、ステップ１０８に移行し、記憶装置２８に記憶されている組み合わせ情報のテーブルを検索し、登録要求のあったソフトウェアコンポーネントと、既に登録されているソフトウェアコンポーネントとの間でコンフリクトが生じないかを判断する。
【００７０】
本実施の形態では、現在、情報処理装置１０に登録されているソフトウェアコンポーネントと、登録要求のあったソフトウェアコンポーネントとの組み合わせが、このテーブルの中に含まれる組み合わせ情報が示す組み合わせのいずれかに該当しなければ、該登録要求があったソフトウェアコンポーネントを登録してもコンフリクトが生じないと判断し、いずれかに該当すればコンフリクトが生じると判断する。より具体的に図５を参照して説明すると、現在登録されているコンポーネントのＩＤの組み合わせが、図５のＩＤ５４に記録されている組み合わせ情報が示す組み合わせのいずれかに該当し、かつ該当したＩＤ５４に対応付けて記憶されているＩＤ５６の資源情報（参照情報５８が示すファイルに記述された資源情報）が、登録要求のあったソフトウェアコンポーネントの資源情報と同一である場合には、コンフリクトが生じると判断する。
【００７１】
ステップ１１０で、コンフリクトが生じると判断した場合には、ステップ１１４に移行し、上記と同様の処理を行う。ステップ１１０で、コンフリクトが生じないと判断した場合には、ステップ１１２に移行し、登録要求のあったソフトウェアコンポーネントを登録する。具体的には、ソフトウェアコンポーネントのプログラムをインストールし、更に該ソフトウェアコンポーネントを識別するためのＩＤを生成して付与し、更に該ソフトウェアコンポーネントの資源情報を記述したファイルに新たにファイル名を付与して記憶装置２８の所定の記憶エリアに記憶しておく。
【００７２】
次に、図７を参照しながら、障害が発生したときにＣＰＵ２２により実行される処理ルーチンの流れを説明する。この処理ルーチンのプログラムは障害発生後、情報処理装置１０が再起動されたときに起動される。
【００７３】
ステップ２００では、記憶装置２８に記憶されたログを確認する。
【００７４】
ステップ２０２では、ログから障害が発生したのはソフトウェアコンポーネントを登録した直後であるか否かを判断する。例えば、登録したときから障害が発生するまでの経過時間を計時し、該経過時間が予め定められた閾値以内であれば、ソフトウェアコンポーネントを登録した直後に障害が発生したと判断することができる。ステップ２０２で、登録直後ではないと判断した場合には、ステップ２１０に移行し、通常の障害処理、例えば、エラーメッセージの表示、障害により装置に損傷が発生したか否かの検証及び損傷の修復等を行う。
【００７５】
ステップ２０２で、障害が発生したのはソフトウェアコンポーネントを登録した直後であると判断した場合には、障害が発生した直前に登録したソフトウェアコンポーネントと他のソフトウェアコンポーネントとの間でコンフリクトが発生したと判断し、ステップ２０４で、現在、情報処理装置１０に登録されているソフトウェアコンポーネントの組み合わせの情報を、記憶装置２８に記憶されている、コンフリクトが発生するソフトウェアコンポーネントの組み合わせ情報のテーブルに追加して記憶する。図５に示されるテーブルを例に挙げて説明すると、ＩＤ５４には、障害直前に登録したソフトウェアコンポーネント以外に予め登録されていた他のソフトウェアコンポーネントのＩＤが記録され、ＩＤ５６には、障害直前に登録したソフトウェアコンポーネントのＩＤが記録され、障害直前に登録したソフトウェアコンポーネントの資源情報を記述したファイルのファイル名が参照情報５８として記録される。このファイル名は、前述のステップ１１２の登録処理時に記憶装置２８に記憶した資源情報のファイルのファイル名と同一とする。
【００７６】
ステップ２０６では、障害発生直前に登録したソフトウェアコンポーネントを削除する。これ以降、この組み合わせにより発生するコンフリクトを回避することができる。
【００７７】
ステップ２０８では、警告メッセージ（ここでは、登録したソフトウェアコンポーネントを削除した旨のメッセージ及び削除した理由を含む）を表示装置３６に表示すると共に、ＰＣ１４に同様の警告メッセージを表示するための表示情報を送信する。ＰＣ１４は、該表示情報を受信すると、該表示情報に基づいてディスプレイ等に警告メッセージを表示する。
【００７８】
以上説明したように、記憶装置２８にコンフリクトする（不具合が生じる）ソフトウェアコンポーネントの組み合わせ情報を記憶しておき、ソフトウェアコンポーネントの登録要求があった場合に、記憶装置２８に記憶された組み合わせ情報に基づいて、該登録要求があったソフトウェアコンポーネントを登録することによってコンフリクトが発生するか否かを判断し、コンフリクトが発生しないと判断した場合に、登録要求があったソフトウェアコンポーネントを登録するようにしたため、起こり得る障害を未然に回避することができる。また、ソフトウェアコンポーネントが登録された後に障害が発生した場合に、登録されたソフトウェアコンポーネントを削除すると共に、該障害が発生したソフトウェアコンポーネントの組み合わせ情報をコンフリクトするソフトウェアコンポーネントの組み合わせ情報として記憶装置２８に記憶させるようにしたため、動的にコンフリクトが発生する組み合わせの情報を記憶でき、起こり得る障害を未然に回避することができる。
【００７９】
また、これによって、自動的にコンフリクトの可能性を判断してソフトウェアコンポーネントの登録及び削除を行うことができるため、ユーザがソフトウェアコンポーネントを登録する際の負担を軽減することができる。
【００８０】
なお、上述した実施の形態では、登録要求のあったソフトウェアコンポーネントと既に登録されているソフトウェアコンポーネントとの組み合わせが、記憶装置２８に記憶された組み合わせ情報が示す組み合わせのいずれかに該当していた場合に、コンフリクトが発生すると判断する例について説明したが、これに限定されず、例えば、登録要求のあったソフトウェアコンポーネントの資源情報が、既に登録されているソフトウェアコンポーネントのＩＤ５４に対応付けて記憶されているＩＤ５６の資源情報に類似していた場合にも、コンフリクトが生じると判断するようにしてもよい。これによっても、上記実施の形態と同様の効果を奏する。また、このように資源情報が類似していた場合だけでなく、組み合わせ自体が類似していた場合にも、コンフリクトが生じると判断するようにしてもよい。
【００８１】
また、上述した実施の形態では、情報処理装置１０が、ネットワーク１６を介して、ＰＣ１４からソフトウェアコンポーネントの登録要求を受信する例について説明したが、これに限定されず、例えば、情報処理装置１０に、着脱可能な記憶手段を接続して該記憶手段からデータを読み出すためのインタフェースを設け、入力装置３４から登録要求を入力すると共に、該インタフェースに接続された記憶手段からソフトウェアコンポーネントのプログラムや資源情報を入力するようにすることもできる。
【００８２】
また、上記実施の形態では、ソフトウェアコンポーネントの登録後に障害が発生した場合に、登録したソフトウェアコンポーネントを削除し、記憶装置２８に組み合わせ情報を記憶させる例について説明したが、これに限定されず、ソフトウェアコンポーネントの登録後に障害が複数回発生した場合に、登録したソフトウェアコンポーネントを削除し、記憶装置２８に組み合わせ情報を記憶させるようにしてもよい。情報処理装置に発生する障害の要因は、多種多様であるが、ソフトウェアコンポーネント間のコンフリクトにより発生する障害は再発性があるため、発生した障害が１回きりの場合には、コンフリクトにより発生した障害か否かの判断が困難な場合もある。従って、障害が複数回発生した場合に、該登録されたソフトウェアコンポーネントを削除すると共に、該障害が発生したソフトウェアコンポーネントの組み合わせ情報を記憶装置２８に記憶させれば、コンフリクトにより発生する障害を確実に回避することができる。また、登録したソフトウェアコンポーネントを不必要に削除せずにすむ。
【００８３】
また、上記実施の形態では、ソフトウェアコンポーネントの登録後に不具合が発生した場合には、該ソフトウェアコンポーネントを削除する例について説明したが、これに限定されず、例えば、不具合が生じたときに実行されていた機能を無効化するようにしてもよい。ここで、無効化とは、該機能が動作しないような状態に設定することである。あるソフトウェアコンポーネントの組み合わせにおいて、特定の機能を実行したときのみ不具合が発生するようなケースも多い。このようなケースでは、該特定の機能を無効化して実行されないようにすれば、不具合が発生することを防止できる。
【００８４】
また、ソフトウェアコンポーネントの登録後に不具合が発生した場合に、ソフトウェアコンポーネントを削除するのではなく、該登録したソフトウェアコンポーネントを無効化するようにしてもよい。無効化によって、上記と同様の効果が得られる。
【００８５】
また、上記実施の形態では、障害発生がソフトウェアコンポーネントの登録直後（登録したときから障害が発生するまでの経過時間を計時し、該経過時間が予め定められた閾値以内）であれば、ソフトウェアコンポーネントを削除したり、組み合わせ情報を記憶させたりする例について説明したが、削除処理や組み合わせ情報の記憶処理はソフトウェアコンポーネント登録後に行われればよく、特に限定されない。
【００８６】
また、上記実施の形態では、コンフリクトが生じる（不具合が生じる）ソフトウェアコンポーネントの組み合わせ情報を記憶装置２８に記憶するようにしたが、該組み合わせ情報に対応付けて、不具合が生じる機能を示す機能情報を記憶するようにしてもよい。この機能情報が示す機能は、該機能情報に対応付けられて記憶されたソフトウェアコンポーネントの組み合わせにおいて実行すると不具合が発生する機能である。
【００８７】
このように機能情報を対応付けて記憶する場合には、例えば、ソフトウェアコンポーネントの登録の後に、ある機能を実行して不具合が発生したときに、該実行した機能が該不具合が発生したソフトウェアコンポーネントの組み合わせにおいて不具合が発生する機能とすることができるため、この機能を示す機能情報を該組み合わせの情報と対応付けて記憶装置２８に記憶するようにすればよい。
【００８８】
この記憶装置２８に記憶されている情報に基づいて、登録要求があったソフトウェアコンポーネントを登録するか否かを判断することができる。例えば、既に登録されているソフトウェアコンポーネントと登録要求のあったソフトウェアコンポーネントとの組み合わせが、記憶装置２８に記憶された組み合わせ情報が示す組み合わせに該当しない場合に、該登録要求があったソフトウェアコンポーネントを登録すると判断することもできるし、また、既に登録されているソフトウェアコンポーネントと登録要求のあったソフトウェアコンポーネントとの組み合わせが、記憶装置２８に記憶された組み合わせ情報が示す組み合わせに該当しない場合、および該組み合わせに該当した場合であっても該組み合わせ情報に対応付けられて記憶された機能情報が示す機能が予め定められた機能である場合、のいずれかの場合に、該登録要求があったソフトウェアコンポーネントを登録すると判断することもできる。
【００８９】
なお、予め定められた機能とは、例えば、その機能を無効にしても装置の動作に差し障りの無いような機能とすることもできるし、特に重要でない機能とすることもできる。このような機能を予め装置に設定しておけば、既に登録されているソフトウェアコンポーネントと登録要求のあったソフトウェアコンポーネントとの組み合わせが、記憶装置２８に記憶された組み合わせ情報が示す組み合わせに該当した場合であっても、該機能が記憶装置２８に記憶されている機能情報が示す機能に該当したときには、登録すると判断できる。
【００９０】
なお、このように判断されて登録されたとしても、登録後に不具合が発生した場合には、上記実施の形態のように、該登録したソフトウェアコンポーネントを削除するようにしてもよいし、該ソフトウェアコンポーネントを無効化する機能を更に設け、不具合が発生したときに該登録したソフトウェアコンポーネントを無効化するようにしてもよい。また、不具合が発生したときに実行された機能を無効化するようにしてもよい。
【００９１】
また、上記では記憶装置２８に記憶された情報に基づいて、登録要求のあったソフトウェアコンポーネントを登録するか否かを判断するようにしたが、例えば、以下のように処理することもできる。登録要求のあったソフトウェアコンポーネントは資源の制約を満たせば、登録することにより記憶装置２８に記憶されている組み合わせ情報が示す組み合わせに該当してしまう場合であっても登録するようにする。ただし、登録時に、該当する組み合わせ情報に対応付けて記憶された機能情報が示す機能を無効化するようにする。このように、ソフトウェアコンポーネントの登録時に不具合が発生する機能を無効化すれば、不具合の発生を防止することができる。
【００９２】
また、登録後に不具合が発生した場合には、該不具合が発生したときに実行された機能を無効化することにより、不具合の発生を防止できる。
【００９３】
なお、上述した実施の形態では、複合機を例に挙げて説明したが、複合機に限らず、ソフトウェアコンポーネントを登録することができる情報処理装置であれば、本発明を適用することができる。
【図面の簡単な説明】
【００９４】
【図１】本実施の形態にかかる複数の情報処理装置とパーソナルコンピュータとがネットワークを介して接続された状態を示した図である。
【図２】情報処理装置の構成図である。
【図３】情報処理装置に実装された資源の情報を記憶したテーブルの一例である。
【図４】情報処理装置の資源情報、またはソフトウェアコンポーネントの資源情報をＸＭＬ形式の階層構造で記述した場合の一例である。
【図５】コンフリクトするソフトウェアコンポーネントの組み合わせ情報を記憶したテーブルの一例である。
【図６】ソフトウェアコンポーネントの登録要求を受信したときにＣＰＵにより起動され実行される処理ルーチンの流れを示したフローチャートである。
【図７】障害が発生したときにＣＰＵにより実行される処理ルーチンの流れを示したフローチャートである。
【符号の説明】
【００９５】
１０Ａ、１０Ｂ、１０Ｃ  情報処理装置
２２  ＣＰＵ
２４  ＲＯＭ
２６  ＲＡＭ
２８  記憶装置
３２  ネットワークＩ／Ｆ
３４  入力装置
３６  表示装置
【図１】
2006268795.tif 000003
【図２】
2006268795.tif 000004
【図３】
2006268795.tif 000005
【図４】
2006268795.tif 000006
【図５】
2006268795.tif 000007
【図６】
2006268795.tif 000008
【図７】
2006268795.tif 000009