
インクリメントと完成の定義を学ぶよ!
「完成の定義を満たさないものはリリースできない」が鉄則だよ。
プロダクトゴールへの具体的な踏み石であるインクリメントと、透明性を生む完成の定義について解説します。
要点早見表
| 項目 | 内容 |
|---|---|
| 定義 | プロダクトゴールに向けた具体的な踏み石 |
| 確約 | 完成の定義(品質基準を満たす状態の正式な記述) |
| 作成者 | 開発者(完成の定義に準拠して作成) |
| リリース | 各スプリントでのリリースは義務ではないが、利用可能な状態にする スプリント終了前のデリバリーも可能 |
| 完成の定義の作成 | 組織標準があればそれに従う。なければスクラムチームが作成 |
インクリメントの特徴
- インクリメント(Increment): プロダクトゴールに向けた具体的な踏み石。これまでのすべてのインクリメントに追加され、すべてのインクリメントが連携して機能することを保証するために徹底的に検証される。
- 価値を提供するには、インクリメントを利用可能にしなければならない。
- スプリントでは複数のインクリメントを作成可能である。インクリメントをまとめたものをスプリントレビューで提示することで、経験主義がサポートされる。
- スプリント終了前にインクリメントをステークホルダーにデリバリーすることもできる。各スプリント終了時に本番リリースする義務はないが、利用可能な状態にはしておく。
確約: 完成の定義
- 完成の定義(Definition of Done): プロダクトの品質基準を満たすインクリメントの状態を示した正式な記述。
- プロダクトバックログアイテムが完成の定義を満たしたときに、インクリメントが誕生する。
- 完成の定義により、作業が完了してインクリメントの一部となったことが全員の共通認識となり、透明性が生み出される。
- プロダクトバックログアイテムが完成の定義を満たしていない場合、リリースすることはできず、スプリントレビューで提示することもできない。あとで検討できるようにプロダクトバックログに戻しておく。
完成の定義の作成と遵守
- 完成の定義が組織の標準の一部となっている場合、すべてのスクラムチームは最低限それに従う必要がある。
- 組織の標準になっていない場合、スクラムチームがプロダクトに適した完成の定義を作成する。
- 開発者は完成の定義に準拠する必要がある。非機能要件(セキュリティ、パフォーマンスなど)を完成の定義に含めることで、すべてのインクリメントが品質基準を満たすことを保証できる。
試験対策ポイント
- 「完成の定義を満たさない限り、作業をインクリメントの一部と見なすことはできない」「満たさないアイテムはレビューで提示できず、プロダクトバックログに戻す」はそのまま出題される。
- 完成の定義の作成者は、組織標準があれば組織(チームは従う)、なければスクラムチーム。「プロダクトオーナーが作る」「スクラムマスターが作る」は誤り。
- 各スプリント終了時のリリース(デリバリー)は義務ではないが、インクリメントは利用可能でなければならない。この区別が問われる。
- インクリメントは加算的であり、過去のインクリメントと連携して機能することを徹底的に検証する必要がある。
- 完成の定義を変更・改善する議論に最も適した場はスプリントレトロスペクティブである。
関連模擬問題
【問1】
質問: 完成の定義を作成する責任者は誰ですか。
選択肢:
- A. スクラムマスター
- B. プロダクトオーナー
- C. 組織の標準がない場合、スクラムチーム
回答と解説を見る
正解は C です。
解説: 完成の定義が組織の標準の一部となっている場合、すべてのスクラムチームは最低限それに従う必要があります。組織の標準になっていない場合は、スクラムチームがプロダクトに適した完成の定義を作成しなければなりません。
【問2】
質問: 正しいか正しくないか。各スプリントの終了時には、プロダクトのインクリメントを本番環境に必ずリリースしなければなりません。
選択肢:
- A. 正しい
- B. 正しくない
回答と解説を見る
正解は B です。
解説: スプリントの終了時には、プロダクトのインクリメントを利用可能な状態にしておくべきですが、リリースは義務ではありません。リリースするかどうか、いつリリースするかはプロダクトオーナーの判断であり、スプリント終了前にデリバリーすることも可能です。