CoolなEclipseプラグイン(23)

Mylyn&Tracでリズムに乗って
タスクを大掃除♪


岡本隆史
2007/12/20


【1-2】コンテキストのアタッチ(リーダー)


コンテキストを添付する利点とは?

 コンテキストとは、タスクにより編集すべきファイル、もしくは編集したファイルを指します。コンテキストの添付を行うことにより、作業指示を出すときに、編集や確認すべきファイルを明確に伝えることができるようになります。コンテキストの添付は省略可能ですが(現に筆者は利用していませんが)、作業範囲を開発担当者に明確に伝えたい場合、利用すると便利です。

 どのように便利か例を用いて説明すると、「ログイン処理の実装」というタスクがあった場合、ログイン処理を実装する空のクラスを作成し、コンテキストへアタッチしておくと、作業者はそのクラスを編集してログイン処理を実装すればいいことが分かります。

 また、バグが発生した場合、失敗したテストケースをコンテキストへアタッチしておけば、バグの解析/修正担当者は、添付されたテストケースを調べてバグの原因の分析、修正を行えます。

コンテキストの概念図

 タスクの実行時には、タスク作成時にアタッチしたコンテキストに、タスクが活性化された状態で編集したファイルが追加されます。概念図で示すと、図13のようになります。

図13 コンテキストの概念図
図13 コンテキストの概念図

コンテキスト添付の具体例

 SampleProjecでは、テストケースSampleLibTestがわざと失敗するように実装されているので、SampleLibTestをアタッチしてみます。

 タスクの[コンテキスト]タブをクリックし、[コンテキストを編集するタスクをアクティブにする]を選択し、[エクスプローラ]の右上にあるアイコンをクリックし、コンテキストへ添付ファイルをエクスプローラから選択します(図14)。[コンテキストのコピー...]をクリックし、コメントを入力すると、コンテキストがタスクに添付されます。

図14 コンテキストの添付
図14 コンテキストの添付

 Tracのチケットを見ると、mylyn_context.zipというファイルでコンテキストが添付されているのが確認できます。

図15 Trac上のコンテキスト
図15 Trac上のコンテキスト

 Mylynは添付されたコンテキストファイルを利用してユーザー間でコンテキストを共有します。これにより、リーダーが添付したコンテキストを開発担当者が確認できるようになっています。

【2、3】タスクの活性化・実行(開発担当者)

 開発者がタスクを実行する際には、タスクを活性化して実行します。活性化するには、[タスク・リスト]ビューからタスクの左のボタンをクリックします。活性化されたタスクは、ボタンが紫色に変わります。

 また、タスクが活性化された状態では、[パッケージ・エクスプローラ]上には、コンテキストに添付されたファイルのみ表示されます。[パッケージ・エクスプローラ]の右上にあるアイコンをクリックすると、すべてのファイルが表示されます

図16 タスクの活性化
図16 タスクの活性化(画像をクリックすると拡大します)

 コンテキストにより、開発担当者はどのファイルに対して作業を行えばいいのか一目で分かるようになります。後は、指定されたファイルに対して作業を行うのみです。

コラム 「コンテキストの意義」

 コンテキストが添付されていない状態では、開発担当者がタスクを割り当てられたときにどのファイルを編集するべきか自分で考える必要がありますが、コンテキストが添付されていると、そのタスクで編集すべきファイルを知ることができます。

図17に「ログイン処理の実装」というタスクに対して、Loginクラスをコンテキストに添付した場合と添付しなかった場合を示します。こうして見ると一目瞭然だと思います。

図17 コンテキストの添付の有無によるツリービューの表示
図17 コンテキストの添付の有無によるツリービューの表示

また、タスクの実行中にはタスクにより編集したファイルのみをコンテキストとして表示することになるので、現在の作業に対する作業範囲を明確にできます。

 ここで、編集したファイルは、現在活性化されているタスクの作業内容と判別され、自動的にコンテキストに含まれます。

 実際のバグ修正の作業を想像してみると、開発担当者が最初に調査するように指示されるファイルは、テストケースのファイルです。開発担当者はテストケースを調査することにより、実際のバグがあるコードを突き止め、修正を行います。

 実際に利用してみると、リーダーから指示されたコンテキストを基にした担当者自身の作業範囲が明確になるのが実感できると思います。

【4】コミット(開発担当者)

 作業が完了したらコミットします。コミット時には、コミットメッセージに現在活性化されたタスク情報が入ります。

