スクラム開発において、何を持って完成とするかをスクラムチームで認識合わせしておくことが重要です。
「完成の定義」に関して、スクラムチーム内で十分に検討できていないと、プロダクトの品質担保が難しくなります。
開発者ができましたー!って持ってくるものをレビューすると
開発者によって、品質にバラつきがある時があるんだよね……
何を持って「インクリメント」としてOKとするかを
スクラムチームで決めることが大切だよ!
・「完成の定義(DoD:Definition of Done)」とは何かわかる
・DoDの作成方法やメリットがわかる
・DoDの具体例やノウハウを知ることができる
スクラム開発におけるその他の作成物を確認したい方は、以下記事をご確認ください。
完成の定義(DoD)とは
完成の定義(Definition of Done)とは、プロダクトの品質基準を満たすためのスクラムチームで決定するルールです。
「完成の定義」を満たすことで、はじめてそのプロダクトの「インクリメント」となります。
また、何を持って作業が完了したか、スクラムチーム全員が共通の認識を持つことができるようになります。
透明性が確保できないとメンバーによって完成の精度が異なり品質の低下に繋がるため、完成の定義はスクラム開発を開始する前に必ず作成しておきましょう。
※「完成の定義」はスクラムガイドに定義されています。「Doneの定義」や「完了の定義」と呼ばれることもあります。
基本ルール・作り方
完成の定義の作成方法を簡単に説明します。
[基本ルール]
作成者
・DoDは開発者とPO間で作成、合意する。
※ 品質担保のために最低限必要な内容を自分たちで決めます。
作成タイミング
・スプリント開始前に作成する。
※「スプリント0」の期間で作成することが多いです。
タイムボックス
・1日程度を目安に作成する。
※ 全て網羅し定義するのではなく、はじめのうちは項目を少なくすることがオススメです。
[作成手順]
- 品質担保のために必要であると思うことを洗い出す。
- どの時点(PBI, スプリント, 内部リリース, 正式リリースなど)で実施しておくべきか分類する。
- DoDとするか、PBIとして切り出すか検討する。
- 検討結果からDoDを作成する。
- 作成したDoDをチームがいつでも見れる場所に掲示する。
※ プロダクトバックログの「受け入れ基準(AC)」との違いを意識しましょう!
受け入れ基準は、機能的な要件が満たせているかを判断するためのものです。
作成観点・具体例
完成の定義は、プロダクトの品質を担保するために必要な内容を開発者とPOで合意し決定します。
具体的には以下のようなものがあります。
「完成の定義」の具体例
・ユニットテスト(単体テスト)をすべてパスしている
・コミット後の自動テスト(結合テスト)でNGが発生していないことを確認している
・ソースコードをコミット前にクロスチェックしている
・コーディング規約が守れていることを確認している
・関連ドキュメントの更新が完了している
自由にスクラムチームで話し合っていると漏れが発生しがちです。
以下の4つの観点で洗い出すように心掛けてみてください!
・プロダクトバックログアイテムの完成の定義は何か?
・スプリントを完了させる際の定義は何か?
・内部リリース時に守るべきルールは何か?
・正式リリース(S-in)時に守るべきルールは何か?
以下の画像は、4つの観点を意識して「完成の定義」を作成した際のイメージです。
完成の定義(DoD)のメリット
完成の定義を作成し、運用することには以下のメリットがあります。
あらかじめ関係者に品質基準の開示・合意しておくことも大切だよ。
完成の定義をより良くするためのノウハウ
「完成の定義」は作成しているが、上手く運用ができていないチームは多いと思います。
以下内容を取り入れてみてください。
- チーム成熟度が低い場合は、DoDの項目は軽量にする。(少なくする)
- DoDに項目に対して、開発者とPOの認識があっていることを確認する。
- DoDに追加したい項目も、はじめのうちはプロダクトバックログアイテムで管理する。
- スプリント開始後は、項目を削らない。(DoDの項目削減 = 品質を下げると同意)
- 自動化できるものは、なるべく自動化する。
- 定義する内容は曖昧にしない。(Yes or Noで判断できるようにする)
「完成の定義(DoD)」まとめ
[ポイント]
・完成の定義(DoD)とは、プロダクトの品質基準を満たすために開発者とPOで決定するルール。
・DoDは、スプリント開始前に作成する。
・チーム成熟度が低いうちは、DoDはできる限り少なくし、PBIとして切り出す。
・スプリント開始後に、項目を削らない。
・なるべく自動化を検討し、DoDの軽量化を目指す。
コメント