Doing Agile vs. being Agile: Embracing the Agile mindset
Doing Agile vs. being Agile: Embracing the Agile mindset
Having delivered Agile fundamental trainings to over 100 professionals, I've encountered a recurring question: Is Agile a framework or a methodology?
To their surprise, my answer is always the same: Neither. Agile is neither a framework nor a methodology.
The nature of Agile: Beyond frameworks and methodologies
When someone asks, "What is Agile?" the response often gravitates towards software development practices or specific frameworks like Scrum or Kanban. However, Agile transcends these boundaries. It's not merely a collection of practices or a rigid set of rules; it's a mindset rooted in values and principles, essential for any Agile transformation.
Understanding Agile with the Stacey Diagram
The Stacey Diagram is a powerful tool to illustrate the applicability of Agile. Picture yourself at a crossroads with landscapes constantly changing. The Stacey Diagram serves as a map, helping you navigate the complexities of decision-making and project management by plotting two key factors: The uncertainty of requirements (vertical axis) and the uncertainty of technology (horizontal axis).
Source: Why agile? - The Stacey complexity model - Scrum tips (scrum-tips.com)
- Simple tasks: These are well-defined and easy to solve, like brushing your teeth or riding a bike. The approach is straightforward: Just do it
- Complicated tasks: These require more planning, like organizing a holiday. You need to think about what you want to do and how to do it
- Chaos/anarchy: This category represents situations with high unpredictability, such as natural disasters. There’s no clear solution or approach
- Complex tasks: This is where Agile thrives. Software projects often fall here due to unclear and evolving requirements and technology. The solution? Iterative planning and execution
By explaining these categories, you can help anyone, regardless of their background, understand that Agile is ideal for complex tasks where both the "what" and "how" are uncertain. Agile's iterative approach — plan, execute, review and adapt — makes it the best choice for such environments.
Late learning vs. early learning
Traditional project management often falls into the trap of late learning. Projects kick off with high hopes and rigid plans, leaving little room for error. Teams work tirelessly, only to discover critical issues during integration and final phases — often too late to make significant changes.
Consider the typical "late learning" sequence:
- Team dynamics: Learning how to work together
- Technical flaws: Discovering flaws in ideas
- Cost estimates: Realizing development costs
- Product validity: Finding out if they’re building the right product — often too late
This approach results in late problem discovery, causing delays and increased costs. Agile, however, promotes early learning. It encourages small, continuous experiments to gain knowledge early and maximize product effectiveness.
The Agile mindset: Values and principles
Agile isn’t just about following practices; it’s about embodying values and principles. The Agile Manifesto, created in 2001 by software development pioneers, emphasizes four core values:
- Individuals and interactions over processes and tools: People and collaboration come first. Processes and tools are important, but they should support the team, not dictate their actions
- Working software over comprehensive documentation: Delivering functional software is the primary measure of progress. Documentation is essential but secondary to creating working solutions
- Customer collaboration over contract negotiation: Engage with customers continuously. Be flexible and open to changing requirements, even late in development
- Responding to change over following a plan: Embrace change and adapt plans as new information emerges. This value can be challenging for traditional project managers but is crucial for Agile success
These values form the heart of Agile, guiding teams to prioritize people, deliver value continuously, collaborate closely with customers and remain adaptable.
Being Agile vs. doing Agile
Being Agile means internalizing and living by Agile values and principles. It's about a mindset that drives your actions and decisions. For instance, if a client changes requirements midway, you accommodate them, knowing that Agile processes harness change for the customer’s advantage.
Doing Agile involves employing Agile methodologies like Scrum or Kanban, planning sprints, managing backlogs, and using tools like GitHub, Jenkins, Docker and Kubernetes for continuous integration and delivery.
However, merely doing Agile without being Agile can lead to failure. Agile practices require an Agile mindset to be effective. Organizations often struggle when they adopt Agile practices without embracing the underlying values and principles.
The benefits of early learning
Applying Agile principles leads to early and continuous learning, which has several benefits:
- Identify needs early: Discover what needs to be built early in the process
- Accurate cost estimation: Learn the cost implications sooner
- Team cohesion: Accelerate team learning and collaboration
- Validation: Correct mistaken assumptions early
By embracing these principles, teams can develop effective, self-funding projects that meet inelastic deadlines.
Cultivating the Agile mindset
To cultivate an Agile mindset, it’s essential to understand the importance of values and principles. This involves:
- Emphasizing values: Focus on people, collaboration, working software, customer engagement and adaptability
- Living the principles: Practice continuous delivery, simplicity, self-organizing teams and regular reflection
- Continuous improvement: Constantly seek feedback and adapt to improve processes and outcomes
Conclusion
Agile is not just a set of practices but a mindset that values continuous improvement, customer collaboration and adaptability. The difference between doing Agile and being Agile lies in the depth of commitment to these values and principles. By internalizing and living by Agile’s core values, teams can navigate complex projects more effectively and deliver valuable solutions that meet ever-changing requirements. Embrace the Agile mindset, and you'll find that Agile isn't just a methodology; it's a way of working that drives success in today’s dynamic and unpredictable world.