(57)【要約】【課題】テストセットで使用されるメッセージパラメータへＵＩを介してアクセする【解決手段】  少なくとも１つのデータ構造体（２００）をコンピュータメモリに割り当てる（１０２）。少なくとも１つの構造体（２００）は、複数のメッセージパラメータフィールド（ＭＰＦ）を有し、それらフィールドの各々は、少なくとも１つの構造体（２００）内での確定的な位置を有する。非コンパイル型命令を翻訳して複数のＭＰＦのうち様々なものへナビゲーションする（１０４）。当該命令は、少なくとも１つの構造体（２００）内の特定のＭＰＦの位置とビット数を指定するフォームを有する。位置は、少なくとも１つの構造体（２００）内のデータオフセット数で指定される。ＭＰＦのうちの少なくとも１つへのナビゲーションに続きテストセット（４００）を構成する（１０６）。【選択図】図１
2009205681.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータ可読媒体（４０２）と、
前記コンピュータ可読媒体（４０２）上に記憶されているコンピュータ可読コード（４０４）とを備える装置であって、
前記コンピュータ可読コード（４０４）は、
少なくとも１つのデータ構造体（２００）をコンピュータメモリに割り当てる（１０２）ためのコード（４０４）であって、前記少なくとも１つのデータ構造体（２００）は、複数のメッセージパラメータフィールドを有し、該メッセージパラメータフィールドのそれぞれは、前記少なくとも１つのデータ構造体（２００）内における確定的な位置を有する、少なくとも１つのデータ構造体（２００）をコンピュータメモリに割り当てる（１０２）ためのコード（４０４）と、
非コンパイル型命令をインタープリットすることによって前記複数のメッセージパラメータフィールドのうちの様々なものへナビゲーションする（１０４）ためのコード（４０４）であって、前記命令は、ｉ）前記少なくとも１つのデータ構造体（２００）内の特定のメッセージパラメータフィールドの位置であって、前記少なくとも１つのデータ構造体（２００）内のデータオフセット数の点から指定される、位置と、ｉｉ）前記特定のメッセージパラメータフィールドのビット数と、を指定するフォームを有する、ナビゲーションする（１０４）ためのコード（４０４）と、
前記メッセージパラメータフィールドのうちの少なくとも１つへのナビゲーションに続いて通信テストセット（４００）を構成する（１０６）ためのコード（４０４）と、
を含む、装置。
【請求項２】
前記命令のうちの少なくとも１つの前記フォームは、特定のメッセージパラメータフィールドに書き込むための値を指定し、前記コンピュータ可読コード（４０４）は、前記非コンパイル型命令によって指定された値を、前記ナビゲーションされたメッセージパラメータフィールドの対応するものに書き込むためのコード（４０４）をさらに含み、前記通信テストセット（４００）を構成する（１０６）ための前記コード（４０４）は、被試験デバイスへ送信するための少なくとも１つのメッセージを生成するためのコード（４０４）を含む、請求項１に記載の装置。
【請求項３】
前記コンピュータ可読コード（４０４）は、前記通信テストセット（４００）を構成する（１０６）前に、前記データ構造体（２００）のうちの少なくとも１つに含まれる前記メッセージパラメータを連続するデータブロックにパックする（３０４）ためのコード（４０４）をさらに含む、請求項１に記載の装置。
【請求項４】
前記コンピュータ可読コード（４０４）は、前記非コンパイル型命令をインタープリットすることによって前記複数のメッセージパラメータフィールドのうちの様々なものへナビゲーションする（１０４）前に、複数の前記メッセージパラメータフィールドに複数の値を投入して、少なくとも１つのデータ投入されたデータ構造体を形成するためのコード（４０４）をさらに含み、前記非コンパイル型命令をインタープリットした結果、前記少なくとも１つのデータ投入されたデータ構造体のメッセージパラメータフィールドへのナビゲーションが行われる、請求項３に記載の装置。
【請求項５】
前記連続するデータブロック内の位置へナビゲーションし、且つ、ｉ）前記連続するデータブロック内のデータオフセットの点からの位置と、ｉｉ）挿入されるデータと、を指定するフォームを有する非コンパイル型命令をインタープリットすることによって、前記ナビゲーションされた位置に前記データを挿入するためのコード（４０４）をさらに備える、請求項４に記載の装置。
【請求項６】
通信テストセット（４００）を構成するための装置であって、
コンピュータ可読媒体と、
前記コンピュータ可読媒体上に記憶されているコンピュータ可読コードと、
を備え、前記コンピュータ可読コードは、
複数のメッセージパラメータのそれぞれについて、ｉ）該メッセージパラメータの名称と、ｉｉ）該メッセージパラメータが記憶されているメッセージパラメータフィールドの、少なくとも１つのデータ構造体（２００）内における位置であって、該少なくとも１つのデータ構造体（２００）内のデータオフセット数の点から指定される位置と、ｉｉｉ）前記メッセージパラメータフィールドのビット数と、をリトリーブする（読み出す）（５０２）ためのコードと、
前記メッセージパラメータのうちの少なくとも１つの値及び前記名称を受け取り、且つ、受け取った特定の名称及び特定の値について、ｉ）該特定の名称を有するメッセージパラメータが記憶されている特定のメッセージパラメータフィールドであって、該特定のメッセージパラメータフィールドの位置及びビット数を使用してアクセスされる、特定のメッセージパラメータフィールドにアクセスし、ｉｉ）該特定の値を使用して通信テストセット（４００）を構成するための命令を形成する（５０４）ためのコードと、
を含む、装置。
【請求項７】
前記コンピュータ可読コードは、前記メッセージパラメータの前記名称の少なくともいくつかをグラフィカルユーザインターフェース（ＧＵＩ  ６００）内に表示し、且つ、ユーザが前記メッセージパラメータの値を前記ＧＵＩ内に入力するためのメカニズム（６０４）を提供するためのコードをさらに含む、請求項６に記載の装置。
【請求項８】
前記メッセージパラメータの前記名称の少なくともいくつかを前記ＧＵＩ内に表示するための前記コードは、前記少なくとも１つのデータ構造体（２００）内において前記メッセージパラメータが記憶されている前記メッセージパラメータフィールドの前記位置によって決定されるように、階層的な方法（６０２）で前記メッセージパラメータの前記名称を表示する、請求項７に記載の装置。
【請求項９】
前記コンピュータ可読コードは、ｉ）前記メッセージパラメータの前記名称であって、第１の構造体（７０２）及び第２の構造体（７０４）に表示される、前記名称のうちの少なくともいくつかをグラフィカルユーザインターフェース（ＧＵＩ  ７００）内に表示し、ｉｉ）ユーザが前記第１の構造体（７０２）で前記メッセージパラメータの値を指定するためのメカニズムを提供し、且つ、ｉｉｉ）前記ユーザが、前記第１の構造体（７０２）で指定された前記値が有効である条件を前記第２の構造体（７０４）で指定するためのメカニズムを提供するためのコードをさらに含む、請求項６に記載の装置。
【請求項１０】
前記通信テストセット（４００）を構成するための命令を形成するための前記コードは、受け取った特定の名称及び特定の値について、特定の命令タイプをさらに受け取り、前記コードは、前記特定の命令タイプの命令を形成する、請求項６に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信テストセットの構成及び通信テストセットのコードのコンパイルに関する。
【背景技術】
【０００２】
通信テストセットの目的の１つは、通信ネットワークをエミュレーションすることである。このエミュレーションは、ネットワークを経由して被試験デバイスへメッセージを送信及び受信することを含む。たとえば、ワイヤレステストセットは、ワイヤレスネットワークをエミュレーションし、テストセットの無線周波数（ＲＦ）インターフェースを介してワイヤレスデバイスへ又はワイヤレスデバイスから「無線による（over-the-air）」シグナリングメッセージを送信及び受信することができる。
【０００３】
通信テストセットは、通常、そのテストセットによって使用されるメッセージのパラメータのうちのいくつかに対する直接的又は間接的な制御を可能にするユーザインターフェース（ＵＩ）を提供する。通常、ＵＩを介してアクセス可能な各パラメータは、テストセットのソフトウェア内で個別に設計及び実装され、その結果、実際には、ＵＩを介してアクセス可能にすることができるパラメータの個数には制限がある。ＵＩを介してアクセス可能でないパラメータは、テストセットのメッセージから排除する（たとえば、パラメータがオプションである場合）か又は固定値に設定しなければならない。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
テストセットのユーザが、テストセットのＵＩを介してアクセス可能にされていないパラメータへのアクセスを所望し又は必要とすることは避けられない。
【課題を解決するための手段】
【０００５】
本発明は、コンピュータ可読媒体と、前記コンピュータ可読媒体上に記憶されているコンピュータ可読コードとを備える装置であって、前記コンピュータ可読コードは、少なくとも１つのデータ構造体をコンピュータメモリに割り当てるためのコードであって、前記少なくとも１つのデータ構造体は、複数のメッセージパラメータフィールドを有し、該メッセージパラメータフィールドのそれぞれは、前記少なくとも１つのデータ構造体内における確定的な位置を有する、少なくとも１つのデータ構造体をコンピュータメモリに割り当てるためのコードと、非コンパイル型命令をインタープリットすることによって前記複数のメッセージパラメータフィールドのうちの様々なものへナビゲーションするためのコードであって、前記命令は、ｉ）前記少なくとも１つのデータ構造体内の特定のメッセージパラメータフィールドの位置であって、前記少なくとも１つのデータ構造体内のデータオフセット数の点から指定される、位置と、ｉｉ）前記特定のメッセージパラメータフィールドのビット数と、を指定するフォームを有する、ナビゲーションするためのコードと、前記メッセージパラメータフィールドのうちの少なくとも１つへのナビゲーションに続いて通信テストセットを構成するためのコードとを含む、装置を提供する。
【０００６】
また、本発明は、通信テストセットを構成するための装置であって、コンピュータ可読媒体と、前記コンピュータ可読媒体上に記憶されているコンピュータ可読コードと、を備え、前記コンピュータ可読コードは、複数のメッセージパラメータのそれぞれについて、ｉ）該メッセージパラメータの名称と、ｉｉ）該メッセージパラメータが記憶されているメッセージパラメータフィールドの、少なくとも１つのデータ構造体内における位置であって、該少なくとも１つのデータ構造体内のデータオフセット数の点から指定される位置と、ｉｉｉ）前記メッセージパラメータフィールドのビット数と、をリトリーブする（読み出す）ためのコードと、前記メッセージパラメータのうちの少なくとも１つの値及び前記名称を受け取り、且つ、受け取った特定の名称及び特定の値について、ｉ）該特定の名称を有するメッセージパラメータが記憶されている特定のメッセージパラメータフィールドであって、該特定のメッセージパラメータフィールドの位置及びビット数を使用してアクセスされる、特定のメッセージパラメータフィールドにアクセスし、ｉｉ）該特定の値を使用して通信テストセットを構成するための命令を形成するためのコードと、を含む、装置を提供する。
【０００７】
本発明の例示の実施の形態は図面に示されている。
【図面の簡単な説明】
【０００８】
【図１】通信テストセットを構成するための第１の例示の方法を示す図である。
【図２】図１に示す方法によって割り当てることができる例示の一組のデータ構造体を示す図である。
【図３】通信テストセットを構成するための第２の例示の方法を示す図である。
【図４】図１若しくは図３に示す方法又は他の方法を実施するための一例示の通信テストセット、ウェブサーバ、及びコンピュータシステムを示す図である。
【図５】通信テストセットを構成するための第３の例示の方法を示す図である。
【図６】図５に示す方法の実行中に図４に示すコンピュータシステムが表示することができる第１の例示のウェブブラウザウィンドウを示す図である。
【図７】図５に示す方法の実行中に図４に示すコンピュータシステムが表示することができる第２の例示のウェブブラウザウィンドウを示す図である。
【図８】通信テストセットのコードをコンパイルするための一例示の方法を示す図である。
【発明を実施するための形態】
【０００９】
以下の説明では、異なる図面に現れる同じ参照番号は、同じ要素および特徴を指すことに留意されたい。したがって、多くの場合、異なる図面に現れる同じ要素および特徴は、図面のそれぞれについて詳細に説明されない。
【００１０】
本明細書に開示した方法及び装置は、通信テストセットの構成及び通信テストセットのコードのコンパイルに関する。本明細書で使用されるように、「通信テストセット」（又はテストセット）は、被試験デバイス（ＤＵＴ）へ又はＤＵＴからメッセージを送信又は受信することによって通信ネットワークの態様の一部又は全部をエミュレーションすることができるデバイスである。例として、テストセットは、１つ又は複数のデバイス又はコンポーネントを介して実装することができ、いくつかの場合には、ハンドヘルドデバイスとして、ベンチトップコンポーネント若しくはラックマウント式コンポーネントとして、部分的若しくは全体的にパーソナルコンピュータを介して、又はコンポーネントの分散システムを介して実装することができる。また、テストセットは、ハードウェア、ソフトウェア、又はファームウェアのうちの１つ又は複数を介して実装することもできる。いくつかの実施形態では、通信テストセットは、携帯電話又はワイヤレスデータカードをテストするためのテストセット等のワイヤレス通信テストセットとすることができる。
【００１１】
本明細書で使用されるように、「通信ネットワーク」は、通信（情報）が伝送されるネットワークである。通信ネットワークは、銅線ネットワーク、ファイバネットワーク、光ベースのネットワーク等の地上ネットワークとすることができるか、又は無線周波数（ＲＦ）ネットワーク等のワイヤレスネットワークとすることができる。例として、ネットワークを経由して伝送される「通信（情報）」は、電気信号、ＲＦ信号、又は光信号を介して搬送することができる。
【００１２】
テストセットは、ＤＵＴと通信する時（すなわち、ＤＵＴへ又はＤＵＴからメッセージを送信又は受信する時）、通常、複数のメッセージを生成又はインタープリット（interpret；解釈、翻訳）する。いくつかの場合には、テストセットは、１つ又は複数のデータ構造体の複数のフィールドにデータを投入することによってこれを行う。ここで、各フィールドは、送信又は受信されたメッセージ内のパラメータを表す。通常、フィールドのそれぞれは、メモリ内の一定のビット数（すなわち、メモリ内の固定長）から成り、この一定のビット数は、実際のメッセージ内のパラメータを符号化するのに使用されるビット数以上である。たとえば、パラメータは、メッセージ内で１２ビットとして符号化することができるが、データ構造体（複数可）のうちの１つにおいては１６ビットフィールド又は３２ビットフィールドを割り付けることができる。このように、データ構造体（複数可）のフィールドは、データ構造体（複数可）内において確定的な位置（deterministic position）を有し、パラメータは、可変長パラメータ又はオプションのパラメータを考慮に入れる必要なく、データ構造体（複数可）内に投入するか又はデータ構造体（複数可）から読み出すことができる。
【００１３】
メッセージの生成の場合、前のパラグラフで述べた確定的なデータ構造体（複数可）は、いくつかの場合に、そこに含まれるパラメータを、連続するデータブロック（又はメモリ）に記憶されるメッセージ内に符号化するように処理することができる。逆に、メッセージの受信の場合、前のパラグラフで述べた確定的なデータ構造体（複数可）は、いくつかの場合に、ＤＵＴから受信された連続するデータブロックを復号することによって形成することができる。
【００１４】
図１は、上記背景をふまえた上で、通信テストセットを構成するための第１の例示の方法１００を示している。この方法１００は、コンピュータメモリに少なくとも１つのデータ構造体を割り当てることで開始する（ブロック１０２）。割り当てられたデータ構造体（複数可）は、複数のメッセージパラメータフィールドを有し、それらのメッセージパラメータフィールドのそれぞれは、少なくとも１つのデータ構造体内の確定的な位置を有する。いくつかの実施形態では、データ構造体（複数可）は、Ｃの構造体（すなわち、Ｃプログラミング言語又はその派生言語（Ｃ＋＋等）に準拠するデータ構造体）とすることができる。
【００１５】
少なくとも１つのデータ構造体を割り当てた後、非コンパイル型命令（non-compiled instruction）をインタープリットすることによって、複数のメッセージパラメータフィールドのうちの様々なものへのナビゲーション（航行、案内）が行われる（ブロック１０４）。非コンパイル型命令のそれぞれは、少なくとも、ｉ）少なくとも１つのデータ構造体内の特定のメッセージパラメータフィールドの位置と、ｉｉ）その特定のメッセージパラメータフィールドのビット数と、を指定するフォームを有する。特定のメッセージパラメータフィールドの位置は、少なくとも１つのデータ構造体内のデータオフセット数の点から指定することができる。
【００１６】
メッセージパラメータフィールドの少なくとも１つへのナビゲーションに続いて、通信テストセットが構成される（ブロック１０６）。例として、ｉ）ＤＵＴへ送信される少なくとも１つのメッセージをテストセットに生成させることによるか、ｉｉ）テストセットが内部で使用するための少なくとも１つメッセージをテストセットに生成させることによるか、又は、ｉｉｉ）特定の値を有する受信されたメッセージのパラメータに基づいて少なくとも１つの通知をテストセットに生成させることによって、テストセットを構成することができる。
【００１７】
方法１００は、或る点では、メッセージの任意のパラメータへのナビゲーションを可能にすることができると共に、メッセージの任意のパラメータの設定又は取得を可能にすることもできるため、有益である。これは、テストセットを構成するためのこれまでの方法とは異なっている。これまでの方法では、メッセージパラメータの設定及び取得が、テストセットのコンパイルされたコードとして設計され、追加のメッセージパラメータを設定又は取得することができるようにするには、テストセットのコードの変更及び再コンパイルが必要とされていた。方法１００は、非コンパイル型命令のフォームを一般的なものとすることができるか、又は、フォームの少なくとも大部分を一般的なものとすることができる点でも有益である。すなわち、異なる命令が、メッセージパラメータの「取得」又は「設定」を行うのに必要な場合があるが、各命令の要素は、同じとすることができる。
【００１８】
方法１００によって割り当てられたデータ構造体（複数可）は、さまざまな目的（及び複数の目的）で使用することができる。いくつかの場合には、データ構造体（複数可）は、１つ又は複数のメッセージを作成するための基礎として働くパラメータを記憶するのに使用することができる。作成されるメッセージは、たとえば、ＤＵＴへ送信されるメッセージを含むことができる。また、メッセージは、テストセット内で内部的に使用されるメッセージも含むことができる。他の場合には、データ構造体（複数可）は、テストセットによって受信されたメッセージのパラメータを記憶するのに使用することができる。データ構造体（複数可）は、他のメッセージで見つかったパラメータと比較されることになるパラメータを記憶するのに使用することもできる。
【００１９】
方法１００によって割り当てられたデータ構造体（複数可）は、さまざまなフォームを取ることができる。たとえば、いくつかのデータ構造体は、テストセットによって送信又は受信される１つ又は複数のメッセージを指定するのに必要なフィールド及びパラメータのすべてを含む場合がある。他のデータ構造体は、メッセージを指定するのに必要な、フィールド及びパラメータの一部しか含まない場合がある。これらの後者のデータ構造体は、メッセージの１つ又は複数の追加フィールド及び追加パラメータを含むリンクされたデータ構造体又はネストされたデータ構造体を指し示すことができるか又は含むことができる。
【００２０】
例として、図２は、例示の一組のデータ構造体２００、２０２、２０４、２０６、２０８を示している。データ構造体２００（「struct foo0」）は、第１の一組の１つ又は複数のメッセージを定義するのに必要なメッセージパラメータフィールドのすべてを含む。データ構造体２０２（「struct foo1」）は、その中にネストされたデータ構造体２０４（「struct foo2」）を有し、データ構造体２０４は、データ構造体２０６（「struct foo3」）へのリンク（又はポインタ）２１０を含む。データ構造体２０２、２０４、及び２０６は、共に、第２の一組の１つ又は複数のメッセージを定義するのに必要なメッセージパラメータのすべてを含む。最後に、データ構造体２０８（「struct foo4」）は、データ構造体２０６へのポインタ２１２を含む。データ構造体２０８及び２０６は、共に、第３の一組の１つ又は複数のメッセージを定義するのに必要なメッセージパラメータフィールドのすべてを含む。
【００２１】
テストセットが単一のデータ構造体に依拠する場合、又は、テストセットのデータ構造体のすべてが単一の最上位のデータ構造体によって関係付けられる場合、方法１００は、ｉ）データ構造体（複数可）内の特定のメッセージパラメータフィールドの位置（特定のメッセージパラメータフィールドの位置は、データオフセット数の点から指定される）、及び、ｉｉ）その特定のメッセージパラメータフィールドのビット数、のみを指定する命令を使用して、データ構造体（複数可）における複数のメッセージパラメータフィールドのうちの様々なものへナビゲーションすることができる。たとえば、テストセットが、データ構造体２００（図２）のみに依拠している場合、単一のオフセット（オフセットｘ）を使用して、データ構造体２００内の特定のメッセージパラメータフィールド２１４の位置を指定することができる。次に、ビット数（又は長さ）は、何ビット（又は何バイト）がその特定のメッセージパラメータフィールド２１４に含まれるのかを指定することができる。代替的には、データ構造体２０２、２０４、及び２０６にのみ依拠するテストセットを考える。このテストセットの場合、フィールド２１６等の特定のメッセージパラメータフィールドの位置は、次の一連のオフセット、すなわち、オフセットａ、オフセットｂ、オフセットｃとして指定することができる（ここで、「オフセットａ」は、データ構造体２０４の開始アドレスへのオフセットを指定し、「オフセットｂ」は、データ構造体２０４内のポインタ２１０へのオフセットを指定し、「オフセットｃ」は、データ構造体２０６内に含まれる特定のメッセージパラメータフィールド２１６へのオフセットを指定する）。データ構造体内の各「オフセット」は、好ましくは、そのデータ構造体の開始アドレス又は開始関数を基準にする。
【００２２】
図２に示す一組の最上位のデータ構造体２００、２０２、２０８等の、２つ以上の最上位のデータ構造体に依拠するテストセットを提供するために、データ構造体２００、２０２、２０８をナビゲーションするのに使用される命令のフォームは、それらのデータ構造体のうちの特定の１つの識別子（たとえば、「識別子０」、「識別子１」、又は「識別子２」）をさらに指定することができる。いくつかの実施形態では、この識別子は、最上位のデータ構造体の識別子とすることができ、その場合、１つ又は複数のオフセットを使用して、ｉ）最上位のデータ構造体内の特定のメッセージパラメータフィールドの位置、又は、ｉｉ）最上位のデータ構造体（又は最上位のデータ構造体に従属するデータ構造体）内にネストされた又はそのようなデータ構造体によって指し示されるデータ構造体内の特定のメッセージパラメータフィールドの位置、のいずれかを指定することもできる。いくつかの場合には、最上位のデータ構造体の「識別子」は、問題となっている構造体に関連付けられた、自動的に生成された関数へのポインタとすることができ、したがって、一意であることが保証される。
【００２３】
方法１００によれば、上述したように、テストセットは、さまざまな方法で構成することができる。しかしながら、メッセージパラメータフィールドへのナビゲーションの後であって、テストセットの構成前又は構成中においては、テストセットの構成を容易にするためにさまざまな動作を取ることができる。たとえば、いくつかの実施形態では、非コンパイル型命令の１つ又は複数のフォームは、特定のメッセージパラメータフィールドに書き込まれる値を指定することができる。これらの実施形態では、方法１００は、ナビゲーションされたメッセージパラメータフィールドのうちの対応するものへこれらの値を書き込むことを含むことができ、テストセットを構成するステップは、たとえば、ｉ）ＤＵＴへ送信するための少なくとも１つのメッセージを生成すること、又は、ｉｉ）テストセットによる内部使用のための少なくとも１つのメッセージを生成すること、を含むことができる。
【００２４】
いくつかの場合には、命令によって指定された「値」は、特定の数又は文字列を指定すること等によって明示的に指定することができる。他の場合には、命令は、その命令から外部に記憶されている値への名前やポインタ等の参照子を提供することによって、値を指定することができる。さらに他の場合には、命令は、Ｎビットの乱数値を生成するための命令等の、追加の命令によって値を指定することができる。
【００２５】
上記実施形態又は異なる実施形態では、方法１００は、ｉ）ナビゲーションされたメッセージパラメータフィールドの少なくともいくつかに記憶されている値をリトリーブする（読み出す）ステップ、及び、ｉｉ）リトリーブされ（読み出され）た値を、ユーザが特定した値と比較するステップも含むことができる。テストセットを構成するステップは、この場合、たとえば、ｉ）ＤＵＴへ送信するための（若しくはテストセットによる内部使用のための）少なくとも１つのメッセージを生成すること、又は、ｉｉ）リトリーブされた値のうちの１つが、ユーザが特定した値のうちの１つと特定の関係（たとえば、ユーザが特定した値の１つよりも大きいか、その値よりも小さい、若しくはその値の範囲内にある）ときに、少なくとも１つの通知を生成すること、を含むことができる。
【００２６】
好ましくは、データ構造体に値を書き込むこと、又は、データ構造体の値をリトリーブすること若しくは監視することは、一般的なフォーム、すなわち、
命令：識別子，位置，長さ，値
を有する１つ又は複数の命令タイプを介して達成される。
ここで、「命令」は、遂行されるオペレーションを指定し、「識別子」は、最上位のデータ構造体を特定し、「位置」は、１つ又は複数のデータ構造体へのオフセット数を指定し、「長さ」は、アクセスされるビット数を指定し、「値」は、書き込まれる値又は比較される値を指定する。
【００２７】
方法１００によって割り当てられたデータ構造体（複数可）のメッセージパラメータフィールドに値を書き込む（又は「データ投入」する）とき、非コンパイル型命令をインタープリットすることによってメッセージパラメータフィールドのすべてにデータ投入することが可能である。しかしながら、多くの場合、コンパイルされた命令を介して１つ又は複数の（又はほとんどの）メッセージパラメータフィールドにデータ投入するためのメカニズムを提供することが依然として有益である。たとえば、コンパイルされた命令は、デフォルト値を一部又は全部のメッセージパラメータフィールドにデータ投入する時に役立つ可能性があり、その結果、ユーザは、ありとあらゆるメッセージパラメータフィールドの値を指定する必要がない。また、コンパイルされた命令は、ユーザが、一般に構成又は監視されるメッセージパラメータに容易にアクセスすることを可能にするための設計されたメカニズムも提供することができる。
【００２８】
いくつかの実施形態では、方法１００は、通信テストセットを構成する前に、データ構造体のうちの少なくとも１つに含まれるメッセージパラメータを連続するデータブロックに「パック」することをさらに含むことができる。これは、方法３００のステップ３０４に示されている（図３に示す方法３００は、図１に示す方法１００の一変形である）。いくつかの場合には、連続するデータブロックは、非確定的フォーム又は自己参照型フォームを有することができる。すなわち、メッセージパラメータが、連続するデータブロックにパックされる時、確定的なデータ構造体のうちの１つにおけるオプションではあるが未指定のパラメータは、連続するデータブロックに表されない場合がある。また、可変長を有するパラメータは、確定的なデータ構造体のうちの１つ又は複数の固定長フィールドに記憶されるが、連続するデータブロックのビット数を変更することによって表すことができる。したがって、多くの場合、連続するデータブロックに含まれる（又は含まれない）１つ又は複数の他のパラメータの詳細（たとえば、存在、長さ）を知ることなく、その連続するデータブロックの特定のメッセージパラメータにナビゲーションすることは不可能である。
【００２９】
複数のメッセージパラメータを連続するデータブロックにパックした後、追加のデータをその連続するデータブロックに挿入することができる。いくつかの場合には、追加のメッセージペイロードとして、又は、ランダムデータに対するＤＵＴの応答をテストするのに使用されるランダムデータとして、データを挿入することができる。本明細書で使用されるように、「挿入」されたデータには、連続するデータブロックの２つのデータビット間に挿入されたデータだけでなく、連続するデータブロックの最初のデータビットの前に挿入されたデータ、又は、連続するデータブロックの最後のデータビットの後に挿入（すなわち、末尾に追加）されたデータも含まれる。いくつかの実施形態では、連続するデータブロック内の位置へのナビゲーションをテストセットに行わせる非コンパイル型命令及びナビゲーションされた位置へのデータの挿入をテストセットに行わせる非コンパイル型命令をインタープリットすることによって、データを挿入することができる。この点に関して、非コンパイル型命令のフォームは、ｉ）連続するデータブロックにおけるデータオフセットの点からの位置と、ｉｉ）挿入されるデータと、を指定することができる。非コンパイル型命令のフォームは、連続するデータブロックの開始アドレス等の、連続するデータブロックの識別子も指定することができる。「挿入されるデータ」は、さまざまな方法で指定することができ、明示的な指定や、命令から外部に記憶されているデータへの参照による指定、データを生成するための命令（たとえば、ランダムデータを生成するための命令）による指定等がある。
【００３０】
図３にも示すように、いくつかの実施形態では、方法３００は、非コンパイル型命令をインタープリットすることによって複数のメッセージパラメータフィールドのうちの様々なものへナビゲーションする前に、複数のメッセージパラメータフィールドに複数のメッセージパラメータを投入して、少なくとも１つのデータ投入されたデータ構造体を形成すること（ブロック３０２）を含むことができる。次に、データ投入されたデータ構造体（複数可）における複数のメッセージパラメータフィールドにナビゲーションした後（且つ、場合によっては、それらのメッセージパラメータフィールドに、複数の非コンパイル型命令によって示されるようなメッセージパラメータを設定した後）、データ投入されたデータ構造体（複数可）は、連続するデータブロック内にパックされる（ブロック３０４）。
【００３１】
図４は、方法１００又は方法３００を介して構成することができる一例示のテストセット４００を示している。通常、方法１００又は３００は、コンピュータ可読媒体４０２上に記憶されているコンピュータ可読コード４０４によって実施される。コンピュータ可読媒体（コンピュータ読み取り可能な記録媒体）４０２は、（図示するように）テストセット内に収容することができるか、テストセットに結合することができるか、又はテストセットに結合された別のデバイス若しくはコンピュータシステムによって提供することができる。コンピュータ可読媒体４０２は、たとえば、任意の個数の固定媒体若しくは着脱可能媒体（１つ又は複数の固定ディスク、ランダムアクセスメモリ（ＲＡＭ）、読み出し専用メモリ（ＲＯＭ）、コンパクトディスク等）、又は、それらの固定媒体及び着脱可能媒体を混合したものを含むことができる。コンピュータ可読コード４０４は、通常、ソフトウェア又はファームウェアを含むが、プログラミングされた回路にコード化された命令も含むことができる。
【００３２】
いくつかの実施形態では、方法１００又は３００によってインタープリットされる非コンパイル型命令を手動で作成して編集することができる。しかしながら、多くの場合、命令は、パラメータ構成プロセスを介して生成させることが有益である。この点に関して、図４は、例として、ウェブサーバ４０８上に記憶されているものとして示されている一例示のパラメータ構成プロセス４０６を示している。いくつかの実施形態では、パラメータ構成プロセス４０６は、コンピュータシステム４１２上に表示されるウェブブラウザ４１０又は他のグラフィカルユーザインターフェース（ＧＵＩ）を介してアクセスすることができる。オプションとして、コンピュータシステム４１２は、テストセット４００と統合することができる。
【００３３】
いくつかの実施形態では、パラメータ構成プロセス４０６は、テストセットによってインタープリットされる非コンパイル型命令を自動的に生成する。これを行うために、パラメータ構成プロセス４０６は、テストセット４００によって使用されるデータ構造体（複数可）のフォーム及びコンテンツを記述する情報４１４に依拠することができる。この情報４１４は、たとえば、テストセット４００又はウェブサーバ４０８を含むさまざまな場所に保持することができる。しかしながら、通常は、図４に示すように、テストセット４００に情報４１４を記憶するのが理にかなっている。いくつかの実施形態では、情報４１４は、テストセット４００によって使用されるデータ構造体（複数可）のさまざまなメッセージパラメータフィールドのそれぞれについて、ｉ）少なくとも１つのデータ構造体内におけるその特定のメッセージパラメータフィールドの位置であって、その少なくとも１つのデータ構造体内のデータオフセット数の点から指定される位置、ｉｉ）その特定のメッセージパラメータフィールドのビット数、及び、ｉｉｉ）その特定のメッセージパラメータフィールドに記憶されているメッセージパラメータの名称を含むことができる。情報４１４は、他の項目も含むことができる。たとえば、テストセット４００が、複数のデータ構造体（複数可）を利用する場合、情報４１４は、特定のメッセージパラメータフィールドが位置する最上位のデータ構造体の識別子（たとえば、関数の参照子）を含むことができる。
【００３４】
いくつかの実施形態では、情報４１４は、パラメータ構成プロセス４０６によるリトリーブ（読み出し）のためにコンピュータ可読媒体４０２に記憶することができ、情報４１４は、テストセット４００のソフトウェア又はファームウェア（たとえば、コード４０４）によってほとんど又は全く援助されることなく、テストセット４００のハードウェアインターフェース又はファームウェアインターフェースを介してリトリーブすることができる。他の実施形態では、テストセット４００のソフトウェア又はファームウェアは、情報４１４の要求を受信して、この要求に応答することができる。この要求は、パラメータ構成プロセス４０６又は他のプロセスが開始することができる。
【００３５】
この説明において後に論述されるように、情報４１４の一部は、コード４０４のコンパイル中に生成して保存することができる。情報４１４の他の部分は、コード４０４の実行時に生成することができるか、又はパラメータ構成プロセス４０６からのクエリに続いて生成することができる。たとえば、最上位のデータ構造体を特定する一意の関数の実際のメモリアドレス等の、メモリ内の最上位のデータ構造体の識別子は、コード４０４が実行されるまで入手することができない（あるいは有効でない）場合がある。この種の情報は、情報４１４の他の部分と共に、ランタイム時に生成して記憶することができるか、又はパラメータ構成プロセス４０６から受信された１つ又は複数のクエリに応答して動的に発見して返すこともできる。
【００３６】
いくつかの場合、パラメータ構成プロセス４０６は、メッセージパラメータ値をユーザに催促することができ、これらの値は、その後、テストセット４００に中継することができる。テストセット４００は、次に、受信する値に基づいてあらゆる必要な命令を生成することができる。他の場合には、パラメータ構成プロセス４０６は、ｉ）ユーザからメッセージパラメータ値を受け取ること、及び、ｉｉ）これらの値を使用するのに必要な命令を生成することの双方を行うことができる。これらの後者の場合には、テストセット４００は、命令を単に受け取って処理するだけである。
【００３７】
図５は、通信テストセットを構成するための第３の例示の方法５００を示している。いくつかの場合には、方法５００は、ウェブサーバ４０８（図４参照）上に記憶されているパラメータ構成プロセス４０６等によって、コンピュータ可読媒体上に記憶されているコンピュータ可読コードを介して実施することができる。方法５００は、複数のメッセージパラメータのそれぞれについて、ｉ）そのメッセージパラメータの名称と、ｉｉ）そのメッセージパラメータが記憶されているメッセージパラメータフィールドの、少なくとも１つのデータ構造体内における位置であって、その少なくとも１つのデータ構造体内のデータオフセット数の点から指定される位置と、ｉｉｉ）メッセージパラメータフィールドのビット数と、をリトリーブするステップ（ブロック５０２）を含む。いくつかの場合には、リトリーブされた情報は、メッセージパラメータのそれぞれについて、そのメッセージパラメータが記憶されているデータ構造体（複数可）のうちの特定の１つの識別子（たとえば、最上位のデータ構造体の識別子）をさらに含むことができる。例として、このステップでリトリーブされる情報は、テストセット４００（図４）に記憶されている情報４１４からリトリーブすることができる。
【００３８】
方法５００は、メッセージパラメータのうちの少なくとも１つの値及び名称を受け取るステップも含む。次に、受け取った名称及び値について、方法５００は、ｉ）その特定の名称を有するメッセージパラメータが記憶されている特定のメッセージパラメータフィールドにアクセスし（この特定のメッセージパラメータフィールドは、特定のメッセージパラメータフィールドの位置及びビット数を使用してアクセスされる）、ｉｉ）その特定の値を使用して通信テストセットを構成するための命令を形成することができる。ブロック５０４を参照されたい。ステップ５０２でリトリーブされた情報が、メッセージパラメータが記憶されているデータ構造体の識別子を含む場合、ステップ５０４で形成された命令のそれぞれは、これらの識別子のうちの１つを参照することができる。
【００３９】
いくつかの実施形態では、方法５００のステップ５０２、５０４の順序は重要ではない。たとえば、ユーザが、メッセージパラメータの名称をすでに知っている場合、ユーザは、メッセージパラメータについての情報がリトリーブされる前、リトリーブされている間、又はリトリーブされた後にメッセージパラメータの名称及び値を提供することができる。一方、ほとんど場合、一組のメッセージパラメータについての情報を最初にリトリーブすることが有益であると考えられている。この情報は、その後、メッセージパラメータの名称の一部又は全部をグラフィカルユーザインターフェース（ＧＵＩ）内に表示するのに使用することができ、ユーザがＧＵＩ内にメッセージパラメータの値を入力するためのテキストフィールドやポップアップウィンドウ等のメカニズムを設けることができる。この点について、図６は、コンピュータシステム４１２（図４）を介して表示することができる一例示のウェブブラウザウィンドウ６００を示している。ウィンドウ６００は、１つ又は複数のデータ構造体内においてメッセージパラメータが記憶されているメッセージパラメータフィールドの位置によって決定されるように、階層的な方法でメッセージパラメータの名称を表示する。一実施形態では、図６に示す表示の基礎となる情報は、ｉ）テストセット４００によって記憶され、ｉｉ）（たとえば、ＦＴＰプロセスを介して）ウェブサーバ４０８のパラメータ構成プロセス４０６によってリトリーブされ、次いで、ｉｉｉ）コンピュータシステム４１２によって表示されるウェブブラウザウィンドウ６００のコンテンツを生成するためにパラメータ構成プロセス４０６によって使用される。
【００４０】
例として、ウィンドウ６００は、「携帯電話テストセットコンフィギュレータ」というタイトルを有し、ウィンドウ６００は、「wb3_MM_Msg」という名称のメッセージの生成中に「デフォルト」又は他のパラメータ値をオーバーライド（override；上乗せ、上書き）するメッセージパラメータ値を入力するのに使用される。フィールド名の左に小さな「ｏ」を有する構造体６０２のいずれのフィールド（パラメータ）も拡張することができる（たとえば、そのフィールドは、それ自体を構造体とすることができる）。
【００４１】
図６に示す例示のシナリオは、構造体「plmn_list」のフィールド「present」に値「１」が与えられていることを示している。しかしながら、ユーザは、「present」フィールドを再度選択したため、ポップアップウィンドウ６０４が、「present」フィールドの新しい値を受け取る目的で生成されている。「present」フィールドは、コンポーネント「plmn_list」がメッセージに含まれるべきか否かをテストセットファームウェアに示すものである。「plmn_list」は、ロケーション更新受け付けメッセージ（LocUpAcc）のオプションのコンポーネントである。テストセットファームウェアでは、このフィールドは、「０」にハードコード化することができるが、ユーザがウィンドウ６００及び６０４を介して新しい値を指定するとオーバーライドされることになる。
【００４２】
図６に示すように、「シグナリング制御」のラベルが付けられたボタン６０６が押下される。ボタン６０６を押すことによって、ウィンドウ６００が、「オーバーライド」を受け取るように構成される。ユーザが、「シグナリング検証」のラベルが付けられたボタン６０８を押すと、「通知要求」（すなわち、通知が生成されることになる、ユーザが特定した値）を受け取るようにウィンドウを再構成することができる。
【００４３】
いくつかの場合には、パラメータ構成プロセス４０６（図４）は、リトリーブされた情報４１４を使用して、第１の構造体７０２及び第２の構造体７０４を有するＧＵＩディスプレイ７００（図７）を生成することができる。これらの第１の構造体７０２及び第２の構造体７０４のそれぞれは、少なくともいくつかのメッセージパラメータ名を表示する。いくつかの場合には、第１の構造体７０２及び第２の構造体７０４は、メッセージパラメータ名の第１のツリー及び第２のツリーとすることができ、いくつかの場合には、第１の構造体及び第２の構造体は、同一の構造体とすることができる。パラメータ構成プロセス４０６は、次に、ｉ）ユーザが第１の構造体７０２内のメッセージパラメータの値を指定するためのポップアップウィンドウ６０４（図６）等のメカニズムを提供することができ、ｉｉ）ユーザが、第２の構造体７０４において、第１の構造体７０２で指定された値が有効である条件を指定するためのポップアップウィンドウ７０６等のメカニズムを提供することができる。たとえば、第１の構造体７０２が、「plmn_list」の「present」フィールドに書き込まれる値を指定するのに使用される場合、第２の構造体７０４は、「MessageType」等の一定のメッセージパラメータが、第２の構造体７０４に提供された値を有するときにのみ、「present」フィールド用に提供された値が設定されることを指定するのに使用することができる。或いは、たとえば、第１の構造体７０２が、通知をトリガする値を指定するのに使用される場合、第２の構造体７０４は、通知が生成される前に存在しなければならない他の値（すなわち、条件）を指定するのに使用することができる。
【００４４】
方法５００（図５）が、メッセージパラメータの名称及び値を受け取ると、方法５００は、必要な命令を形成することができる。これらの命令は、特定のメッセージパラメータフィールドに特定の値を書き込む命令、並びに、ｉ）特定のユーザ定義値を、特定のメッセージパラメータフィールドからリトリーブされた値と比較する命令、及び、ｉｉ）特定の関係を有するユーザ定義値及びリトリーブされた値に関する通知を生成する命令を含めて、この説明で述べた命令のいずれも含むことができる。この関係は、たとえば、「より小さい」、「より大きい」、又は「範囲内」とすることができる。
【００４５】
方法５００が、異なるタイプの命令を形成するのに使用される場合、受け取った特定の名称及び値について、特定の命令タイプも受け取ることができる。次に、この特定の命令タイプを有する命令をステップ５０４で形成することができる。いくつかの実施形態では、異なる命令タイプは、パラメータ構成プロセス４０６（図４）によってメッセージパラメータ名がユーザに表示されるコンテキストから推論することができる。たとえば、メッセージパラメータ名が、図６に示すように、「オーバーライド」のコンテキスト内で表示される場合、新しい値をデータ構造体に書き込む命令タイプを、あらゆるユーザ提供値について推論することができる。或いは、たとえば、メッセージパラメータ名が「監視」のコンテキスト内で表示される場合、ユーザ提供値についてメッセージパラメータフィールドを監視する命令タイプを推論することができる。
【００４６】
メッセージパラメータをどのように設定することができるのか、どのように監視することができるのか、又はメッセージパラメータにどのように別の方法でアクセスすることができるのかを説明してきたが、次に、テストセットのデータ構造体を記述する情報４１４（図４）がどのように生成されるのかの説明を提供する。一実施形態では、図８に示すように、情報４１４は、テストセット４００のコンピュータ可読コード４０４（たとえば、ソフトウェア又はファームウェア）のコンピュータベースの（コンピュータによる）コンパイル中に生成することができる。たとえば、コンピュータ可読コードのコンパイル中（ブロック８０２）、複数のメッセージパラメータフィールドを有する１つ又は複数のデータ構造体の定義を、デバッグ情報を含むオブジェクトファイルから抽出することができる（ブロック８０４）。いくつかの場合には、メッセージパラメータフィールドのそれぞれは、１つ又は複数のデータ構造体内の確定的な位置を有することができる。メッセージパラメータフィールドのうちの少なくともいくつかについては、次の情報をデバッグ情報から抽出することができる。すなわち、ｉ）少なくとも１つのデータ構造体内の特定のメッセージパラメータフィールドの位置であって、少なくとも１つのデータ構造体内のデータオフセット数の点から指定される位置、ｉｉ）特定のメッセージパラメータフィールドのビット数、及び、必要ならば（たとえば、２つ以上の最上位のデータ構造体がデバッグ情報から抽出されるため）、ｉｉｉ）少なくとも１つのデータ構造体の特定の１つの識別子、を抽出することができる。ブロック８０６を参照されたい。
【００４７】
コンピュータ可読コードのコンパイルは、コンピュータ可読コードの実行中に非コンパイル型命令をインタープリットするためのコードのコンパイルをさらに含む（ブロック８０８）。非コンパイル型命令は、デバッグ情報から抽出された情報に基づいており、ｉ）少なくとも１つのデータ構造体内の特定のメッセージパラメータフィールドの位置であって、少なくとも１つのデータ構造体内のデータオフセット数の点から指定される位置と、ｉｉ）特定のメッセージパラメータフィールドのビット数と、必要ならば、ｉｉｉ）少なくとも１つのデータ構造体の特定の１つの識別子と、を指定するフォームを有する。
【００４８】
図８に示す方法８００は、コンパイルされたコンピュータ可読コード及びデバッグ情報から抽出された情報を保存するステップ（ブロック８１０）で終わる。
【００４９】
方法８００のいくつかの実施形態では、デバッグ情報を含むオブジェクトファイルは、ＤＷＡＲＦ（Debug With Arbitrary Record Format（任意の記録フォーマットを有するデバッグ））標準規格を使用してコード化されるデバッグシンボル情報を含むオブジェクトファイルとすることができる。ＤＷＡＲＦシンボル情報は、中でも、すべてのデータ構造体及びそれらのメンバーフィールドの人間が可読な名称を、特定のデータ構造体の開始アドレスに対するメモリ内のそれらのロケーションと共に含む。ＤＷＡＲＦシンボル情報は、方法８００によって抽出された「情報」の基礎として働くことができるが、少なくとも１つのデータ構造体の抽出された定義から取り除くことができる。
【００５０】
念のため、以下に、本発明の実施態様を列挙する。
（実施態様１）
コンピュータ可読媒体（４０２）と、
前記コンピュータ可読媒体（４０２）上に記憶されているコンピュータ可読コード（４０４）とを備える装置であって、
前記コンピュータ可読コード（４０４）は、
少なくとも１つのデータ構造体（２００）をコンピュータメモリに割り当てる（１０２）ためのコード（４０４）であって、前記少なくとも１つのデータ構造体（２００）は、複数のメッセージパラメータフィールドを有し、該メッセージパラメータフィールドのそれぞれは、前記少なくとも１つのデータ構造体（２００）内における確定的な位置を有する、少なくとも１つのデータ構造体（２００）をコンピュータメモリに割り当てる（１０２）ためのコード（４０４）と、
非コンパイル型命令をインタープリットすることによって前記複数のメッセージパラメータフィールドのうちの様々なものへナビゲーションする（１０４）ためのコード（４０４）であって、前記命令は、ｉ）前記少なくとも１つのデータ構造体（２００）内の特定のメッセージパラメータフィールドの位置であって、前記少なくとも１つのデータ構造体（２００）内のデータオフセット数の点から指定される、位置と、ｉｉ）前記特定のメッセージパラメータフィールドのビット数と、を指定するフォームを有する、ナビゲーションする（１０４）ためのコード（４０４）と、
前記メッセージパラメータフィールドのうちの少なくとも１つへのナビゲーションに続いて通信テストセット（４００）を構成する（１０６）ためのコード（４０４）と、
を含む、装置。
（実施態様２）
前記命令のうちの少なくとも１つの前記フォームは、特定のメッセージパラメータフィールドに書き込むための値を指定し、前記コンピュータ可読コード（４０４）は、前記非コンパイル型命令によって指定された値を、前記ナビゲーションされたメッセージパラメータフィールドの対応するものに書き込むためのコード（４０４）をさらに含み、前記通信テストセット（４００）を構成する（１０６）ための前記コード（４０４）は、被試験デバイスへ送信するための少なくとも１つのメッセージを生成するためのコード（４０４）を含む、実施態様１に記載の装置。
（実施態様３）
前記コンピュータ可読コード（４０４）は、前記通信テストセット（４００）を構成する（１０６）前に、前記データ構造体（２００）のうちの少なくとも１つに含まれる前記メッセージパラメータを連続するデータブロックにパックする（３０４）ためのコード（４０４）をさらに含む、実施態様１に記載の装置。
（実施態様４）
前記コンピュータ可読コード（４０４）は、前記非コンパイル型命令をインタープリットすることによって前記複数のメッセージパラメータフィールドのうちの様々なものへナビゲーションする（１０４）前に、複数の前記メッセージパラメータフィールドに複数の値を投入して、少なくとも１つのデータ投入されたデータ構造体を形成するためのコード（４０４）をさらに含み、前記非コンパイル型命令をインタープリットした結果、前記少なくとも１つのデータ投入されたデータ構造体のメッセージパラメータフィールドへのナビゲーションが行われる、実施態様３に記載の装置。
（実施態様５）
前記連続するデータブロック内の位置へナビゲーションし、且つ、ｉ）前記連続するデータブロック内のデータオフセットの点からの位置と、ｉｉ）挿入されるデータと、を指定するフォームを有する非コンパイル型命令をインタープリットすることによって、前記ナビゲーションされた位置に前記データを挿入するためのコード（４０４）をさらに備える、実施態様４に記載の装置。
（実施態様６）
通信テストセット（４００）を構成するための装置であって、
コンピュータ可読媒体と、
前記コンピュータ可読媒体上に記憶されているコンピュータ可読コードと、
を備え、前記コンピュータ可読コードは、
複数のメッセージパラメータのそれぞれについて、ｉ）該メッセージパラメータの名称と、ｉｉ）該メッセージパラメータが記憶されているメッセージパラメータフィールドの、少なくとも１つのデータ構造体（２００）内における位置であって、該少なくとも１つのデータ構造体（２００）内のデータオフセット数の点から指定される位置と、ｉｉｉ）前記メッセージパラメータフィールドのビット数と、をリトリーブする（読み出す）（５０２）ためのコードと、
前記メッセージパラメータのうちの少なくとも１つの値及び前記名称を受け取り、且つ、受け取った特定の名称及び特定の値について、ｉ）該特定の名称を有するメッセージパラメータが記憶されている特定のメッセージパラメータフィールドであって、該特定のメッセージパラメータフィールドの位置及びビット数を使用してアクセスされる、特定のメッセージパラメータフィールドにアクセスし、ｉｉ）該特定の値を使用して通信テストセット（４００）を構成するための命令を形成する（５０４）ためのコードと、
を含む、装置。
（実施態様７）
前記コンピュータ可読コードは、前記メッセージパラメータの前記名称の少なくともいくつかをグラフィカルユーザインターフェース（ＧＵＩ  ６００）内に表示し、且つ、ユーザが前記メッセージパラメータの値を前記ＧＵＩ内に入力するためのメカニズム（６０４）を提供するためのコードをさらに含む、実施態様６に記載の装置。
（実施態様８）
前記メッセージパラメータの前記名称の少なくともいくつかを前記ＧＵＩ内に表示するための前記コードは、前記少なくとも１つのデータ構造体（２００）内において前記メッセージパラメータが記憶されている前記メッセージパラメータフィールドの前記位置によって決定されるように、階層的な方法（６０２）で前記メッセージパラメータの前記名称を表示する、実施態様７に記載の装置。
（実施態様９）
前記コンピュータ可読コードは、ｉ）前記メッセージパラメータの前記名称であって、第１の構造体（７０２）及び第２の構造体（７０４）に表示される、前記名称のうちの少なくともいくつかをグラフィカルユーザインターフェース（ＧＵＩ  ７００）内に表示し、ｉｉ）ユーザが前記第１の構造体（７０２）で前記メッセージパラメータの値を指定するためのメカニズムを提供し、且つ、ｉｉｉ）前記ユーザが、前記第１の構造体（７０２）で指定された前記値が有効である条件を前記第２の構造体（７０４）で指定するためのメカニズムを提供するためのコードをさらに含む、実施態様６に記載の装置。
（実施態様１０）
前記通信テストセット（４００）を構成するための命令を形成するための前記コードは、受け取った特定の名称及び特定の値について、特定の命令タイプをさらに受け取り、前記コードは、前記特定の命令タイプの命令を形成する、実施態様６に記載の装置。
【図１】
2009205681.tif 000003
【図２】
2009205681.tif 000004
【図３】
2009205681.tif 000005
【図４】
2009205681.tif 000006
【図５】
2009205681.tif 000007
【図６】
2009205681.tif 000008
【図７】
2009205681.tif 000009
【図８】
2009205681.tif 000010