スクラムチームにおける「完了の定義」と「受け入れ基準」

ジェイソン・ガードナー(編)

スクラムのプロダクトに取り組む際、考慮すべき 2 つの重要な要素は、「完了の定義(DoD)」と「受け入れ基準(AC)」です。 一見この2つには互換性があるように思えるかもしれませんが、そうではありません。 それぞれに明確な目的があり、それらの組み合わせにより、スクラムチームは潜在的に出荷可能なインクリメントを提供することが保証されるのです。 この記事では、「完了の定義」と「受け入れ基準」の違い、およびなぜ スクラム チーム にはどちらも必要 なのかを説明します。

「完了の定義」とは?

「完了の定義(DoD)」は、プロダクトのインクリメントがリリース可能だと判断するために満たされるべき基準の、共有・合意のなされたチェックリストです。 つまり、チームメンバー全員が品質の意味を理解し、それが「完了した」と見なされる際のプロダクトのインクリメントが、どういうものであるべきかを認識しているということです。 これは品質基準のリストであり、チームメンバーが共通認識を持ち、より良いコミュニケーションができるように基準を設定することが重要です。

プロダクトのインクリメントがリリース可能だと判断するための基準については、チームの合意が必要です。 その基準には、通常、機能要件、パフォーマンス基準、ユーザビリティ、セキュリティなど、さまざまな側面が含まれます。 例えばマーケティング チームには、発信する資料が会社のスタイル ガイドに則しているかどうかを確認する「完了の定義」が存在するかもしれません。 ソフトウェア チームには、チェックインされたすべてのコードにユニットテストが必要であるという「完了の定義」が存在するかもしれません。

「受け入れ基準」とは?

「完了」の定義は、品質の意味、およびそれをどう評価するかについての共通の理解ですが、「受け入れ基準」はそうではありません。 「受け入れ基準(AC)」は、ユーザー ストーリーの境界またはスコープを定義するために用いられる一連の基準です。 受け入れ基準は、1 つのユーザー ストーリーの要件を表し、スプリント計画中に設計されます。 受け入れ基準は、顧客中心に考えられている場合にうまく機能し、どういった技術的ソリューションの実装が最適なのかを、チームは見い出すことができます。 「ユーザーレコードはMySQLデータベースに保存され、AES暗号化を使用します」ではなく、「ユーザーレコードは業界標準の暗号化方法に従い、パスワードを使用してデータベースに保存する必要があります」とします。

受け入れ基準は、各ユーザー ストーリーを満たすために必要な実装固有の情報を表します。 つまり、すべての受け入れ基準が満たされていれば、ユーザー ストーリーは完了です。 受け入れ基準に関しては、チームメンバーとステークホルダーの両者が、スプリントの開始前に合意している必要があるので、明確に表現しなければなりません。

なぜ、どちらも必要なのか?

なぜ「完了の定義」と「受け入れ基準」の両方が必要なのでしょうか。 なぜなら、完了の定義が、潜在的に出荷可能なプロダクトのインクリメントを達成するために不可欠だということがあります。 「完了」が定義されていなければ、クライアントにとっては受け入れらない状態なのにも関わらず、チーム内では自分の作業が完了したと見なしてしまう可能性があります。 その結果、サイクルタイムが長くなり、開発のスケーリングがしづらくなり、欠陥の発生率の増加につながる可能性があります。 「完了の定義」はインクリメント全体とその全体的な品質を調べるものですが、「受け入れ基準」はプロダクトのインクリメントの、特定の要素を定義するものです。

「完了の定義」と「受け入れ基準」 を併用すると、各スプリントの成果物が最高水準の品質を満たし、顧客のニーズを満たすことを保証できます。 基準についてに事前にチーム内で合意しておくことで、「完了の定義」は、チームが、自分の作業が何を達成しなければならないのか、開始段階から知っていることを保証します。 「受け入れ基準」は、チームが特定のユーザーの要件を満たすために何を提供すべきかを正確に把握するのに役立ちます。 要するに、「完了の定義」は「いつ終わったのか」を教えてくれるのに対し、「受け入れ基準」は「私たちはやっていることが正しいか」を教えてくれます。

まとめ

結論として、「完了の定義」と「受け入れ基準」の違いを理解し、それらを適切に適用する方法を理解することが重要です。 「完了の定義」と「受け入れ基準」は2つの異なる概念で、それぞれプロダクトのインクリメント全体と、各ユーザー ストーリーの品質を定義する役割を果たします。 この2つを組み合わせが、スクラムチームが提供するプロダクトのインクリメントが高品質であり、顧客のニーズを満たすことを保証するのです。 「完了」の基準が何であるか、何を提供すべきなのか、これを最初に明確にしておくことで、チームは共通の目標に向かって協業し、開発のプロセスをより効率的に進めることができます。

[monarch_share center=”true”]
0

We are using cookies to give you the best experience on our website.

You can find out more about which cookies we are using here.