アジャイル開発は自社に最適なプロセスを見つけるのが肝要です。小人数のチームで密にコミュニケーションをとりながらシステム開発を進めるスクラムには、どのチームにも欠かせない要素とカスタマイズ可能な要素がそれぞれ提案されました。
スクラム開発のコーチ及びコンサルタントであるHenrik Knibergは、非公式チェックリストを作成しました。必須の要素は「これが欠けているチームはスクラムとは言えない」と考えられる要素です。その他の要素は、チームの状況や好みによって柔軟に変更することが推奨されています。以下に、その一部を紹介します。
スクラムの必須事項
- プロダクトオーナー(製品責任者)が任命されている
- チームはバックログ(実装する機能のリスト)を準備している
- 日次でスクラム・ミーティングが開催される
- スプリント期間の始めには計画が立てられる
- スプリント期間の最後にデモが実施される
- スプリント期間が明示されている
- 完了基準が明確になっている
- スクラムの振り返りが実施される
- チームが同じ場所で作業している
スクラムの任意事項
- メンバーは一つの役割に縛られない
- 完了の見込みがないスプリントは速やかに終了させられる
- メンバーは見積もりに参加する
- 作業の見積もりは時間ではなく、相対的な量で測られる
- スクラム開発プロセスを指揮するスクラム・マスターがいる
- バックログはスプリント毎に小さなタスクへと変換される
- ベロシティ(開発スピード)が計測されている
- 進捗を表わすバーンダウンチャートが作成されている
- スクラムミーティングが毎日、同じ場所、同じ時間に開催される
スクラム自体が、開発を進める中で、学習を深め、プロセス自体を改善していく態度を推奨しています。譲れるものと譲れないものを明確にした上で、自分のチームにとって重要な要素を見出すようにしましょう。アジャイル開発の本質は、コミュニケーションを促進し、ユーザーにとって本当に必要なシステムを開発することです。細かい技術に惑わさないモノづくりの追求が求められています。