[ Agile Manifesto — Principle 2 ]
Change is inevitable. Especially in today’s world: call it VUCA or BANI. Living in a VUCA (Volatility, Uncertainty, Complexity, Ambiguity) or BANI (Brittle, Anxious, Non-Linear, Incomprehensible) world means dealing with constant change. This reality is especially relevant to agile teams aiming to adapt quickly and effectively. In this article, we delve into the agile principle of welcoming changing requirements, and explore how this aligns with the unpredictable nature of our contemporary environment.
Change is not just a disruption
But that is what we have to do in order to survive? Agility is exactly about that: responding quickly, effectively, and flexibly to changes in our environment.
This is why the 2nd principle of the Agile Manifesto is reminding us on exactly that:
Yes, welcome them, you cannot fight them. They are inevitable. Show me the plan that was valid for months of development…
While change may initially be perceived as challenging, it’s essential to underscore its positive aspect. Change is not just a disruption; it is an opportunity for growth and improvement. When teams view change as a catalyst for innovation, they unlock the potential to deliver even more valuable solutions to their customers. Embracing change with a positive mindset can energize teams and pave the way for transformative outcomes.
WHAT?! Hold on a second. You mean, after all the work we already spent? Also when it means to admit a wrong decision? Also when this means throwing away code that has already been built?
This doesn’t feel good. And “welcome” seems to be overly friendly for something that can feel so bad or even hurt.
What if we delivered something wrong just for the sake of delivering something? Would this make us feel better? I do not hope so.
Addressing the natural fear associated with change is paramount. It’s crucial to realize that admitting a mistake or altering a course doesn’t equate to failure. Teams can overcome this fear by sharing success stories of how embracing change has led to better outcomes and, in turn, building confidence in the team’s adaptability.
Balancing stability and flexibility
Initial project plans are not set in stone. Even if it may feel like it from time to time. We are asked to create roadmaps and delivery milestones one year into the future — that are doomed to fail.
But the plan was crafted with the best assumptions, given what we knew at that time. And since we are in a VUCA/BANI-complex world, everything is based on a hypothesis. Once we start the project, we learn and discover new things. Which, most likely, require us to adapt!
Remember when GDPR was becoming effective in 2018? This was quite a heavy lift for some companies to be able to comply with the regulation in time!
This was known to come along, but what is with major security incidents like the Log4Shell vulnerability where an estimated 10% of all digital assets (↗ source) like web apps, cloud services, and physical server were at risk of being exposed at the time of discovery (end of 2021). This had to be fixed asap!
Less earth-shattering examples are:
- The team has to adapt legacy code that has no documentation or unit tests but lots of unknowns to figure out.
- People with key knowledge leaving the company.
- A delivery from another team comes late / not in the expected shape / not at all…
- Tricky support cases that block the team.
I am sure you can extend the list of why plans needed to be adapted with your own examples easily.
Balancing stability and flexibility is an art within Agile practices. While the initial plan provides stability, a commitment to flexibility allows for adjustments when needed. Striking the right balance ensures that the project maintains a sense of direction while staying responsive to evolving requirements. This equilibrium is key to successful Agile implementation.
Learning which change is required is a good thing! To be able to in fact see it as a good thing, we need to foster a culture that embraces learning, improvement and innovation. Building a culture of continuous learning lies at the heart of Agile success. Beyond merely adapting to change, we need to nurture a safe environment where mistakes are viewed as opportunities for learning. Where we communicate openly and blame-free.
By encouraging open communication, sharing insights, and celebrating lessons learned, teams create a learning culture that not only adapts to change but actively seeks it for the betterment of the entire organization.
To facilitate continuous improvement, Agile frameworks offer specific mechanisms. Regular retrospectives, feedback loops, and agile tools are invaluable for monitoring progress and identifying areas for enhancement ( see Principle 12 “At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly”). These practices, deeply rooted in transparency, inspection, and adaptation, form the foundation of empirical process control, ensuring the team’s ability to achieve the best possible outcomes, i.e. the right product desired by the customer.
If we have achieved that, we can in fact, embrace change, and continually learn from new team insights and customer feedback.
To really promote a positive attitude towards change, we also have to think of another aspect: How is a change, like for example, major shift in priorities, communicated within an organization or to customers? Do all affected staff and stakeholders understand WHY the change is necessary?
Without effective communication, you are almost certainly paving the way for a variety of negative outcomes such as
resistance to change: When change is introduced without proper communication, employees may feel blindsided and uncertain about the reasons behind the changes. This uncertainty often results in resistance. Employees may resist the change simply because they don’t understand the rationale or the potential benefits.
decreased morale and engagement: Lack of communication can leave employees feeling undervalued and disconnected from the organization’s or Product Owner’s decision-making processes. Reduced morale and engagement are common consequences. Employees who feel excluded or uninformed are less likely to be motivated and may become disengaged from their work.
reduced productivity and innovation: Employees who are unclear about the change may struggle to adapt, leading to reduced productivity. Or it can create an environment where the change implementation is doomed to fail.
negative impact on customer relations: External stakeholders, including customers, may be unaware of changes impacting the products or services they receive. Poor communication with customers can lead to dissatisfaction, erode trust, and potentially result in the loss of business.
Effective communication is the antidote to the potential pitfalls associated with change. To ensure a positive attitude towards change and avoid detrimental consequences, consider the following strategies:
- Have open and transparent communication. Share information about the change openly, addressing concerns and acknowledging uncertainties.
- Clearly articulate the reasons behind the change. Explain the benefits and how the change aligns with the organization’s goals.
- Establish clear communication channels within the team and with stakeholders. Regularly update everyone on changing priorities, decisions, or shifts in requirements. Transparency builds trust and minimizes confusion.
Incremental/Iterative development and feedback loops
<irony>Back in the good-old Waterfall days, where project plans were drafted to span over the course of 1+ year, we would not be bothered with any customer feedback or interaction until release day. We just knew what was good, when we completed the Analysis and Design phases. </irony>
Off the developers went into the Development phase and after it surprisingly took them longer as planned, and the project was already delayed. Some testers would — after a couple of weeks into the Test phase — suggest changes. Plus, the nuisances of Support or Sales departments started to impact the project.
In this scenario (from my real past), how much were we able to welcome a major change after, let’s say, 10 months into the project, developers already re-assigned to another project?
Iterative and incremental development, i.e. small steps, makes changes in developing a product easier: in Scrum, we can gain customer feedback earlier and incorporate it seamlessly into our development processes as we regularly reassess and adjust our plans. This iterative approach allows for the incorporation of changing requirements without causing significant disruptions.
The second sentence of this principle underscores the ultimate goal of Agile processes — leveraging change to gain a competitive advantage for the customer. By remaining responsive to changing customer needs, Agile teams position themselves to deliver products that not only meet but exceed customer expectations. This dedication to customer-centricity fosters innovation, ensuring that the final product is not merely a solution but a strategic edge for the customer.
Staying connected with customers after the release is like having an ongoing conversation that helps the product grow. It’s not just about feedback; it’s about building a partnership where the product evolves based on real needs. This ongoing collaboration extends beyond specific projects, keeping things customer-focused and ensuring that Agile methods stay effective in the long run.
And this builds on the 1st principle: “Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.”
By demonstrating sincere interest in crafting the most valuable solutions tailored to customer needs, you not only build customer loyalty but also open doors to additional opportunities in the future.
5 Common Antipatterns
Avoid these antipatterns related to the 2nd principle:
Resistance Fortress: Teams resist change by creating a fortress around established processes and decisions. This resistance stifles innovation and prevents the team from adapting to evolving requirements late in development.
- Mitigation: Foster a culture that encourages openness to change. Celebrate successful adaptations and communicate the benefits of flexibility to the team.
Communication Black Hole: Lack of transparent communication leads to a black hole where information about changing priorities, decisions, or shifts in requirements is not effectively communicated to the team. This results in confusion and resistance.
- Mitigation: Establish clear communication channels, conduct regular updates, and ensure that all team members are well-informed about the reasons and benefits behind changes.
Blame Game Trap: When changes result in challenges or setbacks, a blame game ensues. Team members may point fingers or assign blame, creating a negative atmosphere that hinders collaboration.
- Mitigation: Promote a blame-free environment where mistakes are viewed as learning opportunities. Encourage a collective mindset focused on continuous improvement.
Rigidity Trap: Teams interpret the plan as a rigid structure that cannot be altered, leading to a reluctance to embrace late changes or admit wrong decisions. This rigidity prevents the team from leveraging the benefits of adaptability.
- Mitigation: Emphasize the provisional nature of plans and foster an understanding that adjustments are not a sign of failure but a natural part of the Agile process.
Isolation Island: Teams fall into a trap of infrequent or stagnant feedback loops, both internally and with external stakeholders. This isolation hampers the team’s ability to understand evolving needs, leading to resistance and a lack of adaptability.
- Mitigation: Establish a dynamic feedback environment that includes regular iterative feedback loops with both internal team members and external stakeholders. This ensures continuous learning, adaptability, and a clear understanding of evolving requirements. Encourage collaboration and active engagement with customers throughout the development process.
Welcoming change as a catalyst: In a VUCA or BANI world, change is not merely a disruption but an opportunity for growth and improvement. Embracing changing requirements, even late in development, is fundamental to agility.
Positive mindset: Despite the discomfort it may bring, teams are encouraged to adopt a positive mindset towards change. Viewing it as a driver for innovation unlocks the potential to deliver more valuable solutions to customers.
Adapting plans: Initial project plans are acknowledged as flexible hypotheses, subject to adaptation. Balancing stability and flexibility within Agile practices ensures projects maintain direction while responding to evolving requirements.
Learning culture: Agile success hinges on fostering a culture that embraces learning, improvement, and innovation. Mistakes are viewed as opportunities for growth, and practices like retrospectives and feedback loops form the foundation of empirical process control.
Effective communication: Transparent communication is vital to counter potential challenges associated with change. Openly sharing information, articulating reasons behind change, and explaining benefits help build trust, minimize resistance, and align everyone with organizational goals.
Incremental/Iterative development: Contrasting with traditional Waterfall practices, iterative development allows teams to gain customer feedback earlier, facilitating seamless adjustments. Staying connected with customers post-release goes beyond feedback, building lasting partnerships and satisfying the Agile principle of continuous delivery.
Mitigating antipatterns: Identifying and avoiding common antipatterns, such as resistance fortresses and communication black holes, contributes to a healthier Agile implementation. Mitigations include fostering openness to change, promoting a blame-free environment, emphasizing the provisional nature of plans, and establishing dynamic feedback loops.
We are here to coach you and your team. We’ve got a range of awesome trainings for you to pick from.