Customers can sometimes be indecisive about what they want or need, and change the project requirements multiple times before it’s done. Scrum is an iterative project management methodology meant to handle such situations. Based on Agile project management, it helps teams deliver products in short cycles that allow for quick feedback and rapid response to change.
Scrums work off of time units called “sprints”. The duration of each sprint is fixed in advance, and can run anywhere from a week to a month. Ideally, each sprint should result in a product that is fully tested, documented, and shippable. This way, every sprint grows the product in increments.
Meetings and Scrums
The Scrum methodology places a lot of emphasis on regular and close collaboration between team members, and encourages face to face communication. Every sprint starts and ends with a meeting. At the start teams conduct a planning meeting, which establishes the sprint’s goal, duration estimate, and tasks. Every sprint ends with a review meeting, where progress is analyzed and lessons are applied to the next sprint.
Scrum teams don’t have project managers per se. Instead, the traditional project manager role is divided up into three:
Scrums are facilitated by a Scrum Master, whose primary role is to create as smooth a working environment for the team as possible. This includes removing distractions and acting as a buffer between the team and the outside world. The Scrum Master enforces scrum rules and chairs meetings, but his role does not include people management—because in scrum, it’s not needed.
A Product Owner is the voice of the customer. It’s his job to make sure the product brings value to the business or customer. He represents the stakeholder and users, and is responsible for adding user-centric items to the task list / product backlog.
The Development Team delivers the product at the end of each sprint, referred to as “potentially shippable increments” (PSIs). A team has up to ten members, each with cross-functional skills. Most scrum Development teams are self-organizing, and don’t have a fixed leader figure.
As effective as scrum is, it doesn’t always cover the entire product development cycle. So organizations sometimes need to modify scrum and insert a few more processes, or combine it with another methodology in order to make it fit within the organization’s workflow.
Image credit, Flickr, Klean Denmark