(57)【要約】【課題】  新規に導入される接続先通信装置のインターフェース仕様に適合したスクリプトを自動生成することにより、接続先通信装置のインターフェース仕様の確認試験を効率化する。【解決手段】  ＩＦ記述分解部１０２は、スクリプト２１を設定記述部、接続記述部および命令記述部に分解した上で、設定記述部を定義ごとに分解するとともに、接続記述部および命令記述部を対話単位に分解し、ＩＦ記述モデリング部１０４は、接続記述部または命令記述部に含まれるキーワードを対話単位に抽出し、抽出されたキーワードを対話単位で組み替えることにより、対話属性の異なる変換対話記述を生成し、上記の手法によりＮＥインターフェース２２と同様の接続方法をＩＦ触診部１１０が実装し、命令を変更した複数の対話記述を組み合わせた試験用ＩＦ記述ファイルを用いて試験用ネットワーク４上で実際に試験を行う。【選択図】      図１
2006072806.tif 000002
【特許請求の範囲】
【請求項１】
対話型アプリケーションに用いられる対話が記述されたスクリプトを収集するスクリプト収集手段と、
前記スクリプト収集手段にて収集されたスクリプトから、対話の特徴を表す概要属性を抽出する概要属性抽出手段と、
前記概要属性を組み替えることにより、前記スクリプトを再構成するスクリプト再構成手段とを備えることを特徴とするスクリプト生成装置。
【請求項２】
前記概要属性抽出手段は、
分解知識定義に基づいて、前記スクリプトを設定記述部、接続記述部および命令記述部に分解するとともに、前記接続記述部および前記命令記述部を対話単位に分解するスクリプト分解手段と、
前記接続記述部および前記命令記述部のいずれか少なくとも一方に含まれるキーワードを対話単位に抽出するキーワード抽出手段とを備え、
前記スクリプト再構成手段は、
前記キーワード抽出手段にて抽出されたキーワードを対話単位で組み替えることにより、対話属性の異なる変換対話記述を生成する変換対話記述生成手段を備えることを特徴とする請求項１記載のスクリプト生成装置。
【請求項３】
前記キーワードの変換則を定義したＮＥコマンドファイルと、前記キーワードにて構成されたコマンド文字列の語彙の類義語句および反意語句が格納された語彙変換則データベースとのいずれか少なくとも一方をさらに備え、
前記スクリプト再構成手段は、前記ＮＥコマンドファイルまたは前記語彙変換則データベースのいずれか少なくとも一方の参照結果に基づいて、対話属性の異なる変換対話記述を生成することを特徴とする請求項２記載のスクリプト生成装置。
【請求項４】
前記スクリプトのフローを表すプロセスを抽象化して表現するプロセスモデリング手段と、
同一命令に対する複数のプロセス同士の語彙および接続関係を比較することにより、複数のプロセスを統合するプロセス統合手段とをさらに備えることを特徴とする請求項２または３記載のスクリプト生成装置。
【請求項５】
前記プロセスモデリング手段は、
対話単位に抽出された対話記述をクラスとして生成するクラス生成手段と、
対話記述から抽出されたキーワードをクラス名として前記クラスに付与するクラス名付与手段とを備え、
前記プロセス統合手段は、
複数のプロセスを統合することにより、各プロセスに含まれるクラス同士を統合するクラス統合手段とを備え、
前記変換対話記述生成手段は、前記クラス統合手段にて統合されたクラスのキーワードをクラス単位で組み替えることにより、対話属性の異なる変換対話記述を生成することを特徴とする請求項４記載のスクリプト生成装置。
【請求項６】
対話型アプリケーションに用いられる対話が記述されたスクリプトを収集するステップと、
前記収集されたスクリプトの記述を対話単位に分解するステップと、
前記スクリプトに含まれる対話の特徴を表す概要属性を前記対話単位で抽出するステップと、
前記概要属性を組み替えることにより、前記スクリプトを再構成するステップとを備えることを特徴とするスクリプト生成方法。
【請求項７】
前記スクリプトの記述を対話単位に分解するステップは、
分解知識定義に基づいて、前記スクリプトを設定記述部、接続記述部および命令記述部に分解した上で、前記設定記述部を定義ごとに分解するとともに、前記接続記述部および前記命令記述部を対話単位に分解するステップとを備え、
前記概要属性を前記対話単位で抽出するステップは、
前記対話単位に分解された接続記述部または記命令記述部からコマンド文字列を抽出するステップと、
区切り文字を参照することにより、前記コマンド文字列を単語単位に分解したキーワードを抽出するステップとを備え、
前記スクリプトを再構成するステップは、
前記キーワードの順番を前記対話単位で入れ替えることにより、異なる対話記述を生成するステップとを備えることを特徴とする請求項６記載のスクリプト生成方法。
【請求項８】
前記対話単位に分解された対話記述を抽象化して表現したクラスを生成するステップと、
前記クラスに含まれるキーワードを前記クラスのクラス名として付与するステップと、
前記対話記述同士の実行順または分岐を含む接続関係を判断することにより、スクリプトのフローを表すプロセスの接続関係を抽象化して表現するステップと、
同一命令に対する複数のプロセス間の語彙および接続関係を比較することにより、複数のプロセスを１つのプロセスに統合するステップと、
前記統合されたプロセスを構成するクラスのクラス名として、統合前の複数のクラスのクラス名を付与するステップと、
前記キーワードの順番を前記統合されたクラス単位で入れ替えることにより、異なる対話記述を生成するステップとを備えることを特徴とする請求項７記載のスクリプト生成方法。
【請求項９】
対話型アプリケーションに用いられる対話が記述されたスクリプトを収集するステップと、
前記収集されたスクリプトの記述を対話単位に分解するステップと、
前記スクリプトに含まれる対話の特徴を表す概要属性を前記対話単位で抽出するステップと、
前記概要属性を前記対話単位で組み替えることにより、前記スクリプトを再構成するステップとをコンピュータに実行させることを特徴とするスクリプト生成プログラム。
【請求項１０】
対話型アプリケーションに用いられる対話が記述されたスクリプトを収集するステップと、
前記収集されたスクリプトの記述を対話単位に分解するステップと、
前記対話単位に分解されたスクリプトから、対話の特徴を表す概要属性を抽出するステップと、
前記対話単位に分解された対話記述を抽象化して表現したクラスを生成するステップと、
前記スクリプトのフローを表すプロセスの接続関係を表現したプロセスモデルを構築するステップと、
各スクリプトの対話記述の順序関係を保存ながら、複数のスクリプトのプロセスモデルを命令種別ごとに統合するステップと、
統合前のクラスの概要属性に基づいて、前記統合されたプロセスモデルのクラスの概要属性を抽出するステップと、
前記概要属性をクラス単位で組み替えることにより、前記スクリプトを再構成するステップとをコンピュータに実行させることを特徴とするスクリプト生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はスクリプト生成装置、スクリプト生成方法およびスクリプト生成プログラムに関し、特に、対話型アプリケーションによるプログラム同士のやり取りを行うインターフェースを備えた装置が新規の接続先に接続する時に、その装置が現在備えているスクリプト記述を流用できるかの整合性を確認し、スクリプト記述の差異が見つかった場合は試行を繰り返すことによって期待される応答を返すスクリプトを再構成する方法に適用して好適なものである。
【背景技術】
【０００２】
ネットワークに接続された装置間で通信を行うために、例えば、ｔｅｌｎｅｔ、ｆｔｐ、ｐａｓｓｗｄ、ｆｓｃｋ、ｒｌｏｇｉｎ、ｔｉｐなどのアプリケーションが用いられている。
また、例えば、非特許文献１には、このようなアプリケーションに対して対話プログラムから期待される入力と、その入力に対する正しい応答を教えておくことで、人間の指示を介在させることなく、ソフトウェアによって対話プログラムと会話する自動化技術が開示されている。
【０００３】
また、例えば、特許文献１には、機器を制御するための対話型インターフェースに用いる対話制御において、ユーザのシステム使用頻度による対話進行の変更や、ユーザの対話進行に関する好みに合わせることが可能な対話制御方法により効率的な対話を実現する方法が開示されている。
また、例えば、特許文献２には、新規な構成のマークシートを用い、状況に応じてマークシートを生成することで対話型インターフェースを提供し、オペレータの操作性を向上させ、また操作方法の学習負担を軽減する方法が開示されている。
【０００４】
一方、ネットワークサービスでは、新機能を実装したネットワークエレメント（Ｎｅｔｗｏｒｋ  Ｅｌｅｍｅｎｔ）を追加したり、更改したりすることが一般的に行われている。同時に、情報の収集や処理を行うネットワーク管理装置やサービスを運用するサーバ群には、ネットワークエレメントとの間でのインターフェース（Ｉｎｔｅｒｆａｃｅ）機能が実装される。
【０００５】
ここで、これらのネットワーク管理装置やサーバ群は、異なるベンダによって製造され、異なるインターフェースを持つ複数のマルチベンダのネットワークエレメントの接続によって構成されるネットワークを管理する必要がある。このため、ソフトウェアのコア機能とベンダ依存部とを切り離し、接続先に応じてインターフェースを切り替える構成がとられている。これにより、新規のネットワークエレメントのリリースやオペレーティングシステムの更改に対しても、そのネットワークエレメントに対応したアダプタの追加開発のみで運用を継続することが可能となっている。
【０００６】
ここで、ネットワークサービスの開始時には、ネットワークエレメントとともにネットワーク管理装置をリリースできるようにすることが好ましく、そのためにはネットワークエレメントの新機能の設計と同時にネットワーク管理装置のインターフェースの設計を行うことで、これらの仕様を合致させる必要がある。
【非特許文献１】Ｌｉｂｅｓ，Ｄ．，Ｅｘｐｅｃｔ：Ｃｕｒｉｎｇ  Ｔｈｏｓｅ  Ｕｎｃｏｎｔｒｏｌｌａｂｌｅ  Ｆｉｔｓ  ｏｆ  Ｉｎｔｅｒａｃｔｉｏｎ，Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  ｓｕｍｍｅｒ  １９９０  ＵＳＥＮＩＸ  Ｃｏｎｆｅｒｅｎｃｅ，Ａｎａｈｅｉｍ，ＣＡ，Ｊｕｎｅ  １１−１５，１９９０−Ｄｉｓｃｕｓｓｉｏｎ  ｏｆ  Ｅｘｐｅｃｔ’ｓ  ｉｍｐｌｅｍｅｎｔａｔｉｏｎ，ｐｈｉｌｏｓｏｐｈｙ，ａｎｄ  ｓｏｍｅ  ｐｅｒｆｏｒｍａｎｃｅ  ｎｏｔｅｓ．の２章「Ｓｏｉｖｉｎｇ  ｔｈｅ  Ｐｒｏｂｌｅｍ」の初めから２．２項まで
【特許文献１】特開２００２−９９４０４号公報
【特許文献２】特開平７−１０７２５６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、インターフェースの設計段階では、キャリアがその仕様を確認できることは少ないため、アダプタを用意しただけではネットワークサービスの開始までの開発期間を短縮できるわけではなかった。
また、ネットワークエレメントの新機能にネットワーク管理装置のインターフェースの仕様を合わせたとしても、実際には、コマンド応答やプロトコルなどのリリース後のネットワークエレメントに対する実機インターフェースの確認試験が必要となる。このため、その確認試験によっては、その試験後にネットワーク管理装置のインターフェースの設計からアダプタコーディングまでの再開発を行うやり直す必要があった。
【０００８】
また、ネットワークサービスの開始後にも、機能追加やバグフィックスによるネットワークエレメントのオペレーティングシステムの更新やネットワーク構成の変更などの作業が必要となり、ネットワークエレメントおよびインターフェースの更改が頻繁に行われるため、稼働中のネットワーク管理装置やサーバ群と接続できなくなる。そして、この場合にも、ネットワークエレメントのリリース後に実機試験を行ってインターフェースの仕様を確認した後に、稼働中のネットワーク管理装置との接続試験を行うため、ネットワーク管理装置の投入が遅れることがあった。
【０００９】
特に、新規に導入するネットワークエレメントのインターフェースが稼働中のネットワーク管理装置に対応していない場合、このネットワークエレメントに対応するアダプタの仕様を設計し、新規なアダプタのコーディングが必要となっていた。
そこで、本発明の目的は、新規に導入される接続先通信装置のインターフェース仕様に適合したスクリプトを自動生成することにより、接続先通信装置のインターフェース仕様の確認試験を効率化することが可能なスクリプト生成装置、スクリプト生成方法およびスクリプト生成プログラムを提供することである。
【課題を解決するための手段】
【００１０】
上述した課題を解決するために、請求項１記載のスクリプト生成装置によれば、対話型アプリケーションに用いられる対話が記述されたスクリプトを収集するスクリプト収集手段と、前記スクリプト収集手段にて収集されたスクリプトから、対話の特徴を表す概要属性を抽出する概要属性抽出手段と、前記概要属性を組み替えることにより、前記スクリプトを再構成するスクリプト再構成手段とを備えることを特徴とする。
【００１１】
これにより、現状備えているスクリプトを流用することを可能としつつ、様々なスクリプトを再構成することが可能となる。このため、スクリプト記述の差異が見つかった場合においても、試行を繰り返すことによって期待される応答を返すスクリプトを得ることが可能となり、新規に導入される接続先通信装置のインターフェース仕様に適合したスクリプトを自動生成することが可能となる。この結果、人手によってコマンドを試行しながらインターフェース仕様の確認試験を行う手間を軽減することが可能となり、接続先通信装置のインターフェース仕様の確認試験を効率化することができる。
【００１２】
また、請求項２記載のスクリプト生成装置によれば、前記概要属性抽出手段は、分解知識定義に基づいて、前記スクリプトを設定記述部、接続記述部および命令記述部に分解するとともに、前記接続記述部および前記命令記述部を対話単位に分解するスクリプト分解手段と、前記接続記述部および前記命令記述部のいずれか少なくとも一方に含まれるキーワードを対話単位に抽出するキーワード抽出手段とを備え、前記スクリプト再構成手段は、前記キーワード抽出手段にて抽出されたキーワードを対話単位で組み替えることにより、対話属性の異なる変換対話記述を生成する変換対話記述生成手段を備えることを特徴とする。
【００１３】
これにより、キーワードを対話単位で組み替えることが可能となり、対話が成立しないような不自然な組み替えが行われることを防止することができる。このため、スクリプト記述の差異が見つかった場合においても、試行を繰り返すことによって期待される応答を返すスクリプトを得ることが可能となり、新規に導入される接続先通信装置のインターフェース仕様に適合したスクリプトを自動生成することが可能となる。
【００１４】
また、請求項３記載のスクリプト生成装置によれば、前記キーワードの変換則を定義したＮＥコマンドファイルと、前記キーワードにて構成されたコマンド文字列の語彙の類義語句および反意語句が格納された語彙変換則データベースとのいずれか少なくとも一方をさらに備え、前記スクリプト再構成手段は、前記ＮＥコマンドファイルまたは前記語彙変換則データベースのいずれか少なくとも一方の参照結果に基づいて、対話属性の異なる変換対話記述を生成することを特徴とする。
これにより、同様の命令でありながら記述が異なるコマンドが使用されている場合においても、期待される応答を引き出すことが可能なスクリプトを自動生成することが可能となり、接続先通信装置のインターフェース仕様の確認試験を効率化することができる。
【００１５】
また、請求項４記載のスクリプト生成装置によれば、前記スクリプトのフローを表すプロセスを抽象化して表現するプロセスモデリング手段と、同一命令に対する複数のプロセス同士の語彙および接続関係を比較することにより、複数のプロセスを統合するプロセス統合手段とをさらに備えることを特徴とする。
これにより、同一命令の複数のスクリプトを組み合わせてスクリプトを再構成することが可能となる。このため、異なる接続先に対応して同一命令のスクリプトが複数用意されている場合においても、期待される応答を返すスクリプトを効率よく得ることが可能となる。
【００１６】
また、請求項５記載のスクリプト生成装置によれば、前記プロセスモデリング手段は、  対話単位に抽出された対話記述をクラスとして生成するクラス生成手段と、対話記述から抽出されたキーワードをクラス名として前記クラスに付与するクラス名付与手段とを備え、前記プロセス統合手段は、複数のプロセスを統合することにより、各プロセスに含まれるクラス同士を統合するクラス統合手段を備え、前記変換対話記述生成手段は、前記クラス統合手段にて統合されたクラスのキーワードをクラス単位で組み替えることにより、対話属性の異なる変換対話記述を生成することを特徴とする。
【００１７】
これにより、複数のスクリプトを組み合わせた場合においても、対話が成立しないような不自然な組み替えが行われることを防止しつつ、スクリプトを再構成することが可能となり、異なる接続先に対応して同一命令のスクリプトが複数用意されている場合においても、期待される応答を返すスクリプトを効率よく得ることが可能となる。
【００１８】
また、請求項６記載のスクリプト生成方法によれば、対話型アプリケーションに用いられる対話が記述されたスクリプトを収集するステップと、前記収集されたスクリプトの記述を対話単位に分解するステップと、前記スクリプトに含まれる対話の特徴を表す概要属性を前記対話単位で抽出するステップと、前記概要属性を組み替えることにより、前記スクリプトを再構成するステップとを備えることを特徴とする。
【００１９】
これにより、スクリプト記述を流用できるかの整合性を確認し、スクリプト記述の差異が見つかった場合は試行を繰り返すことによって期待される応答を返すスクリプトを再構成することができる。このため、新規に導入される接続先通信装置のインターフェース仕様に適合したスクリプトを自動生成することが可能となり、接続先通信装置のインターフェース仕様の確認試験を効率化することができる。この結果、ネットワークサービスに用いられるシステムの設計や開発工程を短縮することができ、新機能を実装したネットワークエレメントを追加や更改が頻繁に行われる場合においても、そのネットワークエレメントが導入されたネットワークサービスを早期に開始することができる。
【００２０】
また、請求項７記載のスクリプト生成方法によれば、前記スクリプトの記述を対話単位に分解するステップは、分解知識定義に基づいて、前記スクリプトを設定記述部、接続記述部および命令記述部に分解した上で、前記設定記述部を定義ごとに分解するとともに、前記接続記述部および前記命令記述部を対話単位に分解するステップとを備え、前記概要属性を前記対話単位で抽出するステップは、前記対話単位に分解された接続記述部または記命令記述部からコマンド文字列を抽出するステップと、区切り文字を参照することにより、前記コマンド文字列を単語単位に分解したキーワードを抽出するステップとを備え、前記スクリプトを再構成するステップは、前記キーワードの順番を前記対話単位で入れ替えることにより、異なる対話記述を生成するステップとを備えることを特徴とする。
【００２１】
これにより、キーワードを対話単位で組み替えることが可能となり、対話の順序を保存しつつ、スクリプトを再構成することが可能となる。このため、スクリプト記述の差異が見つかった場合においても、試行を繰り返すことによって期待される応答を返すスクリプトを得ることが可能となり、新規に導入される接続先通信装置のインターフェース仕様に適合したスクリプトを自動生成することが可能となる。
【００２２】
また、請求項８記載のスクリプト生成方法によれば、前記対話単位に分解された対話記述を抽象化して表現したクラスを生成するステップと、前記クラスに含まれるキーワードを前記クラスのクラス名として付与するステップと、前記対話記述同士の実行順または分岐を含む接続関係を判断することにより、スクリプトのフローを表すプロセスの接続関係を抽象化して表現するステップと、同一命令に対する複数のプロセス間の語彙および接続関係を比較することにより、複数のプロセスを１つのプロセスに統合するステップと、  前記統合されたプロセスを構成するクラスのクラス名として、統合前の複数のクラスのクラス名を付与するステップと、前記キーワードの順番を前記統合されたクラス単位で入れ替えることにより、異なる対話記述を生成するステップとを備えることを特徴とする。
これにより、複数のスクリプトを組み合わせた場合においても、対話の順序を保存しつつ、スクリプトを再構成することが可能となり、異なる接続先に対応して同一命令のスクリプトが複数用意されている場合においても、期待される応答を返すスクリプトを効率よく得ることが可能となる。
【００２３】
また、請求項９記載のスクリプト生成プログラムによれば、対話型アプリケーションに用いられる対話が記述されたスクリプトを収集するステップと、前記収集されたスクリプトの記述を対話単位に分解するステップと、前記スクリプトに含まれる対話の特徴を表す概要属性を前記対話単位で抽出するステップと、前記概要属性を前記対話単位で組み替えることにより、前記スクリプトを再構成するステップとをコンピュータに実行させることを特徴とする。
これにより、スクリプト生成プログラムをコンピュータに実行させることで、新規に導入される接続先通信装置のインターフェース仕様に適合したスクリプトを自動生成することができ、接続先通信装置のインターフェース仕様の確認試験を効率化することが可能となる。
【００２４】
また、請求項１０記載のスクリプト生成プログラムによれば、対話型アプリケーションに用いられる対話が記述されたスクリプトを収集するステップと、前記収集されたスクリプトの記述を対話単位に分解するステップと、前記対話単位に分解されたスクリプトから、対話の特徴を表す概要属性を抽出するステップと、前記対話単位に分解された対話記述を抽象化して表現したクラスを生成するステップと、前記スクリプトのフローを表すプロセスの接続関係を表現したプロセスモデルを構築するステップと、各スクリプトの対話記述の順序関係を保存しながら、複数のスクリプトのプロセスモデルを命令種別ごとに統合するステップと、統合前のクラスの概要属性に基づいて、前記統合されたプロセスモデルのクラスの概要属性を抽出するステップと、前記概要属性をクラス単位で組み替えることにより、前記スクリプトを再構成するステップとをコンピュータに実行させることを特徴とする。
【００２５】
これにより、スクリプト生成プログラムをコンピュータに実行させることで、異なる接続先に対応して同一の目的を持った命令のスクリプトが複数用意されている場合においても、新規に導入される接続先通信装置のインターフェース仕様に適合したスクリプトを自動生成することができ、接続先通信装置のインターフェース仕様の確認試験を効率化することが可能となる。
【発明の効果】
【００２６】
以上説明したように、本発明によれば、新規に導入される接続先通信装置のインターフェース仕様に適合したスクリプトを自動生成することが可能となり、接続先通信装置のインターフェース仕様の確認試験を効率化することができる。このため、ネットワークサービスに用いられるシステムの設計や開発工程を短縮することができ、新機能を実装したネットワークエレメントを追加や更改が頻繁に行われる場合においても、そのネットワークエレメントが導入されたネットワークサービスを早期に開始することができる。
【発明を実施するための最良の形態】
【００２７】
以下、本発明の実施形態に係るスクリプト生成装置およびインターフェース試験方法について図面を参照しながら説明する。
図１は、本発明の一実施形態に係る対話型アプリケーションによるＮＥインターフェース試験装置の概略構成例を示すブロック図である。
図１において、サービス提供用ネットワーク３および試験用ネットワーク４には、ネットワークエレメント３ａ、４ａがそれぞれ設けられている。なお、ネットワークエレメント３ａ、４ａとしては、例えば、ｔｅｌｎｅｔの対話型インターフェース機能を持ったルータなどを挙げることができる。
【００２８】
また、ネットワーク管理装置２には、対話型アプリケーションによるネットワークエレメント３ａとのインターフェース機能を受け持つＮＥインターフェース２２が設けられるとともに、ＮＥインターフェース２２が用いるスクリプト２１が保持されている。そして、ネットワーク管理装置２は、ＮＥインターフェース２２を介してサービス提供用ネットワーク３に接続されている。
【００２９】
また、インターフェース試験装置１には、スクリプト２１を入力するＩＦ入力部１０１、スクリプト２１を対話単位に分解するＩＦ記述分解部１０２、スクリプト２１を分解するための知識を定義する分解知識定義１０３、スクリプト２１から抽出されたキーワードに基づいて対話属性の異なる変換対話記述を生成するＩＦ記述モデリング部１０４、ＩＦ記述モデリング部１０４にて生成された変換対話記述を格納するＩＦ記述データベース１０５、ベンダ特有のコマンド体系を保持するベンダ知識定義部１０６、キーワードの変換則を定義したＮＥコマンドファイル１０７、コマンド文字列の語彙の類義語句および反意語句が格納された語彙変換則データベース１０８、ＩＦ記述モデリング部１０４にて生成された変換対話記述を用いることによりスクリプト２１を再構成する試験用ＩＦ記述調合部１０９、試験用ネットワーク４のネットワークエレメント４ａに対する実機インターフェースの確認試験を行うＩＦ触診部１１０が設けられている。
【００３０】
なお、ＩＦ記述分解部１０２は、スクリプト２１を設定記述部、接続記述部および命令記述部に分解した上で、設定記述部を定義ごとに分解するとともに、接続記述部および命令記述部を対話単位に分解することができる。また、ＩＦ記述モデリング部１０４は、接続記述部または命令記述部に含まれるキーワードを対話単位に抽出し、抽出されたキーワードを対話単位で組み替えることにより、対話属性の異なる変換対話記述を生成することができる。また、ＩＦ記述データベース１０５には、ＩＦ記述分解部１０２にて分解された設定記述部、接続記述部および命令記述部の属性をそれぞれ格納する設定記述部テーブル１０５ａ、接続記述部テーブル１０５ｂおよび命令記述部テーブル１０５ｃが設けられている。
【００３１】
以下、１つのスクリプト２１をインターフェース試験装置１に入力することにより、試験用ＩＦ情報を生成する方法について説明する。
図２は、図１のインターフェース試験装置１におけるスクリプト入力から試験用ＩＦ情報の格納までの手順を示すシーケンス図である。
図２において、ネットワーク管理装置２は、ＮＥインターフェース２２を用いることにより、ｔｅｌｎｅｔなどの対話型アプリケーションによってサービス提供用ネットワーク３と接続することができる。また、ネットワーク管理装置２は、対話型記述として、各ベンダに固有のインターフェースに対応し、ネットワークエレメント４ａに接続することにより、サービス提供用ネットワーク３の情報収集などの目的を達成することが可能な複数のスクリプトファイルを持っている。
そして、ネットワーク管理装置２に保持されているスクリプト２１の１つを端末５を介してＩＦ入力部１０１に入力する（Ｓ１、Ｓ２）。
【００３２】
図３は、本発明の一実施形態に係る対話型アプリケーションのスクリプト２１の一記述例および分解単位を示す図である。
図３において、スクリプト２１は、設定記述部Ｂ１、接続記述部Ｂ２および命令記述部Ｂ３から構成されている。ここで、設定記述部Ｂ１には、対話型アプリケーションによる通信開始前に設定される初期値が記述されている。また、接続記述部Ｂ２には、対話型アプリケーションが通信を開始する際に必要となるＬｏｇｉｎやパスワード設定などの定型的なやり取りが記述され、接続記述部Ｂ２は対話Ｗ１、Ｗ２を単位として構成されている。また、命令記述部Ｂ３には、通信によって目的を達成するコマンドのやり取りが記述され、命令記述部Ｂ３は対話Ｗ３〜Ｗ５を単位として構成されている。そして、本来人手で入力するコマンドとその応答に対してのコマンドを予め記述しておくことで、情報収集手順を自動化することができる。
【００３３】
ここで、スクリプト２１を端末５からＩＦ入力部１０１に入力する場合、スクリプト２１が対象としているネットワークエレメント４ａのプロダクト名およびスクリプト２１の目的概要（目的名）を入力することができる。例えば、以下に示すように、ＣＬＩ（Ｃｏｍｍａｎｄ  Ｌｉｎｅ  Ｉｎｔｅｒｆａｃｅ）からファイル名を入力してスクリプトファイルを読み込ませるとともに、ＮＥプロダクト名およびスクリプト２１の目的名をテキスト形式で入力することができる。
ｉｎｐｕｔ＜ファイル名（例：ｇｅｔＩｐｖ６ｉｎｆｏ．ｔｘｔ）＞＜ＮＥプロダクト名（例：ＪｕｎｉｐｅｒＭ５）＞：＜目的名（例：ＧｅｔＩＰｖ６ＭｌｄＩｎｆｏ）＞
【００３４】
そして、ＩＦ入力部１０１は、ＮＥプロダクト名およびスクリプト２１の目的名が入力されると、ＮＥプロダクト名（例えば、ＪｕｎｉｐｅｒＭ５）によってインターフェース試験装置１の任意の場所にＮＥプロダクト名を示すディレクトリを作成する。そして、ファイル名を目的名に変更して、そのディレクトリにスクリプトファイルを保存する。
【００３５】
ここで、インターフェース試験装置１にディレクトリが既に存在する場合は、ファイル名を目的名に変更して、そのディレクトリにスクリプトファイルを保存する。インターフェース試験装置１にディレクトリが既に存在し、かつＮＥプロダクト名と目的名が同値の入力が過去に存在する場合、同じ目的名のスクリプトファイルが既に存在するという警告をＣＬＩに表示するとともに、そのファイル名を端末５に表示し、そのスクリプトファイルを上書きするかどうか質問する。
【００３６】
そして、ユーザが端末５を通して上書きしないと選択した場合、処理を終了する。一方、ユーザが端末５を通して上書きすると選択した場合、既に存在するスクリプトファイルを置き換える。
そして、スクリプトファイルを上書きした場合ならびに同一のＮＥプロダクト名および目的名のスクリプトファイルが存在せずスクリプトファイルをディレクトリに保存した場合、ＩＦ入力部１０１は、ＮＥプロダクト名および目的名をＩＦ記述分解部１０２に送る（Ｓ３）。
【００３７】
ＩＦ記述分解部１０２は、ＮＥプロダクト名および目的名をＩＦ入力部１０１から受け取ると、そのＮＥプロダクト名と同名のディレクトリを検索し、そのディレクトリの中からその目的名と同名のスクリプトファイルを検索する。ここで、ＩＦ入力部１０１から受け取った目的名と同名のスクリプトファイルがなかった場合、処理を終了する。一方、ＩＦ入力部１０１から受け取った目的名と同名のスクリプトファイルが存在する場合、ＩＦ記述分解部１０２は、分解知識定義１０３の記述に従って（Ｓ４、Ｓ５）、スクリプトファイルに含まれるスクリプト２１を設定記述部Ｂ１、接続記述部Ｂ２および命令記述部Ｂ３に分解する（Ｓ６）。また、ＩＦ記述分解部１０２は、実際に通信されるコマンドをスクリプト２１から別途抽出する。さらに、ＩＦ記述分解部１０２は、接続記述部Ｂ２および命令記述部Ｂ３については、図３に示すように、対話Ｗ１〜Ｗ５ごとに分解する（Ｓ６）。
【００３８】
図４は、本発明の一実施形態に係る対話型アプリケーションにおける分解知識定義１０３の一記述例を示す図である。なお、分解知識定義１０３はテキスト形式で記述することができ、端末５によって編集することができる。
図４において、「ｄｅｆ  ｐｒｉ」によって設定記述部Ｂ１が定義され、「ｄｅｆ  ｃｏｎｎ_ｓｔａｒｔ」によって接続記述部Ｂ２が定義され、「ｄｅｆ  ｃｏｎｖ_ｓｔａｒｔ」および「ｄｅｆ  ｃｏｎｖ_ｅｎｄ」によって命令記述部Ｂ３が定義されている。また、「ｄｅｆ  ｃｏｎｖ_ｅｎｄ」によって対話Ｗ１〜Ｗ５が定義されている。また、「ｄｅｆ  ｋｅｙ」によって対話Ｗ１〜Ｗ５の特徴を抽出するためのキーワードが定義されている。
【００３９】
ここで、インターフェース試験装置１は、分解知識定義１０３を記述した複数の設定ファイルを保持することができる。そして、ＩＦ記述分解部１０２がどの分解知識定義１０３を利用するかについては、設定ファイルにファイル名を記述しておくことで予めデフォルトを決めておく方法がある。また、以下に示すように、ＣＬＩからスクリプト２１のファイル名、目的名およびＮＥプロダクト名を入力する時に、分解知識定義１０３のファイル名を入力するようにしてもよい。
ｉｎｐｕｔ＜ファイル名（例：ｇｅｔＩｐｖ６Ｍｌｄｉｎｆｏ．ｔｘｔ）＞＜ＮＥプロダクト名（例：ＪｕｎｉｐｅｒＭ５）＞：＜目的名（例：ＧｅｔＩＰｖ６Ｉｎｆｏ）＞−ｋｎｏｗｌｅｄｇｅ＜分解知識定義１０３のファイル名（例：ｆｏｒＥｘｐｅｃｔＫｎ．ｔｘｔ）＞
【００４０】
そして、ＩＦ記述分解部１０２は、スクリプト２１を分解する場合、分解知識定義１０３に記述されている「ｄｅｆ  ｐｒｉ」後の文字列を確認する。図３の分解知識定義１０３では、４行目から７行目までに「ｄｅｆ  ｐｒｉ」と記述され、「ｄｅｆ  ｐｒｉ」後に「＃！」、「ｓｅｔ」、「ｌｏｇ  ｕｓｅｒ」および「ａｐｐｅｎｄ」という文字列がそれぞれ記述されている。このため、ＩＦ記述分解部１０２は、「＃！」、「ｓｅｔ」、「ｌｏｇ  ｕｓｅｒ」または「ａｐｐｅｎｄ」という文字列で始まる行を設定記述部Ｂ１とみなす。例えば、図３のスクリプト２１では、「＃！／ｕｓｒ／ｌｏｃａｌ／ｂｉｎ／ｅｘｐｅｃｔ−」、「ｓｅｔ」で始まる行および「ａｐｐｅｎｄ」で始まる行を設定記述部Ｂ１とみなす。
【００４１】
そして、ＩＦ記述分解部１０２は、設定記述部Ｂ１をスクリプト２１から抽出すると、文字の代入関係を設定記述部Ｂ１から抽出する。例えば、図３のスクリプト２１では、４行目の「ｔｉｍｅｏｕｔ」に「５」が代入されている。そして、設定記述部Ｂ１以外の部位を対象として、非代入文字を代入文字に置き換える。例えば、図３のスクリプト２１では、２７目の「＄ｃｏｍｍａｎｄ」という文字列を「ｓｈｏｗ  ｉｐｖ６  ｍｌｄ」に置き換える。ここで、設定記述部Ｂ１以外の部位を対象として、非代入文字を代入文字に置き換えることにより、接続記述部Ｂ２および命令記述部Ｂ３が設定記述部Ｂ１と切り離された場合においても、設定記述部Ｂ１にて設定されている内容を接続記述部Ｂ２および命令記述部Ｂ３に持たせることができる。
【００４２】
図５は、本発明の一実施形態に係る対話型アプリケーションの代入文字置き換え後の接続記述部Ｂ２および命令記述部Ｂ３の一記述例を示す図である。
図５において、接続記述部Ｂ２および命令記述部Ｂ３は設定記述部Ｂ１と切り離されるとともに、設定記述部Ｂ１に設定された代入文字が非代入文字と置き換えられている。
【００４３】
そして、ＩＦ記述分解部１０２は、設定記述部Ｂ１以外の部位の非代入文字を代入文字に置き換えると、分解知識定義１０３に記述されている「ｄｅｆ  ｃｏｎｖ_ｓｔａｒｔ」後の文字列および「ｄｅｆ  ｃｏｎｖ_ｅｎｄ」後の文字列を確認する。そして、「ｄｅｆ  ｃｏｎｖ_ｓｔａｒｔ」後の文字列が最初に出現した行から、「ｄｅｆ  ｃｏｎｖ_ｅｎｄ」後の文字列が最初に出現している行までを命令記述部Ｂ３と判断する。例えば、図３の分解知識定義１０３では、「ｄｅｆ  ｃｏｎｖ_ｓｔａｒｔ」後に「ｓｅｎｄ」という文字列が記述され、「ｄｅｆ  ｃｏｎｖ_ｅｎｄ」後に「ｃｌｏｓｅ」という文字列が記述されている。このため、ＩＦ記述分解部１０２は、「ｓｅｎｄ」という文字列が最初に出現した行から「ｃｌｏｓｅ」という文字列が最初に出現している行までを命令記述部Ｂ３と判断する。例えば、図３のスクリプト２１では、「ｓｅｎｄ」という文字列が２２行目に最初に出現し、「ｃｌｏｓｅ」という文字列が３５行目に最初に出現しているので、２２行目から３５行目までを命令記述部Ｂ３とみなす。
【００４４】
次に、ＩＦ記述分解部１０２は、命令記述部Ｂ３をスクリプト２１から抽出すると、分解知識定義１０３に記述されている「ｄｅｆ  ｃｏｎｎ_ｓｔａｒｔ」後の文字列を確認する。そして、設定記述部Ｂ１および命令記述部Ｂ３として抽出されていない部分の中で、「ｄｅｆ  ｃｏｎｎ_ｓｔａｒｔ」後の文字列が最初に出現した行から、命令記述部Ｂ３の一行前までを接続記述部Ｂ２と判断する。例えば、図３の分解知識定義１０３では、「ｄｅｆ  ｃｏｎｎ_ｓｔａｒｔ」後に「ｓｐａｗｎ」という文字列が記述されている。このため、ＩＦ記述分解部１０２は、設定記述部Ｂ１および命令記述部Ｂ３として抽出されていない部分の中で、「ｓｐａｗｎ」という文字列が最初に出現した行から、命令記述部Ｂ３の一行前までを接続記述部Ｂ２と判断する。例えば、図３のスクリプト２１では、「ｓｐａｗｎ」という文字列が１１行目に最初に出現しているので、１１行目から２１行目までを接続記述部Ｂ２とみなす。
【００４５】
次に、ＩＦ記述分解部１０２は、設定記述部Ｂ１、接続記述部Ｂ２および命令記述部Ｂ３にスクリプト２１を分解すると、接続記述部Ｂ２および命令記述部Ｂ３を対話単位に分解する。具体的には、ＩＦ記述分解部１０２は、分解知識定義１０３に記述されている「ｄｅｆ  ｃｏｎｖ_ｅｎｄ」後の文字列条件を確認する。そして、「ｄｅｆ  ｃｏｎｖ_ｅｎｄ」後の文字列条件にて規定された部分を対話Ｗ１〜Ｗ５と判断する。例えば、図３の分解知識定義１０３では、「ｄｅｆ  ｃｏｎｖ_ｅｎｄ」後に「ｅｘｐｅｃｔ｛」および「｝」、「ｓｐａｗｎ＊ｅｘｐｅｃｔ｛」および「｝」、「ｓｅｎｄ＊ｅｘｐｅｃｔ｛」および「｝」という文字列がそれぞれ記述されている。なお、＊は任意の文字列を表す正規表現である。このため、ＩＦ記述分解部１０２は、「ｅｘｐｅｃｔ｛」および「｝」で囲まれた部分、「ｓｐａｗｎ＊ｅｘｐｅｃｔ｛」および「｝」で囲まれた部分および「ｓｅｎｄ＊ｅｘｐｅｃｔ｛」および「｝」で囲まれた部分をそれぞれ対話Ｗ１〜Ｗ５と判断する。例えば、図３のスクリプト２１では、接続記述部Ｂ２は、対話Ｗ１、Ｗ２に分解され、命令記述部Ｂ３は、対話Ｗ３〜Ｗ５に分解されている。
【００４６】
そして、ＩＦ記述分解部１０２は、スクリプト２１を設定記述部Ｂ１、接続記述部Ｂ２および命令記述部Ｂ３に分解した上で、接続記述部Ｂ２および命令記述部Ｂ３を対話Ｗ１〜Ｗ５に分解すると、ＩＦ入力部１０１から送られたＮＥプロダクト名、目的名およびスクリプト２１ごとに一意のＩＤ情報を設定記述部Ｂ１、接続記述部Ｂ２および命令記述部Ｂ３にそれぞれ付与し、設定記述部テーブル１０５ａ、接続記述部テーブル１０５ｂおよび命令記述部テーブル１０５ｃにそれぞれ格納する。この時、接続記述部Ｂ２および命令記述部Ｂ３は、対話Ｗ１〜Ｗ５ごとに一テーブルに格納する。また、上部に記述された対話から順番に格納を行い、一意のオブジェクトＮｏ．を付与する。また、前後の対話にそれぞれ付与された前オブジェクトＮｏ．および後オブジェクトＮｏも、接続記述部テーブル１０５ｂおよび命令記述部テーブル１０５ｃにそれぞれ格納し、対話が検索されると、その前後の対話も検索できるようにする。
【００４７】
図６は、図１のＩＦ記述データベース１０５に格納される設定記述部テーブル１０５ａ、接続記述部テーブル１０５ｂおよび命令記述部テーブル１０５ｃの一例を示す図である
図６において、ＩＦ記述データベース１０５には、スクリプト２１ごとに一意に付与されるＩＤ情報、ネットワークエレメント３ａの種別を判定するためのＮＥプロダクト名、ネットワーク管理装置２が利用するスクリプト２１の目的を表す目的名および分解された設定記述部Ｂ１の記述が格納される。
【００４８】
また、接続記述部テーブル１０５ｂには、スクリプト２１ごとに一意に付与されるＩＤ情報、ネットワークエレメント３ａの種別を判定するためのＮＥプロダクト名、ネットワーク管理装置２が利用するスクリプト２１の目的を表す目的名、分解された接続記述部Ｂ２の対話記述、対話記述の特徴を表すキーワード、対話ごとに一意に付与されるオブジェクトＮｏ．前後の対話にそれぞれ付与された前オブジェクトＮｏ．および後オブジェクトＮｏ．が格納される。また、対話記述のコマンドが変更された変換対話記述も格納される。
【００４９】
また、命令記述部テーブル１０５ｃには、スクリプト２１ごとに一意に付与されるＩＤ情報、ネットワークエレメント３ａの種別を判定するためのＮＥプロダクト名、ネットワーク管理装置２が利用するスクリプト２１の目的を表す目的名、分解された命令記述部Ｂ３の対話記述、対話記述の特徴を表すキーワード、対話ごとに一意に付与されるオブジェクトＮｏ．前後の対話にそれぞれ付与された前オブジェクトＮｏ．および後オブジェクトＮｏ．が格納される。また、対話記述のコマンドが変更された変換対話記述も格納される。
【００５０】
そして、ＩＦ記述分解部１０２は、設定記述部Ｂ１、接続記述部Ｂ２および命令記述部Ｂ３が設定記述部テーブル１０５ａ、接続記述部テーブル１０５ｂおよび命令記述部テーブル１０５ｃにそれぞれ格納すると、命令記述部テーブル１０５ｃに格納されたファイルに付与されたＩＤをＩＦ記述モデリング部１０４に通知する（Ｓ７）。
そして、ＩＦ記述モデリング部１０４は、ＩＦ記述分解部１０２からＩＤを受け取ると、ＩＤをキー情報として命令記述部Ｂ３の対話属性をＩＦ記述データベース１０５から全て検索する（Ｓ８、Ｓ９）。そして、ＩＦ記述モデリング部１０４は、命令記述部Ｂ３の対話属性を検索すると、対話記述の特徴を表すキーワードを命令記述部Ｂ３の各対話属性から抽出し、対話記述の概要属性としてＩＦ記述データベース１０５に対話ごとに格納する（Ｓ１０）。
【００５１】
ここで、命令記述部Ｂ３の各対話属性からキーワードを抽出するために、ＩＦ記述モデリング部１０４は、「ｅｘｐｅｃｔ」などの予約文字や｛（括弧）や．（ピリオド）などの区切り文字を知識として保有することができる。そして、該当する文字以外の文字列を特殊文字としてスペース文字によって区切り、区切られた単語をキーワードとして扱うことができる。また、キーワードを抽出するために、例えば、命令を含んだ対話情報の場合は、コマンド文字列（図５の例では、「ｓｈｏｗ  ｉｐｖ６  ｍｒｏｕｔｅ」）が抽出されるように、命令を含まない対話情報の場合は、「ｓｅｎｄ」によって実際に対話型インターフェースから送信される文字列が概要情報として抽出されるように予約文字を登録することができる。この場合、ＩＦ記述モデリング部１０４は、分解知識定義１０３に「ｓｅｎｄ」を記述しておき、「ｓｅｎｄ」後の文字をキーワードとして抽出するなどの処理も可能である（Ｓ１１、Ｓ１２）。
【００５２】
図７は、図１のＩＦ記述モデリング部１０４によるキーワード抽出方法の一例を示す図である。
図７において、図３の命令記述部Ｂ３において、対話Ｗ３からは、キーワードとして「ｔｅｒｍｉｎａｌ」、「ｐａｇｅｒ」および「ｏｆｆ」という単語が抽出され、対話Ｗ４からは、キーワードとして「ｓｈｏｗ」、「ｉｐｖ６」および「ｍｌｄ」という単語が抽出され、対話Ｗ５からは、キーワードとして「ｅｘｉｔ」という単語が抽出されている。
【００５３】
そして、ＩＦ記述モデリング部１０４は、命令記述部Ｂ３の対話Ｗ３〜Ｗ５からキーワードを抽出すると、上部に記述された対話から順番にキーワードを命令記述部テーブル１０５ｃに格納する。そして、ＩＦ記述モデリング部１０４は、対話単位に抽出された対話記述を抽象化してクラスとして命令記述部テーブル１０５ｃに格納し、そのクラスのクラス名としてキーワードを付与することにより、スクリプト２１のフローを表すプロセスの接続関係を表現したプロセスモデルを構築することができる（Ｓ１４〜Ｓ１７）。
【００５４】
図８は、図１のＩＦ記述モデリング部１０４によるスクリプトのプロセスのモデリング方法の一例を示す図である。
図８において、「ｔｅｒｍｉｎａｌ」、「ｐａｇｅｒ」および「ｏｆｆ」というキーワードが対話Ｗ３から抽出され、「ｓｈｏｗ」、「ｉｐｖ６」および「ｍｌｄ」というキーワードが対話Ｗ４から抽出され、「ｅｘｉｔ」というキーワードが対話Ｗ５から抽出されると、各対話Ｗ３〜Ｗ５に対応するクラスを「ｐｒｏｃｅｓｓ  ｓｔａｒｔ」と「ｐｒｏｃｅｓｓ  ｅｎｄ」との間に対話Ｗ３〜Ｗ５の順序で接続し、各対話Ｗ３〜Ｗ５から抽出されたキーワードを各クラスのクラス名としてそれぞれに付与することにより、命令記述部Ｂ３の各対話Ｗ３〜Ｗ５の順番と特徴をキーワードにて表現したプロセスモデルを構築することができる。
【００５５】
また、ＩＦ記述モデリング部１０４は、ＩＤをキー情報として設定記述部Ｂ１をＩＦ記述データベース１０５から検索し、ベンダ知識定義部１０６に通知する（Ｓ１３）。ここで、ベンダ知識定義部１０６には、設定記述部Ｂ１を別途保存するプロダクト名のディレクトリが用意されている。そして、ベンダ知識定義部１０６は、ＩＦ記述モデリング部１０４から設定記述部Ｂ１を受け取ると、目的名をファイル名としてプロダクト名のディレクトリに設定記述部Ｂ１を保存する。
【００５６】
また、ＩＦ記述モデリング部１０４は、試験用ＩＦ記述調合部１０９にＩＤを通知する（Ｓ１８）。そして、試験用ＩＦ記述調合部１０９は、ＩＦ記述モデリング部１０４からＩＤを受け取ると、ＩＤをキー情報として、命令記述部Ｂ３の対話属性およびその概要属性をＩＦ記述データベース１０５から検索する。そして、試験用ＩＦ記述調合部１０９は、命令記述部Ｂ３の概要属性をＩＦ記述データベース１０５から検索すると、概要属性を構成するキーワードを組み替えることにより、複数のコマンド文字列を生成する。そして、対話属性のコマンド文字列を入れ替えることにより変換対話記述を生成し、命令記述部テーブル１０５ｃに保存する（Ｓ２２）。例えば、図３の命令記述部Ｂ３において、「ｓｈｏｗ」、「ｉｐｖ６」および「ｍｌｄ」というキーワードが対話Ｗ４から抽出されているため、これらのキーワードを組み替えることで、「ｓｈｏｗ  ｍｌｄ」、「ｓｈｏｗ  ｉｐｖ６」、「ｓｈｏｗ  ｍｌｄ  ｉｐｖ６」などのコマンド文字列を生成することができる。
【００５７】
さらに、ＩＦ記述モデリング部１０４は、キーワードによってＮＥコマンドファイル１０７を検索する。そして、キーワードについての変換則がＮＥコマンドファイル１０７に定義されている場合、対話記述中のキーワードの変換を行うことにより変換対話記述を生成し、命令記述部テーブル１０５ｃに保存する（Ｓ２２）。
【００５８】
図９は、図１のＮＥコマンドファイル１０７の一記述例を示す図である
図９において、例えば、「ｓｈｏｗ  ｍｌｄ  ｉｐｖ６」の変換則として、「ｓｈｏｗ  ｐｉｍ  ｊｏｉｎ  ｅｘｔｅｎｓｉｖｅ」および「ｓｈｏｗ  ｉｐｖ６  ｍｒｏｕｔｅ」というコマンド文字列が定義されているものとすると、「ｓｈｏｗ  ｐｉｍ  ｊｏｉｎ  ｅｘｔｅｎｓｉｖｅ」または「ｓｈｏｗ  ｉｐｖ６  ｍｒｏｕｔｅ」というコマンド文字列にて「ｓｈｏｗ  ｍｌｄ  ｉｐｖ６」というコマンド文字列を置き換えた変換対話記述を生成することができる。
さらに、ＩＦ記述モデリング部１０４は、キーワードによって語彙変換則データベース１０８を検索する。そして、コマンド文字列の語彙の類義語句または反意語句が語彙変換則データベース１０８に定義されている場合、対話記述中のコマンド文字列の変換を行うことにより変換対話記述を生成し、命令記述部テーブル１０５ｃに保存する（Ｓ２２）。
【００５９】
図１０は、図１の語彙変換則データベース１０８の内容の一例を示す図である
図１０において、例えば、「ｓｈｏｗ  ｍｌｄ  ｉｐｖ６」の類義語句または反意語句として、「ｓｈｏｗ  ｉｐ  ｍｌｄ」、「ｓｈｏｗ  ｉｐｖ４  ｍｒｏｕｔｅ」、「ｓｈｏｗ  ｉｐｖ４  ｒｏｕｔｅ」および「ｓｈｏｗ  ｉｐｖ６  ｍｕｌｔｉｃａｓｔ」というコマンド文字列が定義されているものとすると、「ｓｈｏｗ  ｉｐ  ｍｌｄ」、「ｓｈｏｗ  ｉｐｖ４  ｍｒｏｕｔｅ」、「ｓｈｏｗ  ｉｐｖ４  ｒｏｕｔｅ」または「ｓｈｏｗ  ｉｐｖ６  ｍｕｌｔｉｃａｓｔ」というコマンド文字列にて「ｓｈｏｗ  ｍｌｄ  ｉｐｖ６」というコマンド文字列を置き換えた変換対話記述を生成することができる。
【００６０】
このようにして、コマンド文字列のキーワード組み替えや、ＮＥコマンドファイル１０７または語彙変換則データベース１０８に従ってコマンドが変更された複数の対話属性が生成される。そして、これらの対話属性は、オリジナルの対話記述に対して改版された対話記述として、オリジナルと同じテーブルの属性情報としてＩＦ記述データベース１０５に格納される。
【００６１】
図１１は、図１の端末５から各データベースおよび知識定義への入力までの手順を示すシーケンス図である。
図１１において、端末５からインターフェース試験装置１にアクセスすることにより、分解知識定義１０３を編集することができる（Ｓ３１）。また、ＮＥコマンドファイル１０７および語彙変換則データベース１０８についても、端末５によって編集することができる（Ｓ３２、Ｓ３３）。
【００６２】
そして、上記の手法によりＮＥインターフェース２２と同様の接続方法をＩＦ触診部１１０が実装し、命令を変更した複数の対話記述を組み合わせた試験用ＩＦ記述ファイルを用いて試験用ネットワーク４上で実際に試験を行うことで、既存のＩＦ記述ファイルに存在する命令および命令の文字列が自動的に組み替えられた命令を用いたＩＦ仕様の確認試験を行うことが可能となる。
【００６３】
このため、コマンドを人手によって試行し、実際のＩＦ仕様の確認試験を行うためにかかる手間を削減することができる。また、コマンド文字列が組み替えられたコマンドを生成することにより、同様の命令でありながら記述が異なるコマンドが必要なネットワークエレメント３ａ、４ａに対しても応答を引き出せる可能性を高めることができる。この時、ベンダ特有のコマンド体系をＩＦ記述に追加することで、ネットワークエレメント３ａ、４ａのオペレーティングシステムの更新時のＩＦ解析の精度を向上させることができる。
【００６４】
図１２は、図１のインターフェース試験装置にて生成された試験用ＩＦ記述を用いた試験用ネットワークへの触診試験の手順を示すシーケンス図である。
図１２において、試験用ＩＦ記述を用いた試験用ネットワーク４への触診試験を行う場合、端末５からインターフェース試験装置１にアクセスすることにより、ＩＦ触診部１１０に試験指示を行うとともに、スクリプト２１の目的名を入力する（Ｓ４１）。そして、ＩＦ触診部１１０は、スクリプト２１の目的名を受け取ると、その目的名を試験用ＩＦ記述調合部１０９に送る。そして、試験用ＩＦ記述調合部１０９は、ＩＦ触診部１１０からスクリプト２１の目的名を受け取ると、その目的名をキー情報として、ＩＦ記述データベース１０５およびベンダ知識定義部１０６を検索し（Ｓ４３、Ｓ４５）、その目的名に対応した命令記述部および設定記述部を取得する（Ｓ４４、Ｓ４６）。そして、試験用ＩＦ記述調合部１０９は、スクリプト２１の目的名に対応した命令記述部および設定記述部を取得すると、それらの命令記述部および設定記述部を用いて試験用スクリプトを生成し、ＩＦ触診部１１０に送る（Ｓ４７）。
【００６５】
そして、ＩＦ触診部１１０は、試験用スクリプトを試験用ＩＦ記述調合部１０９から受け取ると、試験用ネットワーク４への触診試験を行う（Ｓ４８）。そして、ＩＦ触診部１１０は、触診試験の結果、ネットワークエレメント４ａからの応答を引き出すと（Ｓ４９）、試験内容および応答を端末５に送信する（Ｓ５０）。
【００６６】
これにより、実機のＮＥ−ＩＦ解析試験の自動化およびＮＭＳ（Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｓｙｓｔｅｍ）−ＩＦアダプタの自動生成が可能となり、短期間でのＮＭＳの投入および更改が可能となるとともに、ＩＦ記述処理の自動化によりＮＭＳ開発者によるＮＥ解析および新ＮＥ用ＮＭＳ−ＩＦ開発の負担を軽減することができる。このため、ＮＥ−ＩＦに対する実機試験の手間とＮＭＳ−ＩＦアダプタの開発工程を削減することが可能となり、サービスを構成するシステムの設計や開発工程を短縮することが可能となることから、新技術を用いるネットワークサービスのライフサイクルが短くなるのに伴って、ＩＦの仕様変更が頻繁に行われる現状においても、可能な限りサービスを早期に開始することができる。
【００６７】
次に、複数のスクリプト２１を組み合わせることにより、試験用ＩＦ情報を生成する方法について説明する。ここで、複数のスクリプト２１を用いる場合、上述した１つのスクリプト２１を入力する場合の手順に従って１つ目のスクリプト２１を試験用ＩＦ情報として格納した後、この試験用ＩＦ情報に別のスクリプト２１を組み合わせる。この方法を繰り返すことによって複数のスクリプト２１を組み合わせた試験用ＩＦ情報を生成することができる。
【００６８】
そして、ネットワーク管理装置２に保持されているスクリプト２１の１つを端末５を介してＩＦ入力部１０１に入力する。
ここで、スクリプト２１を端末５からＩＦ入力部１０１に入力する場合、スクリプト２１が対象としているネットワークエレメント４ａのプロダクト名およびスクリプト２１の目的名を入力することができる。例えば、ＣＬＩからファイル名を入力してスクリプトファイルを読み込ませるとともに、ＮＥプロダクト名およびスクリプト２１の目的名をテキスト形式で入力することができる。
【００６９】
そして、ＩＦ入力部１０１は、ＮＥプロダクト名およびスクリプト２１の目的名が入力されると、ＮＥプロダクト名（例えば、Ｃｉｓｃｏ７２０６）によってインターフェース試験装置１の任意の場所にディレクトリを作成する。そして、ファイル名を目的名に変更して、そのディレクトリにスクリプトファイルを保存する。
ここで、インターフェース試験装置１にディレクトリが既に存在する場合は、ファイル名を目的名に変更して、そのディレクトリにスクリプトファイルを保存する。インターフェース試験装置１にディレクトリが既に存在し、かつＮＥプロダクト名と目的名が同値の入力が過去に存在する場合、同じ目的名のスクリプトファイルが既に存在するという警告をＣＬＩに表示するとともに、そのファイル名を端末５に表示し、そのスクリプトファイルを上書きするかどうか質問する。
【００７０】
そして、ユーザが端末５を通して上書きしないと選択した場合、処理を終了する。一方、ユーザが端末５を通して上書きすると選択した場合、既に存在するスクリプトファイルを置き換える。
そして、スクリプトファイルを上書きした場合ならびに同一のＮＥプロダクト名および目的名のスクリプトファイルが存在せずスクリプトファイルをディレクトリに保存した場合、ＩＦ入力部１０１は、ＮＥプロダクト名および目的名をＩＦ記述分解部１０２に送る。
【００７１】
ＩＦ記述分解部１０２は、ＮＥプロダクト名および目的名をＩＦ入力部１０１から受け取ると、そのＮＥプロダクト名と同名のディレクトリを検索し、そのディレクトリの中からその目的名と同名のスクリプトファイルを検索する。ここで、ＩＦ入力部１０１から受け取った目的名と同名のスクリプトファイルがなかった場合、処理を終了する。一方、ＩＦ入力部１０１から受け取った目的名と同名のスクリプトファイルが存在する場合、ＩＦ記述分解部１０２は、分解知識定義１０３の記述に従って、スクリプトファイルに含まれるスクリプト２１を設定記述部Ｂ１、接続記述部Ｂ２および命令記述部Ｂ３に分解する。また、ＩＦ記述分解部１０２は、実際に通信されるコマンドをスクリプト２１から別途抽出する。さらに、ＩＦ記述分解部１０２は、接続記述部Ｂ２および命令記述部Ｂ３については、図３に示すように、対話Ｗ１〜Ｗ５ごとに分解する。なお、分解知識定義１０３はテキスト形式で記述することができ、端末５によって編集することができる。
【００７２】
ここで、インターフェース試験装置１は、分解知識定義１０３を記述した複数の設定ファイルを保持することができる。そして、ＩＦ記述分解部１０２がどの分解知識定義１０３を利用するかについては、設定ファイルにファイル名を記述しておくことで予めデフォルトを決めておく方法がある。また、ＣＬＩからスクリプト２１のファイル名、目的名およびＮＥプロダクト名を入力する時に、分解知識定義１０３のファイル名を入力するようにしてもよい。
【００７３】
そして、ＩＦ記述分解部１０２は、スクリプト２１を分解する場合、分解知識定義１０３に記述されている「ｄｅｆ  ｐｒｉ」後の文字列を確認する。図３の分解知識定義１０３では、４行目から７行目までに「ｄｅｆ  ｐｒｉ」と記述され、「ｄｅｆ  ｐｒｉ」後に「＃！」、「ｓｅｔ」、「ｌｏｇ  ｕｓｅｒ」および「ａｐｐｅｎｄ」という文字列がそれぞれ記述されている。このため、ＩＦ記述分解部１０２は、「＃！」、「ｓｅｔ」、「ｌｏｇ  ｕｓｅｒ」または「ａｐｐｅｎｄ」という文字列で始まる行を設定記述部Ｂ１とみなす。例えば、図３のスクリプト２１では、「＃！／ｕｓｒ／ｌｏｃａｌ／ｂｉｎ／ｅｘｐｅｃｔ−」、「ｓｅｔ」で始まる行および「ａｐｐｅｎｄ」で始まる行を設定記述部Ｂ１とみなす。
【００７４】
そして、ＩＦ記述分解部１０２は、設定記述部Ｂ１をスクリプト２１から抽出すると、文字の代入関係を設定記述部Ｂ１から抽出する。例えば、図３のスクリプト２１では、４行目の「ｔｉｍｅｏｕｔ」に「５」が代入されている。そして、設定記述部Ｂ１以外の部位を対象として、非代入文字を代入文字に置き換える。例えば、図３のスクリプト２１では、２８行目の「＄ｃｏｍｍａｎｄ」という文字列を「ｓｈｏｗ  ｉｐｖ６  ｍｌｄ」に置き換える。
【００７５】
そして、ＩＦ記述分解部１０２は、設定記述部Ｂ１以外の部位の非代入文字を代入文字に置き換えると、分解知識定義１０３に記述されている「ｄｅｆ  ｃｏｎｖ_ｓｔａｒｔ」後の文字列および「ｄｅｆ  ｃｏｎｖ_ｅｎｄ」後の文字列を確認する。そして、「ｄｅｆ  ｃｏｎｖ_ｓｔａｒｔ」後の文字列が最初に出現した行から、「ｄｅｆ  ｃｏｎｖ_ｅｎｄ」後の文字列が最初に出現している行までを命令記述部Ｂ３と判断する。例えば、図３の分解知識定義１０３では、「ｄｅｆ  ｃｏｎｖ_ｓｔａｒｔ」後に「ｓｅｎｄ」という文字列が記述され、「ｄｅｆ  ｃｏｎｖ_ｅｎｄ」後に「ｃｌｏｓｅ」という文字列が記述されている。このため、ＩＦ記述分解部１０２は、「ｓｅｎｄ」という文字列が最初に出現した行から「ｃｌｏｓｅ」という文字列が最初に出現している行までを命令記述部Ｂ３と判断する。例えば、図３のスクリプト２１では、「ｓｅｎｄ」という文字列が２２行目に最初に出現し、「ｃｌｏｓｅ」という文字列が３５行目に最初に出現しているので、２２行目から３５行目までを命令記述部Ｂ３とみなす。
【００７６】
次に、ＩＦ記述分解部１０２は、命令記述部Ｂ３をスクリプト２１から抽出すると、分解知識定義１０３に記述されている「ｄｅｆ  ｃｏｎｎ_ｓｔａｒｔ」後の文字列を確認する。そして、設定記述部Ｂ１および命令記述部Ｂ３として抽出されていない部分の中で、「ｄｅｆ  ｃｏｎｎ_ｓｔａｒｔ」後の文字列が最初に出現した行から、命令記述部Ｂ３の一行前までを接続記述部Ｂ２と判断する。例えば、図３の分解知識定義１０３では、「ｄｅｆ  ｃｏｎｎ_ｓｔａｒｔ」後に「ｓｐａｗｎ」という文字列が記述されている。このため、ＩＦ記述分解部１０２は、設定記述部Ｂ１および命令記述部Ｂ３として抽出されていない部分の中で、「ｓｐａｗｎ」という文字列が最初に出現した行から、命令記述部Ｂ３の一行前までを接続記述部Ｂ２と判断する。例えば、図３のスクリプト２１では、「ｓｐａｗｎ」という文字列が１１行目に最初に出現しているので、１１行目から２１行目までを接続記述部Ｂ２とみなす。
【００７７】
次に、ＩＦ記述分解部１０２は、設定記述部Ｂ１、接続記述部Ｂ２および命令記述部Ｂ３にスクリプト２１を分解すると、接続記述部Ｂ２および命令記述部Ｂ３を対話単位に分解する。具体的には、ＩＦ記述分解部１０２は、分解知識定義１０３に記述されている「ｄｅｆ  ｃｏｎｖ_ｅｎｄ」後の文字列条件を確認する。そして、「ｄｅｆ  ｃｏｎｖ_ｅｎｄ」後の文字列条件にて規定された部分を対話Ｗ１〜Ｗ５と判断する。例えば、図３の分解知識定義１０３では、「ｄｅｆ  ｃｏｎｖ_ｅｎｄ」後に「ｅｘｐｅｃｔ｛」および「｝」、「ｓｐａｗｎ＊ｅｘｐｅｃｔ｛」および「｝」、「ｓｅｎｄ＊ｅｘｐｅｃｔ｛」および「｝」という文字列がそれぞれ記述されている。なお、＊は任意の文字列を表す正規表現である。このため、ＩＦ記述分解部１０２は、「ｅｘｐｅｃｔ｛」および「｝」で囲まれた部分、「ｓｐａｗｎ＊ｅｘｐｅｃｔ｛」および「｝」で囲まれた部分および「ｓｅｎｄ＊ｅｘｐｅｃｔ｛」および「｝」で囲まれた部分をそれぞれ対話Ｗ１〜Ｗ５と判断する。例えば、図３のスクリプト２１では、接続記述部Ｂ２は、対話Ｗ１、Ｗ２に分解され、命令記述部Ｂ３は、対話Ｗ３〜Ｗ５に分解されている。
【００７８】
そして、ＩＦ記述分解部１０２は、スクリプト２１を設定記述部Ｂ１、接続記述部Ｂ２および命令記述部Ｂ３に分解した上で、接続記述部Ｂ２および命令記述部Ｂ３を対話Ｗ１〜Ｗ５に分解すると、ＩＦ入力部１０１から送られたＮＥプロダクト名、目的名およびスクリプト２１ごとに一意のＩＤ情報を設定記述部Ｂ１、接続記述部Ｂ２および命令記述部Ｂ３にそれぞれ付与し、設定記述部テーブル１０５ａ、接続記述部テーブル１０５ｂおよび命令記述部テーブル１０５ｃにそれぞれ格納する。この時、接続記述部Ｂ２および命令記述部Ｂ３は、対話Ｗ１〜Ｗ５ごとに一テーブルに格納する。また、上部に記述された対話から順番に格納を行い、一意のオブジェクトＮｏ．を付与する。また、前後の対話にそれぞれ付与された前オブジェクトＮｏ．および後オブジェクトＮｏも、接続記述部テーブル１０５ｂおよび命令記述部テーブル１０５ｃにそれぞれ格納し、対話が検索されると、その前後の対話も検索できるようにする。
【００７９】
そして、ＩＦ記述分解部１０２は、設定記述部Ｂ１、接続記述部Ｂ２および命令記述部Ｂ３が設定記述部テーブル１０５ａ、接続記述部テーブル１０５ｂおよび命令記述部テーブル１０５ｃにそれぞれ格納すると、命令記述部テーブル１０５ｃに格納されたファイルに付与されたＩＤをＩＦ記述モデリング部１０４に通知する。
そして、ＩＦ記述モデリング部１０４は、ＩＦ記述分解部１０２からＩＤを受け取ると、ＩＤをキー情報として命令記述部Ｂ３の対話属性をＩＦ記述データベース１０５から全て検索する。そして、ＩＦ記述モデリング部１０４は、命令記述部Ｂ３の対話属性を検索すると、対話記述の特徴を表すキーワードを命令記述部Ｂ３の各対話属性から抽出し、対話記述の概要属性としてＩＦ記述データベース１０５に対話ごとに格納する。
【００８０】
ここで、命令記述部Ｂ３の各対話属性からキーワードを抽出するために、ＩＦ記述モデリング部１０４は、「ｅｘｐｅｃｔ」などの予約文字や｛（括弧）や．（ピリオド）などの区切り文字を知識として保有することができる。そして、該当する文字以外の文字列を特殊文字としてスペース文字によって区切り、区切られた単語をキーワードとして扱うことができる。また、キーワードを抽出するために、例えば、命令を含んだ対話情報の場合は、コマンド文字列（図５の例では、「ｓｈｏｗ  ｉｐｖ６  ｍｒｏｕｔｅ」）が抽出されるように、命令を含まない対話情報の場合は、「ｓｅｎｄ」によって実際に対話型インターフェースから送信される文字列が概要情報として抽出されるように予約文字を登録することができる。この場合、ＩＦ記述モデリング部１０４は、分解知識定義１０３に「ｓｅｎｄ」を記述しておき、「ｓｅｎｄ」後の文字をキーワードとして抽出するなどの処理も可能である。
【００８１】
また、ＩＦ記述モデリング部１０４は、ＩＤをキー情報として設定記述部Ｂ１をＩＦ記述データベース１０５から検索し、ベンダ知識定義部１０６に通知する。ここで、ベンダ知識定義部１０６には、設定記述部Ｂ１を別途保存するプロダクト名のディレクトリが用意されている。そして、ベンダ知識定義部１０６は、ＩＦ記述モデリング部１０４から設定記述部Ｂ１を受け取ると、目的名をファイル名としてプロダクト名のディレクトリに設定記述部Ｂ１を保存する。
【００８２】
ここで、ＩＦ記述モデリング部１０４は、ＩＤと目的名をキーとしてＩＦ記述データベース１０５を検索し、目的名が同一でプロダクト名が異なる命令記述部のエントリがあるかどうかを確認する。そして、目的名が同一でプロダクト名が異なる命令記述部のエントリがある場合、同一命令で別のプロダクトのネットワークエレメントから生成されたＩＦ記述モデリングに分解された既存の記述を組み合わせる。
【００８３】
図１３〜図１５は、本発明の一実施形態に係るモデリングされた複数のプロセスのマッチング方法の一例を示す図である。
図１３において、ネットワークエレメントＡから生成されたＩＦ記述モデリングのエントリとして、「ｔｅｒｍｉｎａｌ  ｐａｇｅｒ  ｏｆｆ」というクラス名が付与されたクラスと、「ｓｈｏｗ  ｉｐｖ６  ｍｌｄ」というクラス名が付与されたクラスと、「ｅｘｉｔ」というクラス名が付与されたクラスとが、「ｐｒｏｃｅｓｓ  ｓｔａｒｔ」と「ｐｒｏｃｅｓｓ  ｅｎｄ」との間に順次接続されている。
【００８４】
また、ネットワークエレメントＢから生成されたＩＦ記述モデリングのエントリとして、「ｓｅｔ  ｔｅｒｍｉｎａｌ」というクラス名が付与されたクラスと、「ｓｈｏｗ  ｐｉｍ  ｊｏｉｎ  ｅｘｔｅｎｓｉｖｅ」というクラス名が付与されたクラスと、「ｓｈｏｗ  ｐｉｍ  ｎｅｉｇｈｂｏｒｓ  ｉｎｅｔ６」というクラス名が付与されたクラスと、「ｅｘｉｔ」というクラス名が付与されたクラスとが、「ｐｒｏｃｅｓｓ  ｓｔａｒｔ」と「ｐｒｏｃｅｓｓ  ｅｎｄ」との間に順次接続されている。
【００８５】
そして、ネットワークエレメントＡから生成されたＩＦ記述モデリングの「ｐｒｏｃｅｓｓ  ｓｔａｒｔ」および「ｐｒｏｃｅｓｓ  ｅｎｄ」と、ネットワークエレメントＢから生成されたＩＦ記述モデリングの「ｐｒｏｃｅｓｓ  ｓｔａｒｔ」および「ｐｒｏｃｅｓｓ  ｅｎｄ」とをそれぞれ合わせる。
そして、「ｐｒｏｃｅｓｓ  ｓｔａｒｔ」と「ｐｒｏｃｅｓｓ  ｅｎｄ」との間に接続された各オブジェクト同士のクラス名のマッチングをとり、互いに包含関係または同一関係にあるクラス名を持つオブジェクト同士を同一のオブジェクトに統合する。統合されたオブジェクトのクラス名は、統合前のオブジェクトのクラス名を構成する単語を全て含むようにする。
【００８６】
この結果、図１４に示すように、図１３の「ｔｅｒｍｉｎａｌ  ｐａｇｅｒ  ｏｆｆ」というクラス名が付与されたオブジェクトと、「ｓｅｔ  ｔｅｒｍｉｎａｌ」というクラス名が付与されたオブジェクトとが統合され、統合前のオブジェクトのクラス名を構成する単語を全て含む「ｓｅｔ，ｔｅｒｍｉｎａｌ，ｐａｇｅｒ  ｏｆｆ」というクラス名が付与される。また、同一のクラス名が付与された「ｅｘｉｔ」というオブジェクトが統合され、「ｅｘｉｔ」というクラス名が付与される。
【００８７】
次に、互いに包含関係または同一関係にあるクラス名を持つオブジェクト同士を同一のオブジェクトに統合した後、未だ統合されないで残っているオブジェクトについては、プロセスの繋がりを崩さないようしながら、オブジェクト同士を統合する。
この結果、図１５に示すように、図１４の「ｓｈｏｗ  ｉｐｖ６  ｍｌｄ」というクラス名が付与されたオブジェクトと、「ｓｈｏｗ  ｐｉｍ  ｊｏｉｎ  ｅｘｔｅｎｓｉｖｅ」というクラス名が付与されたオブジェクトと、「ｓｈｏｗ  ｐｉｍ  ｎｅｉｇｈｂｏｒｓ  ｉｎｅｔ６」というクラス名が付与されたオブジェクトとが統合され、統合前のオブジェクトのクラス名を構成する単語を全て含む「ｓｈｏｗ  ｉｐｖ６  ｍｌｄ，ｓｈｏｗ  ｐｉｍ  ｊｏｉｎ  ｅｘｔｅｎｓｉｖｅ，ｓｈｏｗ  ｐｉｍ  ｎｅｉｇｈｂｏｒｓ  ｉｎｅｔ６」というクラス名が付与される。
【００８８】
なお、統合前のＩＦ記述データベース１０５に保持されているＩＦ記述モデリングの属性（実際の対話記述、ＮＥベンダ情報）は、統合後のＩＦ記述モデリングの属性として全て独立した状態で保持される。
そして、ここまでの処理が終了すると、ＩＦ記述モデリング部１０４は、試験用ＩＦ記述調合部１０９にＩＤを通知する。なお、この時に試験用ＩＦ記述調合部１０９に通知されるＩＤは、統合後のデータベーステーブルのＩＤである。ここで、統合後のデータベーステーブルのＩＤは、既存の番号が古い試験用ＩＦ記述のＩＤを用いる。そして、試験用ＩＦ記述調合部１０９は、ＩＦ記述モデリング部１０４からＩＤを受け取ると、ＩＤをキー情報として、命令記述部の対話属性およびその概要属性をＩＦ記述データベース１０５から検索する。そして、試験用ＩＦ記述調合部１０９は、命令記述部の概要属性をＩＦ記述データベース１０５から検索すると、概要属性を構成するキーワードを組み替えることにより、複数のコマンド文字列を生成する。そして、対話属性のコマンド文字列を入れ替えることにより変換対話記述を生成し、命令記述部テーブル１０５ｃに保存する。ここで、複数のＩＦ記述が用いられるため、複数の組み合わせコマンドを生成することができる。例えば、図１５の例では、「ｓｈｏｗ  ｉｐｖ６  ｍｌｄ，ｓｈｏｗ  ｐｉｍ  ｊｏｉｎ  ｅｘｔｅｎｓｉｖｅ，ｓｈｏｗ  ｐｉｍ  ｎｅｉｇｈｂｏｒｓ  ｉｎｅｔ６」という「ｓｈｏｗ  ｉｐｖ６  ｍｒｏｕｔｅ」というクラス名に含まれる単語を任意に組み替えることができ、「ｓｈｏｗ  ｍｌｄ  ｉｐｖ６」、「ｓｈｏｗ  ｎｅｉｇｈｂｏｒｓ  ｉｎｅｔ６」、「ｓｈｏｗ  ｎｅｉｇｈｂｏｒｓ  ｉｐｖ６」などのコマンドを生成することができる。これにより、複数のスクリプト２１を組み合わせた試験用ＩＦ情報を生成することができ、１つのスクリプト２１から試験用ＩＦ情報を生成した場合に比べて、期待される応答を引き出すことが可能な組み合わせコマンドの数を増やすことができ、新規に導入される接続先通信装置のインターフェース仕様に適合したスクリプトを自動生成することが可能となる。
【００８９】
また、ＩＦ記述モデリング部１０４は、キーワードによってＮＥコマンドファイル１０７を検索する。そして、キーワードについての変換則がＮＥコマンドファイル１０７に定義されている場合、対話記述中のキーワードの変換を行うことにより変換対話記述を生成し、命令記述部テーブル１０５ｃに保存する。
さらに、ＩＦ記述モデリング部１０４は、キーワードによって語彙変換則データベース１０８を検索する。そして、コマンド文字列の語彙の類義語句または反意語句が語彙変換則データベース１０８に定義されている場合、対話記述中のコマンド文字列の変換を行うことにより変換対話記述を生成し、命令記述部テーブル１０５ｃに保存する。
【００９０】
このようにして、コマンド文字列のキーワード組み替えや、ＮＥコマンドファイル１０７または語彙変換則データベース１０８に従ってコマンド文字列が変更された複数の対話記述が生成される。そして、これらの対話属性は、オリジナルの対話記述に対して改版された対話記述として、オリジナルと同じテーブルの属性情報としてＩＦ記述データベース１０５に格納される。
【産業上の利用可能性】
【００９１】
本発明は、新規に導入される接続先通信装置のインターフェース仕様に適合したスクリプトを自動生成することが可能となり、ネットワーク管理装置のネットワークエレメントに対するインターフェース仕様の実機確認試験などに利用することができる。
【図面の簡単な説明】
【００９２】
【図１】本発明の一実施形態に係る対話型アプリケーションによるインターフェース試験装置の概略構成例を示すブロック図である。
【図２】図１のインターフェース試験装置におけるスクリプト入力から試験用ＩＦ情報の格納までの手順を示すシーケンス図である。
【図３】本発明の一実施形態に係る対話型アプリケーションのスクリプトの一記述例および分解単位を示す図である。
【図４】本発明の一実施形態に係る対話型アプリケーションの分解ルールの一記述例を示す図である。
【図５】本発明の一実施形態に係る対話型アプリケーションの代入文字置き換え後の接続記述部および命令記述部の一記述例を示す図である。
【図６】図１のＩＦ記述データベース１０５に格納される設定記述部テーブル１０５ａ、接続記述部テーブル１０５ｂおよび命令記述部テーブル１０５ｃの一例を示す図である
【図７】図１のＩＦ記述モデリング部１０４によるキーワード抽出方法の一例を示す図である。
【図８】図１のＩＦ記述モデリング部１０４によるスクリプトのプロセスのモデリング方法の一例を示す図である。
【図９】図１のＮＥコマンドファイル１１０の一記述例を示す図である
【図１０】図１の語彙変換則データベース１０８の内容の一例を示す図である
【図１１】図１の端末５から各データベースおよび知識定義への入力までの手順を示すシーケンス図である。
【図１２】図１のインターフェース試験装置にて生成された試験用ＩＦ記述を用いた試験用ネットワークへの触診試験の手順を示すシーケンス図である。
【図１３】本発明の一実施形態に係るモデリングされた複数のプロセスのマッチング方法の一例を示す図である。
【図１４】本発明の一実施形態に係るモデリングされた複数のプロセスのマッチング方法の一例を示す図である。
【図１５】本発明の一実施形態に係るモデリングされた複数のプロセスのマッチング方法の一例を示す図である。
【符号の説明】
【００９３】
１  インターフェース試験装置
２  ネットワーク管理装置
３  サービス提供用ネットワーク
３ａ、４ａ  ネットワークエレメント
４  試験用ネットワーク
５  端末
２１  スクリプト
２２  ＮＥインターフェース
１０１  ＩＦ入力部
１０２  ＩＦ記述分解部
１０３  分解知識定義
１０４  ＩＦ記述モデリング部
１０５  ＩＦ記述データベース
１０５ａ  設定記述部テーブル
１０５ｂ  接続記述部テーブル
１０５ｃ  命令記述部テーブル
１０６  ベンダ知識定義部
１０７  ＮＥコマンドファイル
１０８  語彙変換則データベース
１０９  試験用ＩＦ記述調合部
１１０  ＩＦ触診部
【図１】
2006072806.tif 000003
【図２】
2006072806.tif 000004
【図３】
2006072806.tif 000005
【図４】
2006072806.tif 000006
【図５】
2006072806.tif 000007
【図６】
2006072806.tif 000008
【図７】
2006072806.tif 000009
【図８】
2006072806.tif 000010
【図９】
2006072806.tif 000011
【図１０】
2006072806.tif 000012
【図１１】
2006072806.tif 000013
【図１２】
2006072806.tif 000014
【図１３】
2006072806.tif 000015
【図１４】
2006072806.tif 000016
【図１５】
2006072806.tif 000017