How to Combine Scrum and Lean: Methodologies Overview
Modern software development is an extremely complex industry. It has lots of project management methodologies. What methodology to select depends on the needs of your project and the structure of your team. Some methods are more effective if applied to long-term and complex projects. Others are often used when it is extremely important to deliver the product within the shortest amount of time.
Today there are lots of software development teams that try to combine various methodologies to achieve better results in their work. In this article, we will tell you how to combine Scrum and Lean. But it is necessary to give the proper definitions of these two methodologies before doing that.
Lean originated in the middle of the 20th century in Japan. It was invented by the employees of Toyota Corporation and initially was a manufacturing methodology named Toyota production system. The method changed its name after it became popular all over the world. Today it is called Lean manufacturing. The methodology was applied to software engineering in 2003 when Tom and Mary Poppendieck published their famous book “Lean Software Development”. It is now considered one of the Agile methods. The main idea of Lean is to improve the terms of product delivery through waste elimination. The methodology has its own definition of wastes. Anything that does not add new functionality to the final product is considered a waste in it. Lean shares all Agile principles, including high customer involvement, strong communication, and iterative structure of projects. Its teams are small and self-managing, and their members are interchangeable.
Scrum is currently the most popular Agile methodology. Most developers think of it when they hear the word “Agile”. The method originated in the early 2000s. Like Lean it shares the basic Agile principles. Its teams are small and they don’t have traditional roles like testers, analysts, and project managers. A typical Scrum team has only three roles: the team itself, the ScrumMaster, and the Product Owner. A ScrumMaster is a coach who helps the team implement the best Scrum practices. A Product Owner is a representative of the customer in the Scrum team. He is the main person responsible for backlog formulation and prioritization. The communication inside of Scrum teams is very strong because they are self-managing and need to discuss important project issues constantly. Scrum projects are iterative. Each of their iterations has its own plan and time frames. Such iterations are called sprints. A typical sprint lasts about two weeks. The intermediate products are introduced to the customer after each sprint.
If you are an experienced software developer, you can successfully combine Scrum and Lean in spite of the fact that they are very similar. The definition of wastes used in Lean can be applied to any project management methodology including Scrum. It is quite effective and its use can improve the terms of product delivery significantly.