Mylyn - タスク指向UIとは

2007年7月、Eclipse 3.3(Europa)がリリースされた。Europaでは用途に応じて5種類のパッケージが提供されるようになった。Java開発者向けにはfor Java Developers、for JavaEE Developersの2種類のパッケージが用意されている。また、以前本誌でも取り上げたMylyn(旧名Mylar)も2.0にバージョンアップし、これらのパッケージにデフォルトで組み込まれている。本稿ではMylyn 2.0の新機能を中心にレポートをお届けする。

MylynのWebサイトには「MylynはEclipseにタスク指向ユーザインタフェースを提供するためのプラグインである」と記載されている。Mylynを利用することでタスクのスケジュールや重要度などを含めたタスク管理を行うことができるほか、タスクに対してリソースを関連付けることができ、パッケージエクスプローラやアウトラインビューなどの表示をタスクに関連するリソースのみに絞り込むことができる。ワークスペースの膨大なリソースの中から目的のファイルを探し出す手間をはぶくことができるわけだ。これが「タスク指向ユーザインタフェース」と呼ばれるゆえんである。

なお、MylynはBugzilla、Trac、JIRAといった著名なバグ管理システムと連携することもでき、バグ管理システムに登録されている課題をMylynのタスクとして扱うことができる。バグ管理システムと連携することでタスクを複数の開発者で共有できるほか、Mylyn上でタスクの属性を変更したり新たなタスクを作成することでバグ管理システムにも反映されるため、単純にバグ管理システムのフロントエンドとして利用することもできる。

Mylyn 2.0の新機能

タスクリストビュー

タスクリストビューはMylynで管理しているタスクを一覧表示するためのビューで、Mylynの中でも最も重要なビューだ。Mylyn 2.0ではタスクリストビューの見た目が整理され、以前と比べるとすっきりとした外観になった。また、サブタスクがサポートされ、関連するタスクやタスクを細分化して管理することができるようになった。

図1 タスクリストビュー

また、Eclipseのワーキング・セット機能に「Task and Resources」という項目が追加されている。タスクのカテゴリとワークスペース上のプロジェクトを関連付け、選択したもののみをフィルタリングして表示することができ、作成したワーキングセットはタスクリストビューからワンタッチで切り替えることができるようになっている。タスクリストに多くのカテゴリが登録されている場合に便利な機能だ。

図2 ワーキングセット

タスクエディタ

タスクエディタではコンテキスト(タスクに関連付けられているリソース群)を編集するためのタブが追加されている。

図3 コンテキストの編集

また、後述するがMylynはバグ管理システムと連携することが可能だが、Javaソースコード中にタスクのIDを記述しておくことでJavaエディタからタスクへのハイパーリンクが可能となっている。

図4 Javaエディタからのハイパーリンク

また、後述するがMylynはバグ管理システムと連携することが可能だが、Javaソースコード中にタスクのIDを記述しておくことでJavaエディタからタスクへのハイパーリンクが可能となっている。

なお、Mylyn 2.1ではスクリーンショットを撮影して添付するための機能が新たに追加される予定だ。後述するバグ管理システムとの連携時にバグを報告する際などには便利な機能だろう。

バグ管理システムとの連携

Mylynは単体でもタスク管理に用いることが可能だが、BTS(バグ管理システム)と連携し、BTSでタスクを管理することも可能だ。Mylyn 2.0では各種BTS用のコネクタも強化されており、Bugzilla、Trac、JIRAに対してEclipseからタスクの追加/更新を行うためのタスクエディタを利用することができる(Mylyn 2.1ではXPlannerとの連携も可能になる模様)。

また、EuropaではBugzillaとのコネクタが標準搭載されるようになり、Eclipse.orgのBugzillaがデフォルトでタスクリポジトリとして登録された状態となっている。Eclipseや周辺プラグインのバグをEclipse上から検索したり、Bugizillaのアカウントを作成済みであれば新たなバグレポートを登録することもできる。

図5 Eclipse.orgのBugzillaを検索

図6 Eclipse.orgのBugzillaから取り込んだタスク

まとめ - Mylynを活用しよう

MylynはEclipseのユーザインタフェースに新たな可能性を提供するものだ。2.0では本稿で取り上げたもに以外にもさまざまな改善が行われており、タスク指向UIという基本コンセプトはそのままに完成度が実用レベルまで向上している。とくにBTSとの連携機能については以前と比べると格段に進歩している。

また、Subclipse/SubversiveといったSubversionプラグインやSpringIDEといったサードパーティ製プラグインの中にもすでにMylynに対応しているものが登場してきている点からも、注目度の高さが伺える。本稿でも触れたとおり、MylynはBTSと連携することでチーム開発に活用することもできるが、まずは個人的なタスクの管理に使用するところからはじめてみるのもよいだろう。

いずれにしろMylynはEuropaでは標準で利用可能となっている。ぜひ活用してほしい。