レベル: 初級 布施 昌之, ソフトウェア開発研究所, IBM 保田 由希子, ソフトウェア開発研究所, IBM
2009年 3月 13日 IBM Rational Application Developer for WebSphere Software V7.5では、初のJazzベースの製品であるIBM Rational Team Concert Clientが統合され、コラボレーションによるソフトウェア開発環境を提供しています。この記事では、その一例としてコラボレーションによる、Javaプログラムのデバック機能を容易に体験できるように一台のPCへのインストールと設定方法を交えてご紹介します。セッション・デバッグにより、リモート環境にあるデベロッパー間でデバッグを行う場合やチーム内の他のユーザーにデバッグを依頼する場合などに活用でき、チーム開発における生産性をあげることが可能になります。
はじめに
第1回インストールではコラボレーションによるデバッグに必要な製品のインストールと設定を行いました。第2回RTC サンプルを使用したデバッグ例の紹介では、Rational Team Concert Client付属のチュートリアル「Explore the Rational Team Concert JUnit example project」を利用した、Rational Team Concert Server のデバッグ拡張フィーチャーにおけるセッション・デバッグ例をご紹介します。Rational Team Concert Server のデバッグ拡張フィーチャーを使用すると、Rational Team Concert のチーム・メンバー間で Java ベースのデバッグ・セッションを転送することができます。デバッグ・セッション中に、チーム・メンバーはそのデバッグ・セッションを別のチーム・メンバーに転送でき、受信側は転送されたデバッグ・ポイントから継続してアプリケーションのデバッグを実行できます。
コラボレーションによるデバッグのための各種設定
コラボレーションによるデバッグを行うためには、JazzリポジトリーおよびJazzプロジェクトエリアへの接続、インスタントメッセージングサーバーへの接続、Jazzリポジトリーワークスペースの作成が必要です。以下の手順で設定を行います。
- ユーザーMarkus用のワークスペースを選択し、RADを起動します。初めてRADを起動した場合は、ユーザー毎に新規ワークスペースを作成してください。
- Jazzプロジェクトエリアに接続します。Jazz Administrationパースペクティブを開きます。Team Organizationビューにて「Connect to Project Area」をクリックします。
- リポジトリー接続がまだ作成されていない場合、Jazz Repository Connection設定画面が表示されます。LocationにJazz ServerのURI (例ではhttps://localhost:9443/jazz)、ユーザーIDとパスワード(markus/markus)を入力し、「次へ」をクリックします。
- Connect to Project Area ダイアログにて「JUnit Project」チェックボックスにチェックを入れ、「終了」をクリックします(図1)。
図 1 Project Area 「JUnit Project」の選択
- インスタントメッセージングの設定を行います。これを設定することによりユーザー間Chatが行えるようになります。ウィンドウ > 設定 の順に選択し、「設定」ウィンドウを開きます。Instant Messagingを選択し、「Add」をクリックします(図2)。
図 2 Instant Messaging設定
- Add IM Account ダイアログにて、Service Providerリストボックスから「Jabber XMPP Server」を選択します。Jabber Server欄にIPアドレスまたはホスト名(例:127.0.0.1)、Authentication欄にMarkusのIM用ユーザーIDとパスワードを入力し、「OK」をクリックします(図3)。
図 3 Add IM Account ダイアログ
- 作成したアカウントを選択し、「Connect」ボタンをクリックします。接続の成功を確認し「OK」をクリックして設定ウィンドウを閉じます。
- Team Artifactsビューにて、リポジトリー接続とプロジェクトエリア接続(JUnit Project)が確認できます(図4)。
図 4 Team Artifactsビュー
- 次に、リポジトリーワークスペースを追加し、プロジェクトをロードします。Team Artifact ビューにて、「My Repository Workspace」 を選択し右クリック New > Repository Workspace の順に選択します。「Flow with a stream」ラジオボタンにチェックを入れ、「JUnit (JUnit Team)」ストリームを選択し、「次へ」をクリックします(図5)。
図 5 JUnitストリームの選択
- デフォルトのRepository Workspace nameのまま、「次へ」をクリックします。
- 「JUnitコンポーネント」チェックボックスにチェックがされているのを確認し、「終了」をクリックします。
- Load Repository Workspaceダイアログが表示されます。「Find and load Eclipse projects」ラジオボタンを選択し、「終了」をクリックします(図6)。
図 6 プロジェクトのロード
- Javaパースペクティブのパッケージ・エクスプローラーでロードされたプロジェクトが確認できます。
- ユーザーJason用のワークスペースを選択してRADを起動し、Jasonに対しても同様にRADの設定を行います。

 |
デバッグ・セッションの実行
JUnit example projectを使用しJasonとMarkusの2ユーザー間で実際に簡単なデバッグ・セッションを行います。シナリオは以下のとおりです。
転送側ユーザーMarkusはブレークポイントを追加したAllTests.javaファイルに対してデバッグを開始し、受信側ユーザーJasonにデバッグを転送します。Jasonが転送されたデバッグを受け取ることによりデバッグ・セッションの制御が確立されます。このセッションは、転送が実行されたポイントで中断されており、Jasonは中断ポイントからアプリケーションのデバッグを再開します。
- Jason、Markus両ユーザー用のワークスペースを選択しRADを起動します。
- Markusのワークスペースで、Javaパースペクティブを開きます。
- パッケージ・エクスプローラーにて、JUnit Examples プロジェクト内のjunit.samples.agentパッケージを展開し、 AllTests.java をダブルクリックしてファイルを開きます。AllTests.javaファイル内で適当な行にブレークポイントを追加します(図7)。
図 7 ブレークポイントの追加
- パッケージ・エクスプローラーにてAllTests.javaファイルを右クリックし、デバッグ > デバッグ構成 の順に選択し、「デバッグ構成」ウィンドウを開きます。
- Javaアプリケーションをダブルクリックします。「チーム」タブを選択し、「デバッグ・セッションをチーム・リポジトリーに追加」チェックボックスにチェックを入れます。デバッグ・セッションを追加するチーム・リポジトリーをリストから選択し、「デバッグ」をクリックしデバッグを開始します(図8)。
図 8 デバッグ構成
受信者側ユーザーへのデバッグの転送には2通りの方法があります。
A:デバッグビューからの転送
- デバックパースペクティブを開きます。デバッグビューの「[チーム] VM [IPアドレス:Port]」を右クリックし、「ユーザーへ転送」を選択します(図9)。
図 9 デバッグを他のユーザーに転送する
- ユーザーへ転送ダイアログのフィールドに、Jasonと入力し「Search」をクリックします。見つかったユーザー(Jason Mitchel)を選択し「OK」をクリックします(図10)。
図 10 ユーザーの選択
- Jasonのワークスペースに「着信デバッグ・セッション」ダイアログが表示されるので、「ブレークポイントのインポート」チェックボックスにチェックされていることを確認して、「はい」をクリックします(図11)。デバッグビューが表示され、AllTestsデバッグ・セッションがMarkusからJasonに転送されます。これで、デバッグ・セッションの制御が確立されます。このセッションは、転送が実行されたポイントで中断され、受信側はそのポイントからアプリケーションのデバッグを継続できます。
図 11 転送されたデバッグの受け入れ
デバッグビューが自動的に表示されない場合、「チーム・デバッグビュー」(ウィンドウ > ビューの表示 > その他 > チーム > チーム・デバッグ)を開き、 アイコンをクリックして「チーム・リポジトリー」を選択し、チーム・リポジトリー内にあるデバッグ・セッションを表示させます(図12)。AllTestsデバッグ・セッションを右クリックし、「デバッグ」を選択すると転送されたユーザーのワークスペースにデバッグが転送されます。
図 12 チーム・デバッグビュー
- Jasonは受け取ったデバッグ・セッションを再開し、デバッグを完了させます。
B:Chatビューからの転送
- ウィンドウ > ビューの表示 > その他 > Collaboration > Chat を選択し、「Chat」ビューを開きます。
- Chatビューの右上にあるChatボタンをクリックしChatダイアログを開きます。Jasonと入力し「Search」をクリック、見つかったユーザー(Jason Mitchell)を選択し「OK」をクリックします。
- デバッグビューの「[チーム] VM [IPアドレス:Port]」を選択し、Chatビューの入力フィールドへドラッグ & ドロップします(図13)。Enterを入力しJasonへChatメッセージを送信します。
図 13 Chatビューを利用したデバッグの転送
- JasonのワークスペースのChatビューに、Markusからデバッグのリンクが送られてきます。送られてきたリンクをダブルクリックしデバッグを受け取ります。デバッグビューが表示され、AllTestsデバッグ・セッションがMarkusからJasonに転送されました。
- Jasonは受け取ったデバッグ・セッションを再開し、デバッグを完了させます。
以上でデバッグ・セッションは終了です。
まとめ
この記事では、Rational Team ConcertのサンプルとRational Team Concert Server のデバッグ拡張 (Team Debug) を使用したコラボレーションによるデバッグ例をご紹介しました。この拡張機能を使用することにより、Rational Team Concertのチーム・メンバー間でJava ベースのデバッグ・セッションを容易に転送することができます。リモート環境にあるデベロッパー間でデバッグを行う場合やチーム内の他のユーザーにデバッグを依頼する場合などに活用でき、チーム開発における生産性をあげることが可能になります。
参考文献
著者について  | |  | 布施昌之は、ソフトウェア開発研究所のエンジニアです。Jazz, Rational Team Concert国際化の技術支援を行っています。 |
 | |  | 保田由希子は、ソフトウェア開発研究所のエンジニアです。Rational Architecture Management製品群に関する国際化の技術支援を行っています。 |
記事の評価
|