While Lean has its origins in manufacturing, it can be applied to Software Development. There are many methodologies that can be used depending on the environment, the culture or the nature of your businesses. We initially started using Scrum as our development framework. As our company and processes have matured we have tried various other methods. Some we have adopted, some we set aside. Below are the takeaways from some of the methodologies we tried.
Lean software development has these principles: Respect people, eliminate waste, defer commitment, create knowledge, deliver fast, build quality in and optimize the whole.
We think of the development process as a pipeline. Anything that slows down the pipeline is waste. The idea is to look for ways to increase the value while improving the efficiency of the process. Improvements are more readily identifiable when you can see what is going on in the pipeline.
Lean software development looks to the system, the way work is managed or handed off, for the source of errors. When an issue is identified, the development group looks to how they can change the system for permanent improvement.
Lean Thinking asks us to focus on the system – the process and its policies – and not the performance of individuals. The focus is on a better economic outcome rather than on utilization of individual workers.
Our goal was not to take any one Agile methodology as gospel. Instead we tried various methods and selected pieces of each one that fit into our way of development. We also knew that organizational transformation is the key to success when adopting Agile methods. So we’ve achieved our own unique method with incremental learning and changes in an evolutionary approach. We borrowed from Scrum, Kanban, Lean and other methods. We also adopted a digital cardwall tool that allowed us to create our perfect methodology blend.
This method has worked well for us and we continually strive to improve our internal development processes and tools. We are a young company and will continue to evolve and adapt our methodology as our requirements shift and grow.