71% of companies use Agile methodologies. Even if they follow the same framework, there are a couple of differences in their processes.
Is it normal to have so many differences while using the same methodology? What’s the right way to implement Agile?
A universal way of managing projects
Agile refers to a set of methods and techniques for organizing projects based on a set of values listed in the Agile Manifesto. The Agile Manifesto outlines four core values and twelve principles.
“Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan.”
Every team has its own set of procedures
Many people say that to “do Agile right” you need to have a team of 5–9 people working in the same room with a product owner. Scrum, for example, prescribes daily stand-up meetings no longer than fifteen minutes which all team members must attend, sprint retrospectives, and demos at the end of each iteration.
All of these are great practices in the right context. In reality, we don’t have such ideal conditions. We have to deal with outsourcing, large team sizes, distributed teams, and part-time availability of stakeholders.
Agile is a philosophy, solid guidance for delivering value, a reference to follow. There is no right way to implement Agile methodologies. That’s why you can’t measure how agile your team is. The Agile principles are meant to be a reference and their principles need to be analyzed, tested, and adapted to a process that fits your team.
Instead of following a set of principles and methods, having an Agile mindset, and choosing an approach that makes sense for a team, it seems to be more effective for teams. Every team needs to find what works for them.
The same process doesn’t work for everyone
Paper(1st), cotton(2nd), leather(3rd), silver(25th), gold(50th), diamond(60th). All of these are wedding anniversaries. Starting from the Middle Ages there is a tradition of giving specific anniversary gifts, representing how a couple’s marriage strengthens as time passes. The same is true for Agile teams.
A team’s strength increases with every day, challenge or sprint. When the teams are continually improving their processes they are happier and powerful. Following a unique pattern isn’t natural. The strength comes from adapting and working well together as a team.
Every team is different and it has its own ways of working, and its own priorities. Since each individual and organization is unique, it is perfectly normal that the workstyle needs to be tailored especially for everyone.
Three reasons why the same process can’t work for all teams:
- The team size matters! A team of five people will work differently than a team of twenty.
- Different people mean different skill sets, preferences, and backgrounds. Every person has their own working style, career goals, and learning styles.
- Context counts. It is normal that teams will work differently depending on the context. We can easily compare companies that build the same category of products and we will notice huge differences between them.
“May your choices reflect your hopes, not your fears”
Forcing a team to follow a strict process is not the right way to go. People are more productive when they feel appreciated and comfortable. Rather than standardizing on one method or framework, you must be able to choose the right strategies and adapt your approach based on your context. Don’t be afraid to optimize and update the workflow as many times as is needed.
“We want to restore a balance. We embrace modeling, but not in order to file some diagram in a dusty corporate repository. We embrace documentation, but not hundreds of pages of never-maintained and rarely-used tomes. We plan, but recognize the limits of planning in a turbulent environment.” — Agile Manifesto
In order to develop a process, you don’t need to start from scratch. You can combine existing practices and strategies and modify them appropriately to address the situation at hand. We can benefit from the learnings of others.
Measure what counts, not how agile your team is
Regardless of what methodology we are using, the main objective of a team is to be as effective as possible. To achieve that it needs to continually improve the process and the tooling infrastructure. Don’t be afraid to experiment. It’s one of the best ways to learn. What are you hoping to improve? Quality, staff morale, test coverage, or maybe customer satisfaction?
Another thing to keep in mind is to “deliver continuously at a sustainable pace”. It’s more important to be well aligned and remain aligned in the long term. In general, working on a project- it’s a marathon, not a sprint. You only need to find your team’s running pace.
The truth is there’s no one right way to implement Agile methodologies. After all, we should not focus on doing Agile or being agile, but to be as effective as we can be.
“The strength of the team is each individual member. The strength of each member is the team.” — Phil Jackson
Reference: “Choose your WoW. A Disciplined Agile Delivery Handbook for Optimizing Your Way of Working” By Scott Ambler, Mark Lines.