Scrum an Agile Framework

From apppm
Revision as of 01:07, 16 September 2016 by S150948 (Talk | contribs)

Jump to: navigation, search

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/s, the product owner is the one responsible to be in contact with the customer/s 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 understands 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. Throughout the project the product owner is constantly working together with the team and talking to customers, he is responsible for updating the product backlog in case of new requirements, review tasks that are completed, decides whether to ship the product and can decide whether to continue development or not.

The Scrum Master

As with the product owner, the Scrum master is usually a single person whose responsibility is to ensure that the team follows the Scrum framework and its practices and rules. Initially in the planning process the Scrum master focuses solely on the creating the product backlog with the product owner and planning Scrum events such as daily Scrum meetings, sprint planning meetings, sprint review meetings and sprint retrospective meetings. Later on when the initial plan is complete the Scrum master often joins the development team. The main difference of the product owner and the Scrum master is that the Scrum master has no authority over the development team and does not take decisions that affect the development process. He is rather an adviser and only interferes when the team is not following the principles of the Scrum framework.

The Development Team

The Scrum Plan

Artifacts

Limitations

References

  1. Takeuchi, Hirotaka and Nonaka, Ikujiro. "The New New Product Development Game". Pomsmeetings. N.p., 1986. Web. 15 Sept. 2016.
  2. 2.0 2.1 2.2 "Scrum History | Scrum Guides". Scrumguides.org. Web. 15 Sept. 2016.
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox