From 77df8bb424fab9554fc12547d67d53be31bccd84 Mon Sep 17 00:00:00 2001 From: Derek Lane Date: Thu, 16 May 2019 20:34:05 -0500 Subject: [PATCH] Refined content (#33848) --- .../english/agile/acceptance-criteria/index.md | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/guide/english/agile/acceptance-criteria/index.md b/guide/english/agile/acceptance-criteria/index.md index 001a87ba3a..8647d6ccc0 100644 --- a/guide/english/agile/acceptance-criteria/index.md +++ b/guide/english/agile/acceptance-criteria/index.md @@ -3,10 +3,11 @@ title: Acceptance Criteria --- ## Acceptance Criteria -The User Story, as an item in your backlog, is a placeholder for a conversation. In this conversation, -the Product Owner and the Delivery Team reach a shared understanding of **"Who"** wants the change, **"What"** they need to be able to do (in business terms, not 'clicks' and boxes, etc.) and **"Why"** they want it. -Acceptance Criteria tells the Delivery Team how the code should behave. Avoid writing the **"How"** of the User Story, keep to the **"What"**. +The User Story is an item in your backlog that is a placeholder for a conversation. In this conversation, +the Product Owner and the Delivery Team reach an understanding on the desired outcome. + +The Acceptance Criteria tells the Delivery Team how the product is expected to behave. The Acceptance Criteria answers the question for the Delivery Team, "How will we know when it's done?" An example might be: - "Given a record needs to be reviewed, @@ -25,14 +26,16 @@ If the team is following Test Driven Development (TDD), Acceptance Criteria may The Acceptance Criteria will be the beginning of the test plan for the QA team. It is what is required for the story to go live, the QA team may still apply exploratory testing to pick up potential defects. Regardless of the team's test methodology, it should have a pass-fail definition of what it means to complete this increment of work. From the Customer's perspective the Acceptance criteria defines the behavior the customer expects. From a Software Engineer's perspective the Acceptance Criteria tells the Delivery Team how the code should behave. Avoid writing the **"How"** of the User Story; keep to the **"What"**. In short the Delivery Team defines a set of criteria which when met allows a story to be marked as "Done" or "Accepted". + If the team is following Test Driven Development (TDD), it may provide the framework for the automated tests. -The Acceptance Criteria will be the beginnings of the test plan for the QA team. +The Acceptance Criteria may be the beginnings of the test plan for the QA team. -Most importantly, if the story does not meet each of the Acceptance Criteria, then the Product Owner should not be accepting the story at the end of the iteration. +Most importantly, if the User Story does not meet each of the Acceptance Criteria, then the Product Owner should not accept the User Story as delivered at the end of the iteration. -Acceptance criteria can be viewed as an instrument to protect the Delivery Team. When the Delivery Team commits to a fixed set of stories in the Sprint planning, they commit to a fixed set of acceptance criteria as well. This helps to avoid scope creep. +Acceptance Criteria can be viewed as an instrument to protect the Delivery Team. When the Delivery Team forecasts which User Stories the will focus on delivering in Sprint planning, they need to understand the Acceptance Criteria for those User Stories as well. This helps to avoid scope creep. + +Consider the following situation: when accepting the User Story, the Product Owner suggests adding something that was not in the original scope of that User Story. In this case, the Delivery Team is in the position to reject this request (however small it might be), and ask the Product Owner to create a new User Story that can be considered for a future Sprint. -Consider the following situation: when accepting the user story, the Product Owner suggests adding something that was not in the scope of the User story. In this case the Delivery team is in the position to reject this request (however small it might be) and ask the Product owner to create a new User story that can be taken care of in another Sprint. In the agile approach, the aim is to focus more on people and communication rather than process and tools.