Learning & Adaptation

Agile is more than a process, it's a continuous path of learning, refinement, and disciplined adaptation. These models offer guidance for how teams evolve their practices, understand when to follow versus change a framework, and navigate the messy realities of iteration and long-term software growth. By embracing these principles, Agile teams build resilience, improve decision-making over time, and adapt with intent rather than impulse.

Concept Agile Relevance Usage in Agile
Shu-Ha-Ri Progressive learning model for Agile mastery. Teams progress from strict adherence to frameworks toward mastery and innovation.
Double-Loop Learning Challenges underlying assumptions to drive deeper learning and transformation. Used in Retrospectives, leadership coaching, and transformation efforts to shift from surface-level fixes to systemic change. Helps teams and organizations adapt by examining beliefs, not just actions.
Chesterton's Fence Follow Agile frameworks before modifying them. Teams should fully adopt Scrum, Kanban, or SAFe before customizing.
OODA Loop Adaptive learning cycle for navigating change and uncertainty. Helps Agile teams sense evolving conditions, reframe assumptions, make faster decisions, and take iterative action. Useful for Retrospectives, pivot decisions, and product discovery.
Boyd's Law of Iteration "The speed of iteration beats the quality of iteration." Encourages Agile teams to deliver small, incremental changes faster (MVP approach, Lean Startup, DevOps CI/CD pipelines) instead of waiting for perfection.
Lehman's Laws of Software Evolution Describes the inevitable growth, change, and complexity of long-lived software systems. Reminds Agile teams to manage complexity, prioritize refactoring, and maintain feedback loops as systems evolve.
Wirth's Law Software is getting slower more rapidly than hardware becomes faster. Reminds Agile teams to monitor and manage software performance as systems evolve. Supports practices like refactoring, performance testing, Definition of Done with performance criteria, and avoiding feature bloat through simplicity and prioritization.