Warakorn - Fotolia


How to hold Three Amigos meetings in Agile development

Three Amigos is an Agile development strategy to keep projects on track with specifications, timeline expectations and more. Here's how to host the meetings, and who should join in.

Agile software development teams often adopt what's called a Three Amigos approach, which combines the perspectives of business, development and quality assurance for sprint planning and evaluation.

Typically, a Three Amigos meeting includes a business analyst, quality specialist and developer. The product owner or other businessperson clarifies the requirements before development; the development expert lays out the issues that arise in development processes; and the software quality expert or tester ensures that testing considerations are designed into requirements and development.

There are many ways to organize these meetings, and sometimes more than three people participate. The more perspectives in the meeting, the more gaps the organization can fill.

"The benefits of holding a Three Amigos meeting include a common understanding of what will be produced, a consensus on how to produce it and the ability to get everyone on the same page in terms of expectations," said Scott Abate, certified Agile project manager at Anexinet, a digital services provider.

This is how teams at Anexinet collaborate every day. The teams' daily standups frequently spin out offline huddles -- short, focused meetings -- between product owners, architects and QA. This collaboration lines up everyone's estimates and plans for how things should work.

Collaborate often and weave measurement of progress into these discussions. "A diligent approach to consistency and data collection, along with a goal-driven strategy, will make them work very well," he said.

Three Amigos meeting members.
The key members of Three Amigos meetings.

Benefits of the Three Amigos meeting

Three Amigos meetings remove uncertainty from development projects, as they provide a specified time for everyone to get on the same page about what to -- or not to -- build.

"The meeting exposes any potential assumptions and forces explicit answers," said Jeff Sing, lead software QA engineer at Optimizely, a digital experience optimization platform. "Everyone walks away with crystal-clear guidelines on what will be delivered and gets ahead of any potential scope creep."

For example, a new feature entails new business requirements, engineering changes, UX flow and design. Each team faces its own challenges and requirements. The business requirements focus on a broad problem space, and how to monetize the product. The engineering requirements center on the technical solution and hurdles. The UX requirements define product usability. The design requirements ensure the product looks finished. All of these requirements might align -- or they might not.

"This is why a formalized meeting needs to occur to hash out how to achieve everyone's goals, or which requirements will not be met and need to be dropped in order to build the right product on the right time schedule," Sing said.

How to conduct a Three Amigos meeting

These meetings should not be too long. Keep the time between 30 minutes and an hour. "Any meeting that ran for more than one hour always became ineffective," said Jonathon Wright, co-founder of The QA Lead, an online community for testing professionals. Wright is also the CTO of Digital Assured, a technology consulting company.

Make the time count. Previously, Wright worked for a large bank where executives proposed a project to help increase the efficiency of serving customers. On paper, the project was a great idea, but the QA team tested the use cases and realized the user story was too big. After a couple of Three Amigos meetings, the organization changed the primary goal of the project in a way that would still increase the efficiency of serving customers, but keep it small and granular enough to succeed.

Keep meetings to a small group, but not too restrictive. Allow for more viewpoints to align around shared goals when needed. If a meeting includes every person whose role relates to a discussion, it reduces ambiguity -- but too large a group can prohibit an understanding.

"The biggest challenge is to find a proper balance between how big this group should be and how productive and effective the group is," said Shyam Jha, senior VP of engineering and managing director at NetSPI, a security testing and vulnerability management platform. Jha finds it helpful to include members of the customer support, DevOps and documentation teams in the group, when necessary.

Conduct these meetings two or three sprints before the projects are expected to be pushed into development, said Jimmy Kamboj, business head of Imenso Software, a software development company. When his group worked on a shopping app, it made the most of Three Amigos meetings to sync everyone before the dev team started working on a feature.

Kamboj also encourages organizations to stop work on a story if little progress is being made, as that will put the onus on one of the members to be accountable in charting a clear action plan.

Invest time in preparation, including a checklist to gauge the readiness of a user story. An efficient Three Amigos meeting yields a much higher output with even a little bit of extra preparation.

Plan for three goals and three roles

A Three Amigos meeting should have three overall objectives involving specifications, test scenarios and new features. Aim to:

  1. Collaborate to determine requirements. The group members will review the requirements and update them during the sessions until they all agree the project is ready for development.
  2. Collaborate to develop tests. The representatives will discuss test scenarios, review them and provide feedback until they all agree that the product's expected behavior is covered in full.
  3. Reach a consensus on new features. The team will agree on the product features that will be pushed into a sprint.

A business analyst, developer and QA engineer typically address these three goals in a Three Amigos meeting. The developer and the QA engineer must be in the team that will develop and test the product. The business analyst typically researches the requirements and test scenarios, and then presents them during the meeting for the team to discuss. The QA engineer assesses the design and the specifications to ensure high quality.

There are expectations for the other stakeholders who sometimes join these meetings. For example, designers and department executives can represent business interests. Designers must showcase their work and receive feedback from the team frequently. Sometimes, the project requires more design, or a specific implementation calls for more details from the team. Designers should attend about half of the meetings, Wright said, based on his experience.

Department executives should join when the project goal is to improve internal operations, such as HR or finance. "They will give you a wider perspective on how the product will intersect with the business aspect to facilitate a high return on investment," Wright said. "Developers and QA experts tend to focus on the tech aspect and sometimes forget that the business aspect is just as crucial."

An example of Three Amigos in action

Three Amigos meetings encourage more collaboration between disparate roles -- one of the central tenets of DevOps.

Each member of the meeting looks at the situation through the lens of what is important to their department. It is through this diversity of opinion that teams understand the greater good, said Phil Strazzulla, CEO of SelectSoftware Reviews, an HR and recruiting software ratings service.

Strazzulla remembers one Three Amigos meeting that greatly smoothed communication across teams. The business team had an idea and wanted the developers to implement it before a big day. The developers had to explain to the business team that the ask was not simple, and they'd have to cut corners to meet the timeline. Then, the QA team stepped in to explain that these cut corners would increase the level of testing required, both in complexity and scope; any time gained in development would be lost in QA.

This meeting led the teams to reduce the scope of the feature. Thus, the business could realize the most important aspects of the project with as little risk as possible, Strazzulla said.

Common Three Amigos problems

While there are numerous benefits to Three Amigos meetings, it's not a cure-all for teams that struggle to communicate. Beware these six potential pitfalls.

Differentiation between dev and test. Some software development experts believe that role-based meetings can interfere with the ownership of responsibility required for DevOps to work smoothly. Specifically, it can be problematic to see developer and tester needs as separate.

"We don't necessarily believe that a precedence of Three Amigos meetings are necessarily effective," said Yoseph Radding, a software development engineer at Amazon who also provides DevOps consulting through Shuttl.io. "To deliver quality software effectively, the development team needs to own the application lifecycle end to end, including testing. The Three Amigos necessitate that testing and development are separate."

Three's not always enough company. Some companies limit their perspectives too much by restricting these meetings to three individuals. "You should try to include the other stakeholders in the meeting now and then," Wright said.

Brain drain. Long meetings drain the team's energy. Additionally, these long meetings make it easier to deviate from the core objective. Time boxing is a common Agile technique, particularly among Scrum adherents, to give the activity a finite amount of time. "Any time we restricted ourselves to, say, 40 minutes, we would use every minute wisely, making sure we discussed everything before time was up," Wright said.

Unequal power dynamics. Other problems can occur when some of the members don't consider all of the Amigo perspectives of equal importance, Strazzulla said. When this happens, the meeting turns into a delegation, with someone usually insisting that the other Amigos simply fall in line. "Ensure that all attendees of the meeting are on as equal footing as possible, so this doesn't happen," he said.

Unprepared attendees. All participants should be prepared to discuss business requirements and current product functionalities. When participants are not well prepared, the discussion doesn't reach an effective outcome, defeating its purpose. "Some upfront prework on the part of each stakeholder helps in channeling the meeting toward the truly important points," Jha said.

Arcane vernacular. With a Three Amigos meeting, the goal is to cut through all the business jargon and engineering talk to reach a shared understanding in one document. "To avoid assumptions or misunderstandings, the final acceptance criteria must be written in the most plain language as possible, so that everyone understands and agrees upon what will be built without ambiguity," Sing said.

TechTarget is responding to readers' concerns about language as well as profound cultural changes. In some cases, we are defaulting to industry standards that may be seen as linguistically biased in instances where we have not found a replacement term. However, we are actively seeking out and giving preference to terms that properly convey meaning and intent without the potential to perpetuate negative stereotypes. As we work toward using inclusive language in all cases, TechTarget’s Diversity and Inclusion Style Committee welcomes your feedback at [email protected].

Dig Deeper on Agile, DevOps and software development methodologies

Cloud Computing
App Architecture