Scrum is an agile framework, flexible way to manage projects. Rather than being a waterfall methodology such as PRINCE2, agile is a framework that guides and coaches rather than dictating how we deliver the project. This allows us to flex our approach to suit each project.
With scrum, instead of writing a fully documented specification before the project begins (e.g. the Project Initiation Document) the requirements are written as user stories, kept in a backlog and we focus on the highest priority stories as the development progresses.
Scrum is an interative process, delivering typically in 2 week cycles called sprints. At the end of each cycle the delivery team will have a series of completed user stories that are in a shippable state. That is, they are complete, have been tested and approved and are ready for live service.
A delivery team in scrum is a self-organising and cross-functional team. There is no project manager. Instead the team organises itself, discusses and agrees the approach to user stories, team member support each other and the sprint is delivered as a team.
The delivery team is supported by the Scrummaster who acts as a coach, keeps the delivery within the scrum framework, supports the Product Owner (a client role responsible for prioritising the work delivered by the team) and helps the team deliver to its highest potential.
Scrum is an easy framework to understand but involves a lot more work to implement properly and gain the maximum value. The velocity on a scrum project is consistently high and as a result requires a lot on involvement from the team, the client and the supporting roles in between. Scrum can deliver a lot of quality work in a short period of time but it also requires hard work, teamwork and dedication.
Scrum is an iterative journey. There is a 2 week cycle time, referred to as sprints, during which we discuss and agree priorities, we agree technical approaches, we perform user experience research, we investigate content, we develop and build, we test and we deliver. Most important of all, we talk. Lots.
The key steps in a two week sprint cycle
This diagram shows the steps in a typical 2 week sprint. Typically we begin with planning and end with a demo. However, depending on the schedule we may start the sprint on a Tuesday and finish the sprint with a demo and planning on the same day. As we're a distributed team we have to make the most of our time together.
The key steps in scrum are:
- Sprint Planning - Scrum starts with a planning session where we look at the priorities set by the Product Owner
- Sprint Cycle - Next we move into the build cycle. The is the essence of scrum. This is the bulk of the 2 week cycle when the delivery team develops, designs, investigates, tests and prepares to deliver the user stories for the sprint
- Sprint Review - The sprint ends with a review and demonstration of the progress made during the sprint
- Sprint Retrospective - The scrum framework encourages us to continually review and improve our approach to the delivery. We review our progress at the end of each sprint in the sprint retrosective