One for each other and all for one, the three collaborative Amigos are we.
Behavioral Driven Development is an effective story writing method. If you are doing BDD without Three Amigos, you are missing out on an opportunity to align business and technology. Every Scrum Team Member has their own understanding of a requirement. The unresolved differences between each team member’s understanding can lead to little time to revise coding and perform testing towards the end of the Sprint. This in turn very often leads to story slippage or new items in the backlog. How many times have you experienced this as a member of an Agile team?
The Three Amigo Principle says that the Three Amigos—the Product Owner writing the functional requirements, the Developer developing the story, and the Quality Analyst testing the story—should get together prior to story execution and continuously collect “Just-In-Time” feedback with in turn allows the addition of any missing information.
The Product Owner should review the story description and acceptance criteria with the team. The Product Owner is the intermediary between the business and the development team. It is important for the Product Owner to come up with the details requirement after discussing with the business team and make the story available for the development team.

The members of the Development Team discuss the architecture and low-level design with the team or any gap that need to be developed for the story.
The members of the Quality Assurance Team discuss the Test Cases already created for the business requirements. Also team ensures that they understands the nuance of the story and how to effectively design and test.
The objective of the meeting is to generate the same shared understanding of the business specifications. The Business Analyst collects the feedback, reviews comments from the team members, and adds missing information in order to remove ambiguous information from the User Story, if any. This is designed to get everyone on the same page and allows the team to accept the requirements before jumping into the development phase.
Let’s take a look at an example.
Imagine you’re working for a hoverboard company.
Often times we get an ambiguous feature request that looks like this:
- Functional Requirements
1.1 Search Functionality
1.1.1 User should be able to search for a product
1.1.2 Only the products related to a search string should be displayed.
- A question of a Business Owner might be: What should be the search results if user searches for an invalid product?
- Possible reply. Invalid product searches should show following text on the search page: No Product found
That doesn’t go far enough to remove the ambiguity. A tester might interpret these requirements to mean that an invalid product is a hoverboard that out of stock, while another team member might consider an invalid product to be any typed in product name that is mis-spelled during a user’s product search (the “Wizzardboard” instead of the “Wizard Board”). By having a Three Amigo session the teams can ask questions like:
- What should happen when there are no exact or similar matches?
- Should the user be given an error message?
The Three Amigo collaboration helps the team to swarm more effectively. Three Amigo collaboration helps to get alignment, identify blockers and ensures right understanding and helps the organization to deliver the right solution.
The goal for implementing Three Amigos conversation is for teams to build higher quality products and business to build confidence.