完了の定義フレームワーク

英語名 Definition of Done Framework
読み方 デフィニション オブ ダン フレームワーク
難易度
所要時間 初回定義1〜2時間 / スプリントごとに見直し15分
提唱者 スクラムガイド / アジャイル開発実務
目次

ひとことで言うと
#

「完了とは何を満たした状態か」をチーム全体で具体的な条件リストとして合意する仕組み。「できた」の基準を揃えることで、品質のバラつきと手戻りを構造的に防ぐ。

押さえておきたい用語
#

押さえておきたい用語
DoD(Definition of Done)
成果物やユーザーストーリーが「完了」と見なされるために満たすべき条件の一覧。チーム全体の共通基準として機能する。
受入基準(Acceptance Criteria)
個々のユーザーストーリーやタスクに固有の機能的な完了条件。DoDがチーム共通の品質基準なのに対し、受入基準はストーリー個別の仕様を指す。
インクリメント
スプリント終了時に提供される動作する成果物の増分。DoDを満たして初めてインクリメントと呼べる。
技術的負債
DoDを緩くして先送りした品質課題が将来の開発速度を下げるコストとして蓄積したもの。

完了の定義フレームワークの全体像
#

完了の定義:3層の品質基準で成果物を検証する
Layer 1: コード品質ユニットテスト通過コードレビュー完了リンター警告ゼロカバレッジ80%以上CI/CDパイプライン通過セキュリティスキャン合格Layer 2: 機能品質受入基準を全て満たす結合テスト通過デモ可能な状態リグレッションテスト通過パフォーマンス基準クリアLayer 3: ドキュメント・運用準備APIドキュメント更新リリースノート記載運用手順書更新モニタリング設定完了ロールバック手順確認↓ すべて満たして初めて「完了」↓↓ ここまで含めて「完了」↓
完了の定義の運用フロー
1
DoD草案作成
チーム全員で完了条件をリストアップする
2
合意と掲示
全員の合意を得てチームの見える場所に掲示する
3
スプリントで適用
各ストーリーの完了判定にDoDチェックリストを使う
レトロで進化
レトロスペクティブで条件の過不足を見直し更新する

こんな悩みに効く
#

  • 「できました」と言われたのにテストされていなかった
  • メンバーによって「完了」の基準が違い品質がバラつく
  • レビューで毎回同じ指摘(テスト不足、ドキュメント未更新)が出る
  • 技術的負債が溜まるが「いつやるか」が決まらない

基本の使い方
#

チーム全員でDoD草案を作成する
ホワイトボードやMiroに「完了するために何が必要か」を全員で書き出す。コード品質・テスト・ドキュメント・運用準備のカテゴリに分けて整理する。最初は5〜10項目に絞り、厳しすぎない基準から始める。
全員の合意を得て掲示する
DoDはチームの「社会契約」。全員が「これは守れる」と合意した内容にする。合意したDoDはチームのWikiやカンバンボードの横に常時掲示し、いつでも参照できるようにする。
ストーリーの完了判定にチェックリストとして使う
スプリント中、各ストーリーの完了時にDoDのチェックリストを1つずつ確認する。1つでも満たしていなければ「完了」ではなく「進行中」に戻す。この厳格さが品質を守る。
スプリントレビューでDoDの遵守を確認する
レビューで「DoDを全項目満たしたものだけがインクリメント」と宣言する。DoDを一部緩和して完了扱いにすると技術的負債が蓄積し、数スプリント後にツケが回ってくる。
レトロスペクティブでDoDを進化させる
レトロスペクティブでDoDの過不足を議論する。「この条件は形骸化している」「この項目を追加すべき」という改善を毎スプリント反映し、チームの成熟に合わせてDoDを育てていく。

具体例
#

例1:Webアプリ開発チームがリリース後のバグを半減させる

エンジニア6名のWebアプリ開発チーム。リリース後のバグ報告が月平均 18件 と多く、ユーザーからの信頼を損ないつつあった。

DoDとして以下の8項目を定義し、全ストーリーに適用。

  1. ユニットテストカバレッジ80%以上
  2. コードレビュー1名以上完了
  3. CI/CDパイプラインのテスト全通過
  4. 受入基準をすべて満たす
  5. ブラウザテスト(Chrome, Safari, Firefox)完了
  6. エラーハンドリングのテスト完了
  7. APIドキュメント更新
  8. 本番同等環境でのスモークテスト通過

3か月運用した結果、リリース後のバグ報告は月平均 18件→7件 に減少。特にブラウザ互換性のバグがほぼゼロになった。

例2:製造業の設計チームが図面の手戻りを構造的に防ぐ

産業機器メーカー(従業員250名)の設計部門。図面の承認後に「寸法公差の記載漏れ」「部品表との不整合」が頻繁に発見され、手戻りが年間 120件 に達していた。

ソフトウェア開発のDoDを参考に、図面のDoDを10項目で策定。「寸法公差の全記載」「部品表との照合」「3D CADとの整合性チェック」などを含めた。

チェックリスト形式でExcelに実装し、設計者が自己チェックした後に検図者がダブルチェックする運用にした。手戻り件数は年間 120件→35件 に減少し、設計部門の残業時間が月平均 15時間 削減された。

例3:マーケティングチームがコンテンツの公開基準を統一する

BtoB SaaS企業のマーケティングチーム(8名)。ブログ記事やホワイトペーパーの品質が執筆者によってバラバラで、公開後に誤字脱字や事実誤認の指摘を受けることがあった。

コンテンツのDoDを以下の6項目で定義した。

  1. 構成レビュー(公開前に別メンバーが通読)完了
  2. ファクトチェック(数字・引用の出典確認)完了
  3. SEOチェック(タイトル・メタ・見出し最適化)完了
  4. OGP画像の設定完了
  5. CTA(Call To Action)の設置完了
  6. 公開スケジュールの登録完了

導入後6か月で公開後の修正依頼は月平均 8件→1件 に激減。「レビュー済みだから安心して公開できる」というチームの心理的安全性も向上した。

やりがちな失敗パターン
#

  1. DoDを一度作って見直さない ─ チームの成熟度やプロジェクトの性質は変わる。レトロスペクティブのたびにDoDの過不足を確認する
  2. 最初から完璧なDoDを目指す ─ 20項目のDoDは重すぎて形骸化する。5〜10項目から始め、チームが習熟してから項目を追加する
  3. DoDに違反しても「今回は特別」で通す ─ 例外を1回認めると基準の意味がなくなる。DoDを満たさないものは完了にしない原則を守る
  4. DoDと受入基準を混同する ─ DoDはチーム共通の品質基準、受入基準はストーリー固有の機能条件。両方満たして初めて完了

まとめ
#

完了の定義フレームワークは、「完了」の基準をチーム全体で具体的な条件リストとして合意する仕組み。コード品質・機能品質・ドキュメントの3層で条件を設定し、すべて満たして初めて完了と見なす。最初は5〜10項目から始め、レトロスペクティブで継続的に育てていくことで、品質のバラつきと手戻りを構造的に防ぐ。