スプリントプランニングとは何か?スプリントバックログを含め、スクラム開発の工程の1つを解説
スプリントプランニングの概要
スプリントプランニングとはスクラム開発の代表的な工程で、それぞれのスプリントを始める前に実施されるミーティングを指します。
スプリントプランニングには、スクラムチームを構成する、以下の3者が参加します。
- プロダクト・オーナー
- 開発チーム
- スクラムマスター
一方で顧客など、発注側の方は参加しません。プロダクトに関する要望などは、事前にプロダクト・オーナーとの打ち合わせで伝えておく必要があります。
スプリントプランニングでは「今回のスプリントで何をどのように行うか」が決められます。
具体的には、以下の内容が議題となります。
- 活用できるリソース(開発チームのメンバーなど)
- 開発する項目(スプリントバックログ)の抽出
- 開発に要する時間や、求められるスキル
- スプリントの目標(スプリントゴール)、および行うべき作業内容や進め方
- タスクの設定と、個々の開発メンバーへの割り当て
スプリントプランニングでは開発する項目を選ぶだけでなく、実装する方法も検討されます。この点で単なる計画の立案にとどまらず、設計も行うことが特徴です。
スプリントプランニングはなぜ必要なのか
スプリントプランニングが重要な理由は、スクラム開発の特性にあります。
ひとたびスプリントが始まってしまうと、途中での仕様変更や追加は行えず、原則として中止もできません。
そのため、最初の計画段階にあたるスプリントプランニングは、そのスプリントの成否を決める上で大変重要であり、必須の工程といえます。
スプリントプランニングは、これから始まるスプリントの作業内容や目標を理解する上で重要な機会となります。
タスクに分割する過程において、今のスクラムチームでの実装可能性や設計、作業見積りも行われます。
精度の高い見通しを示すためにも、必要なステップです。
また会議には開発メンバーも参加するため、個々のメンバーが自らなすべき役割とタスクをその場で確認することができ、後で認識の相違が起こる事態を防止できます。
加えて、無駄なく目的に合った成果物を作成する上でもスプリントプランニングは大変重要です。
もし後で仕様変更の必要があることが判明すると、大きなロスにつながります。
スプリントプランニングをしっかり実施することで事前に十分な検討を行え、手戻りを防げます。
スプリントプランニングはどのように使われるか
スプリントプランニングは、以下の手順を踏んで行われます。
- プロダクト・オーナーは「プロダクトバックログ」を、開発チームは「今回のスプリントで使えるリソース」を持ち寄る
- プロダクトバックログを検討し、スプリントバックログを選び出す
- すべてのスプリントバックログが、スプリント期間中に終了できるかチェックする
- スプリントゴールを設定する
- 各スプリントバックログでやるべきことを、タスクに分割する
- タスクを個々の開発担当者に割り当てる
プロダクトバックログは、そのプロジェクトで達成すべき課題のリストと考えて差し支えありません。
このバックログの中でどれから対応するかは、以下の要素を考慮して決定されます。
- 優先度や実現の難易度
- メンバーの数やスキルなど、開発チームが使えるリソース
- スプリントの期間
したがって、課題はプロダクトバックログに登録されている順番に沿って決められるとは限りません。
どの項目を優先すべきか、議論される場合もあるでしょう。ときには開発チームからプロダクト・オーナーに対し詳しい説明を求めたり、専門家による助言を得たりする場合もあります。
開発項目の決定後は、そのスプリントで達成したい課題をリスト化したスプリントバックログに情報をまとめ、スプリントゴールを設定します。
スプリントの日数は限られますから、正しく開発を進めるためにも方向性の共有は重要です。
その後は個々のスプリントバックログを2~8時間程度のタスクに分割し、開発メンバーに割り当てます。スプリントの期間が長いほど、タスクの時間も長くなります。例えば4週間~1ヵ月のスプリントの場合、1つのタスクは最大で8時間となります。