Scrum has ushered in a revolution in project management.
Although the revolution is most often attributed to agile, the Agile Manifesto and Agile Principles do not specify the day to day processes and methods to be used to implement Agile. That’s the job of scrum, and as the most popular Agile framework, it’s safe to say that Scrum deserves most of the praise.
Of all the Agile frameworks, Scrum is by far the most popular. So much so, that the boundaries between the words Agile and Scrum sometimes get blurred. Don’t get me wrong, there is a clear boundary. Scrum specifies the methods and processes which are performed on a daily and weekly basis, whereas Agile only specifies general goals.
Scrum uses a series of “sprints” to accomplish project objectives. Sprints are 1-4 weeks long and must result in a tangible product that can be demonstrated to the product owner.
Scrum utilizes the following three things to achieve Agility:
- The Scrum Team
- Scrum Events
- Scrum Artifacts
The Scrum Team
Scrum projects are delivered by the Scrum team. This group of people have well defined roles which, when fully utilized, result in efficient production and stakeholder satisfaction. The scrum team roles and responsibilities are as follows:
- Scrum master
In strict scrum terminology, the scrum master is not the boss of the development team. Rather, they are the most knowledgeable of the processes of agile project management and its implementation. They facilitate the scrum meetings and remove impediments out of the development team’s way rather than ordering them to perform certain tasks. The scrum master is a servant leader who promotes and enhances the team’s, and project’s, agility.
- Development team
The development team performs the project’s technical work. That is, they carry out the work that produces the deliverables. Because the goal is to maximize their productivity, the development team must be kept focused and the scrum master’s job is to remove impediments in their way.
- Product owner
The product owner is the representative of the person or organization that will take delivery of (own) the product once the project is complete. Their role is to prioritize the various tasks within the backlog, align the project with corporate strategy, and ensure that the product created is the product needed.
Many scrum manuals include a fourth, stakeholders, which includes anyone else who has an interest in the project, from salespeople to accountants to regulatory agencies.
This scrum team meets in the daily scrum meeting, described later. They also take part in many scrum events which occur throughout the sprint.
To deliver a project using the scrum framework, the project team carries out a series of scrum events. The scrum events are:
- Project planning
The project planning phase is used to develop a vision of what the project will accomplish and a road map of how it will get there. Unlike traditional project management, which seeks to have a fully planned project that must simply be executed according to the plan, scrum seeks to specify only the vision, or goals, or the end product. The details are determined during sprints, when issues that pop up within one sprint can be prioritized and moved into the backlog for the next sprint. This is the essence of being agile, the rapid response to change inherent in the iterative processes of the method. The project planning event creates the product vision statement and product backlog (described in the next section).
- Release planning
Since the product is released to the owner in increments rather than one, single hand-over ceremony, the release planning determines which features will be released to the product owner, and when. Each sprint doesn’t necessarily need to be a marketable product feature (some features will be too large and sprints should be kept to 4 weeks maximum to keep them manageable), but it should produce a visible product increment.
The foundation of agile is the sprint. A sprint represents one single iteration after which the project retreats back to planning for the next iteration. Sprints should be between 1 and 4 weeks long, in order to ensure there is enough time to complete valuable product work but not too long as to be unmanageable. The sprint starts with a sprint planning meeting in which product backlog items are moved into the sprint backlog. Then, during the sprint, daily scrum meetings keep the development team on track and working together for maximum productivity. Finally, at the end of the sprint the development team presents the product owner with functioning product during the sprint review meeting. Finally, The sprint retrospective meeting is used by the development team to assess how their processes can be improved for the next sprint.
- Sprint planning meeting
This meeting occurs right at the beginning of the sprint. The primary purpose of the meeting is to determine what tasks will happen during the sprint. More specifically, items from the product backlog are moved into the sprint backlog. The meeting is attended by the full scrum team, namely the scrum master, development team, and product owner.
- Daily scrum
The essence of the scrum framework is the daily scrum meeting, sometimes called a stand-up meeting because many teams prefer to hold the meeting standing up to ensure it stays to the point and finishes quickly. In the daily scrum meeting, each member answers three questions to the meeting participants:
- What did I accomplish yesterday?
- What will I accomplish today?
- What impediments are in my way?
- Sprint review meeting
At the end of the sprint, two meetings take place. The first, called a sprint review meeting, is attended by the full scrum team and serves to report the results of the sprint back to the product owner. Although not all sprints need to complete a full product feature, there must be a tangible report of progress to the product owner during the sprint review meeting.
- Sprint retrospective meeting
Finally, the sprint retrospective meeting is also attended by the full scrum team. It serves to provide the scrum team a chance to scrutinize their processes and suggest improvements to be implemented for future sprints. This is also one of the cornerstones of the agile methodology, in which processes that are not working well are scrapped quickly, resulting in rapid response to change.
Similar to the way a project manager produces project management documents according to the PMBOK Guide, the scrum project produces various documents, called artifacts, to assist with the process of managing and tracking important project information.
These artifacts help all members of the scrum team to deliver the project on time, on budget, and to the highest quality possible. The six scrum artifacts are:
The product vision statement provides the statement of what the product will do, who it will do it for, and what need it will fulfill. The vision statement could follow the following format:For <target customer> who <statement of need> the <product name> is a <product category> that <product key benefit or reason to buy>. Unlike <primary competitive alternative> our product <statement of product differentiation> which supports our strategy to <company strategy>.
- Product roadmap
The product roadmap is a more feature-oriented statement of the end product. Although the product vision statement is fully owned by the product owner, the development team must take part in the product roadmap development and maintenance. The product roadmap contains groupings of features and when they will be developed, in order to get an idea how the overall project will proceed through its phases.
- Product backlog
Even more detailed than the product roadmap, the product backlog is a listing of individual tasks to complete the project. They are assembled into a pot which is drawn from during sprint planning to determine which tasks will be performed within that sprint.
- Release plan
Since product releases to the market are not necessarily correlated with sprints, the release plan specifies which product features are intended to be released into the market, and when. Like the other artifacts, the release plan is an evolving document that can change during the project, as the product owner decides that the market is or isn’t ready for a given feature.
- Sprint backlog
Like the product backlog, the sprint backlog contains the individual tasks that are to be performed within a sprint. Tasks are moved from the product backlog into the sprint backlog during sprint planning. Although sprint backlog items could be moved back to the product backlog during a sprint, this is generally considered bad practice. The duration of the sprint should be such that the backlog can be planned accurately, else it should be shortened.
- Product increment
The product increment is the new, functional, working product that has been developed and tested within the sprint. It is presented to the product owner during the sprint review meeting.
As you can see, the scrum method uses an iterative process to plan, perform, and look back in a series of iterations, or sprints. This compares to traditional project management which seeks to plan out the whole project prior to starting it. The benefit is that, although the end result is not known in as much detail up front, the project is completed cheaper and faster because of the lack of a massive up front planning effort that is likely to change anyway.
Thus, the sprint is here to stay, and the project management profession is better off for it.