TracLightning スクラムガイドライン

TracLightning3.0.3からアジャイル用のプロジェクトを作成することができます。この文書は、このアジャイル用のプロジェクトを利用してスクラムを利用するときのガイドラインです。スクラムやアジャイル開発でTracLightningを利用するときに参考にしてください。スクラムをベースとしながら自分が運用しやすいような若干変更を加えています。

  • 前提条件として、スプリント毎にプロダクトをリリースし全体の見積もりは事前に出さない。
  • 作業時間を管理する。(スクラムでは残り時間しか管理しないが、一般的な企業では作業時間の管理が必要なため)
  • ビジネス価値を優先度で管理する。数字ではなく、最重要、重要、普通、低い、最低の4つの尺度で評価する。

※このドキュメントは作成中であり、sf.jpのアカウントを持っていれば書き込み可能なので自由に意見を書き込んでください。

プロジェクトの作成

アジャイル用のプロジェクトを作成する場合は、create-projectコマンドに/profile agileを追加して実行します。

> create-project /profile agile YourProject

プロダクトバックログの作成(要件整理)

まずは、要件を整理しプロダクトバックログを作成します。プロダクトバックログを作成して入力する項目は、概要、詳細、優先度、集計に含めます。

概要「○○する」というタイトルで、ソフトウェアの機能の概要を記述します。
詳細△△が□□を○○するという感じで、具体的な機能を説明します。
優先度プロダクトバックログの優先度を最重要、重要、普通、低い、最低から選択します。スクラムのビジネス価値に相当します。
集計に含めるチェックボックスを外します。

作成時にはチェックボックスを外しておきます。 例えば、次のように入力します。

概要優先度詳細
ユーザを登録する最重要ユーザはWebのフォームからユーザID、メールアドレス、パスワード、電話番号、住所を入力する。メールでユーザ宛にアクティベーションのためのURLを送信し、ユーザはURLをクリックすることによりアカウントをアクティベーションできる。
ユーザ情報を変更する重要ログインし、パスワード、電話番号、住所を変更する。
  • プロダクトバックログには、優先度を設定する。Scrumでは優先度はビジネス価値と呼ばれ任意の数字で設定するが、最重要、重要、普通、低い、最低の5段階で設定する。もっと細かく設定したければ、優先度をカスタマイズする。0,10,20,30,40,50,60,70,80,90,100と値で設定してもよいでしょう。
  • プロダクトバックログの見積時間は0にしておく。
  • 集計に含めるのチェックボックスは外しておく。

スプリント計画

スプリントで実装するプロダクトバックログの決定とプロダクトバックログをより詳細にブレークダウンしたスプリントバックログの作成を次の手順により行います。

優先順位の高いものから順に次の手順でスプリントバックログを決定します。予めチームで使える作業時間を計算しておきます。

  1. 優先順位の一番高いプロダクトバックログのスプリント(マイルストーン)を次のスプリントに設定します。
  2. プロダクトバックログの作業内容をブレークダウンし、スプリントバックログを作成します。スプリントバックログは、プロダクトバックログのチケットから「サブチケットの追加」で行います。
  3. 各スプリントバックログに対して見積時間を入力します。
  4. スプリントの合計がチームの作業時間を超えていない場合、上記1,2,3の手順で次に優先度の高いプロダクトバックログをスプリントへ追加します。作業時間を超えている場合、スプリントから外します。

作成したスプリントバックログは次のような感じになります。

(親チケット1は、プロダクトバックログの「ユーザを登録する」に該当します)

親チケット概要見積時間詳細
1ユーザ登録テーブルの設計・作成1(設計・作成の詳細を記述)
1ユーザ登録画面の作成2(画面の詳細を記述)
1アクティベーション機能作成2(アクティベーション機能の詳細を記述)
2..........

「見積もりに含める」にチェックを入れる。

※作業時間ではなく、ストーリーポイントを利用したい場合は、trac.iniを編集して「見積時間(h)」を「ストーリーポイント」に変更してみてください。

スプリント実行中

担当者

  • 毎日、実施したスプリントに作業時間を記入する。
  • 見積時間より多く掛かりそうな場合は、見積時間を増やしてもよい。(見積時間はそのままにして、作業時間と当初の見積時間を比較するという運用の方が良い?)

管理者

  • バーンダウンチャートに残りの見積時間の遷移がグラフで表示される。バーンダウンチャートにより予定通りスプリントの作業が終わりそうかどうか予測することができる。
  • 作業時間管理→マイルストーン毎のチケット作業時間で、作業時間の一覧が見れる。

バグや課題は、通常通りチケットに投入して管理する。

純粋なスクラムとの相違点

  • ストーリーポイントではなく、時間で管理する。
    • ストーリーポイントを利用したい場合、プロダクトバックログの見積時間をストーリーポイントと見なすことで対応できる。
  • スプリントバックログに対して残り時間を報告するが、作業時間の入力と見積時間の変更で対応する。
    • →作業時間を入力することにより、どのタスクにどのくらい掛かったか、見積時間との差分が計算できる。
  • ビジネス価値は数字で設定するが、5段階の優先度で指定する。

ノウハウ

チームが複数いる場合

  • コンポーネント毎にバーンダウンチャートを表示できるので、チームはコンポーネントに割り当てます。
  • 従来のコンポーネントと同等の管理項目を追加したい場合は、カスタムフィールド「モジュール」を追加すると良いでしょう。

スプリントをバージョンに対応づけたい場合

スプリント名にバージョン番号を入れて管理すると楽です。

例「1.0:スプリント0」「2.0:スプリント0」等。

Excelからインポート

バックログの整理をExcelでやりたいと思うかもしません。TracLightning3.0.4以降からExcelからのバックログのインポートをサポートしています。 下記の添付ファイルのような感じでExcelでバックログを整理して、TracLightningメニューの「Excelインポート」からインポートすることができます。

利用するプラグインなどについて

アジャイル(スクラム)開発を行うには、下記のプラグインを利用すると便利です。(TracLightningのアジャイルプロファイルでは自動的に設定してくれます)

プラグイン概要
TimingAndEstimateプラグイン見積時間や作業時間を入力、集計する
ScrumBurndownChartプラグインバーンダウンチャートを作成する
SubTicketsプラグインサブチケットを作成する