(57)【要約】      （修正有）【課題】シナリオを用いてコンテキストアウェアサーバの拡張性、処理速度、安定性などの性能を総合的に評価できるシステムおよび方法を提供する。【解決手段】コンテキストアウェアサーバ２００の性能評価システム１００は、複数の評価モジュール１００−１〜ｎを含み、各評価モジュール１００−１〜ｎは、ユーザの行為およびコンテキストの変化を含むシナリオを格納するシナリオ生成部１１０と、シナリオ生成部１１０に格納されたシナリオの進行に応じてイベントを出力するイベント生成部１２０と、イベント生成部１２０からイベントの入力を受けてコンテキストアウェアサーバに伝達するサービス管理部１３０と、サービス管理部１３０からの指令に応じて仮想的にサービスを行い、その結果をシナリオ生成部に通知する仮想サービスエージェント１４０とを含む。【選択図】図１
2009123195.tif 000002
【特許請求の範囲】
【請求項１】
コンテキストアウェアサーバの性能評価システムであって、
複数の評価モジュールを含み、
前記評価モジュールは、
ユーザの行為およびコンテキストの変化を含むシナリオを格納するシナリオ生成部、
前記シナリオ生成部に格納されたシナリオの進行に応じてイベントを出力するイベント生成部、
前記イベント生成部からイベントの入力を受けてコンテキストアウェアサーバに伝達するサービス管理部、
前記サービス管理部からの指令に応じて仮想的にサービスを行い、その結果を前記シナリオ生成部に通知する仮想サービスエージェント
を含むことを特徴とするコンテキストアウェアサーバの性能評価システム。
【請求項２】
前記仮想サービスエージェントは、複数の仮想装置を具現し、前記サービス管理部からの指令に対応する仮想装置の動作の完了を前記シナリオ生成部に通知することを特徴とする請求項１に記載のコンテキストアウェアサーバの性能評価システム。
【請求項３】
前記仮想サービスエージェントは、各仮想装置の動作に応じた動作所要時間を格納していることを特徴とする請求項２に記載のコンテキストアウェアサーバの性能評価システム。
【請求項４】
前記サービス管理部は、前記イベント生成部から入力されるイベントの有効性を検証してコンテキストアウェアサーバに伝達することを特徴とする請求項１に記載のコンテキストアウェアサーバの性能評価システム。
【請求項５】
前記複数の評価モジュールは、前記シナリオ生成部、前記イベント生成部、前記サービス管理部、および前記仮想サービスエージェントのうちの１つ以上を共有することを特徴とする請求項１に記載のコンテキストアウェアサーバの性能評価システム。
【請求項６】
複数の評価モジュールを備えるコンテキストアウェアサーバ性能評価システムによってコンテキストアウェアサーバの性能を評価する方法であって、各評価モジュールは、
（ａ）シナリオ生成部がユーザの行為およびコンテキストの変化を含むシナリオを格納するステップ、
（ｂ）シナリオの進行に応じてイベントを出力するステップ、
（ｃ）サービス管理部がイベントの入力を受けてコンテキストアウェアサーバに伝達するステップ、
（ｄ）仮想サービスエージェントが前記サービス管理部からの指令に応じて仮想的にサービスを行い、その結果を前記シナリオ生成部に通知するステップを含むこと
を特徴とするコンテキストアウェアサーバの性能評価方法。
【請求項７】
前記ステップ（ｄ）において、
前記サービス管理部からの指令に対応する仮想装置の動作の完了を前記シナリオ生成部に通知することを特徴とする請求項６に記載のコンテキストアウェアサーバの性能評価方法。
【請求項８】
前記ステップ（ｄ）は、各仮想装置の動作に対応して格納された動作所要時間に基づいて仮想装置の動作の完了を決定することを特徴とする請求項７に記載のコンテキストアウェアサーバの性能評価方法。
【請求項９】
前記ステップ（ｃ）は、入力されるイベントの有効性を検証してコンテキストアウェアサーバに伝達することを特徴とする請求項６に記載のコンテキストアウェアサーバの性能評価方法。
【請求項１０】
前記複数の評価モジュール数の増加に応じてコンテキストアウェアサーバの性能が低下する程度を測定することにより、コンテキストアウェアサーバの拡張性を評価することを特徴とする請求項６に記載のコンテキストアウェアサーバの性能評価方法。
【請求項１１】
コンテキストアウェアサーバが一定時間遂行するシナリオの個数を測定することにより、コンテキストアウェアサーバの処理速度を評価することを特徴とする請求項６に記載のコンテキストアウェアサーバの性能評価方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテキストアウェアサーバの性能評価システムおよび方法に関し、より詳しくは、シナリオを用いてコンテキストアウェアサーバの拡張性、処理速度、安定性などの性能を総合的に評価できるシステムおよび方法に関するものである。
【０００２】
本発明は、情報通信部および情報通信研究振興院のＩＴ成長動力技術開発事業の一環として行った研究から導き出されたものである［課題管理番号：２００６−Ｓ−０２６−０２、課題名：能動型サービスのためのＵＲＣサーバフレームワークの開発（Ｄｅｖｅｌｏｐｍｅｎｔ  ｏｆ  ｔｈｅ  ＵＲＣ  Ｓｅｒｖｅｒ  Ｆｒａｍｅｗｏｒｋ  ｆｏｒ  Ｐｒｏａｃｔｉｖｅ  Ｒｏｂｏｔｉｃ  Ｓｅｒｖｉｃｅｓ）］。
【背景技術】
【０００３】
最近の情報通信分野においてユビキタスコンピューティング、ユビキタスネットワークなどのユビキタス関連技術について活発な研究が行われている。ユビキタスとはユーザがいつ／どこでも所望する情報を容易に得ることができるということを意味する。今後到来するユビキタス時代ではコンピューティングおよびコミュニケーション能力を有したスマートオブジェクトが動的な環境変化を認識し、それに適応できる特性、すなわちコンテキストアウェア（ｃｏｎｔｅｘｔ−ａｗａｒｅ）特性を有するようになる。
【０００４】
「コンテキスト」とは「現実の世界に存在する実体の状態を特定化して定義した情報」と定義し、ここで実体とはヒト、場所、あるいはヒトとサービス間の相互作用を意味する。また、「コンテキストアウェア」とは周辺環境からユーザの現在位置、行動および作業、温度、時間、感情状態などの変化を獲得し出すことを意味する。コンテキストアウェアサービスとは上記のようなコンテキスト情報（ｃｏｎｔｅｘｔ  ｉｎｆｏｒｍａｔｉｏｎ）に基づいてユーザが置かれた状況に適したサービスを提供することを意味する。このようなコンテキストアウェアサービスは、コンテキスト情報の収集および交換を通じてユーザが置かれた状況を認識し、解釈および推論のような処理過程を経て状況に適したサービスをユーザに提供するものであり、今後のユビキタス時代において主なサービスとして浮び上がることは明らかである。
【０００５】
ユビキタス時代には日常生活で周辺の主な事物および装置がコンピューティングおよびコミュニケーション能力と周辺状況を認識する能力を持つようになり、知能化した事物および装置間のコミュニケーションを通じて状況に合った有用なサービスをユーザに容易に提供できるはずである。
【０００６】
このようなサービスを提供するためのコンテキストアウェアフレームワークを構成する代表的な２つの方法が知られている。第１は、コンテキストに設けられた各種センサやアクチュエータのような端末が互いに協業してユーザが所望するサービスを提供する方法である。端末が自身の状態について認知しユーザが必要とするサービスを提供するためには他のいかなる端末と連係するかを判断するので端末の性能が優れなければならない。よって、端末の価格が上昇して多くの負荷がかかる。
【０００７】
第２は、コンテキストアウェアサーバを設置し、多くの負荷が必要な作業はコンテキストアウェアサーバが担当するものであり、端末には低性能を要求する方法である。コンテキストアウェアサーバは検知したデータを取り集めて管理し、ユーザが必要とするサービスを導き出す役割をする。コンテキストアウェアサーバはコンテキストアウェアアプリケーション（ｃｏｎｔｅｘｔ−ａｗａｒｅ  ａｐｐｌｉｃａｔｉｏｎ：状況応用）にコンテキスト情報を提供し、コンテキストアウェアアプリケーションがアクチュエータを制御できるようにする。このようなコンテキストアウェアサーバに関する研究は活発に行われている最中であり、従来のコンテキストアウェアサーバに関する研究例は次の通りである。
【０００８】
Ｉｌｌｉｎｏｉｓ  Ｉｎｓｔｉｔｕｔｅ  ｏｆ  ＴｅｃｈｎｏｌｏｇｙのＳｃａｒｌｅｔ−Ｃｏｎｔｅｘｔ−ａｗａｒｅ  ｉｎｆｒａｓｔｒｕｃｔｕｒｅはコンテキストアウェアアプリケーションにコンテキスト情報をどのように提供するかについて重点を置き、特に異質なプラットフォーム間にコンテキスト情報を伝送するための研究を行った。また、イリノイ大学のＧａｉａはコンテキストアウェアサービス構造によってコンテキストアウェアアプリケーションが多様なコンテキスト情報を得て推論できるようにする。Ｇａｉａではコンテキストプロバイダー（ｃｏｎｔｅｘｔ  ｐｒｏｖｉｄｅｒ）がセンサやデータソースからコンテキストを収集してコンテキストアウェアアプリケーションに提供し、特にコンテキストシンセサイザー（ｃｏｎｔｅｘｔ  ｓｙｎｔｈｅｓｉｚｅｒ）を有しており、コンテキストプロバイダーが収集したコンテキスト情報を上位概念のコンテキスト情報として推論して抽象化して、コンテキストアウェアアプリケーションに提供することができる。また、シンガポール大学のＳＯＣＡＭはコンテキストアウェアサービスおよびシステムの開発を容易にする。ＳＯＣＡＭではコンテキストインタープリタ（ｃｏｎｔｅｘｔ  ｉｎｔｅｒｐｒｅｔｅｒ）を備えてコンテキストに対する論理的な追録サービスを提供する。
【０００９】
コンテキストアウェアサーバそのものについては上述したものなども含めて多様な研究が行われている。ところが、コンテキストアウェアサーバは数多い端末に対する処理を担当し且つ多様なソースから収集されるコンテキスト情報を取り集めて状況に適したサービスをリアルタイムでユーザに提供するためには数多い演算を同時に行う必要がある。しかし、コンテキストアウェアサーバそのものに関する活発な研究進行とは別にコンテキストアウェアサーバの性能を評価することに関する研究は十分ではない現状である。
【００１０】
特許文献１は、コンテキストアウェアサービスの提供に関する技術について開示している。非特許文献１は、コンテキストアウェア適用のためのフレームワークの設計に関する技術について開示している。
【００１１】
【特許文献１】韓国公開公報第２００６−００７６８３９号明細書
【非特許文献１】Gregory Biegel and Vinny Cahill、「A Framework for Developing Mobile, Context-aware Applications」、PerCOm 2003、IEEE
【発明の開示】
【発明が解決しようとする課題】
【００１２】
本発明は、上記の問題点を解決するためのものであり、シナリオに基づき、仮想サービスエージェントを用いてコンテキストアウェアサーバの拡張性、処理速度、安定性などの性能を総合的に評価できるシステムおよび方法を提供することを目的とする。
【課題を解決するための手段】
【００１３】
前記目的を達成するための本発明に係るコンテキストアウェアサーバの性能評価システムは、複数の評価モジュールを含み、評価モジュールは、ユーザの行為およびコンテキストの変化を含むシナリオを格納するシナリオ生成部と、シナリオ生成部に格納されたシナリオの進行に応じてイベントを出力するイベント生成部と、イベント生成部からイベントの入力を受けてコンテキストアウェアサーバに伝達するサービス管理部と、サービス管理部からの指令に応じて仮想的にサービスを行い、その結果をシナリオ生成部に通知する仮想サービスエージェントとを含む。
【００１４】
好ましくは、仮想サービスエージェントは、複数の仮想装置を具現し、サービス管理部からの指令に対応する仮想装置の動作の完了をシナリオ生成部に通知する。より好ましくは、仮想サービスエージェントは各仮想装置の動作に応じた動作所要時間を格納している。
【００１５】
また、好ましくは、サービス管理部はイベント生成部から入力されるイベントの有効性を検証してコンテキストアウェアサーバに伝達し、複数の評価モジュールは、シナリオ生成部、イベント生成部、サービス管理部、および仮想サービスエージェントのうちの１つ以上を共有する。
【００１６】
また、本発明に係る複数の評価モジュールを備えるコンテキストアウェアサーバ性能評価システムによってコンテキストアウェアサーバの性能を評価する方法において、各評価モジュールは、（ａ）シナリオ生成部がユーザの行為およびコンテキストの変化を含むシナリオを格納するステップ、（ｂ）シナリオの進行に応じてイベントを出力するステップ、（ｃ）サービス管理部がイベントの入力を受けてコンテキストアウェアサーバに伝達するステップ、および（ｄ）仮想サービスエージェントがサービス管理部からの指令に応じて仮想的にサービスを行い、その結果をシナリオ生成部に通知するステップを含む。
【００１７】
好ましくは、ステップ（ｄ）において、サービス管理部からの指令に対応する仮想装置の動作の完了をシナリオ生成部に通知し、ステップ（ｄ）は、各仮想装置の動作に対応して格納された動作所要時間に基づいて仮想装置の動作の完了を決定し、ステップ（ｃ）は、入力されるイベントの有効性を検証してコンテキストアウェアサーバに伝達する。
【００１８】
また、好ましくは、複数の評価モジュール数の増加に応じてコンテキストアウェアサーバの性能が低下する程度を測定することにより、コンテキストアウェアサーバの拡張性を評価し、コンテキストアウェアサーバが一定時間遂行するシナリオの個数を測定することにより、コンテキストアウェアサーバの処理速度を評価する。
【発明の効果】
【００１９】
コンテキストアウェアサーバが収集して処理すべきコンテキストは変わり続け、コンテキストの変化をコンテキストアウェアサーバに直ちに反映するためにはコンテキストアウェアサーバのコンテキスト変化に対する処理速度が速くなければならない。また、コンテキストアウェアサーバは数多い装置との通信を行い、複数のコンテキストアウェアアプリケーションと連携して用いられるために拡張が容易でなければならず、持続的に安定したサービスを提供しなければならない。よって、コンテキストアウェアサーバの拡張性、処理速度、安定性は性能の重要な評価尺度である。
【００２０】
本発明では、安価で簡便に且つ総合的にコンテキストアウェアサーバの拡張性、処理速度、安定性などを客観的なデータで評価することができ、コンテキストアウェアサーバの開発において重要な手段として用いられ得る。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の理解を助けるために添付図面を参照して望ましい実施形態を提供する。下記の実施形態は本発明をより容易に理解するために提供するものであって、本実施形態によって本発明が限定されるものではない。
【００２２】
図１は、本発明に係るコンテキストアウェアサーバの性能評価システムを含む全体構成図である。
【００２３】
コンテキストアウェアサーバ２００は、コンテキストアウェアサーバ管理部２１０を用いてコンテキストアウェアアプリケーション（２２１，２２２，２２３，２２４）とのデータ交換を通じてコンテキストを認識してサービスを提供するようにする。そして、本発明に係るコンテキストアウェアサーバ性能評価システム１００はコンテキストアウェアサーバ２００に接続されてコンテキストアウェアサーバ２００の性能を評価する。
【００２４】
先ず、コンテキストアウェアサーバ２００の構成について説明する。コンテキストアウェアサーバ２００は各種端末、例えばＴＶ２３１、ＲＦＩＤセンサ２３２、マイク２３３、およびスピーカー２３４に接続される。各端末はコンテキストアウェアサーバ２００内のコンテキストアウェアアプリケーション（２２１，２２２，２２３，２２４）に接続され、検知した値を伝達するか指示を受けてサービスを提供する。例えば、ＴＶ２３１の場合には、ＴＶがつけられるとＴＶがつけられたという情報をコンテキストアウェアアプリケーション２２１に伝達し、コンテキストアウェアアプリケーション２２１はこの情報をコンテキストアウェアサーバ管理部２１０に伝達する。一方、コンテキストアウェアサーバ管理部２１０からコンテキストアウェアアプリケーション２２１にＴＶを消してという指示が伝達されれば、コンテキストアウェアアプリケーション２２１はＴＶ２３１にその指示を伝達してＴＶ２２１を消すようになる。コンテキストアウェアサーバ２００はコンテキスト情報を分解および融合して新しいコンテキスト情報を導き出し、コンテキストアウェアアプリケーション（２２１〜２２４）にコンテキスト情報を提供する。コンテキストアウェアアプリケーションはコンテキストアウェアサーバからコンテキスト情報を格納しているイベントを受信し、状況に合ったサービスを提供するようになる。
【００２５】
コンテキストアウェアアプリケーション（２２１〜２２４）は、各端末（２３１〜２３４）に接続され、コンテキストアウェアサーバ管理部２１０と連動してコンテキスト情報を利用する主体である。コンテキストアウェアサーバ管理部２１０からイベントを受け、イベントに応じて与えられたことを行う一種のプログラムであり、環境に設けられたアクチュエータに命令を下すか端末からコンテキスト変化情報の入力を受けてコンテキストアウェアサーバ管理部２１０に格納されたコンテキスト情報を修正するようになる。図１では、コンテキストアウェアアプリケーション（２２１〜２２４）がコンテキストアウェアサーバ２００内に設けられるものとして図示したが、コンテキストアウェアサーバ２００の外部に設けることもでき、各端末の内部に設けることもできる。
【００２６】
図１では４つの端末を例に挙げて説明したが、実際にコンテキストアウェアサーバ２００は各種端末に接続され、接続された端末数は増加しており、さらに複数の場所に設けられた端末からのコンテキスト情報を取り集めてコンテキスト情報を分析し、リアルタイムで端末にコンテキスト情報に適したサービスを提供するための指示を与えなければならないため、数多い演算が同時に必要となる。よって、安定したサービスを提供するためにはコンテキストアウェアサーバ２００の性能を評価することが必須であるが、従来にはこのような性能評価については特別な研究が行われていない。
【００２７】
本発明に係るコンテキストアウェアサーバ性能評価システム１００の構成について説明する。コンテキストアウェアサーバ性能評価システム１００はｎ個の評価モジュール（１００−１，１００−２，１００−ｎ）を有する。例えば、第１評価モジュール１００−１は、シナリオ生成部１１０、イベント生成部１２０、サービス管理部１３０、および仮想サービスエージェント１４０を有する。また、評価モジュール数は特に制限されず、各評価モジュールは相互独立して動作したり互いに連関して動作したりすることができる。評価モジュールの一部構成要素は評価モジュールの間で共有することができる。また、図示してはいないが、制御および演算部がｎ個の評価モジュールを制御し、行われた性能評価の結果を総合して分析して管理し、評価結果を評価者に通知する。
【００２８】
シナリオ生成部１１０は、格納しているシナリオに応じてイベント生成部１２０にシナリオまたはイベントを伝送し、イベント生成部１２０がイベントを生成するようにし、また、仮想サービスエージェント１４０からコンテキスト変化に対するメッセージを受信して次のシナリオを進行する。ここで、シナリオはユーザの行為とコンテキストの変化を含む。シナリオ生成部１１０が格納しているシナリオの作成例について説明する。次のような行為を順次行うユーザがいると仮定する。
１．ユーザが部屋に入ってくる。
２．「ＴＶをつけて」と言い、ＴＶをつける。
３．「ＴＶを消して」と言い、ＴＶを消す。
４．ユーザが部屋から出て行く。
【００２９】
図１に示されたＴＶ２３１、ＲＦＩＤセンサ２３２、マイク２３３、スピーカー２３４が部屋に設けられており、スピーカー２３４に接続されたコンテキストアウェアアプリケーション２２４がコンテキスト変化を音声合成を通じて知らせることができるのであれば、ユーザのシナリオは次のように決定される。
シナリオ１．ユーザが部屋に入ってくる。
シナリオ２．「ＯＯＯ様こんにちは」という音声がスピーカーを通して発される。
シナリオ３．「ＴＶをつけて」と言い、ＴＶをつける。
シナリオ４．「ＴＶをつけました」という音声がスピーカーを通して発される。
シナリオ５．「ＴＶを消して」と言い、ＴＶを消す。
シナリオ６．「ＴＶを消しました」という音声がスピーカーを通して発される。
シナリオ７．ユーザが部屋から出て行く。
【００３０】
このようなシナリオはコンテキストアウェアサーバ２００の実際の動作時に行う一連の過程を示したものである。このように決定されたシナリオはシナリオ生成部１１０に格納され、決定されたシナリオに応じてイベント生成部１２０から仮想コンテキストを示すイベントを生成するようになる。勿論、イベントはシナリオ生成部１１０においてシナリオに応じて予め作成され、イベント生成部１２０に伝達され得る。一方、シナリオ生成部１１０はシナリオの代わりにイベントだけを格納することもでき、イベント生成部１２０がシナリオ生成部１１０の一部にもなり得る。
【００３１】
ユーザはイベントを作り出してコンテキストを変化させ、コンテキスト変化を認知すれば次の作業を行う。上記で説明したシナリオ例に応じてシナリオ生成部１１０が順次行う作業は次の通りである。
作業１．ＵｓｅｒＥｎｔｅｒｅｄ（ＵＳＥＲ＿ＩＤ）イベント発生
作業２．音声の発声の完了を待つ
作業３．ＳｐｅｅｃｈＲｅｃｅｉｖｅｄ（「ＴＶをつけて」）イベント発生
作業４．ＴＶがつけられるまで待つ
作業５．ＳｐｅｅｃｈＲｅｃｅｉｖｅｄ（「ＴＶを消して」）イベント発生
作業６．ＴＶが消されるまで待つ
作業７．ＵｓｅｒＬｅｆｔ（ＵＳＥＲ＿ＩＤ）イベント発生
【００３２】
上記作業のうちの４つのイベント関連作業（作業１，３，５，７）はシナリオ生成部１０がイベント生成部１２０を通して発生させるイベントである。イベント生成部１２０は仮想コンテキストイベントを発生させるものであり、シナリオ生成部から受信したシナリオまたはイベントに応じてサービス管理部１３０にイベントを伝達する。イベントに応じてコンテキスト変化をサービス管理部１３０を介してコンテキストアウェアサーバ２００に伝達することができ、コンテキストアウェアサーバ２００は伝えられたイベントに応じたコンテキスト変化をサービス管理部１３０に伝達する。イベントは、例えば、ユーザのコンテキスト（位置、氏名、音声、体温、血圧、脈拍など）、空間コンテキスト、時間コンテキスト、環境コンテキストなどを含む。
【００３３】
サービス管理部１３０はイベント生成部１２０から伝えられたイベントをコンテキストアウェアサーバ２００に伝達するが、この時、サービス管理部１３０はイベントの有効性を検証する。例えば、ユーザの位置を認識するためにＲＦＩＤセンサを設けた場合、ユーザがＲＦＩＤセンサの近くにいるのであれば、ＲＦＩＤセンサはユーザが認識されたというメッセージを送り続ける。サービス管理部１３０はこのようなイベントの有効性を検証することによって、重複して不必要な情報をフィルタリングする。シナリオ生成部１１０がイベント生成部を用いてイベントを生成し、サービス管理部１３０は生成されたイベントの有効性を検証してイベントを加工し、コンテキストアウェアサーバ２００に伝達する。
【００３４】
また、上記の作業のうちの３つの待つことに関する作業（作業２，４，６）は、シナリオ生成部１１０が仮想サービスエージェント１４０から該当手続きが完了したという旨の信号を待つ手続きである。例えば、コンテキストアウェアサーバ２００が実際に動作する場合、ユーザが部屋に入ってくるとＲＦＩＤセンサ２３２がそれを検知し、コンテキストアウェアアプリケーション２２２を介してコンテキストアウェアサーバ管理部２１０にユーザが部屋に入ってきたというコンテキスト変化を知らせる。その後、コンテキストアウェアサーバ管理部２１０はコンテキストアウェアアプリケーション２２３を介してマイク２３３が「こんにちは」という音声を発するように指示する。そして、コンテキストアウェアサーバ管理部２１０は音声の発声が完了したという旨の信号がコンテキストアウェアアプリケーション２２３から伝えられることを待つ。本発明では、仮想サービスエージェント１４０を用いることによってこのような実際の動作過程を具現するようになる。
【００３５】
仮想サービスエージェント１４０は、仮想ＴＶ１４１、仮想ＲＦＩＤセンサ１４２、仮想マイク１４３、仮想スピーカー１４４の仮想装置を具現し、サービス管理部１３０から信号が与えられれば、該当する仮想装置を動作することにシミュレーションして動作の完了をシナリオ生成部１４０に通知する。コンテキストアウェアサーバの正確な性能評価を行うためには仮想端末との信号送受信過程や所要時間などを考慮しなければならないが、本発明は、仮想サービスエージェント１４０を具現することによってコンテキストアウェアサーバ２００に直接端末を接続することなく、簡便で且つ安価で充実した性能評価を行うことができる。仮想サービスエージェント１４０に関しては図２を参照して説明する。
【００３６】
図２は、仮想サービスエージェントを説明する概念図である。図２の矢印の左側は実際装置の構成を示す。例えば、ＴＶサービスエージェント３３１はＴＶに接続されてＴＶとの信号送受信を担当するが、ここで第１ＴＶ２３１−１、第２ＴＶ２３１−２の２つのＴＶが接続される場合、ＴＶサービスエージェントとの間には各々第１ＴＶドライバー２３１１、第２ＴＶドライバー２３１２が設けられる。実際装置は物理的装置である端末（２３１−１，２３１−２）とこの端末を運営するドライバー（２３１１，２３１２）を含む。コンテキストアウェアサーバにおいては多様な製造会社で製造された複数の端末を用いるので、このような多様な端末を共通した方法で用いるために、各端末（第１ＴＶ，第２ＴＶ）とドライバー（２３１１，２３１２）を介して接続するＴＶサービスエージェント３３１を有する。
【００３７】
しかし、コンテキストアウェアサーバの性能を評価するために実際端末を設けることは多くの資源と空間が必要とされるため、本発明では実際端末である物理的装置とドライバーの代わりに、図２の右側のような仮想サービスエージェント１４０を具現して実際装置が動作するのと同様に性能評価を行うことができる。仮想サービスエージェント１４０は、仮想ＴＶサービスエージェント１４１、仮想ＲＦＩＤセンササービスエージェント１４２、仮想マイクサービスエージェント１４３、仮想スピーカーサービスエージェント１４４などのコンテキストアウェアサーバに接続可能な多様な種類の装置に関する仮想サービスエージェントを含む。仮想サービスエージェント１４２は、具現された各仮想装置の動作に応じた動作所要時間を格納しつつ、サービス管理部１３０からの指令に対応する仮想装置の動作の完了を動作所要時間が経過した後にシナリオ生成部１１０に通知する。図１および図２を参照して説明したコンテキストアウェアサーバ性能評価システムが、先で例示的に説明したシナリオおよび作業順序に応じて行う手続きについて図３を参照して説明する。
【００３８】
図３は、コンテキストアウェアサーバの性能を評価する一例を説明するフローチャートである。矢印は信号流れを示し、下方にいくほど後順位の手続きを示す。シナリオ生成部１１０、イベント生成部１２０、仮想サービスエージェント１４０、サービス管理部１３０はコンテキストアウェアサーバ性能評価システム１００に設けられた評価モジュールに含まれる。また、コンテキストアウェアサーバ管理部２１０およびコンテキストアウェアアプリケーション２２０はコンテキストアウェアサーバ２００に設けられる。
【００３９】
先ず、シナリオ生成部１１０は「ユーザが部屋に入ってくる」というシナリオ１をイベント生成部１２０に伝達する。イベント生成部１２０はＵｓｅｒＥｎｔｅｒｅｄイベントを生成（作業１）してサービス管理部１３０に伝達し、サービス管理部１３０はイベントの有効性を検証した後にコンテキストアウェアサーバ管理部２１０に伝達する。コンテキストアウェアサーバ管理部２１０はＵｓｅｒＥｎｔｅｒｅｄイベントを解釈してユーザの位置が変化したことをコンテキストアウェア格納所に格納し、該当するコンテキストアウェアアプリケーション２２０にＵｓｅｒＥｎｔｅｒｅｄイベントを伝達する。ここで、該当するコンテキストアウェアアプリケーションは図１にてスピーカー２３４に接続されたコンテキストアウェアアプリケーション２２４である。
【００４０】
コンテキストアウェアアプリケーション２２０は、実際にはＵｓｅｒＥｎｔｅｒｅｄイベントに応じて「こんにちは」という音声をスピーカーが発するように要請しなければならないが、性能評価のために実際装置を動作させることなく、仮想サービスエージェント１４０に音声の発声を要請するようになる。つまり、コンテキストアウェアアプリケーション２２０は、コンテキストアウェアサーバ管理部２１０およびサービス管理部１３０を介して仮想サービスエージェント１４０に「こんにちは」という音声の発声を要請する。仮想サービスエージェント１４０は、音声発声の要請に応じて音声発声に必要な一定時間が経過した後、シナリオ生成部１１０に音声の発声が完了したことを知らせればシナリオ２および作業２が完了する。
【００４１】
次に、シナリオ生成部１１０は「ユーザが“ＴＶをつけて”と言う」というシナリオ３をイベント生成部１２０に伝達する。イベント生成部１２０はＳｐｅｅｃｈＲｅｃｅｉｖｅｄイベントを生成（作業３）してサービス管理部１３０に伝達し、サービス管理部１３０はイベントの有効性を検証した後にコンテキストアウェアサーバ管理部２１０に伝達する。コンテキストアウェアサーバ管理部２１０はＳｐｅｅｃｈＲｅｃｅｉｖｅｄイベントをコンテキストアウェアアプリケーション２２０に伝達する。コンテキストアウェアアプリケーション２２０は、コンテキストアウェアサーバ管理部２１０およびサービス管理部１３０を介して仮想サービスエージェント１４０に「ＴＶＯＮ」を要請する。仮想サービスエージェント１４０は、ＴＶＯＮ要請に応じてＴＶＯＮおよび「ＴＶをつけました」という音声の発声に必要な一定時間が経過した後、シナリオ生成部１１０にＴＶがつけられたことを知らせればシナリオ４および作業４が完了する。次のシナリオ５〜７および作業５〜７についても同じように手続きが順次行われる。
【００４２】
上記の例は１つの評価モジュール１００が１つのシナリオに応じて性能評価を行う手続きを説明したものである。本発明に係る性能評価システムは、図１に示すようにｎ個の評価モジュールを備え、それぞれのシナリオに応じてコンテキストアウェアサーバとの信号送受信を通して性能評価を行う。また、複数のコンテキストアウェアサーバ性能評価システム１００を１つのコンテキストアウェアサーバ２００に接続して性能評価を行うことができる。
【００４３】
本発明は、コンテキストアウェアサーバ性能評価システム１００に備えられたｎ個の評価モジュールを用いてコンテキストアウェアサーバ２００の拡張性、処理速度、安定性を評価する。評価モジュールの個数を増加させながら、加重される負荷に応じてコンテキストアウェアサーバ２００の性能が低下する程度を測定し、コンテキストアウェアサーバが評価モジュールを何個まで安定的に遂行することができるかを把握することによって拡張性を評価する。また、コンテキストアウェアサーバが一定時間何個までのシナリオを遂行することができるかを測定して処理速度（処理量）を評価する。さらに、無限反復されるか長時間が要求される複雑なシナリオの遂行状況を測定して安定性を評価する。
【００４４】
本発明に係るコンテキストアウェアサーバ性能評価システム１００は評価モジュール単位に区分されており、評価モジュールの個数を増加させたり減少させたりすることが容易であり、シナリオを交替および変更しやすい。また、同一の評価モジュールを用いて複数のコンテキストアウェアサーバを比較評価することができ、コンテキストアウェアサーバが備えるべき最小性能に対する客観的資料を導き出すことができる。
【産業上の利用可能性】
【００４５】
本発明に係るコンテキストアウェアサーバの性能評価システムおよび方法は、実際装置を接続することなくシナリオに基づいてコンテキストアウェアサーバに対する多様な形態の性能評価を行うことができ、安くて簡便に且つ総合的にコンテキストアウェアサーバの性能を評価することによってコンテキストアウェアサーバの研究に大きく役に立つことができる。
【図面の簡単な説明】
【００４６】
【図１】本発明に係るコンテキストアウェアサーバの性能評価システムを含む全体構成図である。
【図２】仮想サービスエージェントを説明する概念図である。
【図３】コンテキストアウェアサーバの性能を評価する一例を説明するフローチャートである。
【符号の説明】
【００４７】
１００：コンテキストアウェアサーバ性能評価システム
１１０：シナリオ生成部
１２０：イベント生成部
１３０：サービス管理部
１４０：仮想サービスエージェント
２００：コンテキストアウェアサーバ
２１０：コンテキストアウェアサーバ管理部
２２１〜２２４：コンテキストアウェアアプリケーション
１４１、２３１：ＴＶ
１４２、２３２：ＲＦＩＤセンサ
１４３、２３３：マイク
１４４、２３４：スピーカー
【図１】
2009123195.tif 000003
【図２】
2009123195.tif 000004
【図３】
2009123195.tif 000005