図18 コミット・コメントのログを入力
図18 コミット・コメントのログを入力

 図18の例では、1行目にチケットIDとチケット概要が自動的に挿入されています。後は、普通にコミットするだけです。コミット内容は、Tracのチケットにコメントとして、差分(チェンジセット)と一緒に追加されます。

図19 チケットに追加されたコメント
図19 チケットに追加されたコメント

 コメントからリンクされたチェンジセット(例えば、図19の「In [2]」)により、コミット時の差分を簡単に見ることができます。

図20 コメントからリンクされたチェンジセット
図20 コメントからリンクされたチェンジセット(画像をクリックすると拡大します)

 もちろん、Eclipse上のタスクからも閲覧することは可能です。

【6】タスクの確認とクローズ(リーダー)

 タスクが完了したら、リーダーはタスクをクローズ(完了)します。[タスク・リスト]ビューから、タスクを選択(ダブルクリック)し、アクションを[解決]に設定します。これで、このタスクは終了したことになります。

 問題があれば、コメントに問題を記述し、開発担当者へチケット(タスク)を知らせます。

プロジェクト「見える化」のための秘密兵器

 以上で、Mylynの紹介は終わりますが、Mylynを利用することにより、開発担当者は、タスク取得(活性化)→タスク実行→コミット(→また繰り返し)というリズムに乗って、リーダーは、タスク作成→(開発担当者タスク実行)→確認(→また繰り返し)というリズムで開発を進めることができるようになります。

管理工数を減らさずに管理効果を上げる

 線表ベースのプロジェクト管理では、タスクと作業内容の対応付けが困難であり、作業報告書などでタスクと対応付ける場合でも概要レベルの記述となり、実際にどのような作業をしたかは把握しづらいという問題があります。通常管理を厳密にすればするほど、管理のための稼働が増え、逆に管理稼働を少なくしようとすると管理は甘くなってしまいます。

 MylynとTracを利用すれば、リズム乗った開発を行うことができ、なおかつ、作業内容を管理できるようになります。まさに、「プロジェクトの見える化のための秘密兵器」といえるでしょう。ぜひ利用して、プロジェクトの開発プロセスを改善しましょう。

@IT関連記事


Subversionによるバージョン管理
Apache 2.0でWebDAV(後編) DeltaVがRFCとしてリリースされ、WebDAVのバージョン管理機能も足元か固まった。DeltaVの実装である「Subversion」を導入しよう
Linux Square」フォーラム 2002/7/13
仕様書いらずの新ネットサービス構築法
インターネットを使った新サービス構築(1)
 仕様書を書かず、開発途中で挙がってくるさまざまな機能要求をツールで管理しながら、プロトタイプを改良し、β版にこぎつける
ソフトウェア開発の秘伝“Development Baseline”
連載:NAgileで始める実践アジャイル開発(6) 
日々のソフトウェア開発で行うべきことは何か? 長年のアジャイル開発経験から得た知恵をドドンとまとめてお贈りする総集編
Insider.NET」フォーラム 2007/4/3
SNSとアプリのID連携もかんたんに実現するOpenPNE
社内SNSをOpenPNEで作ってみよう(2)
 社内SNSのような組織での情報交換では、ID管理が重要です。その点、OpenPNEはほかのアプリとのID連携もかんたんです
リッチクライアント & 帳票」フ ォーラム 2007/7/26

1-2-3-4

 INDEX
  Page1
  最小限の管理コストで最大の「見える化」を
世にも不思議なMylynマジックとは?
コラム「いまさら聞けない、Tracとは?」
Mylyn&Tracによるタスク管理の概要
  Page2
  Mylyn&Tracの環境を構築して掃除道具を整える
開発サーバ(Trac)のセットアップと環境設定
Eclipseのセットアップと環境設定
  Page3
  Mylyn&Tracを使うための設定
Mylyn&Tracによるタスク管理、5つの手順
Page4
  コラム 「コンテキストの意義」
プロジェクト「見える化」のための秘密兵器



CoolなEclipseプラグイン バックナンバー 連載インデックスへ»


Java Solution全記事一覧

TechTargetジャパン

Java Solution フォーラム 新着記事

@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

RSSフィード

キャリアアップ

- PR -
@IT Sepcial

イベントカレンダー

PickUpイベント

- PR -
もっと見る
- PR -

お勧め求人情報

ホワイトペーパーTechTargetジャパン

@IT Sepcial
ソリューションFLASH