What is Scrum?
The scrum method is a type of agile project management and it was developed for teams to work more effectively together in order to develop a product. Its main feature is that it is a simple framework that helps teams to collaborate better on complex projects. The emphasis of this method is on collaboration, self-management and –organization, flexibility and adaption. Scrum employs the idea of empirical process control, i.e. it observes the real progress and not just a forecast to plan and schedule a project. Schedules are divided into short events, also called “sprints”, and after each one is finished the completed work is assessed and necessary changes to the project objectives can be made by the Scrum team. This helps control risks and optimize their predictability.
The scrum method is popular with managers and developers because it is a framework with a simple set of rules, defining the roles and responsibilities of the Scrum team. It is very effective because instead of giving the teams specific tasks, they are given a set of objectives, so they can decide on and develop their own tactics of how to achieve the objectives most effectively. The constant progress assessment in short time intervals allows for quick reactions to necessary change and it also helps the team see what they have already accomplished in that time.
How does it work?
Source: Mountain Goat Software via Wikimedia Commons (edited)
The scrum method was developed for teams to deal with complex product development tasks and offers them a simple set of rules to deal with the complexity of the process: the three Scrum roles and the Scrum events (sprints).
Product owners know exactly what the requirements and necessary steps of the development process are (product backlog), they decide what needs to be done and provide the development team with the objectives. They are also responsible for maximizing the value of the product and the value of the work of the team. The product owner has exclusive decision making competence, which means that changes have to be approved by them.
Scrum masters do not take the role of ‘project managers’, because in Scrum the idea of self-management is important. What they do is to ensure that the whole process goes smoothly and helps to optimize and improve it and the team’s productivity. To do so their role is to eliminate any obstacles that might endanger the reaching of the specific sprint goals and the overall objective.
A team has ideally between 3 and 9 members with cross-functional skills. This guideline is important because less than 3 members means that there might not be enough interaction and the members might not have all the necessary skills to complete the sprint. Too many members would need too much coordination which would increase the complexity of the process. The task of the development team is to build the product and through self-management it is responsible for organizing and completing the work and meeting the goals of the sprints in the given time frame.
Scrum Events: The Sprint
A sprint is an event or project that has a duration of no more than 1 month (typically 1 or 2 weeks). The time frame is so specific because helps keep the complexities and risks minimal. Furthermore, once a sprint has started its duration is fixed and cannot be changed. At the end of each sprint a completed product has to be presented, i.e. a potentially releasable product increment. This increases the predictability of the project as after each sprint the progress is being assessed in a team meeting with the product master who can then plan and adjust the next steps accordingly. A sprint consists of the following steps that helps structure the product development process:
- Sprint planning
- Daily scrums
- Development work
- Sprint review