TTCN(Testing and Test Control Notation)は、
通信プロトコルや
Webサービスのテストに特化した
プログラミング言語です。その歴史は、バージョン1から始まり、現在ではバージョン3が主流となっています。
TTCNの進化
- - TTCN-1: 最初のバージョンであり、あまり普及しませんでした。
- - TTCN-2: 第二世代のTTCNで、TTCN-1を改良したものです。現在でも広く利用されています。このバージョンまでは、TTCNは「Tree and Tabular Combined Notation(木構造と表を組み合わせた記法)」の略称で、扱いにくい表形式で記述されていました。専用のエディタが必要でした。
- - TTCN-3: 最新の第三世代のTTCNです。名称が「Testing and Test Control Notation(テストおよびテスト制御記法)」に変更され、一般的なプログラミング言語に近い構文になり、テキストエディタで読み書きできるようになりました。TTCN-2よりも柔軟性が高く、通信プロトコルだけでなく、他のソフトウェアのテストにも応用可能です。
各バージョンはそれぞれ異なる
コンパイラまたは
インタプリタを必要とします。
TTCNの利用
TTCNは、
欧州電気通信標準化機構(ETSI)や
国際電気通信連合(ITU)で、
通信プロトコルのテストに広く利用されています。例えば、ETSIでは、
ISDN、
DECT、
GSM、EDGE、第三世代携帯電話、DSRCといった標準規格の適合試験のテストケースがTTCNで記述されています。最近では、
BluetoothやIPなどの他のプロトコル標準のテストにも使われるようになっています。
適合試験と相互運用試験
適合試験では、TTCNなどで記述されたテストケースを用いて、製品が通信規格に適合しているかを検証します。一方、相互運用試験では、テスト対象製品とそれに対応する機器を接続し、実際に動作をテストします。例えば、メールクライアントに対してはメールサーバー、電話に対しては電話網、
Bluetoothヘッドホンに対しては
Bluetooth付き電話などを使用します。
IETFなどのインターネット標準規格は、相互運用試験を主に行っています。適合試験と相互運用試験は互いに補完する関係にあり、例えば相互運用試験で発見された問題点を、適合試験のテストケースに取り入れることで、より網羅的なテストを実施できます。
TTCNとASN.1
TTCNは、ASN.1(Abstract Syntax Notation One)と組み合わせて使用されることが多いです。ASN.1は、データ構造を記述するための標準規格であり、TTCNはASN.1で定義されたデータ型をテストケースの中で使用します。
まとめ
TTCNは、
通信プロトコルの適合試験において重要な役割を担う
プログラミング言語です。特にTTCN-3は、その柔軟性から、様々なソフトウェアのテストに応用されています。
外部リンク