Scrum can be thought of as a modern day software development process for the implementation of usually complex projects and was independently developed by Ken Schwaber and Jeff Sutherland in the early nineteen nineties. The word Scrum itself is not an acronym. It is the short form of the British word scrummage which is a rugby term for getting the ball in play.
Scrum vs the Traditional Approach
Before Scrum the traditional approach for implementing a project was heavy up front design followed by coding, testing, debugging, and documentation in that sequence. There was little or no overlapping of functions and change after the design stage was completed was frowned upon. The premise was that if the design was done thoroughly, there would be little or no need for changes. If it turned out, changes were necessary they were usually quite costly to implement and especially if they occurred late in the project or at the end after the project was completed.
With Scrum, the various project steps are done simultaneously rather than sequentially, and change is expected to occur throughout the life of the project. A key goal of Scrum is to handle changes more efficiently especially in today’s world where changes come about more often than not. With Scrum you program “on the fly” and do not wait until all questions are answered before you start to code.
Under Scrum, work segments are prioritized with the goal of being able to complete and implement the most profitable ones as much up front as possible in order to maximize return on investment. The goal of Scrum is to deliver complete increments of business value as soon as possible but not before it has been thoroughly tested, debugged, and documented. Only then can that segment of work be considered “done”.
Another key difference between Scrum and the traditional approach is that projects were run by “bosses”. Exact instructions were given to individual programmers along with deadlines for their coding to be completed. Under Scrum, programmers work together as part of a development team. There are no bosses the team members report to; they basically report to each other. The team as a whole has responsibility for its work. They fail or succeed as a team. Individual members may have specialty expertise, but it is required they work together and pitch in wherever needed to clear up a bottleneck.
Why does Scrum Work?
Scrum works and results in higher productivity and lower costs in large part for the reasons listed below:
- Faster time to market because of the more efficient way to incorporate changes, and since useable segments of business value are released when done and not first at the end of the project which could be many months later.
- Higher quality because of on-going testing and debugging and such techniques as pair
programming. - Better individual team morale due to to the members identifying to the project as their own as well as from gaining increased technical knowledge due to pair programming.
- Improved “stakeholder” satisfaction due to being involved in the project as it is
progressing along and by being able to give feedback to the team as they begin to
implement segments of completed work released for their use.
Agile Methodology that Works Best for Your Organization's Needs
While Scrum framework, one of the popular Agile frameworks, has been adapted by many organizations, there are other Agile methodologies that have been proven to be the right choice for other companies.
Our comprehensive Agile knowledge library will guide you through various Agile frameworks and Agile Project Management practices to choose the right process that will adapt to your organization's needs.
For best results, contact our experienced Agile professionals that will walk you through the Readiness Assessment process to ensure the proper implementation of Agile in your organization.