最初に、プロジェクトで運用する「ロール」と「トラッカー」を決める。
ロールは、ユーザーの権限。デフォルトでは、「管理者」「開発者」「報告者」の3つ(図3)。
ロールごとに機能を制限するには、図4にある権限レポート画面でチェックする。
トラッカーは、チケットの種類に相当する。デフォルトでは、「バグ」「機能」「サポート」の3つが設定されている。
例えば、バグは欠陥や障害、機能は新規開発予定の機能、サポートは問い合わせ対応や進ちょく管理などのタスクとして運用できるだろう(図5)。
左メニューにある管理画面からワークフローのリンクを押すと下記のワークフロー管理画面が現れる(図6)。
図6の画面では、下部にあるステータスのマトリックス(行列)は、先行・後行のステータス遷移の一覧。例えば、管理者がバグのチケットで「ステータス=新規」の場合、担当から却下まですべてのステータスへ遷移できる。
ユーザーのロールによってステータスの遷移を制限できるため、例えば、チケットを終了する権限を管理者だけにする運用も可能。
また、トラッカーによってステータスの遷移を制限できるため、例えば、ベンダ問い合わせなどのインシデント管理は、バグとは異なるステータスへ遷移する運用もできる。
すなわち、図6で挙げたワークフロー画面は、状態遷移図(図7−1)やアクティビティ図(図7−2)と同等である。
図6のワークフロー画面は、ソフトウェア開発に現れるすべてのワークフローを制御する重要な機能である。
Redmineでは、Web上でワークフローを簡単に設定できるので、ワークフローを追加したり更新するのが簡単な利点がある。
チケットを登録・更新・追記したタイミングでメールを送信できる。
例えば、バグ修正担当者が次の担当者にテスト担当者を設定してチケットを更新すれば、テスト担当者はメールを確認して検証に取りかかれる。この機能のおかげで、管理者は作業者へ作業指示を逐一出す必要がなくなる(図8)。
ほかに、チケット一覧画面などでRSS機能があるため、フィードすれば最新状態を取得することもできる。
図9の管理画面でプロジェクトを作る。Redmineでは、プロジェクトに親子関係を作ることができる。
そのため、開発チーム内に複数のサブチームが存在する場合などは、子プロジェクトにサブチームのタスク管理を割り当てる運用もできる。
ロードマップは、バージョンごとの進ちょくや関連チケットを表示する。
図10の薄い緑色は、チケットの進ちょく率から得られた見かけ上の進ちょく。濃い緑は、終了チケットから得られた実質の進ちょく。
このロードマップこそが、アジャイル開発で重要な機能である。
Redmineのロードマップの運用は、XPのイテレーション計画、Scrumのスプリント計画に相当する。
XPの小規模リリースのプラクティスに従うと、Redmineのバージョン単位でチケットをグループ化し、小刻みにリリースしながら、機能追加していく戦略を取ることになる。
その場合、バージョンの期間は2〜4週間という短いサイクルで運用することが多くなるだろう。わずか2〜4週間という短い期間内でリリースするには、重要度や緊急度の高いチケットを優先して作業する「チケットの取捨選択」が重要になってくる。
バージョン画面では、全体の進ちょく、予定・実績工数、カテゴリやトラッカーごとの進ちょくを見ることができる。さらに、マイルストーンの月日を設定し、マイルストーンまでにやる作業内容はWikiへ書いておくと分かりやすくなる(図11)。
Copyright © ITmedia, Inc. All Rights Reserved.