(57)【特許請求の範囲】
【請求項１】
ユーザ端末と通信を行う機能管理装置であって、
前記ユーザ端末に搭載されようとする新機能を識別する新機能識別子と、前記ユーザ端末に搭載されている１以上の機能のそれぞれを識別する搭載機能識別子とを、前記ユーザ端末から受信する受信手段と、
前記受信手段が受信した新機能識別子及び搭載機能識別子に基づいて、前記新機能及び前記１以上の搭載機能を特定し、前記新機能を前記ユーザ端末に搭載した場合の結果を予測する予測手段と、
前記予測手段の予測結果を、前記ユーザ端末に通知する通知手段と、
を備えることを特徴とする、機能管理装置。
【請求項２】
複数の機能のそれぞれを特定する複数の機能識別子の組み合わせと、前記複数の機能のうちいずれかの機能がその他の機能を既に搭載したユーザ端末に追加される場合の結果と、を対応づけて記憶する記憶手段を更に備え、
前記予測手段は、前記新機能識別子及び前記１以上の搭載機能識別子の組み合わせをキーとして前記記憶手段を検索し、検索結果に基づいて、前記新機能を搭載した場合の結果を予測することを特徴とする、請求項１に記載の機能管理装置。
【請求項３】
前記記憶手段は、前記複数の機能のうち何れかの機能がその他の機能を既に搭載したユーザ端末に追加される場合の成否を予測結果として記憶しており、
前記予測手段は、前記検索の結果ヒットしたエントリに記憶されている成否を予測結果とすることを特徴とする、請求項２に記載の機能管理装置。
【請求項４】
前記予測手段は、前記記憶手段を検索した結果、ヒットするエントリがない場合、予測結果が不明であると判断し、
前記通知手段は、前記新機能の搭載結果が不明であることを、前記ユーザ端末に通知することを特徴とする、請求項２に記載の機能管理装置。
【請求項５】
前記受信手段は、前記搭載機能が前記ユーザ端末に搭載された搭載順を更に受信し、
前記記憶手段は、前記複数の機能の搭載順と、前記複数の機能のうち最後に搭載された機能がその他の機能を既に搭載したユーザ端末に追加される場合の結果と、を対応づけて更に記憶し、
前記予測手段は、前記１以上の搭載機能を搭載したユーザ端末に前記新機能を追加する場合の結果を、前記記憶手段から読み出すことを特徴とする、請求項２に記載の機能管理装置。
【請求項６】
前記ユーザ端末が前記新機能を搭載した結果を、前記ユーザ端末から収集する結果収集手段と、
前記結果収集手段が収集した結果に基づいて、前記記憶手段を更新する更新手段と、
を更に備えることを特徴とする、請求項２に記載の機能管理装置。
【請求項７】
類似する機能毎に機能を分類して記憶する機能分類手段と、
前記予測手段の予測結果に応じ、前記新機能に類似する別機能を前記機能分類手段から検索する代替検索手段と、を更に備え、
前記通知手段は、前記代替検索手段が検索した別機能を特定する機能識別子を、前記ユーザ端末に通知することを特徴とする、請求項１に記載の機能管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、新機能を搭載させる端末の保安管理を行う機能管理装置に関する。
【背景技術】
【０００２】
近年、ＰＣやホームサーバ等の端末では、容量の拡大化やＣＰＵの高性能化が急速に進んでいる。ユーザは、好みに応じてソフトウェア及びハードウェアの機能を端末に追加することができる。例えば、ソフトウェアをＰＣにインストールする場合、ユーザはＰＣのＣＤ−ＲＯＭドライブやＤＶＤドライブ等にソフトウェアが記録されているメディアを挿入し、インストール画面を立ち上げてＰＣにインストールする。また、ユーザは、ＰＣをネットワークに接続しＷｅｂ上の検索エンジンにアクセスしてソフトウェアを検索し、該当するＷｅｂページから所望のソフトウェアをダウンロードしてインストールすることもできる。
【０００３】
一方、多様なソフトウェア及びハードウェアを搭載している端末にさらに他のソフトウェア及びハードウェアを搭載した場合に、端末が起動しなくなる等の予測不可能な機能的な不具合が発生する場合がある。これは、端末が既に搭載しているソフトウェア及びハードウェアと、該端末に新たに搭載しようとするソフトウェア及びハードウェアとの組み合わせ、即ち“適合性”がないことが主な原因にあげられる。
【０００４】
また、端末はユーザの好みに応じたソフトウェア及びハードウェアを搭載しているため、搭載されているソフトウェア及びハードウェアの構成は個々の端末毎に異なる。従って、端末に機能的な不具合が発生した場合、新たに搭載したソフトウェア及びハードウェアが、既に搭載しているソフトウェア及びハードウェアのうちどれと適合しないのか等の不具合の原因は、それぞれの端末により異なる。
【０００５】
特許文献１には、製品に機能的な不具合が生じた場合に、その不具合の原因を早く追求し解消するシステムが開示されている。特許文献１のシステムでは、製品は、修理及び改造された履歴を履歴情報として記憶している。この製品に新たにソフトウェア又はハードウェアを搭載して不具合が発生した場合、修理担当者は、製品に端末を接続し、製品内の履歴情報を読み出す。修理担当者は、端末が読み出した履歴情報に基づいて、製品がどのような素性を有するかを判断し、製品を修理及び改造する。
【特許文献１】特開２００２−３２４１４３号公報
【発明の開示】
【０００６】
しかし、特許文献１のシステムは、製品に発生した不具合に対して対策を行うシステムであって、製品に不具合が生じる恐れは予測できない。従って、特許文献１のシステムでは、製品に生じるおそれのある不具合を回避することはできない。
【０００７】
また、端末に新たなソフトウェア及びハードウェアを搭載した結果生じる不具合には、端末が起動不可能になるような深刻な場合もある。
【０００８】
そこで、本発明は、ユーザが端末に新たなソフトウェア及びハードウェアなどの機能を搭載する前に、端末に不具合が生じる恐れを知り、端末の不具合を回避することができる機能管理装置を提供することを目的とする。
【０００９】
上記課題を解決するために、発明１は、ユーザ端末と通信を行う機能管理装置を提供する。具体的には、前記機能管理装置は、受信手段と、予測手段と、通知手段とを備える。受信手段は、前記ユーザ端末に搭載されようとする新機能を識別する新機能識別子と、前記ユーザ端末に搭載されている１以上の機能のそれぞれを識別する搭載機能識別子とを、前記ユーザ端末から受信する。予測手段は、前記受信手段が受信した新機能識別子及び搭載機能識別子に基づいて、前記新機能及び前記１以上の搭載機能を特定し、前記新機能を前記ユーザ端末に搭載した場合の結果を予測する。通知手段は、前記予測手段の予測結果を、前記ユーザ端末に通知する。
【００１０】
予測結果とは、例えばユーザ端末に搭載されようとしている新機能がユーザ端末に正常に搭載されるか否かを示す情報である。この機能管理装置は、ユーザ端末が新たなソフトウェア及びハードウェアなどの機能を追加する前に、ユーザ端末に既に搭載されている機能に基づいて、新機能が正常に搭載される否かを予測し、ユーザ端末に知らせる。これにより、ユーザは新機能がユーザ端末に正常に搭載されるか否かを、新機能を搭載する前に知ることができる。従って、例えばユーザ端末に新機能を搭載した結果ユーザ端末に不具合が生じるおそれがある場合、ユーザは、新機能の搭載前にそのおそれを知り、搭載を中止したり、別の代替機能を搭載するなどの手段を講じることができる。
【００１１】
発明２は、前記発明１において、複数の機能のそれぞれを特定する複数の機能識別子の組み合わせと、前記複数の機能のうちいずれかの機能がその他の機能を既に搭載したユーザ端末に追加される場合の結果と、を対応づけて記憶する記憶手段を更に備える。そして、前記予測手段は、前記新機能識別子及び前記１以上の搭載機能識別子の組み合わせをキーとして前記記憶手段を検索し、検索結果に基づいて、前記新機能を搭載した場合の結果を予測することを特徴とする機能管理装置を提供する。
【００１２】
この機能管理装置は、所有しているＤＢに基づいて、ユーザ端末に搭載されようとしている新機能が正常に搭載されるか否かを予測することができる。
【００１３】
発明３は、前記発明２において、前記記憶手段は、前記複数の機能のうち何れかの機能がその他の機能を既に搭載したユーザ端末に追加される場合の成否を予測結果として記憶しており、前記予測手段は、前記検索の結果ヒットしたエントリに記憶されている成否を予測結果とすることを特徴とする機能管理装置を提供する。
【００１４】
この機能管理装置は、ユーザ端末に搭載されようとしている新機能がユーザ端末に対して不具合を発生させるか否かを、ユーザ端末に通知する。従って、ユーザ端末は、搭載しようとしている新機能が自端末に対して安全であるか否かを、新機能を搭載する前に知ることができる。
【００１５】
発明４は、前記発明２において、前記予測手段は、前記記憶手段を検索した結果、ヒットするエントリがない場合、予測結果が不明であると判断し、前記通知手段は、前記新機能の搭載結果が不明であることを、前記ユーザ端末に通知することを特徴とする機能管理装置を提供する。
【００１６】
この機能管理装置の記憶手段は、ユーザ端末に搭載されようとしている新機能及び既に搭載されている搭載済み機能の組み合わせを記憶していない。即ち、機能管理装置にとっては、このユーザ端末の状態に関する情報は新規な情報であるといえる。この場合、機能管理装置は、ユーザ端末に搭載されようとしている新機能がユーザ端末に対して不具合を発生させる可能性があるか否かが不明であることを、ユーザ端末に通知する。従って、ユーザは、新機能をユーザ端末に搭載する際に注意することができる。
【００１７】
発明５は、前記発明２において、前記受信手段は、前記搭載機能が前記ユーザ端末に搭載された搭載順を更に受信し、前記記憶手段は、前記複数の機能の搭載順と、前記複数の機能のうち最後に搭載された機能がその他の機能を既に搭載したユーザ端末に追加される場合の結果と、を対応づけて更に記憶する。そして、前記予測手段は、前記１以上の搭載機能を搭載したユーザ端末に前記新機能を追加する場合の結果を、前記記憶手段から読み出すことを特徴とする機能管理装置を提供する。
【００１８】
搭載済みの機能が同じであるユーザ端末に同一の新機能を搭載する場合であっても、そのユーザ端末における搭載済み機能の搭載順によっては不具合が発生したりしなかったりする場合がある。この機能管理装置は、既に搭載済み機能の搭載順に基づいて新機能が正常に搭載されるか否かを予測する。従って、機能管理装置は、新機能を追加した際にユーザ端末に不具合が発生するか否かを、新機能の追加前に発見することができる。
【００１９】
発明６は、前記発明２において、前記ユーザ端末が前記新機能を搭載した結果を、前記ユーザ端末から収集する結果収集手段と、前記結果収集手段が収集した結果に基づいて、前記記憶手段を更新する更新手段と、を更に備えることを特徴とする機能管理装置を提供する。
【００２０】
この機能管理装置は、常に最新の新機能の搭載結果を記憶することができる。
【００２１】
発明７は、前記発明１において、類似する機能毎に機能を分類して記憶する機能分類手段と、前記予測手段の予測結果に応じ、前記新機能に類似する別機能を前記機能分類手段から検索する代替検索手段と、を更に備える。そして、前記通知手段は、前記代替検索手段が検索した別機能を特定する機能識別子を、前記ユーザ端末に通知することを特徴とする機能管理装置を提供する。
【００２２】
この機能管理装置は、例えばユーザ端末に搭載されようとしている新機能がユーザ端末に対して不具合を発生させる可能性があると予測すると、その新機能の代替となる機能をユーザ端末に送信する。そのため、ユーザは、ユーザ端末に搭載しようとしている新機能が自端末に対して危険であることを新機能搭載前に知り、代替の機能をユーザ端末に搭載することができる。
【００２３】
本発明によると、ユーザは、端末に新たなソフトウェア及びハードウェアなどの機能を搭載する前に、端末に不具合が生じる恐れを知り、端末の不具合を回避することができる。
【発明を実施するための最良の形態】
【００２４】
以下より、本発明を図１乃至１４を用いて詳細について説明する。
【００２５】
＜第１実施形態＞
（１）システム構成
図１は、本発明の第１実施形態に係る機能管理装置を用いた端末保安システムの構成図である。この端末保安システム１は、機能管理装置２とユーザ端末３ａ，ｂとを含む。ユーザ端末３は、例えばホームサーバ３ａやＰＣ３ｂである。新機能がホームサーバ３ａに搭載されようとしている場合、機能管理装置２は、新機能がホームサーバ３ａに搭載された場合の結果を予測し、予測結果をホームサーバ３ａに送信する。ホームサーバ３ａは、新機能が自端末に搭載される前に、ネットワーク４を介して機能管理装置２から予測結果を受信して出力する。ここで、新機能がホームサーバ３ａに搭載された場合の“予測結果”とは、ホームサーバ３ａに既に搭載されている搭載済みの機能と、搭載されようとしている新機能との“適合性”に基づいて、新機能がホームサーバ３ａに正常に搭載されるか否かを予測した情報である。
【００２６】
尚、本実施形態に係るユーザ端末３は、ホームサーバ３ａやＰＣ３ｂに限定されない。ユーザ端末は、機能管理装置２とネットワーク４を構築でき、かつ新機能を搭載できる端末であれば良い。また、本実施形態ではユーザ端末の台数は２台としているが、これに限定されることはなく１台以上のユーザ端末に本発明を適用することができる。
【００２７】
（２）ユーザ端末の構成
図２は、図１に係る第１実施形態のユーザ端末３の機能構成図である。図２のユーザ端末３は、記憶部３１、新機能検出部３２、送信部３３、受信部３４及び出力部３５を含む。
【００２８】
（２−１）記憶部
記憶部３１は、自端末に既に搭載されている搭載機能の機能ＩＤを記憶している。図３は、ユーザ端末３の記憶部３１が記憶している情報の概念説明図である。図３の記憶部３
１は、搭載機能が自端末に搭載された搭載順と、自端末の搭載機能の機能ＩＤと、を１レコードに含む搭載履歴情報を記憶している。具体的には、このユーザ端末３は、搭載順の１番目に機能ＩＤ“s011-d2e7”を有する機能を搭載している。搭載順の２番目には機能ＩＤ“h1015-fse21”を有する機能を搭載している。搭載順の３番目には、機能ＩＤ“s012-gf57”を有する機能を搭載している。
【００２９】
ここで、機能ＩＤについて説明する。機能ＩＤは、例えば機能の属性を示す識別子を含む。具体的には、機能ＩＤは、ハードウェア及びソフトウェアの製品情報を含むことができ、品名や型番等であってもよい。例えば、図３における機能ＩＤは、各ＩＤの先頭にソフトウェアを示す識別子“ｓ”もしくはハードウェアを示す識別子“ｈ”を含む。そして、ソフトウェアを示す識別子“ｓ”の次の３桁は、ソフトウェアであればどのような属性のソフトウェアであるかを示していてもよい。例えば、図３において搭載順が１番目の機能ＩＤでは“ｓ”の次の３桁が“０１１”であり、これは“エディタアプリケーション”に相当する。搭載順が２番目の機能ＩＤでは“ｈ”の次の３桁が“１０１”であり、これは“メモリ”に相当する。搭載順が３番目の機能ＩＤでは“ｓ”の次の３桁が“０１２”であり、これは“ペイントアプリケーション”に相当する。
【００３０】
以下より、自端末に既に搭載されている搭載機能の機能ＩＤを『搭載機能ＩＤ』と称する。
【００３１】
尚、図３では、既に搭載している機能の搭載順が搭載履歴情報に含まれているが、これに限定されない。搭載履歴情報は搭載機能ＩＤのみを含んでいてもよい。
【００３２】
（２−２）新機能検出部
新機能検出部３２は、ユーザが自端末に搭載されようとする新機能を搭載するために行う準備を検出し、新機能を識別する機能ＩＤを読み出す。ここで、新機能は、ハードウェア及びソフトウェアを含む。以下より、新機能を識別する機能ＩＤを、『新機能ＩＤ』と称する。新機能検出部３２は、ソフトウェアやハードウェアのベンダ情報を更に検出してもよい。
【００３３】
また、ユーザが新機能を搭載するために行う準備とは、新機能がソフトウェアであるとすると、例えばソフトウェアが記録されているＣＤ―ＲＯＭやＤＶＤ−ＲＯＭ等のメディアをユーザが自端末に挿入したことをいう。ユーザは、ソフトウェアを自端末とネットワーク４を介して接続された他のサーバからダウンロードしてもよい。この場合、ユーザが新機能を搭載するために行う準備とは、ソフトウェアはダウンロードされたがインストールされていない状態のことをいう。また、新機能がハードウェアの場合におけるユーザが新機能を搭載するために行う準備とは、ハードウェアが自端末に接続された状態をいう。具体的には、例えばＳＤＲＡＭはユーザにより自端末のマザーボードのメモリ専用スロットに差し込まれたが、自端末はＳＤＲＡＭをまだ認識していない状態をいう。
【００３４】
（２−３）送信部
送信部３３は、新機能検出部３２が読み出した新機能ＩＤと、記憶部３１が記憶している搭載履歴情報とを、機能管理装置２に送信する。また、送信部３３は、ユーザが新機能を自端末に搭載した場合、新機能が正常に搭載されたか否かを示す搭載結果を、機能管理装置２に送信する。
【００３５】
（２−４）受信部
受信部３４は、搭載されようとしている新機能を自端末に搭載した場合の予測結果を、機能管理装置２から受信する。
【００３６】
（２−５）出力部
出力部３５は、受信部３４が受信した予測結果を出力する。出力形態には、例えば表示による出力や音声による出力などがあげられる。図４は、予測結果が画面に表示された例である。図４では、出力部３５は、予測結果を記載したポップアップメッセージを画面に出力させている。尚、本実施形態に係る出力形態は表示方法以外でもよい。本実施形態では、出力部３５は機能管理装置２から受信した情報を自端末のユーザに伝わるように出力すればよい。従って、出力形態は特に限定されない。
【００３７】
（３）機能管理装置の構成
図５は、第１実施形態に係る機能管理装置２の機能構成図である。図５の機能管理装置２は、記憶部２１、受信部２２、予測部２３、通知部２４、更新部２５及び代替検索部２６を含む。以下より、各機能について詳述する。
【００３８】
（３−１）記憶部
（３−１−１）結果予測テーブル
記憶部２１は、複数の機能のそれぞれを特定する複数の機能ＩＤの組み合わせと、複数の機能のうちいずれかの機能がその他の機能を既に搭載したユーザ端末３に追加された場合の搭載結果と、を対応づけた結果予測テーブルを記憶している。搭載結果は、複数の機能のうちいずれかの機能がその他の機能を既に搭載したユーザ端末３に追加された場合の成否を含む。即ち、搭載結果は、複数の機能のうちの１つの機能が、その他の機能を既に搭載したユーザ端末３に対し正常に搭載されたか否かの結果である。
【００３９】
図６は、結果予測テーブルの概念説明図である。尚、説明を簡単にするため、図６では、説明を簡単にするため、複数の機能ＩＤが品名である場合を例にとる。図６のＤＢは、搭載順に並んでいる品名と、搭載結果と、搭載成功数と、搭載失敗数とを、１レコードとして記憶している。ここでの搭載結果とは、搭載順の最後の機能がそれ以前の機能に追加された場合の結果を示す。図６の搭載結果は、搭載順の最後の機能が正常に搭載される場合を“○”、正常に搭載されない場合を“×”と記している。また、搭載成功数は、搭載順の最後の機能が正常に搭載されたユーザ端末３の総数を示す。搭載失敗数は、搭載順の最後の機能が正常に搭載されなかったユーザ端末３の総数を示す。
【００４０】
具体的には、図６中の一番上のレコードでは、１番目にソフトウェアＡ、２番目にソフトウェアＢを搭載したユーザ端末３は、ソフトウェアＣを正常に搭載したことを示している。このレコードでは、搭載成功数は“４９５０”、搭載失敗数は“５０”である。次のレコードでは、１番目にハードウェアａ、２番目にソフトウェアＡ、３番目にハードウェアｂを搭載したユーザ端末３が、ソフトウェアＣを正常に搭載できなかったことを示す。即ち、不具合が生じている。このレコードでは、搭載成功数は“１２”、搭載失敗数は“４２２５”である。
【００４１】
尚、本実施形態では、記憶部２１は複数の機能のＩＤと搭載順とを記憶しているが、これに限定されない。記憶部２１は、複数の機能のＩＤのみを記憶していてもよい。また、本実施形態では、搭載成功数及び搭載失敗数を記憶しているが、これに限定されない。記憶部２１は、搭載順の最後の機能が正常に搭載されか否かの結果を判別できるものを記憶していればよい。
【００４２】
（３−１−２）機能分類テーブル
また、記憶部２１は、類似する機能毎に機能を分類した機能分類テーブルを更に記憶している。例えば、機能ＩＤがその機能の属性を示す属性ＩＤを含む場合は、記憶部２１はこの属性ＩＤに基づいて機能を分類し記憶する。図７は、機能分類テーブルの概念説明図である。図７では、複数の機能がソフトウェアである場合を例にとる。図７に示すように、記憶部２１は、“エディタ”、“ペイント”及び“ブラウザ”の各属性ＩＤ“s011”“s012”“s013”に該当するソフトウェアを記憶している。例えば、属性“エディタ”には、“s011-d2e7”、“s011-e357f1”、“s011-s29gk9”の機能ＩＤを有するテキストアプリ１〜３の品名が対応して記憶されている。属性“ペイント”には、“s012-gf57”、“s012-gdo98”、“s012-pein24”の機能ＩＤを有するペイントアプリ４〜６の品名が対応して記憶されている。属性“ブラウザ”には、“s013-ww21”、“s013-brof9”、“s013-gru14”の機能ＩＤを有するブラウザアプリ７〜９の品名が対応して記憶されている。
【００４３】
尚、記憶部２１は属性ＩＤに基づいて機能を分類し記憶しているが、これに限定されない。記憶部２１は、上記以外の方法を用いて機能を属性別に分類し記憶してもよい。また、上述ではソフトウェアの場合について述べたが、記憶部２１はハードウェアであっても同様に分類して記憶することができる。
【００４４】
（３−２）受信部
受信部２２は、ユーザ端末３に搭載されようとする新機能を識別する新機能ＩＤと、履歴情報とを、ユーザ端末３から受信する。
【００４５】
また、受信部２２は、ユーザ端末３が新機能を搭載した場合は、新機能が正常に搭載されたか否かを示す結果を、ユーザ端末３から受信する。
【００４６】
（３−３）予測部
予測部２３は、受信部２２が受信した新機能ＩＤ及び搭載履歴情報に基づいて、新機能をユーザ端末３に搭載した場合の結果を予測する。記憶部２１が、複数の機能のそれぞれを特定する複数の機能ＩＤの組み合わせと搭載結果とを対応づけて記憶している場合は、予測部２３は新機能ＩＤ及び複数の搭載機能ＩＤの組み合わせ及び搭載順序をキーとして記憶部２１を検索する。予測部２３の予測結果とは、記憶部２１のＤＢを検索した結果ヒットしたエントリに記憶されている搭載結果である。言い換えると、予測部２３は、受信部２２が受信した搭載機能ＩＤに新機能ＩＤを加えた情報と組み合わせ及び搭載順序が一致するレコードを、記憶部２１の結果予測テーブル内で検索する。一致した場合は、予測部２３は記憶部２１の該当レコードの搭載結果を予測結果とする。
【００４７】
以下に、具体的な例を示す。ソフトウェアＡとソフトウェアＢとを既に搭載しているユーザ端末３が、ソフトウェアＣを新たに搭載しようとしている場合について考える。ここで、ユーザ端末３は、１番目にソフトウェアＡ、２番目にソフトウェアＢを搭載しているとする。この場合、機能管理装置２の受信部２２は、ソフトウェアＡ、Ｂを識別するＩＤ及び搭載順を含む搭載履歴情報を受信する。予測部２３は、ソフトウェアＡ，Ｂを識別するＩＤ及び搭載順を含む搭載履歴情報にソフトウェアＣを識別するＩＤを加え、この情報と同一の組み合わせかつ搭載順であるレコードを記憶部２１から検索する。記憶部２１は、図６に示すように一番目にソフトウェアＡ、２番目にソフトウェアＢ、３番目にソフトウェアＣが搭載され、搭載結果が“○”であるレコードを記憶している。すると、予測部２３は記憶部２１の結果予測テーブル内の該当レコードにおける搭載結果を抽出する。予測部５３は、搭載結果“○”に基づいて、ユーザ端末３はソフトウェアＣを正常に搭載できると予測し、この旨を通知部２４に渡す。
【００４８】
また、記憶部２１内に、１番目にソフトウェアＡ，２番目にソフトウェアＢを搭載しており更にソフトウェアＣを搭載した場合の搭載結果が記憶されていないとする。これは、ソフトウェアＡ，Ｂ，Ｃをこの搭載順及び組み合わせで搭載したことのあるユーザ端末がまだ存在しないことに相当する。このように、予測部２３が記憶部２１を検索した結果ヒットするエントリがない場合は、予測部２３は予測結果が不明であると判断し、この旨を通知部２４に渡す。
【００４９】
これにより、機能管理装置２は、新機能を追加した際にユーザ端末３に不具合が発生するか否かを、新機能の追加前により詳細に発見することができる。
【００５０】
また、予測部２３は、予測結果を通知部２４に通知する際、記憶部２１内の該当レコードに記憶されている搭載成功数及び搭載失敗数から搭載が成功する確率及び失敗する確率を各々算出し、これらを更に送信してもよい。
【００５１】
（３−４）通知部
通知部２４は、予測部２３の予測結果をユーザ端末３へ送信する。例えば、予測部２３が搭載結果“○”に基づいて、ユーザ端末３は新機能を正常に搭載できると予測した場合は、通知部２４は、新機能を搭載しようとするユーザ端末３に“新機能の搭載は正常に行われる”旨を示す情報を通知する。予測部２３が搭載結果“×”に基づいて、ユーザ端末３は新機能を搭載すると不具合が発生すると予測した場合は、通知部２４は、新機能を搭載しようとするユーザ端末３に“新機能の搭載は危険である”旨を示す情報を通知する。また、予測部２３が記憶部２１内を検索した結果ヒットするエントリがなく、予測結果が不明であると判断した場合は、通知部２４は、新機能を搭載しようとするユーザ端末３に“対応する搭載結果が存在しない”旨を示す情報を通知する。
【００５２】
通知部２４は、予測結果以外の情報をユーザ端末３に通知してもよい。例えば、搭載が成功する確率及び失敗する確率を予測部２３から受け取った場合は、通知部２４はこれらの確率をユーザ端末３に通知してもよい。
【００５３】
（３−５）更新部
受信部２２が、新機能が正常に搭載されたか否かを示す結果をユーザ端末３から受信した場合は、更新部２５は、この搭載結果に基づいて記憶部２１の結果予測テーブルを更新する。
【００５４】
以下に、具体的に説明する。ユーザ端末３の搭載履歴情報に新機能ＩＤを加えた情報と同一のレコードが、記憶部２１の結果予測テーブル内に記憶されている場合を考える。ユーザ端末３が新機能を正常に搭載した結果を受信部２２が受信した場合は、更新部２５は、記憶部２１が記憶している該当レコードの搭載成功数をインクリメントする。ユーザ端末３が新機能を正常に搭載できなかった、即ちユーザ端末３に不具合が生じたことを示す結果を受信部２２が受信した場合は、更新部２５は、記憶部２１が記憶している該当レコードの搭載失敗数をインクリメントする。そして、更新部２５は、インクリメントされた搭載成功数及び搭載失敗数に基づいて、記憶部２１の結果予測テーブル内の搭載結果を更新する。例えば、搭載成功数が搭載失敗数を越えた場合は（搭載成功数＞搭載失敗数）、更新部２５は搭載結果を“○”に変更する。搭載失敗数が搭載成功数数を越えた場合は（搭載成功数＜搭載失敗数）、更新部２５は搭載結果を“×”に変更する。
【００５５】
また、ユーザ端末３に新機能が搭載された場合の搭載結果が記憶部２１に記憶されていない場合は、更新部２５は、ユーザ端末３から送信された結果に基づいて搭載結果を記録する。新機能がユーザ端末３に正常に搭載された結果を受信部２２が受信した場合は、更新部２５は記憶部２１の該当レコードにおける搭載結果を“○”と記録する。新機能がユーザ端末３に正常に搭載されなかった結果を受信部２２が受信した場合は、更新部２５は記憶部２１の該当レコードにおける搭載結果を“×”と記録する。
【００５６】
このように、更新部２５は、記憶部２１が有する結果予測テーブルを常に最新の情報に更新する。
【００５７】
（３−６）代替検索部
代替検索部２６は、予測部２３の予測結果に応じて、新機能の代替機能を記憶部２１の記憶分類テーブルから検索する。即ち、予測部２３が“ユーザ端末３に新機能が搭載されると不具合が発生する”と予測した場合は、代替検索部２６は記憶部２１の機能分類テーブル内から新機能と同じ属性を有する別の機能を検索する。
【００５８】
例えば、ユーザ端末３に搭載されようとする機能が“テキストアプリ１”であって、予測部２３が“ユーザ端末３にテキストアプリ１”が搭載されると不具合が発生する”と予測したとする。この場合、代替検索部２６は、記憶部２１の機能分類テーブル内から“テキストアプリ１”と同じ属性“エディタ”であって“テキストアプリ１”とは別の機能を検索する。記憶部２１は、図７に示すような機能分類テーブルを記憶しているとする。この場合、代替検索部２６は、“テキストアプリ１”とは別機能の“テキストアプリ２”もしくは“テキストアプリ３”を選択する。代替検索部２６が例えば“テキストアプリ２”を選択した場合は、“テキストアプリ２”を識別する機能ＩＤ“s011-e357f1”を予測部２３へ渡す。予測部２３は、機能ＩＤ“s011-e357f1”が示す“テキストアプリ２”が、ユーザ端末３に正常に搭載されるか否かを予測する。予測部２３が“テキストアプリ２はユーザ端末３に正常に搭載される”と予測した場合は、通知部２４は“テキストアプリ２”の機能ＩＤ“s011-e357f1”をユーザ端末３に通知する。
【００５９】
また、予測部２３が“テキストアプリ２はユーザ端末３に正常に搭載されない”と予測した場合は、代替検索部２６は、再度記憶部２１の機能分類テーブル内から“テキストアプリ１”と同じ属性“エディタ”であって、かつ“テキストアプリ１”“テキストアプリ２”以外のアプリケーションを検索する。予測部２３が“テキストアプリ３”を選択すると、“テキストアプリ３”を識別する機能ＩＤ“s011-s29gk9”を予測部２３へ渡す。
【００６０】
尚、代替検索部２６が記憶部２１内を検索した結果、新機能の代替となる別の機能がないと判断した場合は、この判断結果を通知部２４へ渡す。
【００６１】
また、上述ではソフトウェアの場合について述べたが、代替検索部２６はハードウェアであっても同様に検索及び選択できる。
【００６２】
（４）一連の動作フロー
次に、本発明の第１実施形態に係る機能管理装置２及びユーザ端末３を用いた端末保安システム１の一連の動作について説明する。図８は、第１実施形態に係る機能管理装置２及びユーザ端末３を用いた端末保安システム１の動作フローチャートである。以下より、説明の便宜上、ユーザ端末３のユーザがソフトウェアＡを搭載しようとした場合を例にとる。先ず、ユーザが、ソフトウェアＡが記録されているＣＤ−ＲＯＭをユーザ端末３のＣＤ−ＲＯＭドライブへ挿入したとする。
【００６３】
ユーザ端末３の新機能検出部３２はＣＤ−ＲＯＭドライブにＣＤ−ＲＯＭが挿入されたことを検出し（＃１）、ＣＤ−ＲＯＭからソフトウェアＡを識別する機能ＩＤを読み出す（＃２）。そして、ユーザ端末３の送信部３３は、新機能検出部３２が読み出したソフトウェアＡの機能ＩＤと、ユーザ端末３に既に搭載済み機能の搭載履歴情報と、ユーザ端末３のＩＰアドレスとを機能管理装置２へ送信する（＃３）。ここで、搭載履歴情報は、ユーザ端末３に既に搭載されているソフトウェア及びハードウェアの搭載機能ＩＤとその搭載順とを含むとする。
【００６４】
機能管理装置２の受信部２２は、ソフトウェアＡを識別する機能ＩＤ、ユーザ端末３の搭載履歴情報及びＩＰアドレスを受信する（＃４）。機能管理装置２の予測部２３は、ユーザ端末３の搭載履歴情報にソフトウェアＡを識別する機能ＩＤを加えた情報をキーとして、記憶部５２の結果予測テーブル内を検索する。そして、予測部２３は、検索結果に基づいて、ソフトウェアＡがＰＣ３に正常に搭載されるか否かを予測する（＃５）。
【００６５】
機能管理装置２の通知部２４は、ソフトウェアＡがユーザ端末３に搭載される場合の予測結果を、ユーザ端末３のＩＰアドレス宛に送信する（＃６）。ユーザ端末３の受信部３４はこれを受信し（＃７）、出力部３５はこれを出力する（＃８）。
【００６６】
出力部３５が機能管理装置２からの予測結果を出力後、ユーザ端末３にソフトウェアＡが搭載された場合、ユーザ端末３の送信部３３は、ソフトウェアＡ搭載後の自端末の状態を機能管理装置２へ送信する（＃９）。即ち、ユーザ端末３の送信部３３は、ソフトウェアＡが自端末に正常に搭載されたか、もしくはソフトウェアＡを搭載したことで自端末に不具合が生じたかを機能管理装置２に送信する。機能管理装置２の受信部２２は、これを受信する（＃１０）。
【００６７】
機能管理装置２の更新部２５は、受信した結果に基づいて記憶部２１の結果予測テーブルを更新する（＃１１）。
【００６８】
尚、上述した動作フローでは、ユーザ端末３の送信部３３は機能管理装置２へ搭載履歴情報を送信しているが、これに限定されない。ユーザ端末３の送信部３３は、ユーザ端末３に既に搭載されているソフトウェア及びハードウェアの搭載機能ＩＤのみを送信してもよい。
【００６９】
また、上述した一連の動作フローでは、ユーザ端末にソフトウェアを搭載しようとする場合について述べたが、ハードウェアの場合にも適用できる。
【００７０】
また、上述した一連の動作フローでは、ソフトウェアがＣＤ−ＲＯＭに記録されている場合について述べたが、これに限定されない。ユーザはソフトウェアをＷｅｂ上からダウンロードしてもよい。
【００７１】
（５）ユーザ端末のメインルーチン
次に、ユーザ端末３のメインルーチンについて説明する。図９は、ユーザ端末３のメインルーチンである。以下より、『（４）一連の動作フロー』と同様に、ユーザ端末３のユーザがソフトウェアＡを搭載しようとした場合を例にとる。先ず、ユーザが、ソフトウェアＡが記録されているＣＤ−ＲＯＭ等のメディアをユーザ端末３のＣＤ−ＲＯＭドライブへ挿入したとする。
【００７２】
ステップＳ１：新機能検出部３２は、ユーザが搭載しようとする新機能が記録されたメディアが自端末内に挿入されるまで待機する。新機能検出部３２は、新機能が記録されたメディアの挿入を検出すると、新機能ＩＤをメディアから読み出す。
【００７３】
ステップＳ２：送信部３３は、自端末の搭載履歴情報を記憶部３３から取り出す。送信部３３は、新機能検出部３２が読み出した新機能ＩＤ、記憶部３３から取り出した搭載履歴情報及び自端末のＩＰアドレスを機能管理装置２へ送信する。
【００７４】
ステップＳ３：受信部３４は、新機能が自端末に正常に搭載されるか否かの予測結果を、機能管理装置２から受信するまで待機する。
【００７５】
ステップＳ４：ステップＳ３において、受信部３４が機能管理装置２から予測結果を受信すると、出力部３５はこれを出力する。
【００７６】
ステップＳ５，６： 新機能検出部３１は、ユーザが新機能を自端末に搭載しようとする動作を検出する。
【００７７】
ステップＳ７，８：ユーザが新機能を自端末に搭載した場合は、送信部３３は、新機能が搭載された後の自端末の状態を、機能管理装置２へ送信する。即ち、送信部３３は、新機能が正常に搭載されたか否かの結果を機能管理装置２へ送信する。
【００７８】
ステップＳ９：更新部（図示せず）は、自端末に搭載された新機能を識別する新機能ＩＤを、記憶部３３が記憶している搭載履歴情報の履歴順のうちの最後に追加する。
【００７９】
上述した一連の動作フローでは、ユーザ端末にソフトウェアを搭載しようとする場合について述べたが、ハードウェアの場合にも適用できる。
【００８０】
また、上述した一連の動作フローでは、ソフトウェアがＣＤ−ＲＯＭに記録されている場合について述べたが、これに限定されない。ユーザはソフトウェアをＷｅｂ上からダウンロードしてもよい。
【００８１】
（６）機能管理装置のメインルーチン
次に、機能管理装置２のメインルーチンについて説明する。図１０は、機能管理装置２のメインルーチンである。
【００８２】
ステップＳ５１：受信部２２は、ユーザ端末３が搭載しようとしている新機能を識別する新機能ＩＤ、既に搭載されている機能を識別する搭載履歴情報及びＩＰアドレスを受信するまで待機する。
【００８３】
ステップＳ５２：ステップＳ５１において、受信部２２が新機能ＩＤ、搭載履歴情報及びＩＰアドレスを受信すると、予測部２３は、搭載履歴情報に新機能ＩＤを加えた情報をキーとして、記憶部２１の結果予測テーブル内を検索する。即ち、予測部２３は、記憶部２１の結果予測テーブル内の各レコードのうち、搭載履歴情報に新機能ＩＤを加えた情報と一致するレコードがあるか否かを検索する。
【００８４】
ステップＳ５３：ステップＳ５２において、検索の結果、記憶部２１の結果予測テーブル内に搭載履歴情報に新機能ＩＤを加えた情報と一致するレコードがある場合は、予測部２３は、記憶部２１の結果予測テーブル内の該当レコードにおける搭載結果を抽出する。
【００８５】
ステップＳ５４：ステップＳ５２において、検索の結果、記憶部２１のＤＢ内に搭載履歴情報に新機能ＩＤを加えた情報と一致するレコードがない場合は、予測部２３は予測不明と判断する。通知部２４は、受信したＩＰアドレス宛に“予測が不明です”旨の結果を通知する。
【００８６】
ステップＳ５５：ステップＳ５３において、抽出した搭載結果が“○”である場合は、予測部２３は、新機能は正常に搭載されると予測する。通知部２４は、予測結果“新機能は正常に搭載される”旨を示す情報を、受信したＩＰアドレス宛に通知する。
【００８７】
ステップＳ５６：ステップＳ５３において、抽出した搭載結果が“×”である場合は、代替検索部２６は、記憶部２１の機能分類テーブル内から新機能と類似する機能を検索する。そして代替検索部２６は、類似機能を識別するＩＤを抽出して予測部２３へ渡す。予測部２３は、この類似機能はユーザ端末３に正常に搭載されるか否かを予測する。
【００８８】
ステップＳ５７：ステップＳ５６において、予測部２３がこの類似機能はユーザ端末３に正常に搭載されると判断した場合は、通知部２４は類似機能を識別する機能ＩＤを、受信したＩＰアドレス宛に通知する。
【００８９】
ステップＳ５８：ステップＳ５６において、新機能の類似機能が記憶部２１内の機能分類テーブル内に存在しない場合、及び予測部２３が類似機能はユーザ端末３に正常に搭載されないと予測した場合は、通知部２４は、予測結果“新機能を搭載するのは危険である”旨を示す情報を、受信したＩＰアドレス宛に通知する。
【００９０】
ステップＳ５９：受信部２２は、新機能がユーザ端末３に正常に搭載されたか否かを示す搭載結果を受信する。
【００９１】
ステップＳ６０：ステップＳ５９において受信した搭載結果に基づいて、更新部２５は結果予測テーブルを更新する。
【００９２】
上述した一連の動作フローでは、ユーザ端末にソフトウェアを搭載しようとする場合について述べたが、ハードウェアの場合にも適用できる。
【００９３】
（７）効果
機能管理装置２は、ユーザ端末３が新たなソフトウェア及びハードウェア等の機能を搭載する前に、新機能がユーザ端末３に正常に搭載されるか否かを予測する。そして、ユーザ端末３は、新機能を搭載する前に、搭載しようとしている新機能を自端末に搭載することで不具合が発生するか否かを、機能管理装置２から受信して出力する。従って、例えばユーザ端末３に新機能を搭載した結果ユーザ端末３に不具合が生じるおそれがある場合、ユーザは、新機能の搭載前にそのおそれを知り、搭載を中止したり、別の代替機能を搭載するなどの手段を講じることができる。
【００９４】
尚、上述した例では、機能管理装置２の予測部２３が、新機能はユーザ端末３に正常に搭載されないと予測した場合は、新機能と類似した別機能を代替機能としてユーザに通知するとしたが、これに限定されない。機能管理装置２は、予測部２３が予測した予測結果のみをユーザ端末３に通知してもよい。
【００９５】
＜その他の実施形態＞
（１）システムの構成
図１１は、本発明の第２実施形態に係る端末保安システム１０１の構成図である。第２実施形態に係る端末保安システム１０１は、第１実施形態に更にソフトウェアのベンダのサーバ端末１０５ａ及びハードウェアのベンダのサーバ端末１０５ｂがネットワーク１０４に接続されている。ソフトウェア／ハードウェアのベンダのサーバ端末１０５は、それぞれソフトウェア／ハードウェア製品ＤＢを有しているとする。ソフトウェア製品ＤＢは、そのベンダが製造したソフトウェアを識別する機能ＩＤとインストールデータとを対応づけて記憶している。ハードウェア製品ＤＢは、そのベンダが製造したハードウェアを識別する機能ＩＤと、回路情報とを対応づけて記憶している。
【００９６】
以下に、ベンダのサーバ端末１０５について説明する。例えば、ソフトウェアＡを製造しているベンダのサーバ端末１０５ａは、ソフトウェアＡを搭載しようとするユーザ端末１０３からソフトウェアＡを識別する機能ＩＤとユーザ端末１０３のＩＰアドレスとを受信したとする。すると、ソフトウェアＡのベンダのサーバ端末１０５ａは、ソフトウェアＡを識別する機能ＩＤに基づいて、自端末内のソフトウェア製品ＤＢ内からソフトウェアＡのインストールデータを抽出する。そして、ソフトウェアＡのベンダのサーバ端末１０５ａは、ユーザ端末１０３のＩＰアドレスとソフトウェアのインストールデータとを、機能管理装置１０２に送信する。
【００９７】
また、メモリＢを製造しているベンダのサーバ端末１０５ｂは、メモリＢを搭載しようとするユーザ端末１０３からメモリＢを識別する機能ＩＤとユーザ端末１０３のＩＰアドレスとを受信したとする。メモリＢのベンダのサーバ端末１０５ｂは、メモリＢを識別する機能ＩＤに基づいて、自端末内のハードウェア製品ＤＢ内からメモリＢの回路情報を抽出する。そして、メモリＢのベンダのサーバ端末１０５ｂは、ユーザ端末１０３のＩＰアドレスとメモリＢの回路情報とを、機能管理装置１０２に送信する。
【００９８】
また、第２実施形態に係る端末保安システム１０１のその他の構成は、第１実施形態に係る端末保安システム１と同様である。即ち、端末保安システム１０１は、機能管理装置１０２とユーザ端末１０３とを含む。ユーザ端末１０３は、例えばホームサーバ１０３ａやＰＣ１０３ｂである。新機能がホームサーバ１０３ａに搭載されようとしている場合、機能管理装置１０２は、新機能がホームサーバ１０３ａに搭載された場合の結果を予測し、予測結果をホームサーバ１０３ａに送信する。ホームサーバ１０３ａは、新機能が自端末に搭載される前に、ネットワーク１０４を介して機能管理装置１０２から予測結果を受信して出力する。“予測結果”とは、ホームサーバ１０３ａに既に搭載されている搭載済みの機能と、搭載されようとしている新機能との“適合性”に基づいて、新機能がホームサーバ１０３ａに正常に搭載されるか否かを予測した情報である。
【００９９】
尚、本実施形態に係るユーザ端末１０３は、ホームサーバ１０３ａやＰＣ１０３ｂに限定されない。ユーザ端末は、機能管理装置１０２とネットワーク１０４を構築でき、かつ新機能を搭載できる端末であれば良い。また、本実施形態ではユーザ端末の台数は２台としているが、これに限定されることはなく、１台以上のユーザ端末に本発明を適用することができる。
【０１００】
（２）ユーザ端末の構成
図１２は、第２実施形態に係るユーザ端末１０３の機能構成図である。図１２のユーザ端末１０３は、第１実施形態に係るユーザ端末３に更に通信部１３６を含む。即ち、本実施形態のユーザ端末１０３は、記憶部１３１、新機能検出部１３２、送信部１３３、受信部１３４、出力部１３５及び通信部１３６を含む。
【０１０１】
記憶部１３１は、自端末が搭載しているアプリケーション等の全データを記憶している。全データとは、例えば、表計算アプリケーションや文章作成アプリケーション等の、自端末が搭載している全てのアプリケーションそのものである。全データは、自端末に既に搭載されている１以上の機能を識別する機能ＩＤを含む。機能ＩＤは、第１実施形態と同様、ハードウェアやソフトウェアの製品情報を含み、例えば製品情報や型番、品名等があげられる。その他の機能ＩＤに係る説明については、第１実施形態と同様であるため省略する。また、記憶部１３１は、既に搭載している機能の搭載順と搭載機能ＩＤと含む搭載履歴情報を記憶していてもよい。
【０１０２】
新機能検出部１３２は、ユーザが自端末に搭載されようとする新機能を搭載するために行う準備を検出し、新機能を識別する機能ＩＤとベンダ情報とを読み出す。ベンダ情報とは、ユーザが自端末に搭載しようとしている新機能の製造元を示す情報である。
【０１０３】
送信部１３３は、新機能ＩＤと、記憶部１３１が記憶している全データと、自端末のＩＰアドレスとを機能管理装置１０２に送信する。即ち、機能管理装置１０２がユーザ端末１０３の状態を把握した上で新機能が正常に搭載されるか否かを予測するために、送信部１３３は自端末の全データを送信する。
【０１０４】
受信部１３４は、搭載されようとしている新機能を自端末に搭載した場合の予測結果を、機能管理装置１０２から受信する。
【０１０５】
出力部１３５は、受信部１３４が受信した予測結果を出力する。出力形態には、例えば表示による出力や音声による出力などがあげられる。本実施形態では、第１実施形態と同様、出力部１３５は機能管理装置１０２から受信した情報を自端末のユーザに伝わるように出力すればよい。従って、出力形態は特に限定されない。
【０１０６】
通信部１３６は、新機能検出部１３２が検出したベンダ情報に基づいて各ベンダのサーバ端末１０５にアクセスし、新機能ＩＤに基づいて通信を行う。例えば、ＣＤ−ＲＯＭに記録されているソフトウェアＡがユーザ端末１０３に搭載されようとした場合を考える。通信部１３６は、新機能検出部１３２が検出したベンダ情報に基づいてソフトウェアＡのベンダのサーバ端末１０５ａにアクセスし、ソフトウェアＡを識別するＩＤと自端末のＩＰアドレスとを送信する。メモリＢがユーザ端末１０３に搭載されようとした場合は、通信部１３６は、機能検出部１３２が検出したベンダ情報に基づいてメモリＢのベンダのサーバ端末１０５ｂにアクセスし、メモリＢを識別するＩＤと自端末のＩＰアドレスとを送信する。
【０１０７】
（３）機能管理装置の構成
本発明の第２実施形態に係る機能管理装置１０２は、端末１０６と基本機能ボード１０７とを含む。本実施形態の機能管理装置１０２は、新機能がユーザ端末１０３に正常に搭載されるか否かを、シミュレーションにより予測する。
【０１０８】
（３−１）端末
図１３は、本発明の第２実施形態に係る端末１０６の機能構成図である。図１３の端末１０６は、記憶部１６１、受信部１６２、予測部１６３、検知部１６４、更新部１６５、代替検索部１６６、ハードウェアエミュレータ（以下、ＨＷＥと称する）１６７、検知部１６８及びインターフェース１６９を含む。
【０１０９】
記憶部１６１は、ＨＷＥ１６７のエミュレーション用プログラムを記憶している。また、記憶部１６１は、第１実施形態の図７と同様に、類似する機能毎に機能を分類した機能分類テーブルを更に記憶する。機能ＩＤが属性を示す識別子を有する場合は、記憶部１６１は機能ＩＤに基づいて機能を記憶する。また、機能ＩＤが属性を示す識別子を含まない場合は、記憶部１６１は、各ベンダのサーバ端末１０５からの受信したソフトウェアのインストールデータ及びハードウェアの回路情報に基づいて、機能を属性別に分類して記憶してもよい。例えば、ソフトウェアのインストールデータやハードウェアの回路情報が機能の属性を示す識別子を含む場合は、記憶部１６１はこの識別子に基づいて機能を属性別に分類し記憶する。
【０１１０】
受信部１６２は、ユーザ端末１０３に搭載されようとする新機能を識別する機能ＩＤと、ユーザ端末１０３に搭載されている搭載機能ＩＤを含む全データとを、ユーザ端末１０３から受信する。尚、ユーザ端末１０３の全データは、インターフェース１６９を介して基本機能ボード１０７へ送信される。また、受信部１６２は、ユーザ端末１０３に搭載されようとする新機能のインストールデータや回路情報等の各データを、各ベンダのサーバ端末１０５から受信する。例えば、新機能がソフトウェアである場合は、受信部１６２はソフトウェアのインストールデータをソフトウェアのベンダのサーバ端末１０５ａから受信する。新機能がハードウェアである場合は、受信部１６２は、ハードウェアの回路情報をハードウェアのベンダのサーバ端末１０５ｂから受信する。
【０１１１】
予測部１６３は、受信部１６２が受信した搭載機能ＩＤを含む全データ及び新機能に関するデータに基づいて、新機能をユーザ端末１０３に搭載した場合の結果を予測する。例えば、新機能の各データ及びユーザ端末１０３の全データに基づいて基本機能ボード１０７はシミュレーションを行う。基本機能ボード１０７の動作を示す信号を検知部１６８が検知すると、予測部１６３はこの信号に基づいて新機能がユーザ端末１０３に正常に搭載されるか否かを予測する。基本機能ボード１０７の正常動作を示す信号を検知部１６８が検知した場合は、予測部１６８は“新機能はユーザ端末１０３に正常に搭載される”と予測する。また、基本機能ボード１０７の異常動作を示す信号を検知部１６８が検知した場合は、予測部１６３は“新機能はユーザ端末１０３に正常に搭載されない”と予測する。
【０１１２】
通知部１６４は、予測部１６３の予測結果をユーザ端末１０３へ送信する。
【０１１３】
更新部１６５は、記憶部１６１が記憶している機能分類テーブルを更新する。例えば、受信部１６２がユーザ端末１０３に搭載されようとする新機能の各データを各ベンダのサーバ端末１０５から受信した場合、更新部１６５は新機能の各データ内から機能の属性を示す識別子を含むＩＤを抽出する。そして、更新部１６５は、抽出した識別子に基づいて該機能のＩＤを機能分類テーブルの該当する属性内に書き込む。
【０１１４】
代替検索部１６６は、予測部１６３の予測結果に応じて、新機能の代替機能を記憶部１６１内から検索する。即ち、予測部１６３が“ユーザ端末１０３に新機能が搭載されると不具合が発生する”と予測した場合は、代替検索部１６６は記憶部１６１の機能分類テーブル内から新機能と同じ属性を有する別の機能を検索する。検索した結果新機能と類似する機能がヒットした場合、代替検索部１６６はヒットした機能の機能ＩＤを抽出し予測部１６３へ渡す。予測部１６３は、代替検索部１６６から渡された機能ＩＤに基づいて新機能と類似する機能が代替可能か否かを予測する。予測部１６３が代替可能であると判断した場合は、通知部１６４は代替可能と判断した機能のＩＤをユーザ端末１０３へ通知する。
【０１１５】
ＨＷＥ１６７は、ユーザ端末１０３に搭載されようとする新機能がハードウェアである場合、搭載されようとするハードウェアの回路情報に基づいて該ハードウェアを仮想的に構築させる。例えば、ユーザ端末１０３にメモリＢが搭載されようとする場合を考える。まず、ＨＷＥ１６７は記憶部１６１からＨＷＥ用プログラムを読み出す。そして、ＨＷＥ１６７は、受信部１６２がメモリＢのベンダのサーバ端末１０５ｂから受信したメモリＢの回路情報に基づいて、メモリＢをエミュレートする。基本機能ボード１０７がユーザ端末１０３の基本的な機能を備えたボードであるとすると、仮想的に構築されたメモリＢ及び基本機能ボード１０７は、ユーザ端末１０３の構成と等しい。これにより、予測部１６３はメモリＢがユーザ端末１０３に正常に搭載されるか否かを予測することができる。
【０１１６】
検知部１６８は、基本機能ボード１０７の動作を示す信号を検知する。即ち、検知部１６８は、基本機能ボード１０７のＣＰＵ内部の動作をモニターする。基本機能ボード１０７の動作を示す信号は、基本機能ボード１０７からインターフェース１６９を経て端末１０６に送信される。検知部１６８はこれを検知する。例えば、ユーザ端末１０３にメモリＢが搭載されようとする場合を考える。尚、基本機能ボード１０７はユーザ端末１０３の内部のボードと同一のボードであって、基本機能ボード１０７にはユーザ端末１０３が有する全データが記憶されているとする。検知部１６８は、仮想的に構築されたメモリＢのデータが加えられた基本機能ボード１０７内のＣＰＵの動作をモニターする。即ち、検知部１６８は、ユーザ端末１０３にメモリＢが搭載された状態と同一の状態を再現した基本機能ボード１０７から、基本機能ボード１０７内のＣＰＵの動作を示す信号を検知する。通常、ＣＰＵ内部には、ＣＰＵが搭載されている本体の基本機能にエラーが生じると異常を示す回路が内蔵されている。ＣＰＵの動作を示す信号はこの回路から出力される。即ち、基本機能ボード１０７内のＣＰＵの動作を示す信号を検知することで、検知部１６８は仮想的に構築されたメモリＢにより基本機能ボード１０７に不具合が生じたか否かを検知することができる。検知部１６８は、検知した信号を予測部１６３に送信する。
【０１１７】
（３−２）基本機能ボード
基本機能ボード１０７は、インターフェース１６９を介して端末１０６に接続されている。基本機能ボード１０７は、端末１０６が受信したユーザ端末１０３の全データやＨＷＥ１６７が仮想的に構築したハードウェアのデータ等を端末１０６から受信する。基本機能ボード１０７は、基本機能ボード１０７内のＣＰＵの動作を示す信号等を端末１０６に送信する。基本機能ボード１０７は、ユーザ端末１０３の基本となるハードウェア機能を含み、ユーザ端末１０３の新機能搭載前の状態を再現するために用いられる。基本機能ボード１０７は、例えばユーザ端末１０３のＣＰＵ、マザーボード、ＨＤＤ等を含む。ＨＤＤは、ユーザ端末１０３の全データを記憶する。即ち、基本機能ボード１０７は、新機能を搭載しようとするユーザ端末１０３を擬似的に構築する役割をもつ。
【０１１８】
基本機能ボード１０７は、ユーザ端末１０３が出荷された際の状態、即ち、他機能が追加されていない状態であってもよい。また、既にいくつかのハードウェアが搭載されているユーザ端末１０３に更に新機能が搭載されようとしている場合は、既に搭載されている多機能はＨＷＥ１６７で仮想的に構築されてもよい。仮想的に構築された多機能のデータと基本機能ボード１０７とを用いて、予測部１６３は新機能が搭載される場合の予測をすることができる。
【０１１９】
（４）一連の動作フロー
図１４は、第２実施形態の係る端末保安システム１０１の動作フローチャートである。以下より、説明の便宜上、ユーザ端末１０３にメモリＢが搭載されようとした場合を例にとる。先ず、ユーザが、メモリＢをユーザ端末１０３の内部のボードのスロットに差し込んだとする。
【０１２０】
ユーザ端末１０３の新機能検出部１３２は内部のボードにメモリＢが差し込まれたことを検出し（＃１０１）、メモリＢを識別する機能ＩＤ及びベンダ情報をメモリＢから読み出す（＃１０２）。ユーザ端末１０３の通信部１３６は、新機能検出部１３２が読み出したベンダ情報に基づいてメモリＢのベンダのサーバ端末１０５ｂにアクセスし、メモリＢの機能ＩＤ及び自端末のＩＰアドレスを送信する（＃１０３）。メモリＢのベンダのサーバ端末１０５ｂはこれを受信する（＃１０４）。
【０１２１】
ユーザ端末１０３の送信部１３３は、メモリＢを識別する機能ＩＤ、自端末に搭載されている機能の全データ及びＩＰアドレスを、機能管理装置１０２へ送信する（＃１０５）。機能管理装置１０２における端末１０６の受信部１６１はこれを受信する（＃１０６）。全データは基本機能ボード１０７が有するＨＤＤ内に記憶される（＃１０７）。ここで、自端末に搭載されている機能の全データは、ユーザ端末１０３に既に搭載済みの機能の搭載履歴情報を含むとする。
【０１２２】
ユーザ端末１０３からメモリＢを識別する機能ＩＤ及びＩＰアドレスを受信したメモリＢのベンダのサーバ端末１０５ｂは、メモリＢを識別する機能ＩＤに基づいて、ハードウェア製品ＤＢ内からメモリＢの回路情報を検索し抽出する。そして、メモリＢのベンダのサーバ端末１０５ｂは、抽出したメモリＢの回路情報及びユーザ端末１０３のＩＰアドレスを機能管理装置１０２へ送信する（＃１０８）。端末１０６の受信部１６２はこれらを受信する（＃１０９）。メモリＢの回路情報とホームサーバのＩＰアドレスとを共に送ることにより、機能管理装置１０２は、どのユーザ端末のデータにメモリＢの回路情報を用いるかを判断することができる。
【０１２３】
次いで、端末１０６のＨＷＥ１６７は、記憶部１６１からＨＷＥ用プログラムを読み出し、受信部１６２が受信したメモリＢの回路情報に基づいてメモリＢを仮想的に構築する（＃１１０）。仮想的に構築されたメモリＢのデータは、インターフェース１６９を介して基本機能ボード１０７に提供される。
【０１２４】
基本機能ボード１０７は、ＨＤＤ内に記憶したユーザ端末１０３の全データ及びＨＷＥ１６７により仮想的に構築されたメモリＢのデータに基づいて、動作検証を行う（＃１１１）。端末１０６の検知部１６８は、基本機能ボード１０７のＣＰＵの動作を示す信号をモニターする（＃１１２）。
【０１２５】
次いで、検知部１６８が基本機能ボード１０７の動作を示す信号を検知すると、端末１０６の予測部１６３は、メモリＢがユーザ端末１０３に正常に搭載されるか否かを予測する（＃１１３）。通知部１６４は、予測結果をユーザ端末１０３に送信する（＃１１４）。尚、検知部１６８が基本機能ボード１０７内のＣＰＵにエラーが生じたことを示す信号を検知した場合は、予測部１６３は、“メモリＢはユーザ端末１０３に正常に搭載されない”と予測する。この時、代替検索部１６６が記憶部１６１の機能分類テーブル内からメモリＢの代替となるメモリＣを検索し、メモリＣを識別する機能ＩＤを抽出してもよい。この時、代替検索部１６６は抽出されたメモリＣを示す機能ＩＤを予測部１６３へ渡す。予測部１６３はメモリＣがユーザ端末１０３に正常に搭載されると予測した場合は、通知部１６４はメモリＣを示す機能ＩＤをユーザ端末１０３へ通知する。
【０１２６】
ユーザ端末１０３の受信部１３２は予測結果を受信し（＃１１５）、出力部１３５これを出力する（＃１１６）。受信部１３２がメモリＣを識別する機能ＩＤを受信した場合は、出力部１３５はメモリＢに係る予測結果に加え、メモリＣを識別する機能ＩＤを出力してもよい。
【０１２７】
尚、上述した例ではユーザ端末１０３がハードウェアを新機能として新たに搭載しようとする例について述べたが、本実施形態はソフトウェアを新機能として新たに搭載する場合についても適用できる。
【０１２８】
（５）効果
本実施形態の機能管理装置１０２は、基本機能ボード１０７及びＨＷＥ１６７を用いて、ユーザ端末１０３に新機能が搭載された場合の状態を構築し、ユーザ端末１０３に搭載されようとする新機能がユーザ端末１０３に正常に搭載されるか否かを予測する。即ち、機能管理装置１０２は、搭載されようとするソフトウェア及びハードウェアが、ユーザ端末１０２に正常に搭載されるか否かを、シミュレーションにより判断する。従って、ユーザ端末１０２のユーザは、ユーザ端末１０２に搭載しようとしている新機能がユーザ端末１０２に対して不具合を発生させる可能性を、新機能を搭載する前に知ることができる。従って、ユーザ端末１０３に不具合が発生する場合であっても、ユーザは新機能を搭載する前にこれを回避することができる。
【０１２９】
尚、本実施形態では、機能管理装置１０２はソフトウェア／ハードウェアのベンダのサーバ端末１０５を介して新機能に関する情報を入手することで、ユーザ端末１０３に搭載されようとする新機能が正常に搭載されるか否かを検証したが、これに限定されない。例えば、ベンダのサーバ端末１０５が有しているソフトウェア／ハードウェアの製品ＤＢは、機能管理装置が備えていてもよい。
【０１３０】
また、本実施形態は、以下の方法を用いてもよい。例えば、機能管理装置１０２はソフトウェアのエミュレータ及びハードウェアのエミュレータを含む。即ち、機能管理装置１０２は、ユーザ端末１０３の搭載履歴情報及び新機能ＩＤに基づいてソフトウェア及びハードウェアをエミュレーションにより仮想的に構築し、新機能がユーザ端末１０３に正常に搭載されるか否かを予測してもよい。
【産業上の利用可能性】
【０１３１】
本発明は、ホームサーバ、ＰＣ、携帯端末等、ネットワークを構築し自端末に新機能を追加できるような端末に適用することができる。これにより、端末に新機能を搭載しようとする際に、端末は、新機能が自端末に正常に搭載されるか否かを予測する。従って、端末のユーザは端末の不具合を事前に回避することができる。
【図面の簡単な説明】
【０１３２】
【図１】第１実施形態に係る端末保安システムの構成図。
【図２】第１実施形態に係るユーザ端末の機能構成図。
【図３】第１実施形態に係るユーザ端末の記憶部が記憶している情報の概念説明図。
【図４】第１実施形態に係るＰＣが予測結果を出力した例。
【図５】第１実施形態に係る機能管理装置の機能構成図。
【図６】第１実施形態に係る機能管理装置の記憶部が記憶している結果予測テーブル。
【図７】第１実施形態に係る機能管理装置の記憶部が記憶している機能分類テーブル。
【図８】第１実施形態の端末保安システムにおける動作フローチャート。
【図９】第１実施形態に係るユーザ端末のメインルーチン。
【図１０】第１実施形態に係る機能管理装置のメインルーチン。
【図１１】第２実施形態に係る端末保安システムの構成図。
【図１２】第２実施形態に係るユーザ端末の機能構成図。
【図１３】第２実施形態に係る機能管理装置が含む端末の機能構成図。
【図１４】第２実施形態に係る端末保安システムの動作フローチャート。
【図１】
0004213749.tif 000002
【図２】
0004213749.tif 000003
【図３】
0004213749.tif 000004
【図４】
0004213749.tif 000005
【図５】
0004213749.tif 000006
【図６】
0004213749.tif 000007
【図７】
0004213749.tif 000008
【図８】
0004213749.tif 000009
【図９】
0004213749.tif 000010
【図１０】
0004213749.tif 000011
【図１１】
0004213749.tif 000012
【図１２】
0004213749.tif 000013
【図１３】
0004213749.tif 000014
【図１４】
0004213749.tif 000015