One of the simplest to understand, yet the most neglected or ignored of all Agile Principles is the Principle #4: “Business people and developers must work together daily throughout the project.”
The Agile Principle#4 sounds simple enough. But as anyone who's worked in a Scrum Team can attest, it's easier said than achieved.
Many Scrum Teams work with their team managers as Product Owners. I've worked with a number of such Scrum Teams. While the managers have all good intentions to help their team and also know the technical aspect and engineering side of the work well, they have very little knowledge of the market, customers/users and competition.
They rely on the Product Managers for the vision, roadmap and requirements. Most of the time requirements are handed down as PRDs or extensive documentation which the team interprets on its own and creates “dark stories” – low value stories customer will never or rarely use
On investigation, I found that
— Lack of collaboration with business causes teams to make up work
— Unwillingness of business to prioritize proliferates useless projects
This essence is captured in the top image#1. You can see that a Scrum Master and/or an Agile Coach will wish that the team had access to a real business Product Owner
The second scenario in the (middle) image#2 shows another widely popular abuse of this Principle, called “Proxy” Product Owner.
Someone, like a technical lead or a senior team member wears the PO hat and provides a fake assurance to the team that the PO role has been duly filled.
On closer look, critical decisions on the product or an important feature is negatively/heavily impacted by such proxy roles.
Why? Because the Proxy PO role is not responsible for the success of the product and so there is lack of accountability in quick decision-making
I've seen that sometimes it takes more than a week to get the answers. The Product Manager (real PO) is not accessible by the proxy role and this creates delays.
The 3rd scenario/Image#3 (bottom most image) shows a rare successfully setup agile team, where the business representative and developers work closely together from the start of the project
They discuss requirements, brainstorm solutions, and prioritize together. This collaboration allows for rapid feedback, quick decision-making and effective iterations, resulting in a product that meets the customer's needs
Ultimately, the success of an agile project hinges on the partnership between business and developers. This collaboration not only helps a team to focus on what to build but also removes the noise with the Product Owner deprioritizing what not to build
This way, the product owner can reduce the risk of developing features that aren't useful to the customer. As Marty Cagan says:
- Time to make a decision is the primary driver of project failure and budget overrun
- Scrum pushes decisions down to the team and small teams reduce “decision latency”
- Strong, decisive, available Product Owner is critical to short decision latency
What are your thoughts on Principle #4? How do you ensure daily collaboration between your business and tech teams?