SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine(コードジン) DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

渋谷テクニカルナイト講師陣が語る新技術動向

はじめて使うJazz (3)
― ソースコード管理

渋谷テクニカルナイト講師陣が語る新技術動向 第5回

管理単位は「コンポーネント」

 Jazzのソースコード管理では、他のソースコード管理システムと同様に、個々のファイルあるいはディレクトリを対象に版管理が行われます。チェックアウト/チェックインを繰り返すと、リポジトリ内で版番号が一つずつ増えるところも同じです。RTCのソースコード管理では、その上位に「コンポーネント」という考え方を導入しています。早速ですから、コンポーネントの中身は何かを見てみましょう。RTCのサーバーを起動して、クライアントから「taro」でリポジトリにログインします(忘れてしまった方は、本シリーズの1回目を参照してください)。

 [チーム成果物]ビュー-[マイ・リポジトリー・ワークスペース]とツリーを開き、コンポーネント[HelloJazzWorldチームデフォルト・コンポーネント]を右クリックするとコンテキストメニューが表示されます(図2)。

図2
図2

 ここから、[リポジトリー・ファイルの表示]を選択すると、[リポジトリー・ファイル]ビューが開きます(図3)。

図3
図3

 Eclipseのプロジェクト以下の構造がそのまま入っていますね。コンポーネントとは、その内部にEclipseのプロジェクトを格納した「論理的な入れ物」です。例ではプロジェクト一つだけですが、複数のプロジェクトを格納することもできます。Eclipseの[プロジェクトの共用]機能で、対象となるEclipseプロジェクトをコンポーネントに関係づけるのは、本シリーズの初回でご覧いただいたとおりです。

 ちなみに、新しくRTCのプロジェクトを作成すると、次のものが自動的に作成されます。

  • プロジェクト名と同じ名称を持ったチームエリアが一つ
  • 「プロジェクト名+『チームリポジトリー・ワークスペース』」という名称を持ったリポジトリー・ワークスペース
  • 「プロジェクト名+『デフォルト・コンポーネント』」という名称を持ったコンポーネント

 日々の開発作業では、個々のファイルをチェックイン/チェックアウトして編集します。コンポーネントを使うのは関連するリソースをひとまとめにして行う操作、例えば他の開発者との共有や、「ベースライン」をつけて管理するなどです。コンポーネントにベースラインを宣言してみましょう。

 [チーム成果物]ビューの[マイ・リポジトリー・ワークスペース]のツリーを開いてみると、「HelloJazzWorldチームデフォルト・コンポーネント(1.初期ベースライン)」と表記されています(図4)。

図4
図4

 この「(1:初期ベースライン)」がベースライン名称です。ここでコンポーネントを選択して右クリックし、[新規]-[ベースライン]を選択します(図5)。

図5
図5

 ダイアログでベースライン名称を入力し、[OK]ボタンをクリックするとベースライン名を変更できます(図6)。

図6
図6

 以上で、ベースライン宣言の終了です。「(1.初期ベースライン)」から「(2.単体テスト終了)」に変わっているのが、分かります(図7)。

図7
図7

 RTCのソースコード管理はコンポーネントという概念を導入することで、次の2つのことを達成します。

 その1:成果物の集合体をコンポーネントという論理的な入れ物で管理することによって、必要な「ひとかたまり」を明確に定義・管理することができる。例えば、一つのコンポーネントの中に、関連するソースコード、UMLによる設計モデル、JUnitプロジェクト等複数のEclipseプロジェクトを、ひとまとめに管理・操作できる。

 その2:コンポーネントは言い換えれば、「チームごとの仕事の分担」「チームの成果物」である。例えば、「単体テスト終了」「マイルストーン1」「バージョン 1」などの開発途中の大きな節目にベースラインを宣言することで、チームの作業進捗が明確になり、多くのチームが共同開発する場合に、お互いの作業状況をより把握しやすくなる。

 RTCでは、「プロジェクトは、コンポーネント化されたソフトウェアを、複数のチームで開発する」という開発スタイルを想定しており、それに合わせた管理のやりやすさを、コンポーネントという概念でサポートしているのです。

次のページ
間を取り持つ作業領域:「リポジトリー・ワークスペース」

この記事は参考になりましたか?

渋谷テクニカルナイト講師陣が語る新技術動向連載記事一覧

もっと読む

この記事の著者

藤井 智弘(フジイ トモヒロ)

日本アイビーエム株式会社 ソフトウェア開発研究所 Rationalエマージング・ビジネス・サービス。ソフト開発ってホントはもっとおもしろかったはず!という思いのもとで、”管理管理!”でも”開発者の自由!”でもなく、その程よいバランスこそが解と、啓蒙活動...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/3622 2009/02/27 15:00

おすすめ

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー