Scrum is simple and Lean. The simplicity of Scrum should not be taken to mean that it's easy to adopt, or that it's easy to transform the development team. That requires hard work. Yet when teams take on the Scrum process, they stay Lean through the many benefits Scrum provides. The Scrum framework is most applicable in complex contexts that require empirical process control. Scrum is not one of the traditional approaches to software development such as Waterfall, iterative develoment, Rapid Application Development (RAD), or Rational Unified Process (RUP). This article discusses how Scrum is Lean and supports all seven Lean principles.
Scrum eliminates waste through transparency throughout the process, enabling inspection and adaptation. During sprint planning, the product owner brings a prioritized product backlog that has been sufficiently elaborated. This eliminates waste caused by taking up work that could be low value, not elaborated enough, ambiguous, risky, or unknown. Rather, for such items, the development team devises strategies to eliminate waste.
During the Daily Scrum, the development team looks at the progress toward the goal, assesses its current position, and determines what is impeding progress. This ceremony, done on a daily basis, helps eliminate any wasteful effort and remove impediments. It enables the development team to stay focused on the sprint goal. During the sprint review, the development team demos the completed backlog items to the stakeholders. The Definition of Done allows the development team to ensure that what is agreed upon is delivered. During the sprint retrospectives, the development team looks at the development process with a focus on people, process, and resources.
The development team continues to fine-tune to be more effective in delivering the value during each sprint. Kaizen is the motto for sprint retrospectives. Thus Scrum eliminates wastes using sprint reviews and sprint retrospectives at the end of each sprint, as well as the regular Daily Scrum. Scrum discourages wasteful documentation, activities, delays, and other wastes from its processes and products in order to optimize value. Bottlenecks become visible early and are removed quickly.
Scrum mirrors Lean thinking such that team members learn through sharing ideas and setting a collaborative environment, fostered by ceremonies. Scrum allows the development team to self-organize. The team discovers, learns, and collaborates to seek resolution. Every sprint, a potentially shippable increment (PSI) is delivered to the customer that allows feedback for further learning. Learning is constant, and the product owner updates and reflects what has been learned by maintaining a prioritized and refined product backlog. The development team learns during the sprint while collaborating with the customer. The ScrumMaster ensures that a supportive environment exists to foster learning for the development team. The ScrumMaster also helps the product owner and the development team learn about the Scrum process. Thus Scrum supports continuous learning for the product as well as its development process.
Decide as late as possible
Scrum supports the idea that decisions can be made as late as possible. The product owner prioritizes the product backlog to optimize value. The highest-value items are at the top, with decreasing value as we move down the backlog. The product backlog is refined from the top down, to ensure that the most is known about the items at the top. Hence, during sprint planning, the highest-value items are taken up for the sprint. Top-down refinement of a prioritized product backlog ensures that the most value is realized when the item is ready for implementation. This, as far as is possible, avoids waste due to waits and changing external factors. In the product backlog, the lower-value items are not refined as frequently, as they are to be taken up later. Thus the approach fosters the Lean approach of deciding as late as possible. It is only when the items are detailed enough, with effort, value to customer, estimates, and acceptance criteria, that an item is committed to for the sprint.
Deliver as fast as possible
Scrum supports the Lean idea of delivering fast. Every sprint, a timebox of 30 days or less, a product increment is delivered to the customer. Mary Poppendieck and Tom Poppendieck identified that we need to discover methods and processes to be able to deliver quickly enough to allow the customer to change his or her mind. Scrum seeks to further take a leap to ensure that it delivers the highest value early and frequently. While Lean comes from production system, where all production units are of the same value, Scrum differentiates the needs based on value to the customer. Providing the highest value early is exciting and optimizes on returns as well.
Empower the development team
Scrum supports empowering the development team, as does Lean. The development team is a dedicated, self-organizing, self-managing, cross-functional, and autonomous unit. The development team is kept focused on the goal during the sprint. The product owner collaborates during the sprint to help clarify any inquiry the development team may have. The sprint backlog provides the committed items for the sprint. The development team owns the sprint backlog. The product owner cannot make changes to the sprint backlog, although the product owner continues to refine the product backlog. The ScrumMaster helps in this as well. Scrum provides the required supportive environment to ensure optimal value delivery. The development team continues to improve through retrospectives to fine-tune the process.
Build integrity in, build quality in
From the start, value is associated with everything the development team takes up during planning. The focus is on vertically slicing the system to deliver fully functional features to meet the customer's needs. An increment is delivered to the customer in each sprint. This ensures the integrity of the various working components and a fully functional product. Besides, every item delivered is fully integrated to the product increment. This ensures building in quality. The Definition of Done applies to the backlog items and ensures an agreement between parties to identify when a backlog item is "done" and value is attained.
See the whole
Finally, Lean guides us to see the whole. Scrum achieves this from the get-go where the product backlog contains the complete wish list for the product. This backlog is refined and regularly groomed to ensure that the focus is on optimal value. Further, during the sprint, the sprint backlog is built from the top PBIs that are committed to. Scrum reviews also allow alignment with customer need via feedback. This enables inspection and adaptation to ensure that the value is aligned to customer needs. Daily Scrums allow the development team to focus on activities to support the whole, make visible anything wasteful, eliminate those wastes, learn, and deliver value quickly.
Many methodologists put forth the opinion that Scrum does not identify how to do the work. In an empirical process, the complexity does not allow traditional approaches. The tendency of overengineering Scrum to include practices can be detrimental. Scrum envisions the teams being self-organizing through decentralizing the decision making. The self-organizing aspect allows the team to decide and approach the work while providing autonomy and motivation through purpose. This allows the team members to collaborate and take the best approach, yet inspect and tune the development approach during retrospectives. Thus, Scrum is lightweight.
Scrum is indeed lightweight and simple. Yet it is hard to practice, as it requires a major change from traditional software development methods. However, Scrum has many other benefits besides being Lean and Agile. It fosters individual growth as it discourages burnout of the team members. Scrum team members work at a sustainable pace. Scrum encourages collaboration instead of a competitive approach to negotiation styles. Collaboration allows the development team, the product owner, and the stakeholders to sit on the same side and look at the challenges ahead that they need to resolve. The ScrumMaster facilitates this process for optimal results. There is no project manager in Scrum who exercises a directive approach. There is no business analyst who restricts the development team from approaching the customer. In Scrum, customer collaboration and colocation with the development team is highly encouraged. This is extremely motivating, as everyone is driven by the same purpose and not by a carrot-and-stick approach. These are found to be essential motivating factors, as discussed by Daniel H. Pink in his book Drive
Hence, Scrum is Lean -- and then some.