Rational Team Concertのある生活~チームの1日

2011年1月26日(水)
渡邉 雄一宮城 豊

前回までに、

  • 新規プロジェクトにRational Team Concert(RTC)を適用する方法(チーム・リーダーの視点)
  • RTCを使った開発方法(チーム・メンバーの視点)

という2つの観点から、RTCの機能を解説してきました。

今回は、プロジェクト・マネージャ(またはステーク・ホルダー)の視点も含め、特に開発工程における2つの時点(期間途中と、開発の終盤)において便利な機能を解説します。前回までは統合開発環境(IDE)であるEclipseのUI操作を主に解説してきましたが、今回はWebブラウザ画面の例も紹介します。

1. プロジェクト中での、さまざまな出来事

1.1. RTCならではのチーム開発~リポジトリ・ワークスペースの活用

今も昔も、開発現場にはいくつかの「割り込み」の仕事が入ってきます。開発者は、こうした仕事も柔軟にさばきながら、仕事を着実にこなしていかなければなりません。

しかし、現実には「中断した仕事は、何の依頼が基になっていたのか、忘れてしまった」というケースがあるでしょう。また、「割り込みで実施した緊急の仕事のソース・ファイルなどが、中断させていた元の仕事のソース・ファイルなどと混じってしまい、混乱をきたしている」というケースもあるでしょう。デスクトップ上に、似て非なるゴミ・ファイルが散在しているのが実情ではないでしょうか。

RTCでは、このような、一見して混乱しそうな状況を回避する機能が備わっています。以下では、具体的に、どのような機能が用意されているのかを紹介します。

最初に、復習しておきましょう。RTCの「ソース管理」の特徴は、

  • (A)「ローカル・ワークスペース」のコピーとして「リポジトリ・ワークスペース」がある。

という部分にありました(【コラムC4】「ソース管理」(構成管理)の内部論理構造を参照)。

この特徴により、従来の問題であった「Eclipseのローカル・ワークスペースを切り替えられなかった」という問題や「Eclipseのローカル・ワークスペースを、ほかのメンバーと共有できずに苦労していた」という問題が解消されることを理解しました。

操作手順をもう少し具体的に説明すると、以下のようになります。

  • (1)私(メンバーA)は今、『タスクT1』の仕事をしています。
  • (2)今、割り込みで、優先順位の高い『タスクT2』の指示が、チャットとメールを介して渡されました。もともとの担当はBさんだったのですが、チーム内で調整した結果、私に担当変更になったようです。
  • (3)私は、作業中の「ローカル・ワークスペース」の内容を確認し、保存します。「同期」の設定で、自動にチェックインする設定にしてあるので、修正内容は「リポジトリ・ワークスペース」に自動的に保存されています。
  • (4)ワークアイテム『タスクT1』の作業時間とステータスを更新します。
  • (5)Bさんと連絡を取り、『タスクT2』の最新の「リポジトリ・ワークスペース」を確認し、これを「ローカル・ワークスペース」に取込みます。
  • (6)『タスクT2』の作業を実施します。この結果(作業成果物)を「ストリーム」に「提出」します(提出の際に、ワークアイテム『タスクT2』を適宜更新します)。
  • (7)『タスクT1』の作業を再開するため、ワークアイテムを更新し、「ローカル・ワークスペース」を『タスクT1』の「リポジトリ・ワークスペース」からロードします。

メンバーAの作業状況は、適宜、ワークアイテム『タスクTn』に更新されています。このため、作業状況は、チーム内でリアルタイムに確認可能です。

さらに、(A)以外にも、チーム開発のための情報共有を容易にする機能が豊富に備わっています。ここでは、そのうち、

  • (B)「リポジトリ・ワークスペース」は、複数存在してよい。
  • (C)「リポジトリ・ワークスペース」には、公開(public)、私用(private)などの種別、設定がある。これにより、公開する人を限定したり、提出先(ストリーム)を切り替えられる。

について、説明します。

「リポジトリ・ワークスペース」が複数存在しても構わないことは、上述した例でも分かります。では、具体的に、どのように操作すればよいのでしょうか。これを、もう少し詳しく説明しましょう。上の(5)では簡単に手順について触れましたが、実際には(B)の機能を使います。

つまり、以下のようにします。私(メンバーA)は、『タスクT1』と『タスクT2』用の、(自分の)「リポジトリ・ワークスペース」を作って作業します。具体的な手順は、まずは、

  • (5-1)『タスクT2』用の「リポジトリ・ワークスペース」を作る。

となります。このための方法は、いくつかあります。例えば、

  • メンバーBさんの『タスクT2』用の「リポジトリ・ワークスペース」を流用し、コピーして作成する。
  • ストリームから「リポジトリ・ワークスペース」をコピーして作成する。

の、いずれかが良いでしょう。こうして、

  • (5-2)『タスクT2』用の「リポジトリ・ワークスペース」を「ローカル・ワークスペース」にロードする。

となります。

(C)は、上記の手順を応用したものになります。自分が新しいことを試したいときに「ローカル・ワークスペース」を切り替える感覚で「リポジトリ・ワークスペース」を複数用意して使い分けるのです。この際、「ストリーム」にひも付かないワークスペースも作成可能です。

図1: リポジトリ・ワークスペース作成の開始手順(クリックで拡大)

図2: リポジトリ・ワークスペースの「読み取りアクセス権」の設定画面(クリックで拡大)

作成した「リポジトリ・ワークスペース」を忘れないようにするためには、「ワークアイテム」と関連付けることが必要です。これは、「提出」の際に守ればよいルールです。このように、緩いルールと厳格なルールとを混在させて使い分けることができるのも、RTCのよいところです。

このように、「リポジトリ・ワークスペース」や、(前回説明した)「ベースライン」「スナップショット」などを、「比較」したり「置き換え」たりすることで、俊敏(アジャイル)な開発を、ルール(プロセス)を乱すことなく行えます。RTCでは、こうした仕組みを用意しています。

図3: ストリームの比較選択の例(クリックで拡大)
株式会社SRA

産業開発統括本部 製造・組込システム部 コンサルティンググループに所属。
RDBアプリ開発、プリンタドライバ開発、ネットワーク設計・管理(動的経路制御)などを経て、近年は、ツールの導入・活用のコンサルテーションに従事している。最近の担当分野は、「構成管理」、「脆弱性診断」、「プロジェクト管理」など。仕事上の最近の興味は「組織プロセスとツール活用の効率化・最適解」。

株式会社SRA

産業開発統括本部 製造・組込システム部 コンサルティンググループに所属。
1982年SRA関連会社より1986年SRAに。約10年間業務アプリ・エミュレータ等の開発に従事、以降現在まで、ツール導入・活用のコンサルテーション業務に従事する。Rational 製品のPurifyとは17年来の付き合い。最近メタボ体策で、知らない町をぶらぶら散歩し、道に迷う事に喜びを覚えている。

連載バックナンバー

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています