The Three Amigos - What's up With That?

The Three Amigos is a software developer approach that is often used in Agile environments. It a highly collaborative development strategy. It places a large emphasis on communication. Perhaps it's biggest selling point is the fact that different experts are working in union, complimenting each others unique skills, thus being able to gain a broader perspective on things. This approach helps out to get clear understanding of the requirements and agree on the "Definition of Done" - what exactly is need to put the story in the "Done" status.

Roles Involved in the Three Amigos

We need the following roles in order to utilize this development strategy:

  • BA - the Business Analyst would help ensure that team understands what is expected from the user stories, so the team realizes what business value would the customer receive. In places where there is no BA, the PO (Product Owner) will take place of this amigo.
  • Dev - the developer can help in understanding the requirements from more of a technical perspective, what is needed to finish an increment with in Sprint, for example.
  • QA- the tester will provide constructive criticism by looking for overlooked scenarios and testing for edge cases so the Acceptance Criteria can be further improved upon 

When is the right time for this approach?

In order to makes the most use out of the Three Amigos it is best to start with this as early as possible - it is best do do it in the first stages of the requirements phase. It would make very little sense using this approach later in the software development life cycle, as the benefit gained would be negligible. It can be utilised within Domain Driven Design, Behaviour Driven Development and the  Acceptance Test Driven Development. It plays well with Test Driven Development and testing in general - early established acceptance criteria means that test can be written before the functionality has been developed and not just unit tests (which is the first association with TDD - red, green, refactor) but for other test levels as well!

What are the benefits?

This way of doing things can greatly increase the quality of an Agile project and the effectiveness of the team as well. If you think about it, the Three Amigos is very much aligned with the principles of the Agile Manifesto as it emphasizes, and enables, adaptability, agility and continuous improvement. Other benefits include increased understanding of SDLC - it makes quality a shared responsibility, helps us avoid misconceptions early and prevent defects and misunderstandings. Collaboration gets improved and sprint meetings become more meaningful and more productive, same goes for spring reviews. All members of the development team get included to discus the required increments of work. And, as mentioned before, helps us cover the acceptance criteria in a very reliable manner.


Comments

Post a Comment

Popular posts from this blog

10 Tips for Designing Better Test Cases

TestRigor - Review

How to Pass AZ-900 Azure Fundamentals Certification Exam