Principles and practices of Lean, Agile and Scrum
Lean, Agile and Scrum build on one another to provide a principle-based set of tools and practices for rapidly delivering high quality products that align closely to customer needs. They combine many decades of experience and proven practice to provide well-understood and established practices for continuous improvement. Today, the core principles behind Lean and Agile are ever more important given the exponential change driving shifts within organizations and the ecosystems in which they reside. Continuous learning is now a necessary competitive skill rather than an optional competitive advantage. Principles and practices built on a fundamental application of continual learning are essential.
Lean serves as the foundation of continual learning and continuous improvement. Leveraging W. Edwards Deming's focus on Total Quality Management, the Toyota Production System, which later became known as Lean, introduces many of the foundational principles on which more modern continual learning practices are developed. Lean itself consists of disciplines, around which manufacturing processes are created and optimized. Mary Poppendieck recognized the value of the lean disciplines when applied to the world of software delivery. For example:
- Build Quality In - focuses on getting quality right as you develop a product rather than testing for quality once the product is complete;
- Deliver as Fast as Possible - valuing customer feedback from small self-contained completed and released work rather than holding completed features back from the customer;
- Optimize the Whole - optimizing performance across the entire value stream rather than a single development stage.
These three lean disciplines alone can be credited with driving the DevOps movement.
In addition, Lean builds a culture of continuous improvement through the craft of Kaizen vs. Kaikaku. Kaizen is theJapanese term for continuous improvement. The term loosely translates to: kai = change and zen = good. Kaizen is about a way of thinking and empowering team members who perform the work to incrementally improve the way work gets done, reducing leadership’s hands on involvement in day-to-day work. Embracing a Kaizen mindset means everyone from executives to front-line staff look at lean ways to think of value and solve problems as they arise.
A common practice is to hold a Kaizen Event. A Kaizen Event is a formalized set of activities, tools and techniques that help teams evaluate and eliminate waste (Muda, sources of waste), standardize work (5S technique) and make decisions closer to where the work is done.
Kaizen encourages small changes, the core of iterative and incremental or agile delivery. Kaizen is usually thought of as step-by-step change. On occasion, a breakthrough Kaizen, or Kaikaku, is required. Kaikaku recognizes that sometimes a leap creates the momentum required to change direction. Both Kaizen and Kaikaku describe shifts in how work is done in response to empirical experience and continual learning.
Agile can be traced back to the Agile Manifesto, written and published in 2001. The Agile Manifesto was first published in February 2001. It is the outcome of a gathering of software development practitioners from different iterative and incremental delivery frameworks, including but not limited to, Scrum, Kanban, Dynamic System Development Method (DSDM), and ExtremeProgramming (XP). Together, the group identified four values and twelve principles that apply to any agile software development framework.
Lean, after decades of modification and application, centres around process improvement. Agile builds on the people aspects of product development. Recognizing that digital products differ in the way workers combine to deliver a product, agile describes the relationships between the developers and their work. Rather than controlling the developers or knowledge workers with tools and processes, what to do when, or how to do certain things, agile understands that complex problems need different problem-solving skills. Rather than planning and documentation, complex problems are solved by taking action and trying to solve a problem, and then getting feedback quickly on a working prototype from the customers themselves. In a nutshell, this describes the 4 agile value statements in the Agile Manifesto:
"Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
That is, while there is value in the items on
the right, we value the items on the left more."
Lean and Agile can be thought of as a mindset or set of principles that set a foundation for frameworks or processes to be effective. The Agile principles help guide us with how to work with knowledge workers, where Lean principles help guide us with how to understand how systems work. Scrum, Kanban and XP are common frameworks, methodologies or practices. They provide a process which embraces the Agile and Lean principles to deliver value to customers. The following visual illustrates the connection between Lean and Agile principles and practices.
The Lean, Agile and Scrum iceberg visualizes the relationship between the practices - the part of the iceberg we see above the water line - and the principles - the build of the iceberg we never see. While any agile practice needs a deep understanding and application of lean and agile principles, the frameworks themselves define a set of practices that can be applied in specific contexts.
Scrum works well for dedicated teams in which the work the team does is dependent upon one another. Whether the team is building a digital game, executing marketing campaigns, or creating an enterprise application, the work the team does is tightly coupled. Scrum teams build on the benefits teams bring to complex problem solving. Coupled with technologies that allow rapid application development or digital marketing execution, Scrum teams can be effective in delivering high quality products to the market quickly.
Scrum, Kanban, XP, and Kaizen Events are good practices and approaches for continuous learning and improvement. To sustain that continuous improvement across the organization requires a shift in principles, a focus on the invisible part of the iceberg under the water.