(57)【要約】【課題】  簡単にシナリオのエラーを検出することができ、シナリオの編集に要する作業負担を軽減する。【解決手段】  シナリオエラー検出処理装置５は、データベース１１とエラーチェック手段１２を具備する。データベース１１は、所定の通信規格に基づいた複数のメッセージと符号との対応を参照可能とした第１の参照テーブル１１ａと、メッセージ各々に対して次に実行可能なメッセージに対応する符号との対応を示したメッセージのシーケンスを参照可能とした第２の参照テーブル１１ｂとを含む。エラーチェック手段１２は、入力されたシナリオに記述された複数のメッセージをデータベース１１に含まれる第１の参照テーブル１１ａに基づきそれぞれ符号化し、この符号化されたメッセージをシナリオに記述されたシーケンスに従って第２の参照テーブル１１ｂを参照して実行可能か判定を行い、その判定結果を出力する。【選択図】    図１
2006277300.tif 000002
【特許請求の範囲】
【請求項１】
通信端末（２）と所定の通信規格で規定された通信プロトコルで通信を行うために擬似基地局装置（３）が実行する該通信プロトコルに基づいたプロトコルメッセージのシーケンスを記述したシナリオのエラーを検出するシナリオエラー検出処理装置（５）であって、
前記所定の通信規格に基づいた複数の前記プロトコルメッセージと当該複数のプロトコルメッセージのＩＤとなる符号との個々の対応を参照可能とした第１の参照テーブル（１１ａ）と、前記プロトコルメッセージ各々に対して次に実行可能な前記プロトコルメッセージに対応する前記符号との対応を示した前記プロトコルメッセージのシーケンスを参照可能とした第２の参照テーブル（１１ｂ）とを含むデータベース（１１）と、
入力された前記シナリオに記述された複数の前記プロトコルメッセージを前記データベースに含まれる前記第１の参照テーブルに基づきそれぞれ符号化し、該符号化された前記プロトコルメッセージを前記シナリオに記述されたシーケンスに従い前記第２の参照テーブルに基づき実行可能か判定を行い、その判定結果を出力するエラーチェック手段（１２）とを具備することを特徴とするシナリオエラー検出処理装置。
【請求項２】
前記エラーチェック手段（１２）は、前記シナリオに記述されたシーケンスに従い前記第２の参照テーブル（１１ｂ）に基づき実行可能か判定した結果が実行不可としてエラーとなったとき、エラー対象となったプロトコルメッセージの修正候補を前記第１の参照テーブルと前記第２の参照テーブルとから抽出して出力するシーケンスエラー検出部（１２ｂ）を有することを特徴とする請求項１記載のシナリオエラー検出処理装置。
【請求項３】
前記請求項１記載のシナリオエラー検出処理装置（５）の構成に加えて、前記エラーチェック手段（１２）からの前記判定結果を受けて識別可能に表示する出力手段（１３）を具備することを特徴とする請求項１記載のシナリオエラー検出処理装置。
【請求項４】
前記請求項２記載のシナリオエラー検出処理装置（５）の構成に加えて、前記シーケンスエラー検出部（１２ｂ）からの前記エラー対象となったプロトコルメッセージの修正候補を受けて表示する出力手段（１３）を具備することを特徴とする請求項２記載のシナリオエラー検出処理装置。
【請求項５】
前記データベース（１１）は、前記第１の参照テーブル（１１ａ）と前記第２の参照テーブル（１１ｂ）とに新たなプロトコルメッセージおよび前記プロトコルメッセージに対する次に実行可能な前記プロトコルメッセージとの新たな対応を学習させるための学習対象シナリオの入力が可能なデータベース学習手段（１１ｃ）を有し、
前記データベース学習手段は、入力された学習対象シナリオに記述された前記プロトコルメッセージおよび前記プロトコルメッセージのシーケンスから、前記第１の参照テーブルに定義されていないプロトコルメッセージおよび前記第２の参照テーブルに定義されていない各々の前記プロトコルメッセージに対する次に実行可能な前記プロトコルメッセージとの対応を抽出し、それぞれのテーブルに追加することを特徴とする請求項１乃至請求項４のいずれかに記載のシナリオエラー検出処理装置。
【請求項６】
前記請求項１のシナリオエラー検出処理装置（５）の構成に加えて、
前記通信端末（２）と前記擬似基地局装置（３）との間の所定の通信規格で規定された通信プロトコルによる通信におけるプロトコルメッセージのシーケンスを記憶したログ情報からシナリオを生成して前記シナリオエラー検出処理装置に出力するシナリオ生成手段（６ａ）を有することを特徴とするシナリオ生成装置。
【請求項７】
通信端末（２）と所定の通信規格で規定された通信プロトコルで通信を行うために擬似基地局装置（３）が実行する該通信プロトコルに基づいたプロトコルメッセージのシーケンスを記述したシナリオのエラーを検出するものであって、前記所定の通信規格に基づいた複数の前記プロトコルメッセージと当該複数のプロトコルメッセージのＩＤとなる符号との個々の対応を参照可能とした第１の参照テーブル（１１ａ）と、前記プロトコルメッセージ各々に対して次に実行可能な前記プロトコルメッセージに対応する前記符号との対応を示した前記プロトコルメッセージのシーケンスを参照可能とした第２の参照テーブル（１１ｂ）とを含むデータベース（１１）を備えたシナリオエラー検出処理装置を用いたシナリオエラー検出処理方法であって、
入力された前記シナリオに記述された複数の前記プロトコルメッセージを前記データベースに含まれる前記第１の参照テーブルに基づきそれぞれ符号化するステップと、
該符号化された前記プロトコルメッセージを前記シナリオに記述されたシーケンスに従い前記第２の参照テーブルに基づき実行可能か判定を行い、その判定結果を出力するステップとを含むことを特徴とするシナリオエラー検出処理方法。
【請求項８】
前記シナリオに記述されたシーケンスに従い前記第２の参照テーブル（１１ｂ）に基づき実行可能か判定した結果が実行不可としてエラーとなったとき、エラー対象となったプロトコルメッセージの修正候補を前記第１の参照テーブルと前記第２の参照テーブルとから抽出して出力するステップを含むことを特徴とする請求項７記載のシナリオエラー検出処理方法。
【請求項９】
前記第１の参照テーブル（１１ａ）と前記第２の参照テーブル（１１ｂ）とに新たなプロトコルメッセージおよび前記プロトコルメッセージに対する次に実行可能な前記プロトコルメッセージとの新たな対応を学習させるために入力される学習対象シナリオに記述されたプロトコルメッセージおよび前記プロトコルメッセージのシーケンスから、前記第１の参照テーブル（１１ａ）に定義されていないプロトコルメッセージおよび前記第２の参照テーブル（１１ｂ）に定義されていない各々の前記プロトコルメッセージに対する次に実行可能な前記プロトコルメッセージとの対応を抽出し、それぞれのテーブルに追加するステップを含むことを特徴とする請求項７又は請求項８記載のシナリオエラー検出処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば携帯電話、モバイル端末等の通信端末が設計された通りに機能するか否かを検査するために、基地局を模擬した擬似基地局において通信シーケンスをシミュレーションするための動作を記述したシナリオ中のエラーを検出するシナリオエラー検出処理装置及び方法並びにシナリオ生成装置に関するものである。
【背景技術】
【０００２】
近年、試験現場に通信端末を持ち込み、所定の通信プロトコル（例えば、Ｗ−ＣＤＭＡ等）による通信において、基地局と通信端末との間で遣り取りされるネットワーク層（レイヤ３）の通信シーケンスを主に記録したログ情報を通信端末から取得する、所謂、フィールドテストを実施した後、このログ情報に基づいて基地局を模擬した擬似基地局を制御するシナリオを作成し、通信端末を擬似基地局に接続して通信端末を作成されたシナリオで操作することにより、通信端末の動作状態を検査するようにしている。
【０００３】
そして、上述した検査方式にあっては、シナリオの作成には、規格内容や擬似基地局の動作についての知識が必要である。例えば、３ＧＰＰ（The 3rd Generation Partnership Project：第３世代移動通信システム標準化プロジェクト）で策定される規格等は量が多く、しかも現状では周期的に更新される内容もある。このため、シナリオを作成することができる作業者は充分な知識のある者に限られている。その上、レイヤ２／レイヤ１の設定に必要なパラメータも多いので、シナリオの作成がより一層複雑になってしまい、知識を持つ者が作成しても、シナリオを作成するのに多大な時間を要してしまう。このため、擬似基地局をシミュレーションするためのシナリオを作成する時間を短縮することが要求される。
【０００４】
ところで、シナリオを自動的に作成するものとして、下記特許文献１には、表示装置上に通信端末のキー配列と同様なキー配列を表示し、表示されたキーをマウス等で指定して、ユーザが実際に行う正常操作と共に、誤操作をも想定した試験手順書を自動的に作成した後、シミュレータが解読可能な記述言語に自動変換して試験システム用のシナリオを作成し、このシナリオに基づいて通信端末の動作状態を検査するようにした試験手順書自動作成システムが開示されている。
【特許文献１】特開平９−９１１６９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、通信端末の動作状態を検査するにあたって、手動、自動の何れで作成されたシナリオにおいても、この作成されたシナリオは目視してチェックするか、通信端末と擬似基地局との間で実際に動作検証するまでは、そのシナリオの有用性について知ることができなかった。
【０００６】
そして、作成されたシナリオを動作実績のある資産とするまでには、作成されたシナリオをチェックしたり動作検証を実施し、不正な部分があった場合に、直接シナリオを編集して再びチェックや動作検証するという作業を繰り返す必要があった。しかも、作成されたシナリオが長くなると、そのシナリオをミスなくチェックすることが困難であった。加えて、シナリオの編集は通信規格に関する知識のある者でなければ実施できないという問題があった。
【０００７】
そこで、本発明は上記問題点に鑑みてなされたものであって、通信規格に関して十分な知識を持たない者でも簡単にシナリオのエラーを検出することができるシナリオエラー検出処理装置及び方法を提供することを目的とし、またこのようなエラー検出対象となるシナリオを自動生成することができるシナリオ生成装置を提供することを目的としている。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明の請求項１に記載されたシナリオエラー検出処理装置は、通信端末２と所定の通信規格で規定された通信プロトコルで通信を行うために擬似基地局装置３が実行する該通信プロトコルに基づいたプロトコルメッセージのシーケンスを記述したシナリオのエラーを検出するシナリオエラー検出処理装置５であって、
前記所定の通信規格に基づいた複数の前記プロトコルメッセージと当該複数のプロトコルメッセージのＩＤとなる符号との個々の対応を参照可能とした第１の参照テーブル１１ａと、前記プロトコルメッセージ各々に対して次に実行可能な前記プロトコルメッセージに対応する前記符号との対応を示した前記プロトコルメッセージのシーケンスを参照可能とした第２の参照テーブル１１ｂとを含むデータベース１１と、
入力された前記シナリオに記述された複数の前記プロトコルメッセージを前記データベースに含まれる前記第１の参照テーブルに基づきそれぞれ符号化し、該符号化された前記プロトコルメッセージを前記シナリオに記述されたシーケンスに従い前記第２の参照テーブルに基づき実行可能か判定を行い、その判定結果を出力するエラーチェック手段１２とを具備することを特徴とする。
【０００９】
請求項２に記載されたシナリオエラー検出処理装置は、請求項１記載のシナリオエラー検出処理装置において、
前記エラーチェック手段１２は、前記シナリオに記述されたシーケンスに従い前記第２の参照テーブル１１ｂに基づき実行可能か判定した結果が実行不可としてエラーとなったとき、エラー対象となったプロトコルメッセージの修正候補を前記第１の参照テーブルと前記第２の参照テーブルとから抽出して出力するシーケンスエラー検出部１２ｂを有することを特徴とする。
【００１０】
請求項３に記載されたシナリオエラー検出処理装置は、前記請求項１記載のシナリオエラー検出装置装置５の構成に加えて、前記エラーチェック手段１２からの前記判定結果を受けて識別可能に表示する出力手段１３を具備することを特徴とする。
【００１１】
請求項４に記載されたシナリオエラー検出処理装置は、前記請求項２記載のシナリオエラー検出装置装置５の構成に加えて、前記シーケンスエラー検出部１２ｂからの前記エラー対象となったプロトコルメッセージの修正候補を受けて表示する出力手段１３を具備することを特徴とする。
【００１２】
請求項５に記載されたシナリオエラー検出処理装置は、請求項１乃至請求項４のいずれかに記載のシナリオエラー検出処理装置において、
前記データベース１１は、前記第１の参照テーブル１１ａと前記第２の参照テーブル１１ｂとに新たなプロトコルメッセージおよび前記プロトコルメッセージに対する次に実行可能な前記プロトコルメッセージとの新たな対応を学習させるための学習対象シナリオの入力が可能なデータベース学習手段１１ｃを有し、
前記データベース学習手段は、入力された学習対象シナリオに記述された前記プロトコルメッセージおよび前記プロトコルメッセージのシーケンスから、前記第１の参照テーブルに定義されていないプロトコルメッセージおよび前記第２の参照テーブルに定義されていない各々の前記プロトコルメッセージに対する次に実行可能な前記プロトコルメッセージとの対応を抽出し、それぞれのテーブルに追加することを特徴とする。
【００１３】
請求項６に記載されたシナリオ生成装置は、前記請求項１のシナリオエラー検出処理装置５の構成に加えて、
前記通信端末２と前記擬似基地局装置３との間の所定の通信規格で規定された通信プロトコルによる通信におけるプロトコルメッセージのシーケンスを記憶したログ情報からシナリオを生成して前記シナリオエラー検出処理装置に出力するシナリオ生成手段６ａを有することを特徴とする。
【００１４】
請求項７に記載されたシナリオエラー検出処理方法は、通信端末２と所定の通信規格で規定された通信プロトコルで通信を行うために擬似基地局装置３が実行する該通信プロトコルに基づいたプロトコルメッセージのシーケンスを記述したシナリオのエラーを検出するものであって、前記所定の通信規格に基づいた複数の前記プロトコルメッセージと当該複数のプロトコルメッセージのＩＤとなる符号との個々の対応を参照可能とした第１の参照テーブル１１ａと、前記プロトコルメッセージ各々に対して次に実行可能な前記プロトコルメッセージに対応する前記符号との対応を示した前記プロトコルメッセージのシーケンスを参照可能とした第２の参照テーブル１１ｂとを含むデータベース１１を備えたシナリオエラー検出処理装置を用いたシナリオエラー検出処理方法であって、
入力された前記シナリオに記述された複数の前記プロトコルメッセージを前記データベースに含まれる前記第１の参照テーブルに基づきそれぞれ符号化するステップと、
該符号化された前記プロトコルメッセージを前記シナリオに記述されたシーケンスに従い前記第２の参照テーブルに基づき実行可能か判定を行い、その判定結果を出力するステップとを含むことを特徴とする。
【００１５】
請求項８に記載されたシナリオエラー検出処理方法は、請求項７記載のシナリオエラー検出処理方法において、
前記シナリオに記述されたシーケンスに従い前記第２の参照テーブル１１ｂに基づき実行可能か判定した結果が実行不可としてエラーとなったとき、エラー対象となったプロトコルメッセージの修正候補を前記第１の参照テーブルと前記第２の参照テーブルとから抽出して出力するステップを含むことを特徴とする。
【００１６】
請求項９に記載されたシナリオ生成方法は、請求項７又は請求項８記載のシナリオエラー検出処理方法において、
前記第１の参照テーブル１１ａと前記第２の参照テーブル１１ｂとに新たなプロトコルメッセージおよび前記プロトコルメッセージに対する次に実行可能な前記プロトコルメッセージとの新たな対応を学習させるために入力される学習対象シナリオに記述されたプロトコルメッセージおよび前記プロトコルメッセージのシーケンスから、前記第１の参照テーブル１１ａに定義されていないプロトコルメッセージおよび前記第２の参照テーブル１１ｂに定義されていない各々の前記プロトコルメッセージに対する次に実行可能な前記プロトコルメッセージとの対応を抽出し、それぞれのテーブルに追加するステップを含むことを特徴とする。
【発明の効果】
【００１７】
本発明によれば、シナリオを入力するだけで即座にシナリオのエラーの有無を検出するので、長いシナリオであっても簡単にシナリオのエラー検出を行うことができる。しかも、シナリオのエラーが検出された場合には、エラーのあった箇所を識別表示するとともに、エラーの修正候補が表示されるので、生成したシナリオを直接編集する作業を行う場合でも、上記表示内容を参照しながら簡単に実施することができる。
【００１８】
結果として、これまで通信規格の知識のある者が行っていた作業の一部を通信規格の十分な知識を持たない者でも簡単に行うことができる。
【００１９】
また、正常と確認されているプロトコルメッセージ（以下、メッセージともいう）によるシーケンスと、第１、第２の参照テーブルとの差分を学習機能によって追加登録することができる。そして、通常、各キャリアは通信規格に則った通信プロトコルを提供するが、その解釈、実施方法、新機能の実施等により一部例外や機能追加等があり得る。そのような場合でも、対応するプロトコルメッセージに関するデータテーブルを予め学習機能によって登録しておくことにより対応することができる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明の実施の形態を図面を参照しながら具体的に説明する。図１は本発明に係るシナリオエラー検出処理装置及びシナリオ生成装置を含む通信端末試験システムのブロック構成図、図２はデータベースにおける第１の参照テーブルの一例を示す図、図３はデータベースにおける第２の参照テーブルの一例を示す図、図４はシナリオエラー検出処理に関する動作フローチャート、図５は正常なプロトコルメッセージのシーケンスを記述したシナリオの一例を示す図、図６は図５のシナリオに記述されたプロトコルメッセージを第１の参照テーブルに基づいて符号化した場合の各プロトコルメッセージと符号との対応を示す図、図７は正常時のシナリオ検出処理の一例を示す説明図、図８はエラーを含むプロトコルメッセージのシーケンスを記述したシナリオの一例を示す図、図９は図８のシナリオに記述されたプロトコルメッセージを第１の参照テーブルに基づいて符号化した場合の各プロトコルメッセージと符号との対応を示す図、図１０は異常時のシナリオ検出処理の一例を示す説明図、図１１（ａ），（ｂ）は正常時及び異常時の表示例を示す図、図１２はデータベースの学習機能の動作フローチャート、図１３は正常確認されたプロトコルメッセージのシーケンスを記述したシナリオの一例を示す図、図１４は図１３のシナリオに記述されたプロトコルメッセージを第１の参照テーブルに基づいて符号化した場合の各プロトコルメッセージと符号との対応を示す図、図１５はデータベースを更新する場合の説明図、図１６はデータベースを更新しない場合の説明図である。
【００２１】
本発明に係るシナリオエラー検出処理装置及びシナリオ生成装置は、図１に示すような通信端末試験システムに採用される。図１に示す通信端末試験システム１は、通信端末２、擬似基地局装置３、ログ情報取得装置４、シナリオエラー検出処理装置５、シナリオ生成装置６を備えて概略構成される。
【００２２】
通信端末２は、試験対象として、例えば携帯電話、モバイル端末等の携帯通信端末で構成される。
【００２３】
擬似基地局装置３は、シナリオ生成装置６によって生成されたシナリオに基づいて通信端末２との間で通信を行うことにより、例えばフィールドテスト（通信端末２と実網との間で通信を行う試験）において、少なくともネットワーク層（レイヤ３）の通信シーケンスを記録したログ情報を通信端末２から取得し、それに基づいたシナリオによりフィールドテストで発生した通信シーケンスを再現して通信端末２の動作状態を検査している。
【００２４】
ログ情報取得装置４は、通信端末２と擬似基地局装置３との間で送受信される所定の通信規格で規定された通信プロトコルのプロトコルメッセージ（レイヤ３メッセージ等）のログ情報を取得し、この取得したログ情報をシナリオ生成装置６に出力している。
【００２５】
シナリオ生成装置６は、ログ情報取得装置４が取得したログ情報に基づいて所定のシナリオを自動生成するシナリオ生成手段６ａを有している。さらに説明すると、このシナリオ生成手段６ａは、ログ情報取得装置４が取得したログ情報を入力とし、この入力されたログ情報に記述された通信シーケンスに含まれるプロトコルメッセージを解析し、この解析結果に基づいてシナリオを自動生成し、この自動生成されたシナリオをシナリオエラー検出処理装置５に出力している。
【００２６】
また、シナリオ生成装置６は、シナリオエラー検出処理装置５によるシナリオエラー検出処理をエラー検出が不要な部分まで行わないように指定箇所のプロトコルメッセージまでスキップ可能とするため、上記指定箇所のプロトコルメッセージに識別可能なインデックスとしてのタグ情報が付加できるようになっている。
【００２７】
図１において、シナリオエラー検出処理装置５は、シナリオ生成装置６に包含されているが、基本的にはシナリオ生成装置６とは別に独立した単体の装置として構成することができる。
【００２８】
（実施例１）
このシナリオエラー検出処理装置５は、通信端末２と所定の通信規格で規定された通信プロトコルで通信を行うために擬似基地局装置３が実行する通信プロトコルに基づいたプロトコルメッセージのシーケンスを記述したシナリオのエラーを検出している。
【００２９】
また、シナリオエラー検出処理装置５は、シナリオ生成装置６から入力されるシナリオに指定箇所のプロトコルメッセージに識別可能なタグ情報が付加されている場合、そのタグ情報を認識し、そのタグ情報が付加された指定箇所のプロトコルメッセージまでスキップして後述するシナリオエラー検出処理を行うことができる。
【００３０】
このシナリオエラー検出処理装置５は、図１に示すように、データベース１１、エラーチェック手段１２、出力手段１３を備えて概略構成される。データベース１１は、シナリオ生成手段６ａからのシナリオとの比較対象として、シーケンスの正常パターンがデータ化され記憶されている。そして、データベース１１は、所定の通信規格に基づいた各プロトコルメッセージを符号化（以下、数値化ともいう）したテーブル、各プロトコルメッセージ毎に次に取り得るプロトコルメッセージの符号との対応関係を示すテーブルなどの各種データを格納している。なお、データベース１１は、例えば所定の通信規格（例えば３ＧＰＰで規格化されたＷ−ＣＤＭＡ）の規格で要求されているシーケンスをデータベースの初期値として開発者が予め登録しておくものである。
【００３１】
図１に示すように、データベース１１は、第１の参照テーブル１１ａ、第２の参照テーブル１１ｂ、データベース学習手段１１ｃを備えている。
【００３２】
第１の参照テーブル１１ａには、所定の通信規格に基づいた複数のプロトコルメッセージと当該複数のプロトコルメッセージのＩＤとなる符号との個々の対応関係を示すテーブルが参照可能に格納されている。
【００３３】
具体的に、図２の例では、１行目のプロトコルメッセージ「ＭＡＳＴＥＲ  ＩＮＦＯＲＭＡＴＩＯＮ  ＢＬＯＣＫ」の符号が「１」、２行目のプロトコルメッセージ「ＳＹＳＴＥＭ  ＩＮＦＯＲＭＡＴＩＯＮ  ＢＬＯＣＫ  ＴＹＰＥ１」の符号が「２」、３行目のプロトコルメッセージ「ＳＹＳＴＥＭ  ＩＮＦＯＲＭＡＴＩＯＮ  ＢＬＯＣＫ  ＴＹＰＥ２」の符号が「３」といった順序で各プロトコルメッセージを符号化したテーブルとして第１の参照テーブル１１ａに格納されている。
【００３４】
この第１の参照テーブル１１ａのプロトコルメッセージの順序は特に制限するものではないが、正常に動作するシナリオで主に記載される順序に基づいて作成することができる。また、アルファベット順や規格で定義された順序に基づいて作成しても良い。
【００３５】
第２の参照テーブル１１ｂには、第１の参照テーブル１１ａに格納された各プロトコルメッセージに対して通信規格に基づく次に実行可能なプロトコルメッセージの符号との対応関係を示したシーケンスが参照可能に格納されている。また加えて、第２の参照テーブル１１ｂには、予め正常と確認された複数行のプロトコルメッセージによるシーケンスを記述したシナリオに関して、そのシナリオを構成する各プロトコルメッセージに対して次に実行可能なプロトコルメッセージの符号との対応関係を示すテーブルを格納しても良い。
【００３６】
具体的に、図３の例では、プロトコルメッセージ「ＭＡＳＴＥＲ  ＩＮＦＯＲＭＡＴＩＯＮ  ＢＬＯＣＫ」に対して次に取り得るプロトコルメッセージの符号が「２，３，４，５，…」、プロトコルメッセージ「ＳＹＳＴＥＭ  ＩＮＦＯＲＭＡＴＩＯＮ  ＢＬＯＣＫ  ＴＹＰＥ１」に対して次に取り得るプロトコルメッセージの符号が「３，４，５，…」、プロトコルメッセージ「ＳＹＳＴＥＭ  ＩＮＦＯＲＭＡＴＩＯＮ  ＢＬＯＣＫ  ＴＹＰＥ２」に対して次に取り得るプロトコルメッセージの符号が「４，５，…」といったように、各プロトコルメッセージに対して次に実行可能なプロトコルメッセージの符号との対応関係を示すテーブルが第２の参照テーブル１１ｂに格納されている。
【００３７】
また、図示していないが、第２の参照テーブル１１ｂは、メッセージ欄または別欄にメッセージに対応した符号を入れて使用しても良い。
【００３８】
なお、上述した第１の参照テーブル１１ａと第２の参照テーブル１１ｂとは、異なる規格毎に選択可能に設けることもできる。
【００３９】
データベース学習手段１１ｃは、後述するデータベース学習処理を実行するもので、予め正常シーケンスとして確認された学習対象シナリオを外部から入力可能としている。このデータベース学習手段１１ｃでは、入力された学習対象シナリオからシーケンスを抽出し、さらにシーケンスを構成する各プロトコルメッセージを符号化し、データベース１１に登録されているテーブルとの差分をデータベース１１に追加している。
【００４０】
さらに説明すると、データベース学習手段１１ｃでは、学習対象シナリオに記述されたプロトコルメッセージとそのプロトコルメッセージのシーケンスから第１の参照テーブル１１ａに定義されていないプロトコルメッセージを抽出し、この抽出したプロトコルメッセージを符号化して第１の参照テーブル１１ａに追加している。また、学習対象シナリオに記述されたプロトコルメッセージとそのプロトコルメッセージのシーケンスから第２の参照テーブル１１ｂに定義されていないプロトコルメッセージと次に実行するプロトコルメッセージとの対応を抽出し、この抽出したプロトコルメッセージと次に実行するプロトコルメッセージとの対応を符号化した対応にして第２の参照テーブル１１ｂに追加している。
【００４１】
エラーチェック手段１２は、後述するシナリオエラー検出処理を実行するもので、シナリオ生成手段６ａから入力されるシナリオに記述された各プロトコルメッセージを第１の参照テーブル１１ａに基づいて符号化（数値化）し、この符号化された各プロトコルメッセージをシナリオに記述されたシーケンスに従って第２の参照テーブル１１ｂに基づいて実行可能か否かを判別してエラーチェックを行うもので、符号化部１２ａ、シーケンスエラー検出部１２ｂを備えている。
【００４２】
符号化部１２ａは、シナリオ生成手段６ａから自動生成出力されるシナリオを入力としている。この符号化部１２ａでは、入力されたシナリオに記述された複数行のプロトコルメッセージを、シーケンスに従ってデータベース１１の第１の参照テーブル１１ａを参照しながら符号化している。
【００４３】
シーケンスエラー検出部１２ｂは、符号化部１２ａにより符号化されたプロトコルメッセージを、シナリオに記述されたシーケンスに従って判定基準となる第２の参照テーブル１１ｂを参照しながら実行可能か否か判定し、その判定結果を出力している。
【００４４】
出力手段１３は、エラーチェック手段１２のシーケンスエラー検出部１２ｂによる判定結果に応じた出力を行っている。具体的に、出力手段１３は、シナリオエラー検出処理装置５によるエラーチェック結果（正常又は異常）を識別可能に出力表示している。また、出力手段１３は、エラーチェック結果の表示の他、エラーチェック済みのシナリオを外部にファイルとして出力することもできる。
【００４５】
次に、上記のように構成されるシナリオエラー検出処理装置５が実行する処理について図４乃至図１６を参照しながら説明する。まず、シナリオエラー検出処理の動作について図４乃至図１１を参照しながら説明する。
【００４６】
（実施例２）
図４に示すように、シナリオエラー検出処理では、まずエラー検出対象となるシナリオをシナリオ生成手段６ａから取り込む（ＳＴ１）。次に、取り込んだシナリオに記述された複数行のプロトコルメッセージを、第１の参照テーブル１１ａを参照しながらシーケンスの順序に従ってそれぞれ符号化する（ＳＴ２）。続いて、符号化された複数行のプロトコルメッセージの中から判定対象となるプロトコルメッセージを取得する（ＳＴ３）。
【００４７】
そして、ＳＴ３で取得したプロトコルメッセージが最後（最終行）のプロトコルメッセージか否かを判別する（ＳＴ４）。ＳＴ３で取得したプロトコルメッセージが最後のプロトコルメッセージと判定すると（ＳＴ４−Ｙｅｓ）、エラーが発見されなかったときの正常時処理を実行する（ＳＴ５）。この正常時処理では、出力手段１３に正常通知され、例えば図１１（ａ）に示すように、そのシーケンスが正常であることを示す表示がなされる。
【００４８】
また、取得したプロトコルメッセージが１行のみの場合にも、次に取り得るプロトコルメッセージがないので、最後のプロトコルメッセージと判断し、正常時処理を実行する（ＳＴ５）。
【００４９】
なお、通常はプロトコルメッセージが複数行で構成されており、１行目のプロトコルメッセージからシーケンスの順序に従って順番に取得するため、次のステップ（ＳＴ６）に進む。
【００５０】
ＳＴ３で取得したプロトコルメッセージが最後のプロトコルメッセージでないと判定すると（ＳＴ４−Ｎｏ）、データベース１１から判定基準となるメッセージテーブル（第２の参照テーブル１１ｂ）を取得する（ＳＴ６）。そして、判定基準となるメッセージテーブルの内容と、判定対象となるプロトコルメッセージの次に取り得るプロトコルメッセージとの符号（数値）を比較する（ＳＴ７）。
【００５１】
ＳＴ７の比較によって一致する符号（数値）があるか否かを判別する（ＳＴ８）。もし、一致する数値があると判定すると（ＳＴ８−Ｙｅｓ）、この時点ではシナリオに記述されたシーケンスのプロトコルメッセージには不正がなく正常と判断する。そして、判定対象となるプロトコルメッセージの次のプロトコルメッセージを新たな判定対象メッセージとし（ＳＴ９）、ＳＴ４の処理に戻る。以下、シナリオに記述されたシーケンスのプロトコルメッセージが正常な場合には、最後のプロトコルメッセージまでＳＴ４〜ＳＴ９の処理が繰り返される。
【００５２】
ここで、図７は正常時のシナリオ検出処理の具体例を示している。この例では、シナリオに記述されたシーケンスのプロトコルメッセージは、図５に示すように、「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＲＥＱＵＥＳＴ」、「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＳＥＴＵＰ」、「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＳＥＴＵＰ  ＣＯＭＰＬＥＴＥ」の順番に記述されている。そして、図５の各行のプロトコルメッセージは、図６に示すように、第１の参照テーブル１１ａを参照しながら「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＲＥＱＵＥＳＴ」は符号「２０」、「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＳＥＴＵＰ」は符号「２１」、「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＳＥＴＵＰ  ＣＯＭＰＬＥＴＥ」は符号「２２」にそれぞれ符号化される。そして、図７において、「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＲＥＱＵＥＳＴ」を比較対象メッセージとすると、比較対象メッセージの次に存在するメッセージ「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＳＥＴＵＰ」の符号「２１」と、第２の参照テーブル１１ｂにおける比較対象メッセージの次に取り得るメッセージ「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＳＥＴＵＰ」の符号「２１」とを比較し、符号の数値が一致するため正常と判定する。なお、第２の参照テーブル１１ｂにおける比較対象となるプロトコルメッセージは、符号化されていても良い。
【００５３】
これに対し、ＳＴ７の比較によって一致する数値がないと判定すると（ＳＴ８−Ｎｏ）、そのシナリオに記述されたシーケンスのプロトコルメッセージに不正があると判定し（ＳＴ１０）、異常時処理を実行する（ＳＴ１１）。この異常時処理では、例えばエラー通知や修正候補の通知として、不正があったプロトコルメッセージの表示とともに、そのプロトコルメッセージの修正候補を一覧表示する。
【００５４】
ここで、図１０は異常時のシナリオ検出処理の具体例を示している。この例では、シナリオに記述されたシーケンスのプロトコルメッセージは、図８に示すように、「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＲＥＱＵＥＳＴ」、「ＬＯＣＡＴＩＯＮ  ＵＰＤＡＴＩＮＧ  ＲＥＱＵＥＳＴ」、「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＳＥＴＵＰ」、「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＳＥＴＵＰ  ＣＯＭＰＬＥＴＥ」の順番に記述されている。そして、図８の各行のプロトコルメッセージは、図９に示すように、第１の参照テーブル１１ａを参照しながら「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＲＥＱＵＥＳＴ」は符号「２０」、「ＬＯＣＡＴＩＯＮ  ＵＰＤＡＴＩＮＧ  ＲＥＱＵＥＳＴ」は符号「５０」、「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＳＥＴＵＰ」は符号「２１」、「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＳＥＴＵＰ  ＣＯＭＰＬＥＴＥ」は符号「２２」にそれぞれ符号化される。そして、図１０において、「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＲＥＱＵＥＳＴ」を比較対象メッセージとすると、比較対象メッセージの次に存在するメッセージ「ＬＯＣＡＴＩＯＮ  ＵＰＤＡＴＩＮＧ  ＲＥＱＵＥＳＴ」の符号「５０」と、第２の参照テーブル１１ｂにおける比較対象メッセージの次に取り得るメッセージ「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＳＥＴＵＰ」の符号「２１」とを比較し、符号の数値が一致しないため異常と判定する。そして、図１１（ｂ）に示すように、不正を知らせる表示として、（「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＲＥＱＵＥＳＴ」（１行目）の次のメッセージ「ＬＯＣＡＴＩＯＮ  ＵＰＤＡＴＩＮＧ  ＲＥＱＵＥＳＴ」（２行目）のメッセージが不正です。）と表示するとともに、プロトコルメッセージ修正候補として（「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＳＥＴＵＰ」）と表示する。
【００５５】
ところで、上述した図４の処理において、シナリオ生成装置６から入力されるシナリオに指定箇所のプロトコルメッセージに識別可能なタグ情報が付加されている場合には、そのタグ情報を認識し、そのタグ情報が付加された指定箇所のプロトコルメッセージまでスキップして上述したシナリオエラー検出処理を行っている。これにより、ユーザがシナリオ生成装置６で指定した任意箇所のプロトコルメッセージからのエラーを検出することができる。また、シナリオエラー検出処理の終了箇所を示すタグ情報を付加することが可能であることは言うまでもない。
【００５６】
また、本例では、シナリオ生成手段６ａで自動生成されて入力されるシナリオのエラー検出を行う場合を例にとって説明しているが、例えば手作業により手動生成されたシナリオをエラーチェック手段１２に入力し、そのシナリオのエラーを上述したシナリオエラー検出処理によって検出することもできる。
【００５７】
上述の手作業により手動生成されたシナリオは、シナリオ生成手段６ａを介して入力するようにしても良い。別の形態では、エラーチェック手段１２が、エラーを検出した場所とプロトコルメッセージの修正候補とをシナリオ生成手段６ａに出力することで、シナリオ生成手段６ａで自動生成されたシナリオを自動で修正することも可能である。また、上述の手作業により手動生成されたシナリオがシナリオ生成手段６ａから入力された場合は、同様に、シナリオ生成手段６ａで手作業により手動生成されたシナリオを自動で修正することも可能である。
【００５８】
（実施例３）
次に、シナリオエラー検出処理装置５内で実行されるデータベース１１の学習機能の動作について図１２乃至図１６を参照しながら説明する。
【００５９】
図１２に示すように、正常と確認されているシナリオやログ情報が入力されると（ＳＴ２１）、その入力情報がシナリオか否かを判別する（ＳＴ２２）。ここで、入力情報をシナリオと判定すると、そのまま次のステップ（ＳＴ２４）に移行する。これに対し、入力情報がシナリオではない、すなわち入力情報をログ情報と判定すると、そのログ情報をシナリオに変換し（ＳＴ２３）、次のステップ（ＳＴ２４）に移行する。
【００６０】
次に、ＳＴ２４では、シナリオに記述されたプロトコルメッセージをシーケンスの順序に従って抽出する。そして、抽出した各プロトコルメッセージを第１の参照テーブル１１ａを参照しながら符号化する（ＳＴ２５）。次に、判定対象とするプロトコルメッセージと次にくるプロトコルメッセージについてデータベース１１の第２の参照テーブル１１ｂに登録されている判定基準と比較する（ＳＴ２６）。そして、同じ内容が存在するか否かを判別する（ＳＴ２７）。
【００６１】
ＳＴ２７において、同じ内容が存在すると判定すると、判定対象とするプロトコルメッセージの次にくるプロトコルメッセージを新しい判定対象メッセージとし（ＳＴ２８）、ＳＴ２６の動作に戻る。
【００６２】
これに対し、ＳＴ２７において、同じ内容が存在しないと判定すると、判定対象とするプロトコルメッセージの次にくるプロトコルメッセージを新しい判定基準としてデータベース１１に追加する（ＳＴ２９）。
【００６３】
ここで、図１５はデータベース１１を更新する場合の具体例、図１６はデータベース１１を更新しない場合の具体例をそれぞれ示している。
【００６４】
これらの例において、シナリオに記述されたシーケンスのプロトコルメッセージは、図１３に示すように、「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＲＥＱＵＥＳＴ」、「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＳＥＴＵＰ」、「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＳＥＴＵＰ  ＣＯＭＰＬＥＴＥ」、「ＣＭ  ＳＥＲＶＩＣＥ  ＲＥＱＵＥＳＴ」の順番に記述されている。そして、図１３の各行のプロトコルメッセージは、図１４に示すように、第１の参照テーブル１１ａを参照しながら「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＲＥＱＵＥＳＴ」は符号「２０」、「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＳＥＴＵＰ」は符号「２１」、「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＳＥＴＵＰ  ＣＯＭＰＬＥＴＥ」は符号「２２」、「ＣＭ  ＳＥＲＶＩＣＥ  ＲＥＱＵＥＳＴ」は符号「６０」にそれぞれ符号化される。
【００６５】
ここで、「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＳＥＴＵＰ  ＣＯＭＰＬＥＴＥ」（符号「２２」）が判定対象となったとき、この「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＳＥＴＵＰ  ＣＯＭＰＬＥＴＥ」（符号「２２」）が次に取り得るメッセージとして「ＣＭ  ＳＥＲＶＩＣＥ  ＲＥＱＵＥＳＴ」（符号「６０」）が登録されているか否かを第２の参照テーブル１１ｂを参照しながら調べる。図１５の例では、「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＳＥＴＵＰ  ＣＯＭＰＬＥＴＥ」（符号「２２」）の次に取り得るメッセージとして登録されている符号は「５０」のみで、符号「２２」の後に符号「６０」が来るシーケンスについては登録されていない。
【００６６】
従って、図１５の例では、「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＳＥＴＵＰ  ＣＯＭＰＬＥＴＥ」（符号「２２」）の後に「ＣＭ  ＳＥＲＶＩＣＥ  ＲＥＱＵＥＳＴ」（符号「６０」）が来るシーケンスをエラーと判定するので、「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＳＥＴＵＰ  ＣＯＭＰＬＥＴＥ」（符号「２２」）の次に取り得るメッセージの符号として現在の符号「５０」のみに対し、符号「６０」を差分として追加登録し、データベース１１を更新する。
【００６７】
これに対し、図１６の例では、「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＳＥＴＵＰ  ＣＯＭＰＬＥＴＥ」（符号「２２」）の次に取り得るメッセージとして登録されている符号は「５０」、「６０」であり、符号「２２」の後に「６０」が来るシーケンスについても登録されている。
【００６８】
従って、図１６の例では、「ＲＲＣ  ＣＯＮＮＥＣＴＩＯＮ  ＳＥＴＵＰ  ＣＯＭＰＬＥＴＥ」（符号「２２」）の後に「ＣＭ  ＳＥＲＶＩＣＥ  ＲＥＱＵＥＳＴ」（符号「６０」）が来るシーケンスであってもエラーと判定されないので、データベース１１の更新は行われない。
【００６９】
ところで、上述した図１２のＳＴ２５の処理において、抽出したプロトコルメッセージを符号化する際、第１の参照テーブル１１ａにないプロトコルメッセージについては特定の符号で符号化し、特定の符号化グループのプロトコルメッセージとして第１の参照テーブル１１ａに追加して登録することができる。これにより、通信規格の変更や、機能追加等によりプロトコルメッセージが増えても対応可能となる。また、後から追加したプロトコルメッセージに、識別可能となる符号（例えば９００〜９９９など）を割り当てて対応付けることで追加されたプロトコルメッセージを区別して判別することができる。
【００７０】
また、データベース１１の第１の参照テーブル１１ａや第２の参照テーブル１１ｂにデータが無い場合には、予め正常シーケンスとして確認された学習対象シナリオを外部から入力すれば、この学習対象シナリオのシーケンスに従った順序で複数行のプロトコルメッセージの各プロトコルメッセージを符号化（数値化）したテーブルが第１の参照テーブル１１ａに格納され、学習対象シナリオを構成する各プロトコルメッセージに対して次に実行可能なプロトコルメッセージの符号との対応関係を示すテーブルが第２の参照テーブル１１ｂに格納される。これにより、データベース１１に判定基準のためのテーブルが予め格納されていなくても、予め正常シーケンスとして確認されたシナリオを入力して学習機能を働かせることによって判定基準のためのテーブルを格納することができる。
【００７１】
このように、本例によれば、シナリオを入力するだけで即座にシナリオのエラーの有無を検出するので、長いシナリオであっても簡単にシナリオのエラー検出を行うことができる。
【００７２】
また、シナリオのエラーが検出された場合には、エラーのあった箇所を識別表示するとともに、エラーの修正候補が表示される。このため、通信規格に関して十分な知識を持たない者でも、上記表示内容を参照しながら、生成したシナリオを直接編集する作業を簡単に実施することができる。さらに、エラーのあった箇所とエラーの修正候補に関する情報から、生成したシナリオを自動修正することもできる。
【００７３】
結果として、これまで通信規格の知識のある者が行っていた作業の一部を通信規格の十分な知識を持たない者でも簡単に行うことができる。このため、通信規格の知識のある者が行っていたシナリオを動作検証する作業を軽減することができる。
【００７４】
また、本例では、正常と確認されているプロトコルメッセージによるシーケンスと、第１、第２の参照テーブル１１ａ，１１ｂとの差分を学習機能によって追加登録することができる。そして、通常、各キャリアは通信規格に則った通信プロトコルを提供するが、その解釈、実施方法、新機能の実施等により一部例外や機能追加等があり得る。そのような場合でも、対応するプロトコルメッセージに関するデータテーブルを予め学習機能によって登録しておくことにより対応することができる。
【００７５】
さらに、データベース１１に含まれる第１の参照テーブル１１ａと第２の参照テーブル１１ｂとを規格毎に設け、使用されている規格に応じて適宜選択することもできる。これにより、各種規格に応じたシナリオのエラー検出を行うことができる。
【図面の簡単な説明】
【００７６】
【図１】本発明に係るシナリオエラー検出処理装置及びシナリオ生成装置を含む通信端末試験システムのブロック構成図である。
【図２】データベースにおける第１の参照テーブルの一例を示す図である。
【図３】データベースにおける第２の参照テーブルの一例を示す図である。
【図４】シナリオエラー検出処理に関する動作フローチャートである。
【図５】正常なメッセージのシーケンスを記述したシナリオの一例を示す図である。
【図６】図５のシナリオに記述されたメッセージを第１の参照テーブルに基づいて符号化した場合の各メッセージと符号との対応を示す図である。
【図７】正常時のシナリオ検出処理の一例を示す説明図である。
【図８】エラーを含むメッセージのシーケンスを記述したシナリオの一例を示す図である。
【図９】図８のシナリオに記述されたメッセージを第１の参照テーブルに基づいて符号化した場合の各メッセージと符号との対応を示す図である。
【図１０】異常時のシナリオ検出処理の一例を示す説明図である。
【図１１】（ａ），（ｂ）  正常時及び異常時の表示例を示す図である。
【図１２】データベースの学習機能の動作フローチャートである。
【図１３】正常確認されたメッセージのシーケンスを記述したシナリオの一例を示す図である。
【図１４】図１３のシナリオに記述されたメッセージを第１の参照テーブルに基づいて符号化した場合の各メッセージと符号との対応を示す図である。
【図１５】データベースを更新する場合の説明図である。
【図１６】データベースを更新しない場合の説明図である。
【符号の説明】
【００７７】
１  通信端末試験システム
２  通信端末
３  擬似基地局装置
４  ログ情報取得装置
５  シナリオエラー検出処理装置
６  シナリオ生成装置
６ａ  シナリオ生成手段
１１  データベース
１１ａ  第１の参照テーブル
１１ｂ  第２の参照テーブル
１１ｃ  データベース学習手段
１２  エラーチェック手段
１２ａ  符号化部
１２ｂ  シーケンスエラー検出部
１３  出力手段
【図１】
2006277300.tif 000003
【図２】
2006277300.tif 000004
【図３】
2006277300.tif 000005
【図４】
2006277300.tif 000006
【図５】
2006277300.tif 000007
【図６】
2006277300.tif 000008
【図７】
2006277300.tif 000009
【図８】
2006277300.tif 000010
【図９】
2006277300.tif 000011
【図１０】
2006277300.tif 000012
【図１１】
2006277300.tif 000013
【図１２】
2006277300.tif 000014
【図１３】
2006277300.tif 000015
【図１４】
2006277300.tif 000016
【図１５】
2006277300.tif 000017
【図１６】
2006277300.tif 000018