(57)【要約】【課題】  分散アプリケーションのテストを行う場合には、分散アプリケーションを手作業でテスト用に修正して本番運用中のシステムでテスト実施する方法や、本番用環境とは別にテスト用の環境を構築してテストを行う方法などが行われていたが、これらの方法は、テスト結果に対する信頼性が低いという課題があった。【解決手段】  テストする分散アプリケーション（ＡＰ１）１４１０を配備する際、実行モード１４２０と自動変換ルール定義情報１４３０を分散ＡＰ配備部１２２０に通知し、分散ＡＰ実行情報自動変換部１２３０が分散ＡＰ情報を自動的に変更し、ネーミングサービス部３２１０内のテスト用ネームテーブル３２１３へオブジェクト名とオブジェクト情報の登録を行う。これにより、既存アプリケーションとテスト用アプリケーションの共存を可能にし、テスト終了後の分散アプリケーションの移行も容易にする。【選択図】      図３
2006146434.tif 000002
【特許請求の範囲】
【請求項１】
１台以上の計算機からなる計算機システムが分散アプリケーションを実行するための分散アプリケーション実行環境における分散アプリケーションのテスト方法であって、
前記計算機システムは、
分散アプリケーションが本番用で実行されるかテスト用で実行されるかを示す実行モードを判断し、分散アプリケーションを実行環境に配備する分散アプリケーション配備部と
分散アプリケーションを実行する際に用いる情報を自動変換ルールによって変換する分散アプリケーション実行時情報自動変換部と
分散アプリケーションが呼び出す分散アプリケーションに付された分散オブジェクト名を参照する際のオブジェクト名参照情報を管理するネーミングサービス部と
前記ネーミングサービス部の分散オブジェクトを参照するネーミングインターフェース部と
計算機間の通信を発生する分散オブジェクト基盤部と
分散アプリケーションを格納し、前記分散アプリケーションを実行するための環境を与えるコンテナを含んで構成され、
前記計算機システムにおいて、
前記分散アプリケーション配備部が、分散アプリケーション単位で前記実行モードを付加して分散アプリケーションを配備し、
前記分散アプリケーション実行時情報自動変換部が、実行モードがテストモードの場合に実行する分散アプリケーションの実行時情報を変換し、
前記ネーミングサービス部が、前記ネーミングインターフェース部によって分散オブジェクト基盤部による通信を介して送られてきた前記分散アプリケーションのオブジェクト名とオブジェクト参照情報を実行モード毎に異なる領域で個別に管理し、
前記コンテナが前記分散アプリケーションを格納し、
前記計算機システムが、同一のオブジェクト名を持つ複数の分散アプリケーションを同時に実行すること
を特徴とする分散アプリケーションテスト方法。
【請求項２】
請求項１に記載の分散アプリケーションテスト方法において、
前記計算機システムが、
前記分散オブジェクトが前記分散オブジェクトを呼び出す分散アプリケーションとは異なる計算機に配備されている場合に前記分散オブジェクトを呼び出すリモート呼び出し部をさらに備え、
前記ネーミングインターフェース部が参照したオブジェクト参照情報に基づき、
前記リモート呼び出し部が異なる計算機に配備された前記分散アプリケーションを前記分散オブジェクト基盤部による通信を介して呼び出すことにより、
前記計算機システムが、同一のオブジェクト名を持つ複数の分散アプリケーションを同時に実行すること
を特徴とする分散アプリケーションテスト方法。
【請求項３】
請求項２に記載の分散アプリケーションテスト方法において、
分散アプリケーション単位で前記実行モードを付加して配備した分散アプリケーションにおいて、
前記分散アプリケーション実行時情報自動変換部が、
実装コード、実行環境を含んだ配備識別子又は実行時に用いる変換ルール及び実行モード情報からなる分散アプリケーションの実行時情報を、
実行モードがテストモードと指定された場合に自動変換又は自動設定を行い、
本番モードと指定された場合に前記自動変換及び前記自動設定を行わないこと
を特徴とする分散アプリケーションテスト方法。
【請求項４】
請求項３に記載の分散アプリケーションテスト方法において、
前記分散アプリケーション実行時情報自動変換部が行う実行モードに従った自動変換において、
前記自動変換ルール定義情報が、
実行モードと対応付けて定義する計算機システム共通の自動変換ルール定義情報と
配備する分散アプリケーションごとに定義する個別の自動変換ルール定義情報を含み、
分散アプリケーションの参照情報におけるオブジェクト名の変換ルールを記述した自動変換ルール定義情報が指定されている場合には、前記自動変換ルール定義情報の内容に従って分散アプリケーション実行時情報自動変換部が前記実行時情報の変換を行い、
自動変換ルール定義情報が指定されていない場合には、分散アプリケーション実行時情報自動変換部が実行モードに所定の変換を行うこと
を特徴とする分散アプリケーションテスト方法。
【請求項５】
前記テストモードの分散アプリケーションがｗｅｂ分散アプリケーションを含む場合にｗｅｂ分散アプリケーションに対して配備時又は実行時に変換を行う請求項４に記載の分散アプリケーションテスト方法において、
前記自動変換ルール定義情報をｗｅｂ分散アプリケーションの配備時に適用する場合には、
ｗｅｂブラウザからアクセスする際のｗｅｂ分散アプリケーションに必要な資源を保存する場所であるコンテキストルートのＵＲＬ情報に対して前記自動変換ルール定義情報を用いてあらかじめ実行時情報の変換を行ってから配備を行い、
前記自動変換ルール定義情報をｗｅｂ分散アプリケーションの実行時に適用する場合には、
配備時には変換を行わずに前記自動変換ルール定義情報と実行モードの情報を主記憶中に格納して、コンテナが前記主記憶中に格納した前記実行モードの情報に従って、ｗｅｂ分散アプリケーションに対して逐次必要な変換を行うこと
を特徴とする分散アプリケーションテスト方法。
【請求項６】
主記憶装置及び中央演算装置を備えた１台以上の計算機からなる計算機システムが、請求項１乃至請求項５の何れか１項に記載のテスト方法を実行すること
を特徴とする分散アプリケーションテスト装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分散オブジェクト技術やコンポーネント技術を用いて作成された分散アプリケーション（以後、「分散ＡＰ」と略記）のテストに関する。特に、分散ＡＰのテストを本番運用中の計算機上で行う技術に関する。
【背景技術】
【０００２】
分散ＡＰ（分散アプリケーション）とは、複数の計算機上に分散して配備されている複数のアプリケーション（以後、「ＡＰ」と略記）が連携して動作することで目的の処理を実現するＡＰの実行方法である。
【０００３】
ある計算機上に配備されている分散ＡＰが、他の計算機上に配備されている分散ＡＰに処理を依頼する際、目的の分散ＡＰを探す方法としては、オーエムジー(ＯＭＧ:Object Management Group)の「ネーミングサービススペシフィケーション(Naming Service Specification)」に示されるネーミングサービス(Naming Service)を利用して、オブジェクト参照情報を取得する方法が一般的である。
【０００４】
ネーミングサービスからオブジェクト情報を取得する方法としては、特許文献１に記載されているような高速化技術も提案されている。
【０００５】
また、既存の分散ＡＰを変更する場合、その分散ＡＰの動作検証を行う方法としては、本番用環境に類似したテスト用環境を構築してテストを行う方法や、分散ＡＰを実行するための情報を変更し、既存の分散ＡＰとは異なる分散ＡＰとして本番用環境に配備してテストを行う方法が一般的である。
【特許文献１】特開２００４−３０４８６号公報（段落０００７〜００１１、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、本番用環境に類似したテスト用環境を構築してテストを行う方法は、本番用環境とは別に環境を構築する必要があるために構築コストがかかる他、本番用環境と完全に同一の環境（接続先情報や各種ポート情報他）を用意することは難しい等の問題がある。
【０００７】
また、分散ＡＰを実行するための情報を変更し、既存の分散ＡＰとは異なる分散ＡＰとして本番用環境に配備してテストを行う方法では、配備する分散ＡＰを実行するための情報をテスト用に人手で変更する必要があり、テスト終了後、本番用環境へ移行するためには、折角動作確認を行った分散ＡＰに対して再度人手による変更作業が発生してしまう。このため、人為的なミスが発生する可能性があり、テストの信頼性が薄れてしまう。これを避けるため、本発明は、分散ＡＰを実行するための情報を変更せずに本番用環境を利用したテストを実現することを課題とする。
【課題を解決するための手段】
【０００８】
前記課題を達成するために、テストする分散ＡＰを配備する際に、テスト用であることを配備ツールに通知することで、分散ＡＰの実行のための実行時情報（実装コード、または実行環境の定義情報、配備方法や実装コードに直接含まないＡＰの動作に関する情報を含んだ配備識別子、又は、実行時に用いる主記憶装置中の変換ルール及び実行モードの情報）を自動変換し、オブジェクト参照情報を実行モードごとに個別に管理し、参照することにより既存の分散ＡＰとテストする分散ＡＰを共存させる。
【発明の効果】
【０００９】
分散ＡＰ単位に実行モード（本番モード／テストモード：ただし、テストモードは１種類ではなく、多種にわたる。）を付加することにより、本番稼動している分散ＡＰサーバ上で実行中の分散ＡＰと同一のオブジェクト名を持つ分散ＡＰの動作テストを行うことが可能となる。また、テストを行う分散ＡＰの実行時情報を手動でテスト用に変更することなくテストを実施することが可能であり、テスト終了後に容易に本番用環境への移行を行うことができる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明を実施するための最良の形態を図面に基づき詳細に説明する。
【００１１】
［分散アプリケーションテスト装置の構成］
図１は、本発明の分散アプリケーションテスト装置（分散オブジェクトシステム）の一実施形態を示す図である。本実施形態は、ネットワーク１００で接続された計算機１０００、計算機２０００及び計算機３０００で実現されるシステムである。このうち、計算機３０００は、計算機１０００及び計算機２０００に含まれていないネーミングサービス部３２１０を主記憶装置３２００の中に有する構成になっていて、計算機１０００及び計算機２０００とは異なる役割を担っている。
【００１２】
計算機１０００は、ＣＰＵ（Central Processing Unit）１１００及び主記憶装置１２００から構成され、主記憶装置１２００上には分散ＡＰの実行環境を提供するコンテナ１２１０、分散ＡＰの配備を行う分散ＡＰ配備部１２２０、分散ＡＰの実行時情報を自動的に変換する分散ＡＰ実行時情報自動変換部１２３０、ネーミングインタフェース部１２４０、リモート呼び出し部１２５０、分散オブジェクト基盤部１２６０が配置される。さらに、コンテナ１２１０には、分散ＡＰ１２１１，１２１２，１２１３が配置されており、ネーミングインタフェース部１２４０には、ネームテーブルアクセス制御部１２４１が存在する。
【００１３】
なお、本実施形態の説明で使用する「配備」とは、（１）分散ＡＰをコンテナ上に準備する、（２）コンテナ上に準備した分散ＡＰを開始する、のうち、（１）＋（２）又は（１）の意味を指す。また、「実行時情報」とは、分散ＡＰの、実装コード、実行環境の定義情報、または配備方法や実装コードに直接含まないＡＰの動作に関する情報を含んだ配備識別子、又は、実行時に用いる主記憶装置中の変換ルール及び実行モードの情報を指す。
【００１４】
計算機２０００は、ＣＰＵ２１００及び主記憶装置２２００から構成され、主記憶装置２２００上には分散ＡＰの実行環境を提供するコンテナ２２１０、分散ＡＰの配備を行う分散ＡＰ配備部２２２０、分散ＡＰの実行時情報を自動的に変換する分散ＡＰ実行時情報自動変換部２２３０、ネーミングインタフェース部２２４０、リモート呼び出し部２２５０、分散オブジェクト基盤部２２６０が配置される。さらに、コンテナ２２１０には、分散ＡＰ２２１１，２２１２，２２１３が配置されており、ネーミングインタフェース部２２４０には、ネームテーブルアクセス制御部２２４１が存在する。
【００１５】
計算機３０００は、ＣＰＵ３１００及び主記憶装置３２００から構成され、主記憶装置３２００上にはネーミングサービス部３２１０及び分散オブジェクト基盤部３２６０が配置されている。ネーミングサービス部３２１０には、ネームテーブル３２１１が存在し、本テーブルには本番用ネームテーブル３２１２とテスト用ネームテーブル３２１３が存在する。
【００１６】
本実施形態では、ネットワークに接続された計算機１０００及び計算機２０００と計算機３０００とを分けた形態の例を示しているが、複数要素を１台の計算機に割り当てて、分散アプリケーションテスト装置を構成してもよい。以下、各部について簡単に説明する。
【００１７】
［コンテナ］
コンテナ１２１０，２２１０は、分散ＡＰの実行環境を提供する。そして、分散ＡＰはこのコンテナの中に配備された後、実行が開始される。図１の例では、分散ＡＰ１２１１，１２１２，１２１３，２２１１，２２１３，２２１３は、コンテナに配備された後、それぞれに要求された処理を実行する。
【００１８】
［分散ＡＰ配備部］
分散ＡＰ配備部１２２０，２２２０は、指定された分散ＡＰの配備を行う。そして、実行モードに応じて配備のための処理を切り替える機能なども含めている。
【００１９】
［分散ＡＰ実行時情報自動変換部］
分散ＡＰ実行時情報自動変換部１２３０，２２３０は、実行モードがテストモードの時に分散ＡＰの実行時情報を自動的に変換する。なお、実行モードが本番モードの場合には、分散ＡＰ実行時情報自動変換部１２３０，２２３０を呼び出さずに、分散ＡＰがそのままの実行時情報で開始される。
【００２０】
［ネーミングインタフェース部］
ネーミングインタフェース部１２４０，２２４０は、ネーミングサービス部３２１０へアクセスする場合のインタフェースである。各ネーミングインタフェース部は、それぞれのネームテーブルアクセス制御部を含んで構成される。
【００２１】
［ネームテーブルアクセス制御部］
ネームテーブルアクセス制御部１２４１，２２４１は、ネームテーブル３２１１へアクセスする機能を備える。ただし、直接ネームテーブルアクセス制御部１２４１，２２４１自身だけでアクセスするのではなく、後記する分散オブジェクト基盤部１２６０，２２６０の通信機能を利用する形になっている。
【００２２】
［リモート呼び出し部］
リモート呼び出し部１２５０，２２５０は、リモートオブジェクトへのリクエストを送る通信層である。公知の技術例としては、http://java.sun.com/products/jdk/rmi/に示されるＲＭＩ（Ｒｅｍｏｔｅ  Ｍｅｔｈｏｄ  Ｉｎｖｏｃａｔｉｏｎ）の技術があり、本実施形態の例ではその機能を使用している。
【００２３】
［分散オブジェクト基盤部］
分散オブジェクト基盤部１２６０，２２６０，３２６０は、分散オブジェクトへのリクエストを送る通信層である。リモート呼び出し部１２５０，２２５０と同様に、前記のＲＭＩの技術をそのまま適用している。分散オブジェクト基盤部１２６０，２２６０及び３２６０は、それぞれの計算機で分散オブジェクトを実行するための環境を与えるものであり、リモート呼び出し部１２５０，２２５０及びネーミングサービス部３２１０を含む各計算機の機能要素から他の計算機の機能又は他の計算機のオブジェクトを呼び出す場合に下請けの処理をして、他の計算機への通信を行う。
【００２４】
［ネーミングサービス部］
ネーミングサービス部３２１０は、ネームテーブル３２１１へ通知されたオブジェクト名とオブジェクト参照情報を格納したり、通知されたオブジェクト名をキーとしてオブジェクト参照情報を検索したりする。ネーミングサービス部３２１０は、後記するネームテーブル３２１１を含んで構成される。なお、ネーミングサービス部３２１０は、システムに１つ実装されていれば充分であるが、ネーミングサービス部の数は必ずしも１つに限られない。
【００２５】
［ネームテーブル］
ネームテーブル３２１１は、システム上のオブジェクトのオブジェクト名、オブジェクト参照情報を、本番用の分散ＡＰである場合とテスト用分散ＡＰである場合とで格納先テーブルを切り分けて格納する。
【００２６】
［分散ＡＰのテスト実行までの処理の流れ］
図２は、本実施形態において、分散ＡＰをテスト実行するまでの処理の流れを示す図である。分散ＡＰをテストする際には、分散ＡＰを単に読み込んで即座に開始できるわけではない。まず、テストされる分散ＡＰの配備が行われる必要があるが、この配備の段階は、さらに２段階に分けられる。第１の段階は、分散ＡＰ実行時情報自動変換部によって行われる配備処理であり（Ｓ１１）、第１の段階で分散ＡＰの実行時情報の変換が行われて、分散ＡＰ配備部１２２０によってコンテナに準備される。そして、第２の段階は、ネームテーブルアクセス制御部によって行われる配備処理であり（Ｓ１２）、この処理によって第１の段階で実行時情報が変換された分散ＡＰが開始できるようになる。そして、分散ＡＰから他の分散ＡＰを呼び出すために、他の分散ＡＰを検索処理する（Ｓ１３）。これらの段階を経過した後には、準備されたコンテナ上の分散ＡＰを実際にテスト実行できるようになる（Ｓ１４）。
【００２７】
［テスト用分散ＡＰの配備］
図３は、分散ＡＰ（ＡＰ１）１４１０をテストの目的で計算機１０００に配備する際の処理の流れを示す図である。図５は、この処理の流れを補足説明するための図である。以下、図５におけるテストモードでの配備の流れも適宜参照しつつ、図３に従って、配備処理の流れについて説明する。なお、この配備処理は、図２の説明における配備の第１の段階（Ｓ１１）と配備の第２の段階（Ｓ１２）についての具体例である。
【００２８】
（１）分散ＡＰ配備部１２２０は、配備を行う分散ＡＰ（ＡＰ１）１４１０と実行モード１４２０、および配備時の分散ＡＰ実行時情報の自動変換ルール定義情報１４３０から構成されるＡＰ配備情報１４００を入力情報として受け取る。そして、配備要求を受けた分散ＡＰ配備部１２２０は、入力情報として受け取った実行モード１４２０を判断した上で、分散ＡＰの配備処理を開始する（Ｓ１０１）。
【００２９】
（２）本番運用時以外のモード（テストモード）が指定されている場合には分散ＡＰ実行時情報自動変換部１２３０へ分散ＡＰ情報の変換要求を行う（Ｓ１０２）。
【００３０】
（３）分散ＡＰ実行時情報自動変換部１２３０は、分散ＡＰ配備部１２２０より通知された配備対象の分散ＡＰ（ＡＰ１）１４１０に対して、自動変換ルール定義情報１４３０と自動変換ルール共通定義情報１３００を基に実行時情報の変換を行う。ただし、自動変換ルール共通定義情報１３００が定義されていない場合には、実行モード１４２０ごとにあらかじめ設定された変換ルールを基に実行時情報を変換する。ここで、分散ＡＰ毎に指定可能な自動変換ルール定義情報１４３０は指定を省略することが可能であり、また指定された場合は自動変換ルール共通定義情報１３００よりも優先する（Ｓ１０３）。
【００３１】
（４）分散ＡＰ実行時情報自動変換部１２３０は、変換処理が終了したことを分散ＡＰ配備部１２２０へ通知する（Ｓ１０４）。
【００３２】
（５）分散ＡＰ配備部１２２０は、実行時情報の変換が行われた分散ＡＰ（ＡＰ１）１２１１ａをコンテナ１２１０に配備する（Ｓ１０５）。
【００３３】
（６）分散ＡＰ配備部１２２０は、コンテナ１２１０への配備後、ネームテーブルアクセス制御部１２４１に対して配備したテスト用のオブジェクト名（ＴＥＳＴ／計算機１／コンテナ／ＡＰ１）とオブジェクト参照情報（Ｒｅｆｅｒｅｎｃｅ１ａ）を通知して、テスト用ネームテーブル３２１３への格納を要求する。なお、テスト用のオブジェクト名は自動変換ルール共通定義情報１３００もしくは自動変換ルール定義情報１４３０で指定された指定文字列（本実施形態では「ＴＥＳＴ」）を使用する（Ｓ１０６）。
【００３４】
（７）ネームテーブルアクセス制御部１２４１は、受け取ったオブジェクト名（ＴＥＳＴ／計算機１／コンテナ／ＡＰ１）とオブジェクト参照情報（Ｒｅｆｅｒｅｎｃｅ１ａ）を分散オブジェクト基盤部１２６０に通知して、ネーミングサービス部３２１０に格納することを要求する（Ｓ１０７）。
【００３５】
（８）分散オブジェクト基盤部１２６０では、通信を発生させて、受け取ったオブジェクト名（ＴＥＳＴ／計算機１／コンテナ／ＡＰ１）とオブジェクト参照情報（Ｒｅｆｅｒｅｎｃｅ１ａ）を計算機３０００の分散オブジェクト基盤部３２６０に通知してネーミングサービス部３２１０にあるネームテーブル３２１１のテスト用ネームテーブル３２１３へ格納を要求する（Ｓ１０８）。
【００３６】
（９）計算機３０００の分散オブジェクト基盤部３２６０は、ネーミングサービス部３２１０にあるネームテーブル３２１１内のテスト用ネームテーブル３２１３に、受け取ったオブジェクト名（ＴＥＳＴ／計算機１／コンテナ／ＡＰ１）とオブジェクト参照情報（Ｒｅｆｅｒｅｎｃｅ１ａ）を格納する（Ｓ１０９ａ）。登録の結果は、テスト用ネームテーブル登録情報３３２０の列３３２１のようになる。
【００３７】
（１０）ネーミングサービス部３２１０は、終了を通知するリターンコードを分散オブジェクト基盤部３２６０に通知する（Ｓ１１０）。
【００３８】
（１１）分散オブジェクト基盤部３２６０は通信を発生させて、受け取ったリターンコードを分散オブジェクト基盤部１２６０に通知する（Ｓ１１１）。
【００３９】
（１２）分散オブジェクト基盤部１２６０は、受け取ったリターンコードをネームテーブルアクセス制御部１２４１に通知する（Ｓ１１２）。
【００４０】
（１３）ネームテーブルアクセス制御部１２４１は、終了を通知するリターンコードを分散ＡＰ配備部１２２０に通知する（Ｓ１１３）。
【００４１】
以上の配備処理が終了した後には、分散ＡＰ配備部１２２０からコンテナ１２１０に終了を通知するリターンコードが通知され、これを契機として、コンテナ１２１０上に準備された実行時情報変換後の分散ＡＰ（ＡＰ１）１２１１ａを開始することが可能になる。
【００４２】
［本番用分散ＡＰの配備］
図４は、分散ＡＰ（ＡＰ１）１４１０を本番用として計算機１０００に配備する際の処理の流れを示す図である。以下、配備処理の流れについて、適宜図５の本番モードの流れを参照しつつ、図４に従って説明する。図３と同じ処理については、同じ符号を付して、説明を省略する。
【００４３】
（１）図３のＳ１０１と同様に実行モードを判断して、分散ＡＰの配備処理を開始する（Ｓ１０１）。なお、本番運用時のモードが指定されている場合、あるいは何も指定されていない場合には分散ＡＰ実行時情報自動変換部１２３０への処理要求は行わない。
【００４４】
（２）から（５）までにあたるＳ１０５からＳ１０８までの処理は、図３と同じなので説明を省略する。
【００４５】
（６）計算機３０００の分散オブジェクト基盤部３２６０は、ネーミングサービス部３２１０にあるネームテーブル３２１１内の本番用ネームテーブル３２１２に、受け取ったオブジェクト名（計算機１／コンテナ／ＡＰ１）とオブジェクト参照情報（Ｒｅｆｅｒｅｎｃｅ１ｂ）を格納する。登録の結果は、本番用ネームテーブル登録情報３３１０の列３３１１のようになる（Ｓ１０９ｂ）。
【００４６】
（７）から（１０）までにあたるＳ１１０からＳ１１３までの処理は、図３と同じなので説明を省略する。
【００４７】
ここまでの配備処理の後、引き続き、分散ＡＰ配備部１２２０からコンテナ１２１０へ終了を通知するリターンコードが通知され、コンテナ１２１０に配備されている分散アプリケーション（ＡＰ１ａ）１２１１ａは、受け取ったオブジェクト参照情報（Ｒｅｆｅｒｅｎｃｅ２ａ）を使用して分散アプリケーション（ＡＰ２ａ）２２１１ａを呼び出して処理を要求する。
【００４８】
テストモードの場合と同様に、以上の配備処理が終了した後には、分散ＡＰ配備部１２２０からコンテナ１２１０に終了を通知するリターンコードが通知され、これを契機として、コンテナ１２１０上に準備された実行時情報変換後の分散ＡＰ（ＡＰ１）１２１１ａを開始することが可能になる。
【００４９】
図５は、テストモードと本番モードの両方について、配備処理の流れを示して補足説明する図である。既に図５のＳ１０１からＳ１１３までの個別のステップは、既に図３及び図４に関する説明の中で説明されているが、テストモードと本番モードのステップ相互の相違について、ここで説明する。
【００５０】
図５では、テストモードに固有のステップを太枠で囲み、ネームテーブルを管理する計算機で行われるステップは２重の枠で囲んである。テストモードに固有の動きをするステップは、図５の中ではＳ１０２，Ｓ１０３，Ｓ１０４及びＳ１０９ａが該当する。このうち、Ｓ１０２，Ｓ１０３及びＳ１０４は、本番モードの配備処理には該当するステップがなく、テストに用いる分散ＡＰを自動変換ルール定義情報及び自動変換ルール共通定義情報を用いて実行時情報の変換を行って、テスト用の分散ＡＰを行えるようにしているステップである。
【００５１】
そして、Ｓ１０９ａは、本番モードの配備処理におけるＳ１０９ｂに該当するものであるが、これはネームテーブルに格納する際にテスト用と本番用を区別してあることが相違点となっている。
【００５２】
テストモードと本番モードで相違するこれらのステップ、特にＳ１０３とＳ１０４は、本実施形態において、テストモードの分散ＡＰを本番と同じ環境で実行できる環境を形成するために重要な役割を果たしている。
【００５３】
［分散ＡＰ実行時情報自動変換部の配備処理］
図６は、コンテナ上に分散ＡＰを配備するときに行う分散ＡＰ実行時情報自動変換部１２３０の処理フローチャート例を示す図である。この処理フローチャート例は、テストモード及び本番モードに対して個別に説明した分散ＡＰの配備の処理の流れをまとめて示している図である。なお、図６において説明されている処理は、図２では、分散ＡＰ実行時情報自動変換部の配備処理（Ｓ１１）に該当する。
【００５４】
まず、配備しようとしている分散ＡＰの実行モード１４２０を確認し、本番用の分散ＡＰであるかを確認する（Ｓ３０１）。
【００５５】
そして、本番用の分散ＡＰであれば（Ｓ３０１のＹｅｓ）処理を終了する。本番用でない分散ＡＰ（テストモードでの配備）である場合は（Ｓ３０１のＮｏ）、実行時情報を自動的に変換するための自動変換ルール共通定義情報１３３０又は自動変換ルール定義情報１４３０の何れか１つ以上が定義されているかの確認を行う（Ｓ３０２）。
【００５６】
何れの定義もない場合は（Ｓ３０２のＮｏ）、実行モード１４２０ごとにシステムで予め設定された変換ルールを基に実行時情報の変換を行い、処理を終了する（Ｓ３０３）。
【００５７】
実行時情報を自動的に変換するための自動変換ルール共通定義情報１３００もしくは自動変換ルール定義情報１４３０の何れかが定義されている場合は（Ｓ３０２のＹｅｓ）、自動変換ルール共通定義情報１３００の条件を確認し、実行時情報の変更を行う必要があるかを確認する（Ｓ３０４）。
【００５８】
条件に一致するものがあった場合は（Ｓ３０４のＹｅｓ）、分散ＡＰの実行時情報を自動変換ルール共通定義情報１３００に従って変更する（Ｓ３０５）。
【００５９】
条件に一致するものがない場合（Ｓ３０４のＮｏ）、又はＳ３０５の実行時情報の変更後は、配備する分散ＡＰ個別に指定可能である自動変換ルール定義情報１４３０が指定されているかを確認する（Ｓ３０６）。
【００６０】
指定されていない場合は（Ｓ３０６のＮｏ）、処理を終了する。指定されている場合は（Ｓ３０６のＹｅｓ）、自動変換ルール定義情報１４３０の条件を確認し、実行時情報の変更を行う必要があるかを確認する（Ｓ３０７）。
【００６１】
条件に一致するものがない場合は（Ｓ３０７のＮｏ）、処理を終了する。条件に一致するものがあった場合は（Ｓ３０７のＹｅｓ）、分散ＡＰの実行時情報を自動変換ルール定義情報１４３０に従って再度変更し（Ｓ３０８）、処理を終了する。
【００６２】
前記の分散ＡＰ実行時情報自動変換部の配備処理は、例えば配備する分散ＡＰがサーブレット（http://java.sun.com/products/servlet/参照）の分散ＡＰであった場合にも適用することができる。この場合は、この分散ＡＰに他からアクセスするための文書ルート（コンテキストルート情報）を本番用とテスト用で切り分ける必要があるため、配備前にこの情報を保持しているデプロイメント記述子（deployment descriptor）を自動変換ルール共通定義情報１３００または自動変換ルール定義情報１４３０で指定された値に変更する。
【００６３】
また、配備する分散ＡＰがＥＪＢ（Enterprise Java Beans、登録商標、http://java.sun.com/products/ejb/参照）の分散ＡＰである場合にも、やはり分散ＡＰ実行時情報自動変換部の配備処理が可能である。配備する分散ＡＰがＥＪＢ（登録商標）の分散ＡＰである場合には、さらにこの分散ＡＰが他のＥＪＢ（登録商標）の分散ＡＰを参照しているような場合が問題となる。この場合には、参照先を本番用とテスト用で切り分ける必要があるため、配備前にこの情報を保持しているデプロイメント記述子を自動変換ルール共通定義情報１３００または自動変換ルール定義情報１４３０で指定された値に変更する。
【００６４】
自動変換処理の別の一例として、変換を行う対象の実行時情報が、実行時に用いる主記憶装置中の変換ルール及び実行モードの情報である場合は、前記の配備の際の変換を行わずに同様の環境を提供できる。この場合は、テスト用にＡＰ固有の実装コードやデプロイメント記述子などの情報を一切変更することなく動作の切り替えが可能となる。
【００６５】
例えば、分散ＡＰの配備時に分散ＡＰ実行時情報自動変換部１２３０にて実行中の分散ＡＰの実行モード１４２０に例として「テストＡ」（図１２の４５００）の定義がある場合は、自動変換ルール共通定義情報１３００及び自動変換ルール定義情報１４３０（例：図１２の「テストＡ,＿testA＿,TEST1」（４５００））を実行時に用いる主記憶装置中の変換ルール及び実行モードの情報として保持しておき、配備後の分散ＡＰ実行時、本番用とテスト用で処理の切り分けが必要となる場合に、この実行時に用いる主記憶装置中の変換ルール及び実行モードの情報を使用して、動的に必要な情報を変換する。
【００６６】
他のＥＪＢ（登録商標）の分散ＡＰを参照する例（「計算機２／コンテナ／ＡＰ２」）の場合、分散ＡＰの実行時に本変換部１２３０で保存した実行時のメモリ情報を参照し、実際に参照が起きる際に適切なオブジェクト参照情報（「ＴＥＳＴ１／計算機２／コンテナ／ＡＰ２」）に変換して処理を切り分けるという処理の流れになる。
【００６７】
［ネームテーブルアクセス制御部の配備処理］
図７は、コンテナ上に分散ＡＰを配備する際に行う、ネームテーブルアクセス制御部１２４１の処理フローチャート例を示す図である。図７も図６同様にテストモードや本番モードを個別にではなく、両者をまとめて配備処理の流れを説明するものである。なお、この処理は図２におけるネームテーブルアクセス制御部の配備処理（Ｓ１２）に該当する処理である。
【００６８】
まず、配備しようとしている分散ＡＰ（ＡＰ１）１４１０の実行モード１４２０を確認し、本番用の分散ＡＰであるかを確認する（Ｓ４０１）。
【００６９】
本番用の分散ＡＰであれば（Ｓ４０１のＹｅｓ）、本番用ネームテーブルに通知されたオブジェクト名とオブジェクト参照情報を登録して（Ｓ４０２）、処理を終了する。
【００７０】
本番用でない分散ＡＰ（テストモードでの配備）である場合は（Ｓ４０１のＮｏ）、テストモード用ネームテーブルが既に存在するかをチェックする（Ｓ４０３）。
【００７１】
存在しない場合に（Ｓ４０３のＮｏ）、テスト用ネームテーブルの作成を行い（Ｓ４０４）、存在する場合には（Ｓ４０３のＹｅｓ）、次のＳ４０５のステップに進む。
【００７２】
テストモード用ネームテーブルが既に存在する場合、又はＳ４０４でテストモード用ネームテーブルの作成を終えた後は、そのテストモード用ネームテーブルに対して通知されたオブジェクト名とオブジェクト参照情報を登録して（Ｓ４０５）、処理を終了する。
【００７３】
［テストモードの分散ＡＰからのテストモードの分散ＡＰの検索処理］
図８は、分散ＡＰ（ＡＰ１ａ）１２１１ａと分散ＡＰ（ＡＰ２ａ）２２１１ａとが異なる計算機上に共にテストモードで配備された状態において、分散ＡＰ（ＡＰ１ａ）１２１１ａから分散ＡＰ（ＡＰ２ａ）２２１１ａを参照する場合のオブジェクト参照情報取得処理の流れを示す図である。図１０は、検索処理の流れを補足説明する図である。以下、テストモードにおける分散ＡＰの検索処理の流れについて、適宜図１０を参照しつつ、図８に従って説明する。なお、図８で説明する部分は、図２における分散ＡＰの検索処理（Ｓ１３）のステップに該当する部分である。
【００７４】
（１）分散ＡＰ（ＡＰ１ａ）１２１１ａは、ネームテーブルアクセス制御部１２４１に分散ＡＰ（ＡＰ２ａ）２２１１ａのオブジェクト名（ＴＥＳＴ／計算機２／コンテナ／ＡＰ２）を通知して分散ＡＰ（ＡＰ２ａ）２２１１ａのオブジェクト参照情報を問い合わせる。ここで問い合わせに使用されるオブジェクト名は、分散ＡＰ配備時の実行時情報変換処理により変更済みとなっているため、取得したオブジェクト名で期待する実行モードのオブジェクト参照情報へアクセスすることが可能である（Ｓ２０１ａ）。
【００７５】
（２）ネームテーブルアクセス制御部１２４１は、通知されたオブジェクト名（ＴＥＳＴ／計算機２／コンテナ／ＡＰ２）を分散オブジェクト基盤部１２６０へ通知し、ネームテーブル３２１１からのオブジェクト参照情報の取得を要求する（Ｓ２０２ａ）。
【００７６】
（３）分散オブジェクト基盤部１２６０では、通信を発生させて、受け取ったオブジェクト名（ＴＥＳＴ／計算機２／コンテナ／ＡＰ２）を計算機３０００の分散オブジェクト基盤部３２６０に通知してオブジェクト参照情報を問い合わせる（Ｓ２０３）。
【００７７】
（４）計算機３０００の分散オブジェクト基盤部３２６０は、ネーミングサービス部３２１０にあるネームテーブル３２１１に、受け取ったオブジェクト名（ＴＥＳＴ／計算機２／コンテナ／ＡＰ２）を通知してオブジェクト参照情報を問い合わせる（Ｓ２０４）。
【００７８】
（５）ネーミングサービス部３２１０は、受け取ったオブジェクト名（ＴＥＳＴ／計算機２／コンテナ／ＡＰ２）を使ってネームテーブル３２１１から分散ＡＰ（ＡＰ２ａ）２２１１の参照情報を検索し、取得したオブジェクト参照情報を分散オブジェクト基盤部３２６０に通知する。具体的にはネームテーブル登録情報３３００内のテスト用ネームテーブル登録情報３３２０の登録情報３３２２が検索され、そのオブジェクト参照情報（Ｒｅｆｅｒｅｎｃｅ２ａ）が返される（Ｓ２０５）。
【００７９】
（６）分散オブジェクト基盤部３２６０は通信を発生させて、受け取った検索結果（Ｒｅｆｅｒｅｎｃｅ２ａ）を分散オブジェクト基盤部１２６０に通知する（Ｓ２０６）。
【００８０】
（７）分散オブジェクト基盤部１２６０は、受け取った検索結果（Ｒｅｆｅｒｅｎｃｅ２ａ）をネームテーブルアクセス制御部１２４１に通知する（Ｓ２０７）。
【００８１】
（８）ネームテーブルアクセス制御部１２４１は、受け取った検索結果（Ｒｅｆｅｒｅｎｃｅ２ａ）を呼び出し元である分散ＡＰ（ＡＰ１ａ）１２１１ａに通知する（Ｓ２０８）。
【００８２】
ステップＳ２０８でオブジェクトの検索処理の部分は終了するが、その後、分散ＡＰ（ＡＰ１ａ）１２１１ａは、受け取ったオブジェクト参照情報（Ｒｅｆｅｒｅｎｃｅ２ａ）を使用して分散ＡＰ（ＡＰ２ａ）２２１１ａを呼び出して処理を要求するところから分散ＡＰの実行を続行する。これ以後の動きについては、図１１の説明において後記する。
【００８３】
以上のような処理でコンテナ１２１０上に配備された分散ＡＰから他の分散ＡＰを参照する場合は、分散ＡＰの配備時に実行時情報の自動変換処理を行っているため、呼び出し元の分散ＡＰ側では実行モードごとに適切な呼び出し先の参照情報を既に保持している。これにより、実行モードを問題にすることなく呼び出し要求を行うことが可能である。
【００８４】
［通常の分散ＡＰからのテストモードの分散ＡＰの検索処理］
図９は、テストモードで配備された分散ＡＰ（ＡＰ２ａ）２２１１ａを他の計算機上の通常の（本番用と同様の）分散ＡＰ（ＡＰ１）１４１０から参照する場合の取得処理の流れの一例を示す図である。
【００８５】
分散ＡＰ（ＡＰ１）１４１０において、参照先の分散ＡＰ（ＡＰ２ａ）２２１１ａのオブジェクト名を本番用の名（計算機２／コンテナ／ＡＰ２）で実装している場合、実行時の引数情報として実行モード１４２０と参照先の分散ＡＰ（ＡＰ２ａ）２２１１ａの配備時に使用した自動変換ルール定義情報１４３０を与えることで分散ＡＰ１４１０の実装を変更することなく分散ＡＰ（ＡＰ２ａ）２２１１ａの動作テストを実施することが可能である。
【００８６】
以下、通常の分散ＡＰからテストモードで配備された分散ＡＰに対する検索処理の流れについて、適宜図１０を参照しつつ、説明する。なお、図９で説明する部分は、図２における分散ＡＰの検索処理（Ｓ１３）のステップに該当する部分である。なお、図９には、図８と同じ処理の部分が多数あるので、図８と同じ符号を付して、説明を省略する。
【００８７】
（１）分散ＡＰ（ＡＰ１）１４１０は、実行時の引数情報（具体例としては、Java（登録商標）言語で記述された分散ＡＰの場合の実行時のコマンド引数やシステムプロパティ値としての指定等）として受け取った実行モード１４２０と参照先の分散ＡＰ（ＡＰ２ａ）２２１１ａの配備時に使用した自動変換ルール定義情報１４３０と、オブジェクト名（計算機２／コンテナ／ＡＰ２）をネームテーブルアクセス制御部１２４１に通知して分散ＡＰ（ＡＰ２ａ）２２１１ａのオブジェクト参照情報を問い合わせる（Ｓ２０１ｂ）。
【００８８】
（２）ネームテーブルアクセス制御部１２４１は、通知された実行モード１４２０と自動変換ルール定義情報１４３０を使用して通知されたオブジェクト名（計算機２／コンテナ／ＡＰ２）を実行モードに合うオブジェクト名（ＴＥＳＴ／計算機２／コンテナ／ＡＰ２）に変更し、変更後のオブジェクト名（ＴＥＳＴ／計算機２／コンテナ／ＡＰ２）を分散オブジェクト基盤部１２６０へ通知し、ネームテーブルからのオブジェクト参照情報の取得を要求する（Ｓ２０２ｂ）。
【００８９】
以下、（３）から（８）までにあたるＳ２０３からＳ２０８については、図８と同じなので、説明を省略する。なお、図８のテストモードで配備された分散ＡＰからの検索処理の場合と同様に、図９に示す通常の分散ＡＰからの検索処理に引き続いて、分散ＡＰを実行する処理が継続するが、この処理については後記する。
【００９０】
検索処理において、テストモードで配備された分散ＡＰからの場合と通常の分散ＡＰからの場合とで異なるのは、図１０にも示すように最初の２つのステップだけである。図１０では、両者の処理が異なるときはテストモードで配備された分散ＡＰからの場合の処理をするステップを太枠で囲んで示している。最初の２つのステップにおいて、両者の動作で差が生じるのは、テストモードで配備された分散ＡＰからの検索処理の場合には、通常の分散ＡＰからの場合とは異なり、予め配備の際に必要な情報が与えられているために引数情報で指定された実行モードや自動変換ルール定義情報に基づいてオブジェクト名の変更を行う必要がないためである。
【００９１】
図１１は、前記の配備処理及び検索処理に引き続いて行われる分散ＡＰの呼び出しの処理を説明する図である。図１１に示すステップは、図８及び図９に示されているＳ２０１乃至Ｓ２０８による検索処理に引き続いて行われるＳ２０９乃至Ｓ２１８のステップと同じものである。なお、この段階では、テストモードの配備や検索であるか否かでの違いはなく、ここまでに説明してきたそれぞれの配備処理及び検索処理に引き続いて行われる分散ＡＰの呼び出しの処理は、図１１に示されるものと同様に処理される。
【００９２】
検索処理終了後、まず、オブジェクト名と取得した参照情報を通知して、リモート呼び出し部１２５０へ分散ＡＰ（ＡＰ２ａ）２２１１ａの呼び出しを行う（Ｓ２０９）。次に、リモート呼び出し部１２５０は、オブジェクト名とオブジェクト参照情報を分散オブジェクト基盤部１２６０へ通知する（Ｓ２１０）。オブジェクト名とオブジェクト参照情報を受け取った分散オブジェクト基盤部１２６０が、通信を発生させて、参照される対象オブジェクトを配備した計算機の分散オブジェクト基盤部にオブジェクト名とオブジェクト参照情報を通知する（Ｓ２１１）。
【００９３】
通知を受けた参照される対象オブジェクトを配備した計算機の分散オブジェクト基盤部は、リモート呼び出し部にオブジェクト参照情報を通知し、参照される対象の呼び出しを要求する（Ｓ２１２）。リモート呼び出し部は、コンテナに配備されている参照される対象の分散ＡＰを呼び出して開始する（Ｓ２１３）。分散ＡＰの終了後、分散ＡＰは、終了したことを示すリターンコードをリモート呼び出し部に通知する（Ｓ２１４）。リモート呼び出し部は、呼び出された分散ＡＰが終了したことを示すリターンコードを分散オブジェクト基盤部に通知する（Ｓ２１５）。そして、分散オブジェクト基盤部は、通信を発生させて、リターンコードを呼び出し元の計算機に通知する（Ｓ２１６）。
【００９４】
呼び出し元の計算機の分散オブジェクト基盤部は、リターンコードをリモート呼び出し部に通知する（Ｓ２１７）。リモート呼び出し部は、呼び出し元の分散アプリケーションに対して、呼び出したアプリケーションが終了したことを通知する（Ｓ２１８）。
【００９５】
［自動変換ルール共通定義情報］
図１２は、本発明における一実施形態の自動変換ルール共通定義情報１３００の一例を示すデータ構造図である。本実施形態では、分散ＡＰとしてサーブレットやＥＪＢ（登録商標）の分散ＡＰを想定しており、分散ＡＰの配備／実行の種別を示す実行モード４１００と対になる形で、変換ルールとしてコンテキストルート識別子４２００とネームテーブルルート識別子４３００の２つを定義する。この自動変換ルール共通定義情報は分散ＡＰの配備時に参照される。コンテキストルート識別子４２００は、分散ＡＰがサーブレットである場合に、このサーブレットに他からアクセスするための文書ルート（コンテキストルート）の情報を実行モードによって自動的に変更する際に使用される。ネームテーブルルート識別子４３００は、分散ＡＰのオブジェクト参照情報をネームテーブル３２１１に登録する際に、登録するオブジェクト名のルート情報を実行モードによって自動的に変更する際に使用される。
【００９６】
このデータ構造を使用した具体的な一実行例として、例えばコンテキストルートが「jsptobean/」でオブジェクト名が「WebAP1」という情報を持ったＷｅｂ分散ＡＰの配備を、実行モード−本番モード（４４００）と実行モード−テストＡモード（４５００）で行った場合、コンテキストルートは、本番モードでは「jsptobean/」、テストＡモードでは「＿testA＿/jsptobean/」となる。また、ネームテーブル３２１１に登録されるオブジェクト名は、本番モードでは「WebAP1」、テストＡモードでは「TEST1/WebAP1」となる。図１３はデプロイメント記述子の自動変換を説明する図であり、このテストＡモードでのデプロイメント記述子を変換する前後の例を示している。
【００９７】
［自動変換ルール定義情報］
図１４は、本発明における一実施形態の自動変換ルール定義情報１４３０の一例を示すデータ構造図である。本実施形態の一例では、コンテキストルート識別子４２００とネームテーブルルート識別子４３００の２つの変換ルールを定義する。この自動変換ルール定義情報も分散ＡＰの配備時や分散アプリケーションの実行時に参照される。
【００９８】
ここまで説明してきたように、本実施形態では、テスト用の分散ＡＰの実行時情報を変換させる方法などを備えることによって、本番用の分散ＡＰを実行している同じ計算機で、本番用の分散ＡＰに対する間違った参照を行ったり、本番使用中の分散ＡＰに干渉したりすることなく、正しくテストを実行できる。このことにより、従来は困難だった分散ＡＰに対する信頼性の高いテストを実際に本番用の分散ＡＰが稼動している計算機で実施できるようになり、しかも、テストが終了した分散ＡＰを容易に本番用として同じ計算機上に稼動させることができる。さらに、本実施形態で採用した方法は、開発言語や開発環境にかかわらず、分散ｗｅｂＡＰも含めた分散ＡＰ一般に対して適用できる方法である。これにより、低コストで信頼性の高い分散ＡＰのテストが実現できる。
【００９９】
なお、このテスト方法は、ＣＰＵ及び主記憶装置を備えた計算機によって実行され、テスト方法を実現するプログラムは、情報記憶媒体に記憶することができ、このプログラムを計算機の主記憶装置に読み込むことで、前記計算機を本発明のテスト方法を備えた分散アプリケーションテスト装置とすることができる。
【図面の簡単な説明】
【０１００】
【図１】本発明の分散オブジェクトシステムの一実施形態を示す図である。
【図２】分散ＡＰをテスト実行するまでの処理の流れを示す図である。
【図３】分散ＡＰをテストの目的で計算機に配備する際の処理の流れを示す図である。
【図４】分散ＡＰを本番用として計算機に配備する際の処理の流れを示す図である。
【図５】配備処理の流れを補足説明するための図である。
【図６】分散ＡＰ実行時情報自動変換部の処理フローチャート例を示す図である。
【図７】ネームテーブルアクセス制御部の処理フローチャート例を示す図である。
【図８】２つの分散ＡＰが異なる計算機上に共にテストモードで配備された状態において、１つの分散ＡＰからもう１つの分散ＡＰを参照する場合のオブジェクト参照情報取得処理の流れを示す図である。
【図９】テストモードで配備された分散ＡＰを他の計算機上の通常の分散ＡＰから参照する場合の取得処理の流れの一例を示す図である。
【図１０】テストモードで配備された分散ＡＰ及び通常の分散ＡＰからの参照情報検索処理の流れを補足説明する図である。
【図１１】分散ＡＰの呼び出しの処理を説明する図である。
【図１２】自動変換ルール共通定義情報の一例を示すデータ構造図である。
【図１３】デプロイメント記述子の自動変換を説明する図である。
【図１４】自動変換ルール定義情報の一例を示すデータ構造図である。
【符号の説明】
【０１０１】
１００    ネットワーク
１０００  計算機１
２０００  計算機２
３０００  計算機３
１１００、２１００、３１００  ＣＰＵ
１２００、２２００、３２００  主記憶装置
１２１０、２２１０  コンテナ
１２１１、１２１１ａ、２２１１ｂ、１４１０  分散アプリケーション（分散ＡＰ、オブジェクト）
１２２０、２２２０  分散アプリケーション配備部（分散ＡＰ配備部）
１２３０、２２３０  分散アプリケーション実行時情報自動変換部（分散ＡＰ実行時情報自動変換部）
１２４０、２２４０  ネーミングインタフェース部
１２４１、２２４１  ネームテーブルアクセス制御部
１２５０、２２５０  リモート呼び出し部
１２６０、２２６０、３２６０  分散オブジェクト基盤部
１３００  自動変換ルール共通定義情報
１４００  アプリケーション配備情報（ＡＰ配備情報）
１４２０  実行モード
１４３０  自動変換ルール定義情報
３２１０  ネーミングサービス部
３２１１  ネームテーブル
３２１２  本番用ネームテーブル
３２１３  テスト用ネームテーブル
【図１】
2006146434.tif 000003
【図２】
2006146434.tif 000004
【図３】
2006146434.tif 000005
【図４】
2006146434.tif 000006
【図５】
2006146434.tif 000007
【図６】
2006146434.tif 000008
【図７】
2006146434.tif 000009
【図８】
2006146434.tif 000010
【図９】
2006146434.tif 000011
【図１０】
2006146434.tif 000012
【図１１】
2006146434.tif 000013
【図１２】
2006146434.tif 000014
【図１３】
2006146434.tif 000015
【図１４】
2006146434.tif 000016