= 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段階の優先度で指定する。 == 利用するプラグインなどについて == ||プラグイン||概要|| ||TimingAndEstimateプラグイン||見積時間や作業時間を入力、集計する|| ||ScrumBurndownChartプラグイン||バーンダウンチャートを作成する|| ||SubTicketsプラグイン||サブチケットを作成する||