Scrum is not a new concept in software development but I find that a lot of people think they are practicing Scrum when they really aren’t. Near enough every job ad asks for “Agile methodologies or Scrum experience” but from my experience of interviewing and attending interviews very few people are doing Scrum as it was defined.
What is Scrum
In order to “do” Scrum you have to know what it is. The following summary is taken from the Scrum Alliance website (http://www.scrumalliance.org/why-scrum) which i think sums up Scrum pretty well:
- A product owner creates a prioritized wish list called a product backlog.
- During sprint planning, the team pulls a small chunk from the top of that wish list, a sprint backlog, and decides how to implement those pieces.
- The team has a certain amount of time — a sprint (usually two to four weeks) — to complete its work, but it meets each day to assess its progress (daily Scrum).
- Along the way, the ScrumMaster keeps the team focused on its goal.
- At the end of the sprint, the work should be potentially shippable: ready to hand to a customer, put on a store shelf, or show to a stakeholder.
- The sprint ends with a sprint review and retrospective.
- As the next sprint begins, the team chooses another chunk of the product backlog and begins working again.
Scrum is simple and very lightweight. There are three defined roles in the team (Team member, Scrum Master and Product Owner) and they follow a series of Scrum ceremonies (Daily Standup, Sprint Planning, Sprint Demo and Sprint planning) to work together as a team to deliver working software in a time-boxed increment called a Sprint.
Examples of not doing Scrum
We plan all of our sprints upfront so that we know what will be worked on in advance and when
Scrum is designed to react to change to business priorities and needs and by planning all of your sprints upfront you are losing the ability to react to changing priorities. I find that this tactic is usually initiated by a Project Manager or Team Leader who has used a traditional project management framework like Prince2 or Waterfall.
We do stand ups, thats Scrum right?
Whilst I think the very simple concept of the stand up would help any team improve communication and visibility of work within the team, just doing a stand up doesn’t mean you are doing Scrum.
We don’t have time for a retrospective
The retrospective is an essential part of Scrum and without it your team doesn’t have the chance to inspect and adapt what you are doing. Teams that drop the retrospective do so at their peril and in my opinion aren’t doing Scrum. As i already mentioned, Scrum is lightweight with very few “rules” but the retrospective and the other Scrum ceremonies must take place in order to get the full benefit from Scrum for your team.