Scrum is the framework that we use for the Agile process here at CivicActions. (Our experience transitioning to Scrum was interesting, and you can read about that in our Agile Applied blog series.) In the spirit of following the roadmap that Scrum has laid out, this blog series will be focused on Scrum tips and quick reminders. I will briefly discuss the high level elements of Scrum in this post, and then in later entries, I will talk about specific aspects of Scrum, how to apply the rules, and what to do with the challenges.
There are 3 Elements of Scrum: Artifacts, Timeboxes and Roles.
There are three artifacts in Scrum: The Product Backlog, the Sprint Backlog and the Burndown Chart
The Product Backlog is the bucket for all the requirements. These are the user stories and the high level feature descriptions, all of which have business value priorities. This backlog is constantly changing. The Product Owner (this is one of the roles I will discuss below) owns this backlog, and will gather feedback, suggestions and requirements from stakeholder to add to the backlog. In other methodologies, there are heavy requirement documents, technical specs, etc. In Scrum, the Product Backlog replaces these and the agility is well used with the ability to easily adjust the content of this.
The Sprint Backlog is a subset of the Product Backlog. This is the repository of the highest priorities deemed by the Product Owner. These requirements are broken out into tasks, estimated, and clearly defined by the Scrum Team. Once we start a Sprint, the Sprint backlog does not change.
The Burndown Chart is a chart that indicates how much work is remaining in the Sprint. This chart is hung up in an area that everyone can easily see, including the Scrum Team, the Product Owner and Management. This is updated on a daily basis by the ScrumMaster, after hearing from the team what they have accomplished in the Daily Scrum Meeting.
There are three roles in Scrum: ScrumMaster, Product Owner and Scrum Team
The ScrumMaster is the coach and the gatekeeper. As a coach they ensuring the framework is being followed, and provide guidance and education where necessary. As gatekeeper, they have the responsibilities to remove impediments and protect the team from outside distractions.
The Product Owner is the subject matter expert. This is the person who knows what the stakeholders want and will define and gather the requirements. They will communicate their vision to the team and set priorities.
The Scrum Team is the group doing the work. The team will be made up of 7 members (plus or minus 2) and may be comprised of engineers, designers, architects, testers, etc.
NOTE: It is very important to note that while the ScrumMaster may be part of the Scrum Team (i.e. as a tester or engineer) the ScrumMaster can NEVER be the Product Owner. These roles must be held by separate people.
Everything in Scrum is timeboxed. This helps us stay on track and on schedule, because every meeting has a timebox and the length of the work period also has a timebox.
Sprints, the period in which we working on the project, are 2-4 weeks long and should be consistently the same length throughout the project.
There are 5 meetings within a Sprint. At the beginning of the Sprint we have the Sprint Planning Meeting (8 hour max) and the Sprint Commitment Meeting (4 hour max). At the end of the Sprint we have the Sprint Review Meeting (4 hour max) and the Sprint Retrospective Meeting (3 hour max). Everyday we have the Daily Scrum Meeting, which is 15 minutes.
Scrum is simple – only three main elements that I’ve covered above. But that doesn’t mean it’s easy. There are hurdles to jump and cats to wrangle. The good thing is that it’s all very worth it!
Stay tuned for more tips and reminders about Scrum! If you have questions or comments about how to apply Scrum, please post them in the comments below.