JP4460396B2 - Script generation device, script generation method, and script generation program - Google Patents
Script generation device, script generation method, and script generation program Download PDFInfo
- Publication number
- JP4460396B2 JP4460396B2 JP2004256970A JP2004256970A JP4460396B2 JP 4460396 B2 JP4460396 B2 JP 4460396B2 JP 2004256970 A JP2004256970 A JP 2004256970A JP 2004256970 A JP2004256970 A JP 2004256970A JP 4460396 B2 JP4460396 B2 JP 4460396B2
- Authority
- JP
- Japan
- Prior art keywords
- script
- description
- unit
- dialog
- command
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Description
本発明はスクリプト生成装置、スクリプト生成方法およびスクリプト生成プログラムに関し、特に、対話型アプリケーションによるプログラム同士のやり取りを行うインターフェースを備えた装置が新規の接続先に接続する時に、その装置が現在備えているスクリプト記述を流用できるかの整合性を確認し、スクリプト記述の差異が見つかった場合は試行を繰り返すことによって期待される応答を返すスクリプトを再構成する方法に適用して好適なものである。 The present invention relates to a script generation device, a script generation method, and a script generation program, and in particular, when a device having an interface for exchanging programs by an interactive application connects to a new connection destination, the device currently has It is suitable for application to a method of reconstructing a script that confirms the consistency of whether or not a script description can be diverted and, if a difference in script description is found, returns an expected response by repeating trials.
ネットワークに接続された装置間で通信を行うために、例えば、telnet、ftp、passwd、fsck、rlogin、tipなどのアプリケーションが用いられている。
また、例えば、非特許文献1には、このようなアプリケーションに対して対話プログラムから期待される入力と、その入力に対する正しい応答を教えておくことで、人間の指示を介在させることなく、ソフトウェアによって対話プログラムと会話する自動化技術が開示されている。
For example, applications such as telnet, ftp, passwd, fsck, rlogin, and tip are used for communication between devices connected to a network.
Further, for example, Non-Patent
また、例えば、特許文献1には、機器を制御するための対話型インターフェースに用いる対話制御において、ユーザのシステム使用頻度による対話進行の変更や、ユーザの対話進行に関する好みに合わせることが可能な対話制御方法により効率的な対話を実現する方法が開示されている。
また、例えば、特許文献2には、新規な構成のマークシートを用い、状況に応じてマークシートを生成することで対話型インターフェースを提供し、オペレータの操作性を向上させ、また操作方法の学習負担を軽減する方法が開示されている。
Further, for example, in
Also, for example, in
一方、ネットワークサービスでは、新機能を実装したネットワークエレメント(Network Element)を追加したり、更改したりすることが一般的に行われている。同時に、情報の収集や処理を行うネットワーク管理装置やサービスを運用するサーバ群には、ネットワークエレメントとの間でのインターフェース(Interface)機能が実装される。 On the other hand, in a network service, a network element (Network Element) in which a new function is implemented is generally added or renewed. At the same time, a network management apparatus that collects and processes information and a server group that operates services are provided with an interface function with a network element.
ここで、これらのネットワーク管理装置やサーバ群は、異なるベンダによって製造され、異なるインターフェースを持つ複数のマルチベンダのネットワークエレメントの接続によって構成されるネットワークを管理する必要がある。このため、ソフトウェアのコア機能とベンダ依存部とを切り離し、接続先に応じてインターフェースを切り替える構成がとられている。これにより、新規のネットワークエレメントのリリースやオペレーティングシステムの更改に対しても、そのネットワークエレメントに対応したアダプタの追加開発のみで運用を継続することが可能となっている。 Here, these network management devices and server groups must be managed by networks manufactured by different vendors and configured by connecting a plurality of multi-vendor network elements having different interfaces. For this reason, a configuration is adopted in which the core function of the software and the vendor-dependent unit are separated and the interface is switched according to the connection destination. As a result, even when a new network element is released or an operating system is renewed, the operation can be continued only by additional development of an adapter corresponding to the network element.
ここで、ネットワークサービスの開始時には、ネットワークエレメントとともにネットワーク管理装置をリリースできるようにすることが好ましく、そのためにはネットワークエレメントの新機能の設計と同時にネットワーク管理装置のインターフェースの設計を行うことで、これらの仕様を合致させる必要がある。
しかしながら、インターフェースの設計段階では、キャリアがその仕様を確認できることは少ないため、アダプタを用意しただけではネットワークサービスの開始までの開発期間を短縮できるわけではなかった。
また、ネットワークエレメントの新機能にネットワーク管理装置のインターフェースの仕様を合わせたとしても、実際には、コマンド応答やプロトコルなどのリリース後のネットワークエレメントに対する実機インターフェースの確認試験が必要となる。このため、その確認試験によっては、その試験後にネットワーク管理装置のインターフェースの設計からアダプタコーディングまでの再開発を行うやり直す必要があった。
However, at the interface design stage, carriers are rarely able to confirm their specifications, so simply preparing an adapter did not shorten the development period until the start of network services.
In addition, even if the network management device interface specifications are combined with the new function of the network element, actually, a confirmation test of the actual machine interface with respect to the network element after the release of command responses, protocols, and the like is required. For this reason, depending on the confirmation test, it was necessary to redo the development from interface design to adapter coding of the network management device after the test.
また、ネットワークサービスの開始後にも、機能追加やバグフィックスによるネットワークエレメントのオペレーティングシステムの更新やネットワーク構成の変更などの作業が必要となり、ネットワークエレメントおよびインターフェースの更改が頻繁に行われるため、稼働中のネットワーク管理装置やサーバ群と接続できなくなる。そして、この場合にも、ネットワークエレメントのリリース後に実機試験を行ってインターフェースの仕様を確認した後に、稼働中のネットワーク管理装置との接続試験を行うため、ネットワーク管理装置の投入が遅れることがあった。 In addition, after the network service is started, it is necessary to update the network element operating system and change the network configuration by adding functions and bug fixes, and network elements and interfaces are frequently updated. Cannot connect to network management device or server group. In this case as well, after the network element is released, the actual device test is performed to confirm the interface specifications, and then the connection test with the network management device in operation is performed. .
特に、新規に導入するネットワークエレメントのインターフェースが稼働中のネットワーク管理装置に対応していない場合、このネットワークエレメントに対応するアダプタの仕様を設計し、新規なアダプタのコーディングが必要となっていた。
そこで、本発明の目的は、新規に導入される接続先通信装置のインターフェース仕様に適合したスクリプトを自動生成することにより、接続先通信装置のインターフェース仕様の確認試験を効率化することが可能なスクリプト生成装置、スクリプト生成方法およびスクリプト生成プログラムを提供することである。
In particular, when an interface of a network element to be newly introduced does not correspond to a network management apparatus in operation, it is necessary to design an adapter specification corresponding to the network element and code a new adapter.
SUMMARY OF THE INVENTION Accordingly, an object of the present invention is to generate a script that conforms to the interface specification of a newly installed connection destination communication device, thereby making it possible to improve the efficiency of the verification test of the interface specification of the connection destination communication device A generation device, a script generation method, and a script generation program are provided.
上記した課題を解決するために、請求項1記載のスクリプト生成装置によれば、一の装置が、接続先通信装置との間で命令送信と応答受信とを繰り返しながら処理を進める対話型アプリケーションに用いられる、前記命令および前記応答の内容に応じた実行すべき処理内容が記述されたスクリプトを収集するスクリプト収集手段と、前記スクリプト収集手段にて収集された前記スクリプトから、予め定義されたキーワードを、前記命令内容又は前記応答内容の特徴を表す概要属性として抽出する概要属性抽出手段と、前記概要属性抽出手段で抽出された、既に導入されている接続先通信装置のインターフェース仕様に適合したスクリプトの前記概要属性を組み替えることにより、新規に導入される接続先通信装置のインターフェース仕様向けのスクリプト候補を再構成し、前記スクリプト候補のうち、前記新規に導入される接続先通信装置のインターフェース仕様に実際に適合したスクリプト候補を、前記新規に導入される接続先通信装置のインターフェース仕様に適合するスクリプトとして採用するスクリプト再構成手段とを備えることを特徴とする。
In order to solve the above-described problem, according to the script generation device of
これにより、現状備えているスクリプトを流用することを可能としつつ、様々なスクリプトを再構成することが可能となる。このため、スクリプト記述の差異が見つかった場合においても、試行を繰り返すことによって期待される応答を返すスクリプトを得ることが可能となり、新規に導入される接続先通信装置のインターフェース仕様に適合したスクリプトを自動生成することが可能となる。この結果、人手によってコマンドを試行しながらインターフェース仕様の確認試験を行う手間を軽減することが可能となり、接続先通信装置のインターフェース仕様の確認試験を効率化することができる。 As a result, various scripts can be reconfigured while making it possible to divert the existing scripts. For this reason, even if a difference in script description is found, it is possible to obtain a script that returns the expected response by repeating the trial, and a script that conforms to the interface specifications of the newly installed connection destination communication device. Automatic generation is possible. As a result, it is possible to reduce the trouble of performing the interface specification confirmation test while trying the command manually, and to improve the efficiency of the interface specification confirmation test of the connection destination communication device.
また、請求項2記載のスクリプト生成装置によれば、前記概要属性抽出手段は、分解知識定義に基づいて、前記スクリプトを設定記述部、接続記述部および命令記述部に分解するとともに、前記接続記述部および前記命令記述部において、予め定義された文字列条件により規定され、且つ前記接続記述部および前記命令記述部における処理の単位として設定されてなる部分を一の対話とし、前記接続記述部および前記命令記述部を前記対話単位に分割するスクリプト分解手段と、前記接続記述部および前記命令記述部のいずれか少なくとも一方に含まれる前記キーワードを前記対話単位に抽出するキーワード抽出手段とを備え、前記スクリプト再構成手段は、前記キーワード抽出手段にて抽出されたキーワードを前記対話単位で組み替えることにより、組み替え前の前記対話の記述とは異なる変換対話記述を生成する変換対話記述生成手段を備えることを特徴とする。
According to the script generation device of
これにより、キーワードを対話単位で組み替えることが可能となり、対話が成立しないような不自然な組み替えが行われることを防止することができる。このため、スクリプト記述の差異が見つかった場合においても、試行を繰り返すことによって期待される応答を返すスクリプトを得ることが可能となり、新規に導入される接続先通信装置のインターフェース仕様に適合したスクリプトを自動生成することが可能となる。 As a result, it is possible to rearrange the keywords in units of dialogs, and it is possible to prevent unnatural rearrangement that does not establish a dialog. For this reason, even if a difference in script description is found, it is possible to obtain a script that returns the expected response by repeating the trial, and a script that conforms to the interface specifications of the newly installed connection destination communication device. Automatic generation is possible.
また、請求項3記載のスクリプト生成装置によれば、前記キーワードの変換則を定義したNEコマンドファイルと、前記キーワードにて構成されたコマンド文字列の語彙の類義語句および反意語句が格納された語彙変換則データベースとのいずれか少なくとも一方をさらに備え、前記スクリプト再構成手段は、前記NEコマンドファイルまたは前記語彙変換則データベースのいずれか少なくとも一方の参照結果に基づいて、前記変換対話記述を生成することを特徴とする。
これにより、同様の命令でありながら記述が異なるコマンドが使用されている場合においても、期待される応答を引き出すことが可能なスクリプトを自動生成することが可能となり、接続先通信装置のインターフェース仕様の確認試験を効率化することができる。
According to the script generation device of
This makes it possible to automatically generate a script that can extract the expected response even when a command with a similar description but a different description is used. The confirmation test can be made more efficient.
また、請求項4記載のスクリプト生成装置によれば、前記スクリプトのフローを表すプロセスを抽象化して表現するプロセスモデリング手段と、同一命令に対する複数のプロセス同士の語彙および接続関係を比較することにより、複数のプロセスを統合するプロセス統合手段とをさらに備えることを特徴とする。
これにより、同一命令の複数のスクリプトを組み合わせてスクリプトを再構成することが可能となる。このため、異なる接続先に対応して同一命令のスクリプトが複数用意されている場合においても、期待される応答を返すスクリプトを効率よく得ることが可能となる。
According to the script generation device of
Thereby, it is possible to reconstruct a script by combining a plurality of scripts having the same instruction. For this reason, even when a plurality of scripts having the same command are prepared corresponding to different connection destinations, it is possible to efficiently obtain a script that returns an expected response.
また、請求項5記載のスクリプト生成装置によれば、前記プロセスモデリング手段は、前記対話単位に抽出された対話記述をクラスとして生成するクラス生成手段と、前記対話記述から抽出されたキーワードをクラス名として前記クラスに付与するクラス名付与手段とを備え、前記プロセス統合手段は、複数のプロセスを統合することにより、各プロセスに含まれるクラス同士を統合するクラス統合手段を備え、前記変換対話記述生成手段は、前記クラス統合手段にて統合されたクラスのキーワードをクラス単位で組み替えることにより、前記変換対話記述を生成することを特徴とする。
Further, according to the script generating apparatus according to
これにより、複数のスクリプトを組み合わせた場合においても、対話が成立しないような不自然な組み替えが行われることを防止しつつ、スクリプトを再構成することが可能となり、異なる接続先に対応して同一命令のスクリプトが複数用意されている場合においても、期待される応答を返すスクリプトを効率よく得ることが可能となる。 As a result, even when multiple scripts are combined, it is possible to reconfigure the scripts while preventing unnatural recombination that does not establish a conversation, and the same for different connection destinations. Even when a plurality of instruction scripts are prepared, it is possible to efficiently obtain a script that returns an expected response.
また、請求項6記載のスクリプト生成方法によれば、一の装置が、接続先通信装置との間で命令送信と応答受信とを繰り返しながら処理を進める対話型アプリケーションに用いられる、前記命令および前記応答の内容に応じた実行すべき処理内容が記述されたスクリプトを収集するステップと、前記収集されたスクリプトの記述において、予め定義された文字列条件により規定され、且つ前記スクリプトにおける処理の単位として設定されてなる部分を一の対話とし、前記スクリプトの記述を前記対話単位に分解するステップと、前記スクリプトに含まれる予め定義されたキーワードを、前記対話の特徴を表す概要属性として前記対話単位で抽出するステップと、既に導入されている接続先通信装置のインターフェース仕様に適合したスクリプトの前記概要属性を組み替えることにより、新規に導入される接続先通信装置のインターフェース仕様向けのスクリプト候補を再構成し、前記スクリプト候補のうち、前記新規に導入される接続先通信装置のインターフェース仕様に実際に適合したスクリプト候補を、前記新規に導入される接続先通信装置のインターフェース仕様に適合するスクリプトとして採用するステップとを備えることを特徴とする。
Further, according to the script generation method of
これにより、スクリプト記述を流用できるかの整合性を確認し、スクリプト記述の差異が見つかった場合は試行を繰り返すことによって期待される応答を返すスクリプトを再構成することができる。このため、新規に導入される接続先通信装置のインターフェース仕様に適合したスクリプトを自動生成することが可能となり、接続先通信装置のインターフェース仕様の確認試験を効率化することができる。この結果、ネットワークサービスに用いられるシステムの設計や開発工程を短縮することができ、新機能を実装したネットワークエレメントを追加や更改が頻繁に行われる場合においても、そのネットワークエレメントが導入されたネットワークサービスを早期に開始することができる。 As a result, it is possible to confirm the consistency of whether the script description can be diverted, and when a difference in the script description is found, it is possible to reconstruct a script that returns an expected response by repeating the trial. For this reason, it is possible to automatically generate a script that conforms to the interface specification of the newly connected destination communication device, and to improve the efficiency of the confirmation test of the interface specification of the connection destination communication device. As a result, the design and development process of the system used for the network service can be shortened, and even when a network element with a new function is frequently added or renewed, the network service in which the network element is introduced Can be started early.
また、請求項7記載のスクリプト生成方法によれば、前記スクリプトの記述を前記対話単位に分解するステップは、分解知識定義に基づいて、前記スクリプトを設定記述部、接続記述部および命令記述部に分解した上で、前記設定記述部を定義ごとに分解するとともに、前記接続記述部および前記命令記述部を前記対話単位に分解するステップとを備え、前記概要属性を前記対話単位で抽出するステップは、前記対話単位に分解された接続記述部または命令記述部からコマンド文字列を抽出するステップと、区切り文字を参照することにより、前記コマンド文字列を単語単位に分解したキーワードを抽出するステップとを備え、前記スクリプトを再構成するステップは、前記キーワードの順番を前記対話単位で入れ替えることにより、異なる対話記述を生成するステップとを備えることを特徴とする。
Further, according to the script generation method according to
これにより、キーワードを対話単位で組み替えることが可能となり、対話の順序を保存しつつ、スクリプトを再構成することが可能となる。このため、スクリプト記述の差異が見つかった場合においても、試行を繰り返すことによって期待される応答を返すスクリプトを得ることが可能となり、新規に導入される接続先通信装置のインターフェース仕様に適合したスクリプトを自動生成することが可能となる。 As a result, the keywords can be rearranged in units of dialog, and the script can be reconfigured while preserving the order of dialog. For this reason, even if a difference in script description is found, it is possible to obtain a script that returns the expected response by repeating the trial, and a script that conforms to the interface specifications of the newly installed connection destination communication device. Automatic generation is possible.
また、請求項8記載のスクリプト生成方法によれば、前記対話単位に分解された対話記述を抽象化して表現したクラスを生成するステップと、前記クラスに含まれるキーワードを前記クラスのクラス名として付与するステップと、前記対話記述同士の実行順または分岐を含む接続関係を判断することにより、スクリプトのフローを表すプロセスの接続関係を抽象化して表現するステップと、同一命令に対する複数のプロセス間の語彙および接続関係を比較することにより、複数のプロセスを1つのプロセスに統合するステップと、 前記統合されたプロセスを構成するクラスのクラス名として、統合前の複数のクラスのクラス名を付与するステップと、前記キーワードの順番を前記統合されたクラス単位で入れ替えることにより、異なる対話記述を生成するステップとを備えることを特徴とする。
これにより、複数のスクリプトを組み合わせた場合においても、対話の順序を保存しつつ、スクリプトを再構成することが可能となり、異なる接続先に対応して同一命令のスクリプトが複数用意されている場合においても、期待される応答を返すスクリプトを効率よく得ることが可能となる。
In addition, according to the script generation method of
As a result, even when multiple scripts are combined, it is possible to reconfigure the scripts while preserving the order of dialogue, and when multiple scripts with the same command are prepared corresponding to different connection destinations. However, it is possible to efficiently obtain a script that returns an expected response.
また、請求項9記載のスクリプト生成プログラムによれば、一の装置が、接続先通信装置との間で命令送信と応答受信とを繰り返しながら処理を進める対話型アプリケーションに用いられる、前記命令および前記応答の内容に応じた実行すべき処理内容が記述されたスクリプトを収集するステップと、前記収集されたスクリプトの記述において、予め定義された文字列条件により規定され、且つ前記スクリプトにおける処理の単位として設定されてなる部分を一の対話とし、前記スクリプトの記述を前記対話単位に分解するステップと、前記スクリプトに含まれる予め定義されたキーワードを、前記対話の特徴を表す概要属性として前記対話単位で抽出するステップと、既に導入されている接続先通信装置のインターフェース仕様に適合したスクリプトの前記概要属性を組み替えることにより、新規に導入される接続先通信装置のインターフェース仕様向けのスクリプト候補を再構成し、前記スクリプト候補のうち、前記新規に導入される接続先通信装置のインターフェース仕様に実際に適合したスクリプト候補を、前記新規に導入される接続先通信装置のインターフェース仕様に適合するスクリプトとして採用するステップとをコンピュータに実行させることを特徴とする。
これにより、スクリプト生成プログラムをコンピュータに実行させることで、新規に導入される接続先通信装置のインターフェース仕様に適合したスクリプトを自動生成することができ、接続先通信装置のインターフェース仕様の確認試験を効率化することが可能となる。
In addition, according to the script generation program of
As a result, by executing the script generation program on the computer, a script that conforms to the interface specifications of the newly installed connection destination communication device can be automatically generated, and the interface specification confirmation test of the connection destination communication device can be efficiently performed. Can be realized.
また、請求項10記載のスクリプト生成プログラムによれば、一の装置が、接続先通信装置との間で命令送信と応答受信とを繰り返しながら処理を進める対話型アプリケーションに用いられる、前記命令および前記応答の内容に応じた実行すべき処理内容が記述されたスクリプトを収集するステップと、前記収集されたスクリプトの記述において、予め定義された文字列条件により規定され、且つ前記スクリプトにおける処理の単位として設定されてなる部分を一の対話とし、前記スクリプトの記述を前記対話単位に分解するステップと、前記対話単位に分解されたスクリプトから、予め定義されたキーワードを、前記対話の特徴を表す概要属性として抽出するステップと、前記対話単位に分解された対話記述を抽象化して表現したクラスを生成するステップと、前記スクリプトのフローを表すプロセスの接続関係を表現したプロセスモデルを構築するステップと、各スクリプトの対話記述の順序関係を保存しながら、複数のスクリプトのプロセスモデルを命令種別ごとに統合するステップと、統合前のクラスの前記概要属性に基づいて、前記統合されたプロセスモデルのクラスの概要属性を抽出するステップと、既に導入されている接続先通信装置のインターフェース仕様に適合したスクリプトの前記概要属性を組み替えることにより、新規に導入される接続先通信装置のインターフェース仕様向けのスクリプト候補を再構成し、前記スクリプト候補のうち、前記新規に導入される接続先通信装置のインターフェース仕様に実際に適合したスクリプト候補を、前記新規に導入される接続先通信装置のインターフェース仕様に適合するスクリプトとして採用するステップとをコンピュータに実行させることを特徴とする。
According to the script generation program of
これにより、スクリプト生成プログラムをコンピュータに実行させることで、異なる接続先に対応して同一の目的を持った命令のスクリプトが複数用意されている場合においても、新規に導入される接続先通信装置のインターフェース仕様に適合したスクリプトを自動生成することができ、接続先通信装置のインターフェース仕様の確認試験を効率化することが可能となる。 As a result, by causing the computer to execute the script generation program, even when a plurality of instruction scripts having the same purpose corresponding to different connection destinations are prepared, the newly introduced connection destination communication device A script conforming to the interface specification can be automatically generated, and the confirmation test of the interface specification of the connection destination communication device can be made efficient.
以上説明したように、本発明によれば、新規に導入される接続先通信装置のインターフェース仕様に適合したスクリプトを自動生成することが可能となり、接続先通信装置のインターフェース仕様の確認試験を効率化することができる。このため、ネットワークサービスに用いられるシステムの設計や開発工程を短縮することができ、新機能を実装したネットワークエレメントを追加や更改が頻繁に行われる場合においても、そのネットワークエレメントが導入されたネットワークサービスを早期に開始することができる。 As described above, according to the present invention, it is possible to automatically generate a script that conforms to the interface specification of a newly installed connection destination communication device, and to improve the efficiency of the confirmation test of the interface specification of the connection destination communication device. can do. As a result, the design and development process of the system used for the network service can be shortened, and even when a network element with a new function is frequently added or renewed, the network service in which the network element is introduced Can be started early.
以下、本発明の実施形態に係るスクリプト生成装置およびインターフェース試験方法について図面を参照しながら説明する。
図1は、本発明の一実施形態に係る対話型アプリケーションによるNEインターフェース試験装置の概略構成例を示すブロック図である。
図1において、サービス提供用ネットワーク3および試験用ネットワーク4には、ネットワークエレメント3a、4aがそれぞれ設けられている。なお、ネットワークエレメント3a、4aとしては、例えば、telnetの対話型インターフェース機能を持ったルータなどを挙げることができる。
Hereinafter, a script generation device and an interface test method according to an embodiment of the present invention will be described with reference to the drawings.
FIG. 1 is a block diagram illustrating a schematic configuration example of an NE interface test apparatus using an interactive application according to an embodiment of the present invention.
In FIG. 1, the
また、ネットワーク管理装置2には、対話型アプリケーションによるネットワークエレメント3aとのインターフェース機能を受け持つNEインターフェース22が設けられるとともに、NEインターフェース22が用いるスクリプト21が保持されている。そして、ネットワーク管理装置2は、NEインターフェース22を介してサービス提供用ネットワーク3に接続されている。
Further, the
また、インターフェース試験装置1には、スクリプト21を入力するIF入力部101、スクリプト21を対話単位に分解するIF記述分解部102、スクリプト21を分解するための知識を定義する分解知識定義103、スクリプト21から抽出されたキーワードに基づいて対話属性の異なる変換対話記述を生成するIF記述モデリング部104、IF記述モデリング部104にて生成された変換対話記述を格納するIF記述データベース105、ベンダ特有のコマンド体系を保持するベンダ知識定義部106、キーワードの変換則を定義したNEコマンドファイル107、コマンド文字列の語彙の類義語句および反意語句が格納された語彙変換則データベース108、IF記述モデリング部104にて生成された変換対話記述を用いることによりスクリプト21を再構成する試験用IF記述調合部109、試験用ネットワーク4のネットワークエレメント4aに対する実機インターフェースの確認試験を行うIF触診部110が設けられている。
Further, the
なお、IF記述分解部102は、スクリプト21を設定記述部、接続記述部および命令記述部に分解した上で、設定記述部を定義ごとに分解するとともに、接続記述部および命令記述部を対話単位に分解することができる。また、IF記述モデリング部104は、接続記述部または命令記述部に含まれるキーワードを対話単位に抽出し、抽出されたキーワードを対話単位で組み替えることにより、対話属性の異なる変換対話記述を生成することができる。また、IF記述データベース105には、IF記述分解部102にて分解された設定記述部、接続記述部および命令記述部の属性をそれぞれ格納する設定記述部テーブル105a、接続記述部テーブル105bおよび命令記述部テーブル105cが設けられている。
The IF
以下、1つのスクリプト21をインターフェース試験装置1に入力することにより、試験用IF情報を生成する方法について説明する。
図2は、図1のインターフェース試験装置1におけるスクリプト入力から試験用IF情報の格納までの手順を示すシーケンス図である。
図2において、ネットワーク管理装置2は、NEインターフェース22を用いることにより、telnetなどの対話型アプリケーションによってサービス提供用ネットワーク3と接続することができる。また、ネットワーク管理装置2は、対話型記述として、各ベンダに固有のインターフェースに対応し、ネットワークエレメント4aに接続することにより、サービス提供用ネットワーク3の情報収集などの目的を達成することが可能な複数のスクリプトファイルを持っている。
そして、ネットワーク管理装置2に保持されているスクリプト21の1つを端末5を介してIF入力部101に入力する(S1、S2)。
Hereinafter, a method of generating test IF information by inputting one
FIG. 2 is a sequence diagram showing a procedure from script input to storing test IF information in the
In FIG. 2, the
Then, one of the
図3は、本発明の一実施形態に係る対話型アプリケーションのスクリプト21の一記述例および分解単位を示す図である。
図3において、スクリプト21は、設定記述部B1、接続記述部B2および命令記述部B3から構成されている。ここで、設定記述部B1には、対話型アプリケーションによる通信開始前に設定される初期値が記述されている。また、接続記述部B2には、対話型アプリケーションが通信を開始する際に必要となるLoginやパスワード設定などの定型的なやり取りが記述され、接続記述部B2は対話W1、W2を単位として構成されている。また、命令記述部B3には、通信によって目的を達成するコマンドのやり取りが記述され、命令記述部B3は対話W3〜W5を単位として構成されている。そして、本来人手で入力するコマンドとその応答に対してのコマンドを予め記述しておくことで、情報収集手順を自動化することができる。
FIG. 3 is a diagram showing a description example and a decomposition unit of the
In FIG. 3, the
ここで、スクリプト21を端末5からIF入力部101に入力する場合、スクリプト21が対象としているネットワークエレメント4aのプロダクト名およびスクリプト21の目的概要(目的名)を入力することができる。例えば、以下に示すように、CLI(Command Line Interface)からファイル名を入力してスクリプトファイルを読み込ませるとともに、NEプロダクト名およびスクリプト21の目的名をテキスト形式で入力することができる。
input<ファイル名(例:getIpv6info.txt)><NEプロダクト名(例:JuniperM5)>:<目的名(例:GetIPv6MldInfo)>
Here, when the
input <file name (example: getIpv6info.txt)><NE product name (example: JuniperM5)>: <target name (example: GetIPv6MldInfo)>
そして、IF入力部101は、NEプロダクト名およびスクリプト21の目的名が入力されると、NEプロダクト名(例えば、JuniperM5)によってインターフェース試験装置1の任意の場所にNEプロダクト名を示すディレクトリを作成する。そして、ファイル名を目的名に変更して、そのディレクトリにスクリプトファイルを保存する。
When the NE product name and the purpose name of the
ここで、インターフェース試験装置1にディレクトリが既に存在する場合は、ファイル名を目的名に変更して、そのディレクトリにスクリプトファイルを保存する。インターフェース試験装置1にディレクトリが既に存在し、かつNEプロダクト名と目的名が同値の入力が過去に存在する場合、同じ目的名のスクリプトファイルが既に存在するという警告をCLIに表示するとともに、そのファイル名を端末5に表示し、そのスクリプトファイルを上書きするかどうか質問する。
If a directory already exists in the
そして、ユーザが端末5を通して上書きしないと選択した場合、処理を終了する。一方、ユーザが端末5を通して上書きすると選択した場合、既に存在するスクリプトファイルを置き換える。
そして、スクリプトファイルを上書きした場合ならびに同一のNEプロダクト名および目的名のスクリプトファイルが存在せずスクリプトファイルをディレクトリに保存した場合、IF入力部101は、NEプロダクト名および目的名をIF記述分解部102に送る(S3)。
And when a user chooses not to overwrite through the
When the script file is overwritten, or when the script file with the same NE product name and target name does not exist and the script file is saved in the directory, the
IF記述分解部102は、NEプロダクト名および目的名をIF入力部101から受け取ると、そのNEプロダクト名と同名のディレクトリを検索し、そのディレクトリの中からその目的名と同名のスクリプトファイルを検索する。ここで、IF入力部101から受け取った目的名と同名のスクリプトファイルがなかった場合、処理を終了する。一方、IF入力部101から受け取った目的名と同名のスクリプトファイルが存在する場合、IF記述分解部102は、分解知識定義103の記述に従って(S4、S5)、スクリプトファイルに含まれるスクリプト21を設定記述部B1、接続記述部B2および命令記述部B3に分解する(S6)。また、IF記述分解部102は、実際に通信されるコマンドをスクリプト21から別途抽出する。さらに、IF記述分解部102は、接続記述部B2および命令記述部B3については、図3に示すように、対話W1〜W5ごとに分解する(S6)。
When receiving the NE product name and the target name from the
図4は、本発明の一実施形態に係る対話型アプリケーションにおける分解知識定義103の一記述例を示す図である。なお、分解知識定義103はテキスト形式で記述することができ、端末5によって編集することができる。
図4において、「def pri」によって設定記述部B1が定義され、「def conn_start」によって接続記述部B2が定義され、「def conv_start」および「def conv_end」によって命令記述部B3が定義されている。また、「def conv_end」によって対話W1〜W5が定義されている。また、「def key」によって対話W1〜W5の特徴を抽出するためのキーワードが定義されている。
FIG. 4 is a diagram showing a description example of the
In FIG. 4, a setting description part B1 is defined by “def pri”, a connection description part B2 is defined by “def conn_start”, and an instruction description part B3 is defined by “def conv_start” and “def conv_end”. Further, dialogues W1 to W5 are defined by “def conv_end”. Further, a keyword for extracting features of the dialogs W1 to W5 is defined by “def key”.
ここで、インターフェース試験装置1は、分解知識定義103を記述した複数の設定ファイルを保持することができる。そして、IF記述分解部102がどの分解知識定義103を利用するかについては、設定ファイルにファイル名を記述しておくことで予めデフォルトを決めておく方法がある。また、以下に示すように、CLIからスクリプト21のファイル名、目的名およびNEプロダクト名を入力する時に、分解知識定義103のファイル名を入力するようにしてもよい。
input<ファイル名(例:getIpv6Mldinfo.txt)><NEプロダクト名(例:JuniperM5)>:<目的名(例:GetIPv6Info)>−knowledge<分解知識定義103のファイル名(例:forExpectKn.txt)>
Here, the
input <file name (example: getIpv6Mldinfo.txt)><NE product name (example: JuniperM5)>: <target name (example: GetIPv6Info)>-knowledge <file name of decomposition knowledge definition 103 (example: forExpectKn.txt)>
そして、IF記述分解部102は、スクリプト21を分解する場合、分解知識定義103に記述されている「def pri」後の文字列を確認する。図3の分解知識定義103では、4行目から7行目までに「def pri」と記述され、「def pri」後に「#!」、「set」、「log user」および「append」という文字列がそれぞれ記述されている。このため、IF記述分解部102は、「#!」、「set」、「log user」または「append」という文字列で始まる行を設定記述部B1とみなす。例えば、図3のスクリプト21では、「#!/usr/local/bin/expect−」、「set」で始まる行および「append」で始まる行を設定記述部B1とみなす。
Then, when decomposing the
そして、IF記述分解部102は、設定記述部B1をスクリプト21から抽出すると、文字の代入関係を設定記述部B1から抽出する。例えば、図3のスクリプト21では、4行目の「timeout」に「5」が代入されている。そして、設定記述部B1以外の部位を対象として、非代入文字を代入文字に置き換える。例えば、図3のスクリプト21では、27目の「$command」という文字列を「show ipv6 mld」に置き換える。ここで、設定記述部B1以外の部位を対象として、非代入文字を代入文字に置き換えることにより、接続記述部B2および命令記述部B3が設定記述部B1と切り離された場合においても、設定記述部B1にて設定されている内容を接続記述部B2および命令記述部B3に持たせることができる。
And IF description decomposition |
図5は、本発明の一実施形態に係る対話型アプリケーションの代入文字置き換え後の接続記述部B2および命令記述部B3の一記述例を示す図である。
図5において、接続記述部B2および命令記述部B3は設定記述部B1と切り離されるとともに、設定記述部B1に設定された代入文字が非代入文字と置き換えられている。
FIG. 5 is a diagram showing a description example of the connection description part B2 and the instruction description part B3 after substitution character substitution of the interactive application according to the embodiment of the present invention.
In FIG. 5, the connection description part B2 and the instruction description part B3 are separated from the setting description part B1, and the substitution character set in the setting description part B1 is replaced with a non-substitution character.
そして、IF記述分解部102は、設定記述部B1以外の部位の非代入文字を代入文字に置き換えると、分解知識定義103に記述されている「def conv_start」後の文字列および「def conv_end」後の文字列を確認する。そして、「def conv_start」後の文字列が最初に出現した行から、「def conv_end」後の文字列が最初に出現している行までを命令記述部B3と判断する。例えば、図3の分解知識定義103では、「def conv_start」後に「send」という文字列が記述され、「def conv_end」後に「close」という文字列が記述されている。このため、IF記述分解部102は、「send」という文字列が最初に出現した行から「close」という文字列が最初に出現している行までを命令記述部B3と判断する。例えば、図3のスクリプト21では、「send」という文字列が22行目に最初に出現し、「close」という文字列が35行目に最初に出現しているので、22行目から35行目までを命令記述部B3とみなす。
Then, when the IF
次に、IF記述分解部102は、命令記述部B3をスクリプト21から抽出すると、分解知識定義103に記述されている「def conn_start」後の文字列を確認する。そして、設定記述部B1および命令記述部B3として抽出されていない部分の中で、「def conn_start」後の文字列が最初に出現した行から、命令記述部B3の一行前までを接続記述部B2と判断する。例えば、図3の分解知識定義103では、「def conn_start」後に「spawn」という文字列が記述されている。このため、IF記述分解部102は、設定記述部B1および命令記述部B3として抽出されていない部分の中で、「spawn」という文字列が最初に出現した行から、命令記述部B3の一行前までを接続記述部B2と判断する。例えば、図3のスクリプト21では、「spawn」という文字列が11行目に最初に出現しているので、11行目から21行目までを接続記述部B2とみなす。
Next, when the instruction
次に、IF記述分解部102は、設定記述部B1、接続記述部B2および命令記述部B3にスクリプト21を分解すると、接続記述部B2および命令記述部B3を対話単位に分解する。具体的には、IF記述分解部102は、分解知識定義103に記述されている「def conv_end」後の文字列条件を確認する。そして、「def conv_end」後の文字列条件にて規定された部分を対話W1〜W5と判断する。例えば、図3の分解知識定義103では、「def conv_end」後に「expect{」および「}」、「spawn*expect{」および「}」、「send*expect{」および「}」という文字列がそれぞれ記述されている。なお、*は任意の文字列を表す正規表現である。このため、IF記述分解部102は、「expect{」および「}」で囲まれた部分、「spawn*expect{」および「}」で囲まれた部分および「send*expect{」および「}」で囲まれた部分をそれぞれ対話W1〜W5と判断する。例えば、図3のスクリプト21では、接続記述部B2は、対話W1、W2に分解され、命令記述部B3は、対話W3〜W5に分解されている。
Next, when the
そして、IF記述分解部102は、スクリプト21を設定記述部B1、接続記述部B2および命令記述部B3に分解した上で、接続記述部B2および命令記述部B3を対話W1〜W5に分解すると、IF入力部101から送られたNEプロダクト名、目的名およびスクリプト21ごとに一意のID情報を設定記述部B1、接続記述部B2および命令記述部B3にそれぞれ付与し、設定記述部テーブル105a、接続記述部テーブル105bおよび命令記述部テーブル105cにそれぞれ格納する。この時、接続記述部B2および命令記述部B3は、対話W1〜W5ごとに一テーブルに格納する。また、上部に記述された対話から順番に格納を行い、一意のオブジェクトNo.を付与する。また、前後の対話にそれぞれ付与された前オブジェクトNo.および後オブジェクトNoも、接続記述部テーブル105bおよび命令記述部テーブル105cにそれぞれ格納し、対話が検索されると、その前後の対話も検索できるようにする。
Then, the IF
図6は、図1のIF記述データベース105に格納される設定記述部テーブル105a、接続記述部テーブル105bおよび命令記述部テーブル105cの一例を示す図である
図6において、IF記述データベース105には、スクリプト21ごとに一意に付与されるID情報、ネットワークエレメント3aの種別を判定するためのNEプロダクト名、ネットワーク管理装置2が利用するスクリプト21の目的を表す目的名および分解された設定記述部B1の記述が格納される。
6 is a diagram showing an example of the setting description part table 105a, the connection description part table 105b, and the instruction description part table 105c stored in the
また、接続記述部テーブル105bには、スクリプト21ごとに一意に付与されるID情報、ネットワークエレメント3aの種別を判定するためのNEプロダクト名、ネットワーク管理装置2が利用するスクリプト21の目的を表す目的名、分解された接続記述部B2の対話記述、対話記述の特徴を表すキーワード、対話ごとに一意に付与されるオブジェクトNo.前後の対話にそれぞれ付与された前オブジェクトNo.および後オブジェクトNo.が格納される。また、対話記述のコマンドが変更された変換対話記述も格納される。
In the connection description part table 105b, ID information uniquely assigned to each
また、命令記述部テーブル105cには、スクリプト21ごとに一意に付与されるID情報、ネットワークエレメント3aの種別を判定するためのNEプロダクト名、ネットワーク管理装置2が利用するスクリプト21の目的を表す目的名、分解された命令記述部B3の対話記述、対話記述の特徴を表すキーワード、対話ごとに一意に付与されるオブジェクトNo.前後の対話にそれぞれ付与された前オブジェクトNo.および後オブジェクトNo.が格納される。また、対話記述のコマンドが変更された変換対話記述も格納される。
The command description part table 105c also includes ID information uniquely assigned to each
そして、IF記述分解部102は、設定記述部B1、接続記述部B2および命令記述部B3が設定記述部テーブル105a、接続記述部テーブル105bおよび命令記述部テーブル105cにそれぞれ格納すると、命令記述部テーブル105cに格納されたファイルに付与されたIDをIF記述モデリング部104に通知する(S7)。
そして、IF記述モデリング部104は、IF記述分解部102からIDを受け取ると、IDをキー情報として命令記述部B3の対話属性をIF記述データベース105から全て検索する(S8、S9)。そして、IF記述モデリング部104は、命令記述部B3の対話属性を検索すると、対話記述の特徴を表すキーワードを命令記述部B3の各対話属性から抽出し、対話記述の概要属性としてIF記述データベース105に対話ごとに格納する(S10)。
The IF
When receiving the ID from the IF
ここで、命令記述部B3の各対話属性からキーワードを抽出するために、IF記述モデリング部104は、「expect」などの予約文字や{(括弧)や.(ピリオド)などの区切り文字を知識として保有することができる。そして、該当する文字以外の文字列を特殊文字としてスペース文字によって区切り、区切られた単語をキーワードとして扱うことができる。また、キーワードを抽出するために、例えば、命令を含んだ対話情報の場合は、コマンド文字列(図5の例では、「show ipv6 mroute」)が抽出されるように、命令を含まない対話情報の場合は、「send」によって実際に対話型インターフェースから送信される文字列が概要情報として抽出されるように予約文字を登録することができる。この場合、IF記述モデリング部104は、分解知識定義103に「send」を記述しておき、「send」後の文字をキーワードとして抽出するなどの処理も可能である(S11、S12)。
Here, in order to extract a keyword from each dialogue attribute of the instruction description part B3, the IF
図7は、図1のIF記述モデリング部104によるキーワード抽出方法の一例を示す図である。
図7において、図3の命令記述部B3において、対話W3からは、キーワードとして「terminal」、「pager」および「off」という単語が抽出され、対話W4からは、キーワードとして「show」、「ipv6」および「mld」という単語が抽出され、対話W5からは、キーワードとして「exit」という単語が抽出されている。
FIG. 7 is a diagram illustrating an example of a keyword extraction method by the IF
7, in the instruction description part B3 of FIG. 3, the words “terminal”, “pager”, and “off” are extracted as keywords from the dialogue W3, and the keywords “show” and “ipv6” are extracted from the dialogue W4. ”And“ mld ”are extracted, and the word“ exit ”is extracted as a keyword from the dialogue W5.
そして、IF記述モデリング部104は、命令記述部B3の対話W3〜W5からキーワードを抽出すると、上部に記述された対話から順番にキーワードを命令記述部テーブル105cに格納する。そして、IF記述モデリング部104は、対話単位に抽出された対話記述を抽象化してクラスとして命令記述部テーブル105cに格納し、そのクラスのクラス名としてキーワードを付与することにより、スクリプト21のフローを表すプロセスの接続関係を表現したプロセスモデルを構築することができる(S14〜S17)。
And IF
図8は、図1のIF記述モデリング部104によるスクリプトのプロセスのモデリング方法の一例を示す図である。
図8において、「terminal」、「pager」および「off」というキーワードが対話W3から抽出され、「show」、「ipv6」および「mld」というキーワードが対話W4から抽出され、「exit」というキーワードが対話W5から抽出されると、各対話W3〜W5に対応するクラスを「process start」と「process end」との間に対話W3〜W5の順序で接続し、各対話W3〜W5から抽出されたキーワードを各クラスのクラス名としてそれぞれに付与することにより、命令記述部B3の各対話W3〜W5の順番と特徴をキーワードにて表現したプロセスモデルを構築することができる。
FIG. 8 is a diagram showing an example of a script process modeling method by the IF
In FIG. 8, the keywords “terminal”, “pager”, and “off” are extracted from the dialogue W3, the keywords “show”, “ipv6”, and “mld” are extracted from the dialogue W4, and the keyword “exit” is When extracted from the dialogue W5, the classes corresponding to the dialogues W3 to W5 are connected in the order of the dialogues W3 to W5 between the “process start” and the “process end”, and extracted from the dialogues W3 to W5. By assigning a keyword to each class as a class name, it is possible to construct a process model in which the order and characteristics of each of the dialogs W3 to W5 of the instruction description unit B3 are expressed by keywords.
また、IF記述モデリング部104は、IDをキー情報として設定記述部B1をIF記述データベース105から検索し、ベンダ知識定義部106に通知する(S13)。ここで、ベンダ知識定義部106には、設定記述部B1を別途保存するプロダクト名のディレクトリが用意されている。そして、ベンダ知識定義部106は、IF記述モデリング部104から設定記述部B1を受け取ると、目的名をファイル名としてプロダクト名のディレクトリに設定記述部B1を保存する。
Further, the IF
また、IF記述モデリング部104は、試験用IF記述調合部109にIDを通知する(S18)。そして、試験用IF記述調合部109は、IF記述モデリング部104からIDを受け取ると、IDをキー情報として、命令記述部B3の対話属性およびその概要属性をIF記述データベース105から検索する。そして、試験用IF記述調合部109は、命令記述部B3の概要属性をIF記述データベース105から検索すると、概要属性を構成するキーワードを組み替えることにより、複数のコマンド文字列を生成する。そして、対話属性のコマンド文字列を入れ替えることにより変換対話記述を生成し、命令記述部テーブル105cに保存する(S22)。例えば、図3の命令記述部B3において、「show」、「ipv6」および「mld」というキーワードが対話W4から抽出されているため、これらのキーワードを組み替えることで、「show mld」、「show ipv6」、「show mld ipv6」などのコマンド文字列を生成することができる。
Further, the IF
さらに、IF記述モデリング部104は、キーワードによってNEコマンドファイル107を検索する。そして、キーワードについての変換則がNEコマンドファイル107に定義されている場合、対話記述中のキーワードの変換を行うことにより変換対話記述を生成し、命令記述部テーブル105cに保存する(S22)。
Further, the IF
図9は、図1のNEコマンドファイル107の一記述例を示す図である
図9において、例えば、「show mld ipv6」の変換則として、「show pim join extensive」および「show ipv6 mroute」というコマンド文字列が定義されているものとすると、「show pim join extensive」または「show ipv6 mroute」というコマンド文字列にて「show mld ipv6」というコマンド文字列を置き換えた変換対話記述を生成することができる。
さらに、IF記述モデリング部104は、キーワードによって語彙変換則データベース108を検索する。そして、コマンド文字列の語彙の類義語句または反意語句が語彙変換則データベース108に定義されている場合、対話記述中のコマンド文字列の変換を行うことにより変換対話記述を生成し、命令記述部テーブル105cに保存する(S22)。
FIG. 9 is a diagram illustrating a description example of the
Further, the IF
図10は、図1の語彙変換則データベース108の内容の一例を示す図である
図10において、例えば、「show mld ipv6」の類義語句または反意語句として、「show ip mld」、「show ipv4 mroute」、「show ipv4 route」および「show ipv6 multicast」というコマンド文字列が定義されているものとすると、「show ip mld」、「show ipv4 mroute」、「show ipv4 route」または「show ipv6 multicast」というコマンド文字列にて「show mld ipv6」というコマンド文字列を置き換えた変換対話記述を生成することができる。
FIG. 10 is a diagram showing an example of the contents of the lexical
このようにして、コマンド文字列のキーワード組み替えや、NEコマンドファイル107または語彙変換則データベース108に従ってコマンドが変更された複数の対話属性が生成される。そして、これらの対話属性は、オリジナルの対話記述に対して改版された対話記述として、オリジナルと同じテーブルの属性情報としてIF記述データベース105に格納される。
In this way, a plurality of dialogue attributes in which commands are changed according to keyword rearrangement of the command character string and the
図11は、図1の端末5から各データベースおよび知識定義への入力までの手順を示すシーケンス図である。
図11において、端末5からインターフェース試験装置1にアクセスすることにより、分解知識定義103を編集することができる(S31)。また、NEコマンドファイル107および語彙変換則データベース108についても、端末5によって編集することができる(S32、S33)。
FIG. 11 is a sequence diagram showing a procedure from the
In FIG. 11, the disassembled
そして、上記の手法によりNEインターフェース22と同様の接続方法をIF触診部110が実装し、命令を変更した複数の対話記述を組み合わせた試験用IF記述ファイルを用いて試験用ネットワーク4上で実際に試験を行うことで、既存のIF記述ファイルに存在する命令および命令の文字列が自動的に組み替えられた命令を用いたIF仕様の確認試験を行うことが可能となる。
Then, the IF
このため、コマンドを人手によって試行し、実際のIF仕様の確認試験を行うためにかかる手間を削減することができる。また、コマンド文字列が組み替えられたコマンドを生成することにより、同様の命令でありながら記述が異なるコマンドが必要なネットワークエレメント3a、4aに対しても応答を引き出せる可能性を高めることができる。この時、ベンダ特有のコマンド体系をIF記述に追加することで、ネットワークエレメント3a、4aのオペレーティングシステムの更新時のIF解析の精度を向上させることができる。
For this reason, it is possible to reduce time and effort required for manually trying the command and performing a confirmation test of the actual IF specification. In addition, by generating a command in which the command character string is rearranged, it is possible to increase the possibility that a response can be drawn to the
図12は、図1のインターフェース試験装置にて生成された試験用IF記述を用いた試験用ネットワークへの触診試験の手順を示すシーケンス図である。
図12において、試験用IF記述を用いた試験用ネットワーク4への触診試験を行う場合、端末5からインターフェース試験装置1にアクセスすることにより、IF触診部110に試験指示を行うとともに、スクリプト21の目的名を入力する(S41)。そして、IF触診部110は、スクリプト21の目的名を受け取ると、その目的名を試験用IF記述調合部109に送る。そして、試験用IF記述調合部109は、IF触診部110からスクリプト21の目的名を受け取ると、その目的名をキー情報として、IF記述データベース105およびベンダ知識定義部106を検索し(S43、S45)、その目的名に対応した命令記述部および設定記述部を取得する(S44、S46)。そして、試験用IF記述調合部109は、スクリプト21の目的名に対応した命令記述部および設定記述部を取得すると、それらの命令記述部および設定記述部を用いて試験用スクリプトを生成し、IF触診部110に送る(S47)。
FIG. 12 is a sequence diagram showing a procedure of a palpation test for a test network using the test IF description generated by the interface test apparatus of FIG.
In FIG. 12, when performing a palpation test on the
そして、IF触診部110は、試験用スクリプトを試験用IF記述調合部109から受け取ると、試験用ネットワーク4への触診試験を行う(S48)。そして、IF触診部110は、触診試験の結果、ネットワークエレメント4aからの応答を引き出すと(S49)、試験内容および応答を端末5に送信する(S50)。
When the IF
これにより、実機のNE−IF解析試験の自動化およびNMS(Network Management System)−IFアダプタの自動生成が可能となり、短期間でのNMSの投入および更改が可能となるとともに、IF記述処理の自動化によりNMS開発者によるNE解析および新NE用NMS−IF開発の負担を軽減することができる。このため、NE−IFに対する実機試験の手間とNMS−IFアダプタの開発工程を削減することが可能となり、サービスを構成するシステムの設計や開発工程を短縮することが可能となることから、新技術を用いるネットワークサービスのライフサイクルが短くなるのに伴って、IFの仕様変更が頻繁に行われる現状においても、可能な限りサービスを早期に開始することができる。 This makes it possible to automate NE-IF analysis tests of actual machines and automatically generate NMS (Network Management System) -IF adapters, enabling NMS to be introduced and renewed in a short period of time, and by automating IF description processing. The burden of NE analysis and NMS-IF development for new NEs by NMS developers can be reduced. For this reason, it is possible to reduce the time and effort required to test the NE-IF and the development process of the NMS-IF adapter, and it is possible to shorten the design and development process of the system that constitutes the service. The service can be started as early as possible even in the current situation where the specifications of the IF are frequently changed as the life cycle of the network service using the network becomes shorter.
次に、複数のスクリプト21を組み合わせることにより、試験用IF情報を生成する方法について説明する。ここで、複数のスクリプト21を用いる場合、上述した1つのスクリプト21を入力する場合の手順に従って1つ目のスクリプト21を試験用IF情報として格納した後、この試験用IF情報に別のスクリプト21を組み合わせる。この方法を繰り返すことによって複数のスクリプト21を組み合わせた試験用IF情報を生成することができる。
Next, a method for generating test IF information by combining a plurality of
そして、ネットワーク管理装置2に保持されているスクリプト21の1つを端末5を介してIF入力部101に入力する。
ここで、スクリプト21を端末5からIF入力部101に入力する場合、スクリプト21が対象としているネットワークエレメント4aのプロダクト名およびスクリプト21の目的名を入力することができる。例えば、CLIからファイル名を入力してスクリプトファイルを読み込ませるとともに、NEプロダクト名およびスクリプト21の目的名をテキスト形式で入力することができる。
Then, one of the
Here, when the
そして、IF入力部101は、NEプロダクト名およびスクリプト21の目的名が入力されると、NEプロダクト名(例えば、Cisco7206)によってインターフェース試験装置1の任意の場所にディレクトリを作成する。そして、ファイル名を目的名に変更して、そのディレクトリにスクリプトファイルを保存する。
ここで、インターフェース試験装置1にディレクトリが既に存在する場合は、ファイル名を目的名に変更して、そのディレクトリにスクリプトファイルを保存する。インターフェース試験装置1にディレクトリが既に存在し、かつNEプロダクト名と目的名が同値の入力が過去に存在する場合、同じ目的名のスクリプトファイルが既に存在するという警告をCLIに表示するとともに、そのファイル名を端末5に表示し、そのスクリプトファイルを上書きするかどうか質問する。
When the NE product name and the purpose name of the
If a directory already exists in the
そして、ユーザが端末5を通して上書きしないと選択した場合、処理を終了する。一方、ユーザが端末5を通して上書きすると選択した場合、既に存在するスクリプトファイルを置き換える。
そして、スクリプトファイルを上書きした場合ならびに同一のNEプロダクト名および目的名のスクリプトファイルが存在せずスクリプトファイルをディレクトリに保存した場合、IF入力部101は、NEプロダクト名および目的名をIF記述分解部102に送る。
And when a user chooses not to overwrite through the
When the script file is overwritten, or when the script file with the same NE product name and target name does not exist and the script file is saved in the directory, the
IF記述分解部102は、NEプロダクト名および目的名をIF入力部101から受け取ると、そのNEプロダクト名と同名のディレクトリを検索し、そのディレクトリの中からその目的名と同名のスクリプトファイルを検索する。ここで、IF入力部101から受け取った目的名と同名のスクリプトファイルがなかった場合、処理を終了する。一方、IF入力部101から受け取った目的名と同名のスクリプトファイルが存在する場合、IF記述分解部102は、分解知識定義103の記述に従って、スクリプトファイルに含まれるスクリプト21を設定記述部B1、接続記述部B2および命令記述部B3に分解する。また、IF記述分解部102は、実際に通信されるコマンドをスクリプト21から別途抽出する。さらに、IF記述分解部102は、接続記述部B2および命令記述部B3については、図3に示すように、対話W1〜W5ごとに分解する。なお、分解知識定義103はテキスト形式で記述することができ、端末5によって編集することができる。
When receiving the NE product name and the target name from the
ここで、インターフェース試験装置1は、分解知識定義103を記述した複数の設定ファイルを保持することができる。そして、IF記述分解部102がどの分解知識定義103を利用するかについては、設定ファイルにファイル名を記述しておくことで予めデフォルトを決めておく方法がある。また、CLIからスクリプト21のファイル名、目的名およびNEプロダクト名を入力する時に、分解知識定義103のファイル名を入力するようにしてもよい。
Here, the
そして、IF記述分解部102は、スクリプト21を分解する場合、分解知識定義103に記述されている「def pri」後の文字列を確認する。図3の分解知識定義103では、4行目から7行目までに「def pri」と記述され、「def pri」後に「#!」、「set」、「log user」および「append」という文字列がそれぞれ記述されている。このため、IF記述分解部102は、「#!」、「set」、「log user」または「append」という文字列で始まる行を設定記述部B1とみなす。例えば、図3のスクリプト21では、「#!/usr/local/bin/expect−」、「set」で始まる行および「append」で始まる行を設定記述部B1とみなす。
Then, when decomposing the
そして、IF記述分解部102は、設定記述部B1をスクリプト21から抽出すると、文字の代入関係を設定記述部B1から抽出する。例えば、図3のスクリプト21では、4行目の「timeout」に「5」が代入されている。そして、設定記述部B1以外の部位を対象として、非代入文字を代入文字に置き換える。例えば、図3のスクリプト21では、28行目の「$command」という文字列を「show ipv6 mld」に置き換える。
And IF description decomposition |
そして、IF記述分解部102は、設定記述部B1以外の部位の非代入文字を代入文字に置き換えると、分解知識定義103に記述されている「def conv_start」後の文字列および「def conv_end」後の文字列を確認する。そして、「def conv_start」後の文字列が最初に出現した行から、「def conv_end」後の文字列が最初に出現している行までを命令記述部B3と判断する。例えば、図3の分解知識定義103では、「def conv_start」後に「send」という文字列が記述され、「def conv_end」後に「close」という文字列が記述されている。このため、IF記述分解部102は、「send」という文字列が最初に出現した行から「close」という文字列が最初に出現している行までを命令記述部B3と判断する。例えば、図3のスクリプト21では、「send」という文字列が22行目に最初に出現し、「close」という文字列が35行目に最初に出現しているので、22行目から35行目までを命令記述部B3とみなす。
Then, when the IF
次に、IF記述分解部102は、命令記述部B3をスクリプト21から抽出すると、分解知識定義103に記述されている「def conn_start」後の文字列を確認する。そして、設定記述部B1および命令記述部B3として抽出されていない部分の中で、「def conn_start」後の文字列が最初に出現した行から、命令記述部B3の一行前までを接続記述部B2と判断する。例えば、図3の分解知識定義103では、「def conn_start」後に「spawn」という文字列が記述されている。このため、IF記述分解部102は、設定記述部B1および命令記述部B3として抽出されていない部分の中で、「spawn」という文字列が最初に出現した行から、命令記述部B3の一行前までを接続記述部B2と判断する。例えば、図3のスクリプト21では、「spawn」という文字列が11行目に最初に出現しているので、11行目から21行目までを接続記述部B2とみなす。
Next, when the instruction
次に、IF記述分解部102は、設定記述部B1、接続記述部B2および命令記述部B3にスクリプト21を分解すると、接続記述部B2および命令記述部B3を対話単位に分解する。具体的には、IF記述分解部102は、分解知識定義103に記述されている「def conv_end」後の文字列条件を確認する。そして、「def conv_end」後の文字列条件にて規定された部分を対話W1〜W5と判断する。例えば、図3の分解知識定義103では、「def conv_end」後に「expect{」および「}」、「spawn*expect{」および「}」、「send*expect{」および「}」という文字列がそれぞれ記述されている。なお、*は任意の文字列を表す正規表現である。このため、IF記述分解部102は、「expect{」および「}」で囲まれた部分、「spawn*expect{」および「}」で囲まれた部分および「send*expect{」および「}」で囲まれた部分をそれぞれ対話W1〜W5と判断する。例えば、図3のスクリプト21では、接続記述部B2は、対話W1、W2に分解され、命令記述部B3は、対話W3〜W5に分解されている。
Next, when the
そして、IF記述分解部102は、スクリプト21を設定記述部B1、接続記述部B2および命令記述部B3に分解した上で、接続記述部B2および命令記述部B3を対話W1〜W5に分解すると、IF入力部101から送られたNEプロダクト名、目的名およびスクリプト21ごとに一意のID情報を設定記述部B1、接続記述部B2および命令記述部B3にそれぞれ付与し、設定記述部テーブル105a、接続記述部テーブル105bおよび命令記述部テーブル105cにそれぞれ格納する。この時、接続記述部B2および命令記述部B3は、対話W1〜W5ごとに一テーブルに格納する。また、上部に記述された対話から順番に格納を行い、一意のオブジェクトNo.を付与する。また、前後の対話にそれぞれ付与された前オブジェクトNo.および後オブジェクトNoも、接続記述部テーブル105bおよび命令記述部テーブル105cにそれぞれ格納し、対話が検索されると、その前後の対話も検索できるようにする。
Then, the IF
そして、IF記述分解部102は、設定記述部B1、接続記述部B2および命令記述部B3が設定記述部テーブル105a、接続記述部テーブル105bおよび命令記述部テーブル105cにそれぞれ格納すると、命令記述部テーブル105cに格納されたファイルに付与されたIDをIF記述モデリング部104に通知する。
そして、IF記述モデリング部104は、IF記述分解部102からIDを受け取ると、IDをキー情報として命令記述部B3の対話属性をIF記述データベース105から全て検索する。そして、IF記述モデリング部104は、命令記述部B3の対話属性を検索すると、対話記述の特徴を表すキーワードを命令記述部B3の各対話属性から抽出し、対話記述の概要属性としてIF記述データベース105に対話ごとに格納する。
The IF
When receiving the ID from the IF
ここで、命令記述部B3の各対話属性からキーワードを抽出するために、IF記述モデリング部104は、「expect」などの予約文字や{(括弧)や.(ピリオド)などの区切り文字を知識として保有することができる。そして、該当する文字以外の文字列を特殊文字としてスペース文字によって区切り、区切られた単語をキーワードとして扱うことができる。また、キーワードを抽出するために、例えば、命令を含んだ対話情報の場合は、コマンド文字列(図5の例では、「show ipv6 mroute」)が抽出されるように、命令を含まない対話情報の場合は、「send」によって実際に対話型インターフェースから送信される文字列が概要情報として抽出されるように予約文字を登録することができる。この場合、IF記述モデリング部104は、分解知識定義103に「send」を記述しておき、「send」後の文字をキーワードとして抽出するなどの処理も可能である。
Here, in order to extract a keyword from each dialogue attribute of the instruction description part B3, the IF
また、IF記述モデリング部104は、IDをキー情報として設定記述部B1をIF記述データベース105から検索し、ベンダ知識定義部106に通知する。ここで、ベンダ知識定義部106には、設定記述部B1を別途保存するプロダクト名のディレクトリが用意されている。そして、ベンダ知識定義部106は、IF記述モデリング部104から設定記述部B1を受け取ると、目的名をファイル名としてプロダクト名のディレクトリに設定記述部B1を保存する。
The IF
ここで、IF記述モデリング部104は、IDと目的名をキーとしてIF記述データベース105を検索し、目的名が同一でプロダクト名が異なる命令記述部のエントリがあるかどうかを確認する。そして、目的名が同一でプロダクト名が異なる命令記述部のエントリがある場合、同一命令で別のプロダクトのネットワークエレメントから生成されたIF記述モデリングに分解された既存の記述を組み合わせる。
Here, the IF
図13〜図15は、本発明の一実施形態に係るモデリングされた複数のプロセスのマッチング方法の一例を示す図である。
図13において、ネットワークエレメントAから生成されたIF記述モデリングのエントリとして、「terminal pager off」というクラス名が付与されたクラスと、「show ipv6 mld」というクラス名が付与されたクラスと、「exit」というクラス名が付与されたクラスとが、「process start」と「process end」との間に順次接続されている。
13 to 15 are diagrams illustrating an example of a method for matching a plurality of modeled processes according to an embodiment of the present invention.
In FIG. 13, as an IF description modeling entry generated from the network element A, a class to which the class name “terminal pager off” is assigned, a class to which the class name “show ipv6 mld” is assigned, and “exit” The classes with the class name “are sequentially connected between“ process start ”and“ process end ”.
また、ネットワークエレメントBから生成されたIF記述モデリングのエントリとして、「set terminal」というクラス名が付与されたクラスと、「show pim join extensive」というクラス名が付与されたクラスと、「show pim neighbors inet6」というクラス名が付与されたクラスと、「exit」というクラス名が付与されたクラスとが、「process start」と「process end」との間に順次接続されている。 In addition, as an IF description modeling entry generated from the network element B, a class with a class name “set terminal”, a class with a class name “show pim join extensible”, and a “show pim neighbors” A class to which a class name “inet6” is assigned and a class to which a class name “exit” is assigned are sequentially connected between “process start” and “process end”.
そして、ネットワークエレメントAから生成されたIF記述モデリングの「process start」および「process end」と、ネットワークエレメントBから生成されたIF記述モデリングの「process start」および「process end」とをそれぞれ合わせる。
そして、「process start」と「process end」との間に接続された各オブジェクト同士のクラス名のマッチングをとり、互いに包含関係または同一関係にあるクラス名を持つオブジェクト同士を同一のオブジェクトに統合する。統合されたオブジェクトのクラス名は、統合前のオブジェクトのクラス名を構成する単語を全て含むようにする。
Then, “process start” and “process end” of the IF description modeling generated from the network element A are matched with “process start” and “process end” of the IF description modeling generated from the network element B, respectively.
Then, the class names of the objects connected between “process start” and “process end” are matched, and objects having class names that are inclusive or identical to each other are integrated into the same object. . The class name of the integrated object includes all the words constituting the class name of the object before integration.
この結果、図14に示すように、図13の「terminal pager off」というクラス名が付与されたオブジェクトと、「set terminal」というクラス名が付与されたオブジェクトとが統合され、統合前のオブジェクトのクラス名を構成する単語を全て含む「set,terminal,pager off」というクラス名が付与される。また、同一のクラス名が付与された「exit」というオブジェクトが統合され、「exit」というクラス名が付与される。 As a result, as shown in FIG. 14, the object with the class name “terminal pager off” in FIG. 13 and the object with the class name “set terminal” are integrated, and the object before integration is integrated. A class name “set, terminal, pager off” including all words constituting the class name is given. Further, the object “exit” to which the same class name is assigned is integrated, and the class name “exit” is given.
次に、互いに包含関係または同一関係にあるクラス名を持つオブジェクト同士を同一のオブジェクトに統合した後、未だ統合されないで残っているオブジェクトについては、プロセスの繋がりを崩さないようしながら、オブジェクト同士を統合する。
この結果、図15に示すように、図14の「show ipv6 mld」というクラス名が付与されたオブジェクトと、「show pim join extensive」というクラス名が付与されたオブジェクトと、「show pim neighbors inet6」というクラス名が付与されたオブジェクトとが統合され、統合前のオブジェクトのクラス名を構成する単語を全て含む「show ipv6 mld,show pim join extensive,show pim neighbors inet6」というクラス名が付与される。
Next, after integrating objects with class names that are inclusive or identical to each other into the same object, the remaining objects that have not yet been integrated are Integrate.
As a result, as shown in FIG. 15, the object given the class name “show ipv6 mld” in FIG. 14, the object given the class name “show pim join extensible”, and the “show pim neighbors inet6” And the class name “show ipv6 mld, show pim join extensible, show pim neighbors inet6” including all the words constituting the class name of the object before the integration.
なお、統合前のIF記述データベース105に保持されているIF記述モデリングの属性(実際の対話記述、NEベンダ情報)は、統合後のIF記述モデリングの属性として全て独立した状態で保持される。
そして、ここまでの処理が終了すると、IF記述モデリング部104は、試験用IF記述調合部109にIDを通知する。なお、この時に試験用IF記述調合部109に通知されるIDは、統合後のデータベーステーブルのIDである。ここで、統合後のデータベーステーブルのIDは、既存の番号が古い試験用IF記述のIDを用いる。そして、試験用IF記述調合部109は、IF記述モデリング部104からIDを受け取ると、IDをキー情報として、命令記述部の対話属性およびその概要属性をIF記述データベース105から検索する。そして、試験用IF記述調合部109は、命令記述部の概要属性をIF記述データベース105から検索すると、概要属性を構成するキーワードを組み替えることにより、複数のコマンド文字列を生成する。そして、対話属性のコマンド文字列を入れ替えることにより変換対話記述を生成し、命令記述部テーブル105cに保存する。ここで、複数のIF記述が用いられるため、複数の組み合わせコマンドを生成することができる。例えば、図15の例では、「show ipv6 mld,show pim join extensive,show pim neighbors inet6」という「show ipv6 mroute」というクラス名に含まれる単語を任意に組み替えることができ、「show mld ipv6」、「show neighbors inet6」、「show neighbors ipv6」などのコマンドを生成することができる。これにより、複数のスクリプト21を組み合わせた試験用IF情報を生成することができ、1つのスクリプト21から試験用IF情報を生成した場合に比べて、期待される応答を引き出すことが可能な組み合わせコマンドの数を増やすことができ、新規に導入される接続先通信装置のインターフェース仕様に適合したスクリプトを自動生成することが可能となる。
Note that the IF description modeling attributes (actual dialog description, NE vendor information) held in the
When the processing so far is completed, the IF
また、IF記述モデリング部104は、キーワードによってNEコマンドファイル107を検索する。そして、キーワードについての変換則がNEコマンドファイル107に定義されている場合、対話記述中のキーワードの変換を行うことにより変換対話記述を生成し、命令記述部テーブル105cに保存する。
さらに、IF記述モデリング部104は、キーワードによって語彙変換則データベース108を検索する。そして、コマンド文字列の語彙の類義語句または反意語句が語彙変換則データベース108に定義されている場合、対話記述中のコマンド文字列の変換を行うことにより変換対話記述を生成し、命令記述部テーブル105cに保存する。
Further, the IF
Further, the IF
このようにして、コマンド文字列のキーワード組み替えや、NEコマンドファイル107または語彙変換則データベース108に従ってコマンド文字列が変更された複数の対話記述が生成される。そして、これらの対話属性は、オリジナルの対話記述に対して改版された対話記述として、オリジナルと同じテーブルの属性情報としてIF記述データベース105に格納される。
In this manner, a plurality of dialog descriptions in which the command character string is changed according to the keyword rearrangement of the command character string and the
本発明は、新規に導入される接続先通信装置のインターフェース仕様に適合したスクリプトを自動生成することが可能となり、ネットワーク管理装置のネットワークエレメントに対するインターフェース仕様の実機確認試験などに利用することができる。 The present invention makes it possible to automatically generate a script that conforms to the interface specification of a newly introduced connection destination communication device, and can be used for an actual machine confirmation test of the interface specification for the network element of the network management device.
1 インターフェース試験装置
2 ネットワーク管理装置
3 サービス提供用ネットワーク
3a、4a ネットワークエレメント
4 試験用ネットワーク
5 端末
21 スクリプト
22 NEインターフェース
101 IF入力部
102 IF記述分解部
103 分解知識定義
104 IF記述モデリング部
105 IF記述データベース
105a 設定記述部テーブル
105b 接続記述部テーブル
105c 命令記述部テーブル
106 ベンダ知識定義部
107 NEコマンドファイル
108 語彙変換則データベース
109 試験用IF記述調合部
110 IF触診部
DESCRIPTION OF
Claims (10)
前記スクリプト収集手段にて収集された前記スクリプトから、予め定義されたキーワードを、前記命令内容又は前記応答内容の特徴を表す概要属性として抽出する概要属性抽出手段と、
前記概要属性抽出手段で抽出された、既に導入されている接続先通信装置のインターフェース仕様に適合したスクリプトの前記概要属性を組み替えることにより、新規に導入される接続先通信装置のインターフェース仕様向けのスクリプト候補を再構成し、前記スクリプト候補のうち、前記新規に導入される接続先通信装置のインターフェース仕様に実際に適合したスクリプト候補を、前記新規に導入される接続先通信装置のインターフェース仕様に適合するスクリプトとして採用するスクリプト再構成手段とを備えることを特徴とするスクリプト生成装置。 Describes the contents of processing to be executed according to the contents of the command and the response, which is used for an interactive application in which one apparatus repeats the process of sending and receiving a command with a connection destination communication apparatus. A script collection means for collecting the collected scripts;
From the script collected by said script collection means, a summary attribute extraction means for extracting a predefined keyword, as an overview attributes representing features of the command content or the response content,
A script for the interface specification of a new connection destination communication device to be newly introduced by rearranging the summary attribute of the script that is extracted by the summary attribute extraction means and conforms to the interface specification of the already installed connection destination communication device Candidates are reconfigured, and among the script candidates, a script candidate that actually conforms to the interface specification of the newly introduced connection destination communication device conforms to the interface specification of the newly introduced connection destination communication device. A script generation device comprising script reconstruction means employed as a script.
分解知識定義に基づいて、前記スクリプトを設定記述部、接続記述部および命令記述部に分解するとともに、前記接続記述部および前記命令記述部において、予め定義された文字列条件により規定され、且つ前記接続記述部および前記命令記述部における処理の単位として設定されてなる部分を一の対話とし、前記接続記述部および前記命令記述部を前記対話単位に分割するスクリプト分解手段と、
前記接続記述部および前記命令記述部のいずれか少なくとも一方に含まれる前記キーワードを前記対話単位に抽出するキーワード抽出手段とを備え、
前記スクリプト再構成手段は、
前記キーワード抽出手段にて抽出されたキーワードを前記対話単位で組み替えることにより、組み替え前の前記対話の記述とは異なる変換対話記述を生成する変換対話記述生成手段を備えることを特徴とする請求項1記載のスクリプト生成装置。 The summary attribute extraction means includes
Based on the decomposition knowledge definition, the script is decomposed into a setting description part, a connection description part, and a command description part, and is defined by a predefined character string condition in the connection description part and the command description part , and Script decomposition means for dividing the connection description part and the instruction description part into the dialog units, with a part set as a unit of processing in the connection description part and the instruction description part as one dialog ,
The keywords included either at least one of the connection description part and the instruction description unit and a keyword extracting unit configured to extract the conversation unit,
The script reconfiguring means includes:
By rearranging the keyword extracted by the keyword extracting unit by the interactive unit, according to claim, characterized in that it comprises a conversion dialog description generating means for generating a different conversion dialog description from the description of the interaction of pre recombinant 1 The script generator described.
前記スクリプト再構成手段は、前記NEコマンドファイルまたは前記語彙変換則データベースのいずれか少なくとも一方の参照結果に基づいて、前記変換対話記述を生成することを特徴とする請求項2記載のスクリプト生成装置。 At least one of an NE command file that defines the conversion rule of the keyword, and a lexical conversion rule database that stores synonyms and antonyms of the vocabulary of the command character string configured by the keyword,
The script reconstruction means, said NE command file based on any one of at least one of the reference results of the lexical conversion rule database, the conversion interaction script generation apparatus according to claim 2, wherein the generating a description.
同一命令に対する複数のプロセス同士の語彙および接続関係を比較することにより、複数のプロセスを統合するプロセス統合手段とをさらに備えることを特徴とする請求項2または3記載のスクリプト生成装置。 Process modeling means for abstracting and expressing the process representing the flow of the script;
4. The script generation apparatus according to claim 2, further comprising process integration means for integrating a plurality of processes by comparing vocabularies and connection relationships between a plurality of processes for the same instruction.
前記対話単位に抽出された対話記述をクラスとして生成するクラス生成手段と、
前記対話記述から抽出されたキーワードをクラス名として前記クラスに付与するクラス名付与手段とを備え、
前記プロセス統合手段は、
複数のプロセスを統合することにより、各プロセスに含まれるクラス同士を統合するクラス統合手段を備え、
前記変換対話記述生成手段は、前記クラス統合手段にて統合されたクラスのキーワードをクラス単位で組み替えることにより、前記変換対話記述を生成することを特徴とする請求項4記載のスクリプト生成装置。 The process modeling means includes
And class generating means for generating a dialog description extracted in the interaction unit as a class,
And a class name assigning means for assigning to the class keywords extracted from the dialog description as the class name,
The process integration means includes
By integrating multiple processes, including a class integrating means to integrate the classes to each other included in each process,
5. The script generation apparatus according to claim 4, wherein the conversion dialog description generation unit generates the conversion dialog description by rearranging the keywords of the class integrated by the class integration unit in units of classes.
前記収集されたスクリプトの記述において、予め定義された文字列条件により規定され、且つ前記スクリプトにおける処理の単位として設定されてなる部分を一の対話とし、前記スクリプトの記述を前記対話単位に分解するステップと、
前記スクリプトに含まれる予め定義されたキーワードを、前記対話の特徴を表す概要属性として前記対話単位で抽出するステップと、
既に導入されている接続先通信装置のインターフェース仕様に適合したスクリプトの前記概要属性を組み替えることにより、新規に導入される接続先通信装置のインターフェース仕様向けのスクリプト候補を再構成し、前記スクリプト候補のうち、前記新規に導入される接続先通信装置のインターフェース仕様に実際に適合したスクリプト候補を、前記新規に導入される接続先通信装置のインターフェース仕様に適合するスクリプトとして採用するステップとを備えることを特徴とするスクリプト生成方法。 Describes the contents of processing to be executed according to the contents of the command and the response, which is used for an interactive application in which one apparatus repeats the process of sending and receiving a command with a connection destination communication apparatus. Collecting the collected scripts,
In the collected script description , a part defined by a predefined character string condition and set as a unit of processing in the script is defined as one dialog, and the script description is decomposed into the dialog units. Steps,
Extracting predefined keywords included in the script, in the dialogue unit as an overview attributes representing features of the interaction,
By rearranging the summary attribute of the script that conforms to the interface specification of the connection destination communication device that has already been installed, the script candidate for the interface specification of the connection destination communication device that is newly introduced is reconfigured, and the script candidate A script candidate that actually conforms to the interface specification of the newly installed connection destination communication device is employed as a script that conforms to the interface specification of the newly installed connection destination communication device. Characteristic script generation method.
分解知識定義に基づいて、前記スクリプトを設定記述部、接続記述部および命令記述部に分解した上で、前記設定記述部を定義ごとに分解するとともに、前記接続記述部および前記命令記述部を前記対話単位に分解するステップとを備え、
前記概要属性を前記対話単位で抽出するステップは、
前記対話単位に分解された接続記述部または命令記述部からコマンド文字列を抽出するステップと、
区切り文字を参照することにより、前記コマンド文字列を単語単位に分解したキーワードを抽出するステップとを備え、
前記スクリプトを再構成するステップは、
前記キーワードの順番を前記対話単位で入れ替えることにより、異なる対話記述を生成するステップとを備えることを特徴とする請求項6記載のスクリプト生成方法。 Decomposing the script description into the dialog units comprises :
Based on the decomposition knowledge definition, setting description section the script, after decomposing the connection description part and instruction description unit, together with decomposed into each defining the setting description section, the connection description part and the instruction description unit wherein A step of disassembling into dialogue units,
The step of extracting the summary attribute for each interaction unit includes:
Extracting a command string from the instruction description unit has been in connection description section also decomposed into the interaction unit,
Extracting a keyword obtained by decomposing the command character string into units of words by referring to a delimiter,
Reconfiguring the script comprises:
The script generation method according to claim 6, further comprising: generating different dialog descriptions by changing the order of the keywords in the dialog units.
前記クラスに含まれるキーワードを前記クラスのクラス名として付与するステップと、
前記対話記述同士の実行順または分岐を含む接続関係を判断することにより、スクリプトのフローを表すプロセスの接続関係を抽象化して表現するステップと、
同一命令に対する複数のプロセス間の語彙および接続関係を比較することにより、複数のプロセスを1つのプロセスに統合するステップと、
前記統合されたプロセスを構成するクラスのクラス名として、統合前の複数のクラスのクラス名を付与するステップと、
前記キーワードの順番を前記統合されたクラス単位で入れ替えることにより、異なる対話記述を生成するステップとを備えることを特徴とする請求項7記載のスクリプト生成方法。 Generating a class representing abstractly the dialog description decomposed into dialog units;
Assigning a keyword included in the class as a class name of the class;
Abstracting and expressing the connection relationship of the process representing the flow of the script by determining the connection relationship including the execution order or branching between the dialog descriptions;
Integrating multiple processes into one process by comparing vocabulary and connection relationships between multiple processes for the same instruction;
Assigning class names of a plurality of classes before integration as class names of classes constituting the integrated process;
The script generation method according to claim 7, further comprising: generating a different dialog description by replacing the order of the keywords in the unit of the integrated class.
前記収集されたスクリプトの記述において、予め定義された文字列条件により規定され、且つ前記スクリプトにおける処理の単位として設定されてなる部分を一の対話とし、前記スクリプトの記述を前記対話単位に分解するステップと、
前記スクリプトに含まれる予め定義されたキーワードを、前記対話の特徴を表す概要属性として前記対話単位で抽出するステップと、
既に導入されている接続先通信装置のインターフェース仕様に適合したスクリプトの前記概要属性を組み替えることにより、新規に導入される接続先通信装置のインターフェース仕様向けのスクリプト候補を再構成し、前記スクリプト候補のうち、前記新規に導入される接続先通信装置のインターフェース仕様に実際に適合したスクリプト候補を、前記新規に導入される接続先通信装置のインターフェース仕様に適合するスクリプトとして採用するステップとをコンピュータに実行させることを特徴とするスクリプト生成プログラム。 Describes the contents of processing to be executed according to the contents of the command and the response, which is used for an interactive application in which one apparatus repeats the process of sending and receiving a command with a connection destination communication apparatus. Collecting the collected scripts,
In the collected script description , a part defined by a predefined character string condition and set as a unit of processing in the script is defined as one dialog, and the script description is decomposed into the dialog units. Steps,
Extracting predefined keywords included in the script, in the dialogue unit as an overview attributes representing features of the interaction,
By rearranging the summary attribute of the script that conforms to the interface specification of the connection destination communication device that has already been installed, the script candidate for the interface specification of the connection destination communication device that is newly introduced is reconfigured, and the script candidate Of which, the computer adopts a step of adopting a script candidate that actually conforms to the interface specification of the newly installed connection destination communication device as a script that conforms to the interface specification of the newly installed connection destination communication device. A script generation program characterized by causing
前記収集されたスクリプトの記述において、予め定義された文字列条件により規定され、且つ前記スクリプトにおける処理の単位として設定されてなる部分を一の対話とし、前記スクリプトの記述を前記対話単位に分解するステップと、
前記対話単位に分解されたスクリプトから、予め定義されたキーワードを、前記対話の特徴を表す概要属性として抽出するステップと、
前記対話単位に分解された対話記述を抽象化して表現したクラスを生成するステップと、
前記スクリプトのフローを表すプロセスの接続関係を表現したプロセスモデルを構築するステップと、
各スクリプトの対話記述の順序関係を保存しながら、複数のスクリプトのプロセスモデルを命令種別ごとに統合するステップと、
統合前のクラスの前記概要属性に基づいて、前記統合されたプロセスモデルのクラスの概要属性を抽出するステップと、
既に導入されている接続先通信装置のインターフェース仕様に適合したスクリプトの前記概要属性を組み替えることにより、新規に導入される接続先通信装置のインターフェース仕様向けのスクリプト候補を再構成し、前記スクリプト候補のうち、前記新規に導入される接続先通信装置のインターフェース仕様に実際に適合したスクリプト候補を、前記新規に導入される接続先通信装置のインターフェース仕様に適合するスクリプトとして採用するステップとをコンピュータに実行させることを特徴とするスクリプト生成プログム。 Describes the contents of processing to be executed according to the contents of the command and the response, which is used for an interactive application in which one apparatus repeats the process of sending and receiving a command with a connection destination communication apparatus. Collecting the collected scripts,
In the collected script description , a part defined by a predefined character string condition and set as a unit of processing in the script is defined as one dialog, and the script description is decomposed into the dialog units. Steps,
Extracting from script decomposed into the interaction unit, a predefined keyword, as an overview attributes representing features of the interaction,
Generating a class representing abstractly the dialog description decomposed into dialog units;
Constructing a process model expressing a connection relationship of processes representing the flow of the script;
While preserving the order relation dialog description of each script, and a step of integrating the process model of a plurality of script for each instruction type,
Based on the summary attribute of the pre-integration classes, extracting Class Summary attributes of the integrated process model,
By rearranging the summary attribute of the script that conforms to the interface specification of the connection destination communication device that has already been installed, the script candidate for the interface specification of the connection destination communication device that is newly introduced is reconfigured, and the script candidate Of which, the computer adopts a step of adopting a script candidate that actually conforms to the interface specification of the newly installed connection destination communication device as a script that conforms to the interface specification of the newly installed connection destination communication device. Script generation program characterized by letting
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004256970A JP4460396B2 (en) | 2004-09-03 | 2004-09-03 | Script generation device, script generation method, and script generation program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004256970A JP4460396B2 (en) | 2004-09-03 | 2004-09-03 | Script generation device, script generation method, and script generation program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2006072806A JP2006072806A (en) | 2006-03-16 |
| JP4460396B2 true JP4460396B2 (en) | 2010-05-12 |
Family
ID=36153351
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2004256970A Expired - Fee Related JP4460396B2 (en) | 2004-09-03 | 2004-09-03 | Script generation device, script generation method, and script generation program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4460396B2 (en) |
Families Citing this family (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009048291A (en) * | 2007-08-15 | 2009-03-05 | Oki Electric Ind Co Ltd | System analysis device and program |
| JP4809871B2 (en) * | 2008-07-07 | 2011-11-09 | 日本電信電話株式会社 | Configuration setting management model creation device, configuration setting management model creation method and program thereof |
| JP5195332B2 (en) * | 2008-11-13 | 2013-05-08 | 新日鐵住金株式会社 | Network system design support system, method, program and network system design support / monitoring system |
| JP5330302B2 (en) * | 2010-03-26 | 2013-10-30 | 株式会社富士通エフサス | Operation recording program and apparatus |
| JP6326742B2 (en) | 2013-08-29 | 2018-05-23 | 富士通株式会社 | Scenario generation program, scenario execution program, scenario generation method, scenario execution method, scenario generation apparatus, and scenario execution apparatus |
| CN113297028A (en) * | 2021-03-18 | 2021-08-24 | 中国平安人寿保险股份有限公司 | Script execution method and device, computer equipment and storage medium |
-
2004
- 2004-09-03 JP JP2004256970A patent/JP4460396B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2006072806A (en) | 2006-03-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20060190579A1 (en) | Assisted command script template creation | |
| CN101431573B (en) | Method and equipment for implementing automatic customer service through human-machine interaction technology | |
| EP1100011A2 (en) | Scriptor and interpreter | |
| DE69733739T2 (en) | Computer system and method for testing a network management agent (TMN agent) | |
| US20040160464A1 (en) | System and method for providing a graphical user interface and alternate mappings of management information base objects | |
| US20080228480A1 (en) | Speech recognition method, speech recognition system, and server thereof | |
| CN108418704A (en) | A network access method for network element equipment based on automatic template configuration | |
| WO2003102767A2 (en) | Method and system for providing a command-line interface syntax from an xml specification | |
| CN113157904B (en) | Sensitive word filtering method and system based on DFA algorithm | |
| US20220366147A1 (en) | Authoring a conversation service module from relational data | |
| JPH08314825A (en) | Command script execution control method | |
| JP4460396B2 (en) | Script generation device, script generation method, and script generation program | |
| CN113726762A (en) | Internet of things equipment protocol analysis method based on configuration file | |
| US20100082666A1 (en) | Methods and devices for generating xml expressed management transactions | |
| CN120723411B (en) | Task execution method, device, system, electronic device and storage medium | |
| CN114168123B (en) | A method and terminal for realizing graphical programming | |
| JP4394225B2 (en) | Method, verification module, server, control module, and storage means for verifying configuration data for a communication system | |
| CN109600381A (en) | A kind of method for interface adaptation, apparatus and system | |
| CN120066979B (en) | Method for automatically converting database single instance use case into high-availability use case | |
| CN109120774A (en) | Terminal applies voice control method and system | |
| US20050207347A1 (en) | Provisioning control apparatus | |
| KR100358156B1 (en) | Converting Method of Managing Operation from service management system to Switching Command in a Integrated Network | |
| CN115268882A (en) | Method for collaborative editing of lightweight online codes | |
| US20050216896A1 (en) | Data communication via tanslation map exchange | |
| CN118972246B (en) | A 5G core network sub-slice configuration troubleshooting method and system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060726 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080908 |
|
| RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20090501 |
|
| RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20090501 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091110 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100107 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100209 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100212 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130219 Year of fee payment: 3 |
|
| LAPS | Cancellation because of no payment of annual fees |