Agile Advisor

Acceptance Criteria: Get Everyone on the Same Page

Microsoft's Aaron Bjork explores how to use acceptance criteria to get everyone on your team running the same play.

On any team, whether a professional sports team or a software team, success is achieved only when all team members are on the same page. When the quarterback of a football team drops back to throw a pass, he is depending on everyone on his team to do his part to run the right play. Linemen must execute the correct blocking scheme, and receivers must run precise routes. Success is achieved when everyone works together to run the same play. Now, consider the result if every team member ran a different play? Success would be highly unlikely.

Software teams are no different. When a team commits to completing a story, every member of the team must be on the same page. A lack of alignment from the start results in waste, rework and decreased morale. How do you go about ensuring that everyone on your team is running the same play? One tool commonly used by Agile teams is known as "acceptance criteria."

The Handshake
What are acceptance criteria? I often describe acceptance criteria as the handshake between the product owner and the team regarding the definition of "done." The acceptance criteria are a list of things a user will be able to do with the product after a story is implemented. When the acceptance criteria are met, the story is done. It is that simple.

Acceptance criteria do not reflect everything the team needs to do to implement a story. Specific and detailed tasks track that work. Instead, acceptance criteria record what a user will be able to accomplish with the software after the story is implemented. Think of the acceptance criteria as defining the finish line in a race. When a team has finished the work to satisfy the acceptance criteria, they have crossed the finish line.

The product owner on the team is responsible for writing acceptance. It should be specific and complete. Any story without acceptance criteria is not ready for implementation.

Shared Understanding
The value of acceptance criteria starts with the handshake, but doesn't end there. The actual acceptance criteria set the stage for some of richest conversations and interactions on the team. It provides the context for conversations leading to what I call a "shared understanding."

A football team uses a playbook to achieve alignment. Each play is designed, communicated and eventually executed. In much the same way, members of a software team need to be on the same page when tackling stories from the backlog. This starts with communicating what the team is going to build. What does success look like when a story from the backlog is complete? What will a user of the software be able to accomplish when a story is delivered?

For any story on the backlog, team members inevitably start with a unique understanding of what "done" looks like. This is natural and should be expected. Even with the simplest stories, individuals often start with widely different perspectives and ideas.

This starts to change though as the team digs into the acceptance criteria. A shared understanding of the story begins to emerge. A comment from one team member might elicit the following response from another: "Ah-ha, great point... I never thought of that."

Regardless of who is being enlightened, the power lies in the fact that the product owner and the team are together building a shared understanding of done. Everyone is getting on the same page.

During this process, the acceptance criteria are adjusted to reflect the new shared understanding. By the end, the team is aligned about what "done" looks like for each story. The team is now ready to run the play.

If your team is struggling to understand "done" or can't seem to identify the finish line, work with your product owner to write down a simple list of acceptance criteria for each story. You'll quickly build a shared understanding and get everyone on your team running the same play.

About the Author

Aaron Bjork is a Principal Program Manager at Microsoft working on Agile experiences and tooling within Team Foundation Server (TFS). Prior to joining TFS in 2008, Bjork worked as a software engineer and development lead in Visual Studio. He is passionate about Application Lifecycle Management solutions and has a strong desire to see teams improve their software engineering practices. Follow Bjork on his blog at blogs.msdn.com/aaronbjork.

comments powered by Disqus

Featured

  • Hands On: New VS Code Insiders Build Creates Web Page from Image in Seconds

    New Vision support with GitHub Copilot in the latest Visual Studio Code Insiders build takes a user-supplied mockup image and creates a web page from it in seconds, handling all the HTML and CSS.

  • Naive Bayes Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the naive Bayes regression technique, where the goal is to predict a single numeric value. Compared to other machine learning regression techniques, naive Bayes regression is usually less accurate, but is simple, easy to implement and customize, works on both large and small datasets, is highly interpretable, and doesn't require tuning any hyperparameters.

  • VS Code Copilot Previews New GPT-4o AI Code Completion Model

    The 4o upgrade includes additional training on more than 275,000 high-quality public repositories in over 30 popular programming languages, said Microsoft-owned GitHub, which created the original "AI pair programmer" years ago.

  • Microsoft's Rust Embrace Continues with Azure SDK Beta

    "Rust's strong type system and ownership model help prevent common programming errors such as null pointer dereferencing and buffer overflows, leading to more secure and stable code."

  • Xcode IDE from Microsoft Archrival Apple Gets Copilot AI

    Just after expanding the reach of its Copilot AI coding assistant to the open-source Eclipse IDE, Microsoft showcased how it's going even further, providing details about a preview version for the Xcode IDE from archrival Apple.

Subscribe on YouTube

Upcoming Training Events