Scrum an Agile Framework
The 21st century is becoming more and more dependent on software than ever before, in the 20th century most companies had predefined projects and was therefore more predictable. With predefined projects, the tasks involved in developing or manufacturing the final product could be planned in advance. If the requirements, design and implementation can be planned in advance and the final goal is in sight, a framework called the waterfall method is suitable. It is a step driven method were each step is planned in advance.
In software development the waterfall method is not as suitable, as the market today calls for more flexibility and responsiveness, hence more unpredictability. The Scrum method is more suitable for projects that are unpredictable, that is the requirements and design of the project is constantly changing. Scrum works on the agile framework, by using iterative and incremental processes in order to cope with the ever changing requirements and customers’ needs.
Contents |
History
The Godfathers of Scrum
Hirotaka Takeuchi and Ikujiro Nonaka are regarded as the godfathers of Scrum. They realized that companies were moving towards more flexibility and speed in developing new products, at the same time minimizing cost and have high quality products. Takeuchi and Nonaka, described the old approach as a relay race, a team working towards a common goal but not working together at the same time to reach their goals, instead one player ran at a time and when he finished the next one could go. This is much like the waterfall method. Takeuchi and Nonaka introduced a new holistic approach and described it as a rugby team working together to reach a common goal.[1]
Modern Scrum
In the 90´s Jeff Sutherland and Ken Schwaber continued working on the idea from Takeuchi and Nonaka, it later involved into the Scrum method. In 1995, they first presented their method at the Oopsla conference in the US and published a paper “SCRUM Software Development Process”.[2]
Sutherland and Schwaber developed the Scrum method with software development in mind. Complex software development projects can have a high level of uncertainty and are constantly changing, therefore the traditional step-by-step method did not fit.[2]
In 2001, Sutherland and Schwaber alongside 15 other software developers worked together to come up with the Agile Manifesto. The Agile Manifesto is a set of 12 principles for software development.[2]
Values
Roles
In Scrum there are three roles that need to be fulfilled:
- The product owner
- The Scrum master
- The scrum development team
For each role there is a set of responsibilities, in order for a project to be successful each team member has to fulfill those responsibilities.
The Product Owner
Usually the product owner is a single person whose responsibility is to maximize the return of investment of the project he controls. The scrum master and the development team are not to be in direct contact with the customer, the product owner is the one responsible to be in contact with the customer to interpret their needs. The product owner then creates the product backlog which contains the tasks the development team needs to fulfill, it is vital that the product owner describes and ensures that the development team understand what needs to be done. He also prioritizes the tasks in the product backlog and has the final vote on what tasks need to be done and in what time period. Even though the product owner decides which tasks are to be taken, he does not manage what work is done within each task that is up to the development team and the scrum master.