■コンテキストを添付する利点とは?
コンテキストとは、タスクにより編集すべきファイル、もしくは編集したファイルを指します。コンテキストの添付を行うことにより、作業指示を出すときに、編集や確認すべきファイルを明確に伝えることができるようになります。コンテキストの添付は省略可能ですが(現に筆者は利用していませんが)、作業範囲を開発担当者に明確に伝えたい場合、利用すると便利です。
どのように便利か例を用いて説明すると、「ログイン処理の実装」というタスクがあった場合、ログイン処理を実装する空のクラスを作成し、コンテキストへアタッチしておくと、作業者はそのクラスを編集してログイン処理を実装すればいいことが分かります。
また、バグが発生した場合、失敗したテストケースをコンテキストへアタッチしておけば、バグの解析/修正担当者は、添付されたテストケースを調べてバグの原因の分析、修正を行えます。
■コンテキストの概念図
タスクの実行時には、タスク作成時にアタッチしたコンテキストに、タスクが活性化された状態で編集したファイルが追加されます。概念図で示すと、図13のようになります。
■コンテキスト添付の具体例
SampleProjecでは、テストケースSampleLibTestがわざと失敗するように実装されているので、SampleLibTestをアタッチしてみます。
タスクの[コンテキスト]タブをクリックし、[コンテキストを編集するタスクをアクティブにする]を選択し、[エクスプローラ]の右上にあるアイコンをクリックし、コンテキストへ添付ファイルをエクスプローラから選択します(図14)。[コンテキストのコピー...]をクリックし、コメントを入力すると、コンテキストがタスクに添付されます。
Tracのチケットを見ると、mylyn_context.zipというファイルでコンテキストが添付されているのが確認できます。
Mylynは添付されたコンテキストファイルを利用してユーザー間でコンテキストを共有します。これにより、リーダーが添付したコンテキストを開発担当者が確認できるようになっています。
開発者がタスクを実行する際には、タスクを活性化して実行します。活性化するには、[タスク・リスト]ビューからタスクの左のボタンをクリックします。活性化されたタスクは、ボタンが紫色に変わります。
また、タスクが活性化された状態では、[パッケージ・エクスプローラ]上には、コンテキストに添付されたファイルのみ表示されます。[パッケージ・エクスプローラ]の右上にあるアイコンをクリックすると、すべてのファイルが表示されます。
コンテキストにより、開発担当者はどのファイルに対して作業を行えばいいのか一目で分かるようになります。後は、指定されたファイルに対して作業を行うのみです。
コンテキストが添付されていない状態では、開発担当者がタスクを割り当てられたときにどのファイルを編集するべきか自分で考える必要がありますが、コンテキストが添付されていると、そのタスクで編集すべきファイルを知ることができます。
図17に「ログイン処理の実装」というタスクに対して、Loginクラスをコンテキストに添付した場合と添付しなかった場合を示します。こうして見ると一目瞭然だと思います。
また、タスクの実行中にはタスクにより編集したファイルのみをコンテキストとして表示することになるので、現在の作業に対する作業範囲を明確にできます。
ここで、編集したファイルは、現在活性化されているタスクの作業内容と判別され、自動的にコンテキストに含まれます。
実際のバグ修正の作業を想像してみると、開発担当者が最初に調査するように指示されるファイルは、テストケースのファイルです。開発担当者はテストケースを調査することにより、実際のバグがあるコードを突き止め、修正を行います。
実際に利用してみると、リーダーから指示されたコンテキストを基にした担当者自身の作業範囲が明確になるのが実感できると思います。
作業が完了したらコミットします。コミット時には、コミットメッセージに現在活性化されたタスク情報が入ります。
図18の例では、1行目にチケットIDとチケット概要が自動的に挿入されています。後は、普通にコミットするだけです。コミット内容は、Tracのチケットにコメントとして、差分(チェンジセット)と一緒に追加されます。
コメントからリンクされたチェンジセット(例えば、図19の「In [2]」)により、コミット時の差分を簡単に見ることができます。
もちろん、Eclipse上のタスクからも閲覧することは可能です。
タスクが完了したら、リーダーはタスクをクローズ(完了)します。[タスク・リスト]ビューから、タスクを選択(ダブルクリック)し、アクションを[解決]に設定します。これで、このタスクは終了したことになります。
問題があれば、コメントに問題を記述し、開発担当者へチケット(タスク)を知らせます。
以上で、Mylynの紹介は終わりますが、Mylynを利用することにより、開発担当者は、タスク取得(活性化)→タスク実行→コミット(→また繰り返し)というリズムに乗って、リーダーは、タスク作成→(開発担当者タスク実行)→確認(→また繰り返し)というリズムで開発を進めることができるようになります。
線表ベースのプロジェクト管理では、タスクと作業内容の対応付けが困難であり、作業報告書などでタスクと対応付ける場合でも概要レベルの記述となり、実際にどのような作業をしたかは把握しづらいという問題があります。通常管理を厳密にすればするほど、管理のための稼働が増え、逆に管理稼働を少なくしようとすると管理は甘くなってしまいます。
MylynとTracを利用すれば、リズム乗った開発を行うことができ、なおかつ、作業内容を管理できるようになります。まさに、「プロジェクトの見える化のための秘密兵器」といえるでしょう。ぜひ利用して、プロジェクトの開発プロセスを改善しましょう。
Copyright © ITmedia, Inc. All Rights Reserved.