The philosophy of Lean project management teaches us to operate more efficiently by eliminating any defects and waste in products, services, inventory, processing, transportation etc. This philosophy becomes central for Agile software development and Six Sigma process improvement. The principles of Lean thinking and Kaizen management are indispensable for successful Six Sigma implementation. When combined with the DMAIC cycle, Lean-Kaizen contributes to easier identification and quicker resolution of project quality problems. In order to succeed at the largest scale, software development teams combine Agile incremental delivery with Lean-thinking project management.
Lean Thinking – Minimize Waste & Maximize Value
First, let’s take a look at what Lean or Lean thinking means. Lean has been known as a waste-free production practice and a value-generation management philosophy for many years. Although the term “Lean” was first defined in the 1990s, the key principles of “lean thinking” in manufacturing were developed much early by Taiichi Ohno, during the reconstruction period after World War II.
The key idea behind Lean thinking is to maximize customer value while minimizing resource waste.
Organizations that follow this idea intend to create higher value for their customers with fewer resources. Those organizations start their strategic planning with understanding what the customer really wants and then identify key processes that contribute to continuously increasing customer value. The strategic focus is placed on achieving perfect customer satisfaction and value generation through an optimized process flow that has minimized waste rate.
Lean Six Sigma Project Management
Everything that is involved in manufacturing and impacts customer value should be reviewed and optimized in order to minimize waste and maximize value. As compared to traditional business systems, Lean management methodology integrates all processes and operations into a single system where less labor, capital, time, workspace, and technology are spent on producing more valued products and services, with fewer defects. This approach is also great in project management where higher customer value drives project success.
In this regard, Lean methodology is close to Six Sigma approach. Companies often combine both approaches into a single project management methodology to respond to ever-changing customer needs and manage production and development processes with high quality, low cost, and with minimized throughput times. Lean Six Sigma project management makes it possible to address customer requirements at the lowest possible level, while resource waste is minimized and product value is maximized.
Lean-Kaizen Model and Six Sigma DMAIC Cycle
Kaizen as itself is an efficient approach to gradual quality enhancement and waste reduction at all possible management levels – from chief executives to the lowest level workers. It intends to help companies improve their business processes by collecting and sharing best practices, knowledge and experience among employees so that waste, defects and constraints to throughput are minimized.
In a truly “Lean” environment, Kaizen serves as a robust foundation for promoting learning, building capabilities and improving operations.
Lean-Kaizen model is particularly effective in project environments to improve value streams and cultivate continual learning and team development.
The learning environment in Lean-Kaizen project management follows the following two key principles:
- Go and see (aka Genchi Genbutsu) – a problem can be solved effectively and efficiency only if you personally go and see what that problem is about
- Consensus decision making – each decision is made and implemented only if there is a deep understanding of all the potential options and alternatives
The integration of Lean-Kaizen and Six Sigma DMAIC can be effective for continuous process improvement in various project environments. The management of a project that employs this integration must be started with the DMAIC cycle to ensure organizational commitment and continuous learning. Then the Lean-Kaizen approach allows the management team to drive value for the customer while reducing defects. The Just-Do-It system of Lean project management then enables to instantly switch between upstream and downstream activities to establish and maintain an uninterrupted single-piece flow throughout the entire project lifecycle.
Agile and Lean are Merging
As we know, traditional Agile project management promotes an incremental delivery approach that lets teams use prototyping to build the smallest possible useful piece of a product and provide it to users for testing and evaluation. Agile teams and users are enabled to hold an evolutionary conversation in which incremental development steps (which usually last 1-4 weeks) lead project participants to managing feedback. This feedback allows teams to test user requirements and adjust the development process accordingly.
So for Agile projects, customer value is a number-one priority. The same idea is promoted by Lean project management. As Agile intends to maintain a rapid feedback loop between users and developers for more accurate and adjusted development, as Lean improves entire value streams and eliminates waste.
Some experts even believe that Agile and Lean are merging. Dan Woods in his article at forbes.com points out that many “Agile practitioners use more vocabulary from Lean rather than from Agile.” Today there’s a growing tendency that agile-driven projects are being managed under a new approach that seems to be more “Lean” than anything else, – Dan emphasizes.
Traditional Agile Methods Fail at Scale
Perhaps, the biggest challenge of traditional Agile development is that this approach is hard to scale. Agile works fine in small and mid-sized team environment where it’s not hard to envision and lead. Every activity in iterations is sorted out and synchronized, so the entire project moves towards completion.
But what about larger team environments? How to cope with a large project which is run by 10, 50 or more co-located and dispersed teams, each working on part of a product? How will the management synchronize and lead multiple iterations in multiple teams using Agile methods? And how to make sure that the result of each iteration gets integrated into the larger release?
Value Stream Mapping – Lean Thinking Project Management Takes the Lead
Traditional Agile methods say much less about how to synchronize and streamline the collaborative work of multiple teams. On the contrary, Lean offers a highly scalable system, and that’s where Lean project management takes the lead. In such a system, the entire work is organized into a combination of value streams initiated by demand signals. These value streams are interdependent so the output of one contributes to the input of others.
Lean system works the way that enables effective management of multiple value streams running sequentially or in parallel. Eventually, everything is synchronized and assembled into the product that delivers the highest possible value to the customer. Kanban, as a part of the Just-In-Time (JIT) inventory system, is employed in the supply chain management and stock replenishment.
Thanks to Lean’s value stream mapping approach, various Agile teams are enabled to communicate and collaborate on their tasks.
Since team members participate in sequential and parallel streams of work, the customer gets a new useful version of the product at the end of each iteration. Lean project management allows Agile developers to manage dependencies between various iterations through creating cross-functional teams and managing continuous improvement process. A Lean thinking framework implemented in managing Agile projects is expected to reduce planning overheads and minimize synchronization and integration efforts – that’s exactly where resource waste should be eliminated and higher value should be delivered.
Lean Software Development
The power of traditional Agile approach is being self-adaptive, while the power of Lean-thinking is eliminating waste for the overall efficiency. Both systems are excellent in project management, yet can be employed in managing different projects. Agile incremental delivery approach works fine for small development teams, and Lean thinking is great for managing manufacturing.
When larger Agile teams begin to use Lean’s value streams in the development process, their efforts are easier to synchronize and lead across various iterations.
Lean software development is a mix of both systems that allow dealing with unique and changing constraints and environmental factors in larger team environment, while resource waste is minimized and customer value is maximized.