With the corporate world growing more and more competitive, organizations are looking into revamping their business and production processes. In the search of the best one, most seem to get inundated by slur a new vocabulary and industry buzzwords. Waterfall, scrum, lean, agile – what do they all mean?
I previously wrote this post in which I compare Waterfall and Agile. In a nutshell, Agile contradicts the traditional and structural Waterfall way of working. It allows organizations to be more productive by allowing for smaller projects, more flexible schedules and collaboration.
I also wrote about the difference between the Agile and Scrum. Many new Agile teams are oblivious to the fact that there are different types of Agile methodologies, Scrum being one of the most popular ones. Scrum is simple and very flexible; with this method, a project’s direction can easily be adjusted based on completed work, not on speculation or predictions.
So where does Lean fit in?
The principles of Lean stem from Lean Manufacturing, which is a production practice that aims to use fewer resources and eliminate waste while maximizing customer value. In essence, when properly executed, Lean helps companies produce quality products faster, while achieving customer alignment.
In 2003, Mary and Tom Poppendieck realized the Lean principle that was used to improve manufacturing and production could be adapted to fit software development. Since then, organizations have realized Lean can be used in any business or process.
A Lean organization understands and focuses on maximizing customer value. To accomplish this, a Lean mindset must be adopted. As explained by this article, “Lean thinking changes the focus of management from optimizing separate technologies, assets, and vertical departments to optimizing the flow of products and services through entire value streams that flow horizontally across technologies, assets, and departments to customers.”
Lean thinking forces teams to eliminate anything that isn’t adding value to the product or service development process. Lean organizations try to avoid unnecessary meetings, tasks and documentation. They also try to eliminate building things that are not needed, which can be challenging because nowadays, market needs change more rapidly than ever.
Lean Vs. Agile – Comparing Principles
Lean and Agile share many of the same principles and many Agile principles are borrowed from Lean thinking.
Principles of Lean:
1. Eliminate Waste
2. Build Quality In
3. Create Knowledge
4. Defer Commitment
5. Deliver Fast
6. Respect People
7. Optimize the Whole
Principles of Agile:
1. Highest priority is customer satisfaction
2. Welcome changing requirements
3. Frequent delivery of software
4. Business people & developers cooperating daily
5. Build projects around motivated people
6. Face-to-face conversation is best
7. Progress measured by working software
8. Sustainable development pace
9. Continuous attention to technical excellence
11. Self-organizing teams
12. Regular reflection & adaptation
In essence, Agile is about being flexible and responding rapidly to changes in feedback, requirements, and market needs. In order to do that, Lean thinking is necessary, as its principles help promote the mentality needed.