Updated: Mar 3, 2022
Looking at the last few years, one can see more and more organizations using Agile frameworks (especially Scrum) as the preferred way to deliver software. Some organizations have had great success in implementing and adapting Agile, while others achieved only partial success due to the well-known problems covered in this article.
So, how can organizations fail at adopting Agile? Once you understand that Agile is just a document with a set of principles and values that different people can interpret differently, it becomes clear that different interpretations can lead to vastly different results.
You can easily avoid many pitfalls related to Agile transition. The list below includes some common mistakes I have seen throughout my career:
Retrospectives Without Continuous Improvement
The main goal of the retrospective meeting is to allow the team to raise all issues that affected their progress and to suggest new ways to improve their day-to-day work and the process itself. These action items must be prioritized and resolved quickly. If not done, the team will have no respect for the retrospective. Consequently, they will lose their trust in the process and eventually stop contributing.
Treating Agile as a Religion
This is one of the classic mistakes made by new Agile trainers who treat Agile as a religion without really understanding their customers (Which refers to the internal development teams and senior management).
Agile is not a religion and should not be treated as one. Each transition is different and has its unique challenges. This is why Agile coaches must understand the culture and project first, rather than enforcing Agile as a solution that will magically provide all the answers.
Poor Team Structure
The Agile transition includes creating new Agile teams responsible for delivering the product throughout its life cycle. Therefore, the organization should do its best to make teams that possess all the relevant skills be genuinely “cross-functional.” This will allow them to handle different challenges involved in designing, coding, and testing activities.
Agile teams that do not have the correct mix of skills will not see the big picture. This makes them unable to estimate the scope of work needed for each sprint. It will, therefore, lead to delays in delivery, increased pressure during the sprint, and a higher percentage of completion failures.
A few years ago, I was invited as a consultant to an organization at the beginning of a transition to Agile. The reason I was invited was to analyze the reasons their teams had failed to adopt Agile. The investigation revealed a basic but crucial factor: a lack of training provided to the team as part of the overall implementation strategy.
As part of an Agile transition, you must ensure the implementation strategy includes the necessary training for the teams. This will ensure they have the essential foundations used throughout the entire process.
Lack of Automated Test Coverage
The basic concept of Agile suggests that a team should deliver an incremental part of the product at the end of each Sprint. This is great on paper, but this is just a distant dream without an automated supporting framework. Too many transformation failures are caused by a lack of investment in this area, making it almost impossible for the teams to work and fulfil their true potential.
Certification Is Not a Guarantee of Success
I am not a great believer in certifications you can get without real hands-on experience. In Agile, there are many certifications such as CST, CSM, and CSPO that you can pass without any relation to the real world.
Because of the above, I have a problem with organizations that start the process with Scrum Masters who do not have any experience or are certified trainers who do not know what it takes to transition a company to Agile (believe me, there are many of those).
Trainers can assist, but you should always ask questions and not follow them blindly. Remember that a trainer does not have experience in your domain, organizational culture, or the root problems that keep you from succeeding.
Ignoring the Quality Factor
Agile allows us to deliver incremental deliveries of the product fast. Many organizations love this approach for obvious reasons. So, what can go wrong? The answer is related to the state of mind of delivering the product early and fast enough to succeed; Agile is not about just delivering faster; it is about delivering high-quality in a way that will provide the best value for the customer.
Agile is not a free license to provide fast deliveries of poor quality. The team may deliver less functionality in a sprint. However, once they do, the customer will know it meets the quality standards he expects to see in a product used in his environment.
The Agile Manifesto states that the customer is the most crucial stakeholder and should be the centre of any Agile process. Many Agile projects fail for reasons directly related to this. The customer is left behind at critical junctions that significantly affect the entire project. One must avoid this pitfall by ensuring the customer is involved throughout the sprints, and his feedback is considered. This is the only way to ensure the team meets the customer’s vision and technical expectations.
No Support from Executives
Any transition should start with the support of the organization’s executives, who will take a decisive role in its implementation. Without their support, the organization will never adopt an Agile mindset.
Playing the “Blame Game”
Agile embraces the idea of “Self-organized” teams instead of individuals. Therefore, all team members must work together to achieve a common goal. Agile teams will succeed or fail as a single unit as part of this approach. There is no room for blaming one person or another. Team members must follow this approach from the beginning. Any other method will not contribute to the sense of collective ownership, innovation and supportive learning environment that allows the team to grow.
Once You Understand It, It Is Still Not Easy to Implement It
It is an axiom that people will be more dedicated to any change if they first understand the logical reasons. People need to understand why Agile was chosen as the preferred approach to handle the organization’s goals and the principles and values they need to succeed.
We Can’t Implement Agile Without Being Fully Committed to It.
Without genuine commitment and a clear goal, you are just floating around in the air and will fail to achieve anything. For a successful Agile transformation, it is not enough to want it. People must be genuinely committed to the process and set clear goals regarding what they want to achieve. This comes with the understanding that they will need to make significant changes in their state of mind and how they work. It is not apparent that people will agree to do it once they understand the consequences.
Relying on “Best Practices”
Each Agile transformation is different and has its challenges. There are no “Best practices” that you can take and enforce on an organization because it worked well in another. Think about the organizational culture, mutuality and preparation involved in such a significant change.
Instead of using guide books, checklists or best practices, you must investigate and understand the organizational culture, its goals, and the challenges it faces. Only then can you begin to build a worthy plan to perform a successful transition. Any other solution will fail even before you have the chance to try it.