Agile and Lean
Agile and Lean
Success in today’s global marketplace hinges upon an organization’s ability to deliver value, both to its customers and to its employees. Organizations need to find ways to move faster and deliver higher quality products and services to customers, while providing the structure and stability to promote a healthy organizational culture. This is no small feat, and it cannot be accomplished through slow-moving, traditional corporate structures. In order to survive, organizations across the world are looking to adopt the smarter, more efficient methods used by young, high-growth companies. Agile and Lean methodologies are being called upon to help businesses move faster and produce higher quality offerings, in sustainable, healthy work environments.
Because they are implemented differently in different teams, organizations, and industries, there’s a lot of confusion about the distinctions between these methodologies and the practices associated with them. Keep reading to learn more about Lean, Agile, Scrum, Kanban, and other tools organizations use to get ahead.
History of Agile and Lean
Agile and Lean, as we now know them, first took root in IT organizations. Agile was originally designed for software development, and is still widely used in IT organizations around the world. Lean began far before the time of software development, but its modern applications found a home in IT organizations. Today, 48% of Lean transformations begin in IT before spreading across the organization (learn more). With the growing need for sophisticated, adaptable information systems, the influence of IT in organizations has grown significantly. This growing significance has introduced non-technical teams, such as marketing and sales, to the efficiency, productivity, and structure that using Agile and Lean principles can provide.
IT organizations have also demonstrated the transformative effect Lean and Agile can have on the culture of an organization. By changing the way we work, we change the way we interact with each other, which in turn changes our culture. Lean and Agile promote focusing on work and the processes through which work flows, rather than the people responsible for the work. This allows teams to move away from unhealthy cycles of finger pointing and defensiveness, allowing for better collaboration, more creativity, and faster value delivery.
Agile was designed for software development teams, as a time-focused, iterative way of achieving continuous value delivery. The seeds of Agile were planted decades ago, but many view a historic meeting of 17 developers at the Snowbird resort in Utah in 2001 as the beginning of modern Agile. The developers were looking for a way to define the new lightweight practices that had been emerging as a way to evolve away from the heavyweight, regimented, regulated practices that had plagued early software development.
It was during this meeting that the Agile Manifesto was written. The manifesto outlines 12 principles that have guided the practice of Agile throughout recent decades.
Software development teams began practicing Agile as a way to improve flexibility, customer/user satisfaction, and adaptability in the marketplace. Instead of deploying software in large, scheduled releases, Agile promotes breaking work down into small, frequent iterations. Rather than spending time gold-plating new releases internally, teams get work to a deployable state, release as it’s ready, and allow users to provide feedback on what works, what doesn’t, and what can be improved. Scrum is a subset of Agile used mostly by development teams, which uses timeboxes to iterate on a product in two-week sprints.
Agile maintains its hold in software development, and has also spread into marketing, sales, and other departments. Agile has been proven effective at the team level, but does not provide a framework for managing work across cross-functional teams, or scaling planning and prioritization at the team, project, and portfolio levels. This is why many organizations have turned to hybrid models, like the Scaled Agile Framework (SAFe) as a way to scale Agile (influenced strongly by Lean) across the organization.
Lean’s history begins far before the time of modern software development. It began in the factories of Japanese automobile maker Toyota in the 1950s and ‘60s. Developed by Taiichi Ohno, the Toyota Production System (TPS) aimed to improve loss reduction and encourage sustainable production. It utilized visual signals to produce inventory exactly when it was needed (known as just-in-time production), and focused on optimizing the entire production system to minimize waste.
Western manufacturers struggled to keep up with the pace of the Japanese companies, and thus began to adopt the basic principles that have come to be known as Lean manufacturing. During this time, Lean was boiled down to overly simplistic ideas, generally used to justify relentless cost cutting.
In their books, The Machine that Changed the World and Lean Thinking, Jim Womack and Dan Jones helped us elevate our understanding of Lean, allowing us to move from mimicking Toyota practices to truly understanding the principles that made the whole Toyota system work. Approaching Lean as a set of guiding principles, rather than a specific set of prescriptive practices, makes implementation easier, more flexible, and more sustainable. It’s this version of Lean that began to spread across IT organizations, and now into all disciplines of knowledge work.
Agile and Lean: Compare and Contrast
The goal of Agile is ultimately to make the developing process flexible, which is done by delivering in small, frequent iterations. The goal of Lean is to make the developing process sustainable, which is done by continuously improving processes. Listening to and incorporating customer feedback is at the core of both Agile and Lean.
Action Loops and Measures of Progress
Agile teams work in feature-focused iterations, with a pre-defined definition of “done” as the measure of progress for each iteration. The Agile Manifesto defines “working software” as a primary measure of progress. Outside of software, progress can be measured by the successful deployment of a specific deliverable, product, etc.
Lean teams operate in a cycle of “Build-Measure-Learn”, defining progress as validated learning. Compared to the iterative model of Agile, Lean development involves testing, measuring, and validating hypotheses based on trends in the market and past work. When planning and prioritizing work, Lean teams focus on efforts that would provide greatest value to the customer. They continuously identify ways to reduce waste while maximizing customer value.
Many Lean teams use Kanban boards to visualize and manage their workflows (88% according to our latest Lean Business Survey). They also use Kaizen, a continuous improvement method, to habitually identify and remove waste. Drawing influences from Lean, Agile principles incorporate elements of continuous improvement as well. Many Agile teams use Kaizen to improve their processes.
Agile teams also use Kanban to visualize the flow of work required to release a specific iteration of a product or feature. Applying Kanban flow to Agile has helped teams work through places where iterative development in Agile has struggled. Different from Lean, Agile teams also use tools like user story mapping, acceptance tests, and sprints.
Agile and Lean at Scale
Over time, different department and team types have found new and unique ways to implement Lean and Agile methods. In some organizations, business teams adopt Lean while the IT department practices Agile. In others, teams practice a Lean-Agile hybrid, taking elements from both methodologies. Because there is no single, defined way to “do” Lean or Agile, organizations often confuse the two, which can be problematic when trying to scale a consistent practice across an organization.
Agile has been proven effective at the team level, but does not provide a framework for managing work across cross-functional teams, or scaling planning and prioritization at the team, project, and portfolio levels.
Expanding the application of Agile methods to the entire product creation process requires using a Lean framework that includes empowered cross-functional teams, use of continuous improvement methods, and utilizing managers as mentors and teachers. Agile focuses on evolving products to better meet customer requirements, but it does not address how to evolve processes to better support the evolution of the product. This is where Kaizen, a Lean method for continuous improvement, comes into play. A truly Lean-Agile process incorporates elements of both continuous delivery and continuous improvement, optimized across the entire value stream.
Kaizen focuses on improving processes that enable Agile teams and organizations to reach their goals of frequent, iterative value delivery.
Agile and Lean: Better Together
Although often treated as distinct methodologies, Agile and Lean are rooted in similar values. These methodologies have evolved as they’ve expanded into new industries, applications, and opportunities, and many organizations have been incredibly successful in drawing from elements of both. Using the systems thinking, continuous improvement approach of Lean, Agile development practices can be used to help organizations build healthy, innovative organizations that sustainably deliver customer value.