Scrum is an iterative and incremental Agile software development framework for managing software projects and product or application development. Its focus is on “a flexible, holistic product development strategy where a development team works as a unit to reach a common goal” as opposed to a “traditional, sequential approach”. Scrum enables the creation of self-organizing teams by encouraging co-location of all team members, and verbal communication among all team members and disciplines in the project.
A key principle of Scrum is its recognition that during a project the customers can change their minds about what they want and need (often called requirements churn), and that unpredicted challenges cannot be easily addressed in a traditional predictive or planned manner. As such, Scrum is founded on Empirical Process Control Theory, or empiricism. Empiricism asserts that knowledge comes from experience and making decisions based on what is known. Scrum Employs an iterative, incremental approach to optimize predictability and control Risk.
Brief History of Scrum
|In rugby football, a scrum refers to the manner of restarting the game after a minor infraction.|
Scrum was first defined as “a flexible, holistic product development strategy where a development team works as a unit to reach a common goal” as opposed to a “traditional, sequential approach” in 1986 by Hirotaka Takeuchi and Ikujiro Nonaka in the “New New Product Development Game“. Takeuchi and Nonaka later argued in “The Knowledge Creating Company” that it is a form of “organizational knowledge creation, especially good at bringing about innovation continuously, incrementally and spirally”.
|The authors described a new approach to commercial product development that would increase speed and flexibility, based on case studies from manufacturing firms in the automotive, photocopier and printer industries. They called this the holistic or rugby approach, as the whole process is performed by one cross-functional team across multiple overlapping phases, where the team “tries to go the distance as a unit, passing the ball back and forth”.|
In the early 1990s, Ken Schwaber used what would become Scrum at his company, Advanced Development Methods, and Jeff Sutherland, with John Scumniotales and Jeff McKenna, developed a similar approach at Easel Corporation, and were the first to refer to it using the single word Scrum. In 1995, Jeff Sutherland and Ken Schwaber jointly presented a paper describing the Scrum framework at the Business Object Design and Implementation Workshop held as part of Object-Oriented Programming, Systems, Languages & Applications ’95 (OOPSLA ’95) in Austin, Texas, its first public presentation. Schwaber and Sutherland collaborated during the following years to merge the above writings, their experiences, and industry best practices into what is now known as Scrum.
In 2001, Ken Schwaber worked with Mike Beedle to describe the framework in the book Agile Software Development with Scrum. Its approach to planning and managing projects is to bring decision-making authority to the level of operation properties and certainties.