Agile Scrum Methodology

From apppm
(Difference between revisions)
Jump to: navigation, search
Line 1: Line 1:
''Written by Océane Haddad - s212838''
 
 
 
'''Abstract'''
 
'''Abstract'''
  

Revision as of 21:02, 7 March 2022

Abstract

Scrum is an agile method that was invented in the early 1990s by Ken Schwaber & Jeff Sutherland that aims at developing complex products in a different way than the classic Waterfall Method. [1] [2]

Scrum is based on the division of a project into "time boxes", called sprints that typically last one to three weeks. [3] The team is composed of a Product Owner, a Scrum Master and a small team of developers. [4] Before each sprint, the Product Owner writes the “Product Backlog”, a prioritized list of features known as user stories that could go into the product. Each sprint starts with a Sprint Planning Meeting where all the members of the Scrum team can commit to the number of tasks they will be able to perform, as well as the creation of the “Sprint Backlog”, which is the overall list of tasks to be carried out during the sprint. During the sprint, the Scrum Master hosts daily 15-minute Stand-up Meetings where all members of the developer team can share what they did the day before, what they are working on today and identify any difficulties encountered that could hinder the smooth running of the sprint. Each sprint ends with a Sprint review, which consists of a demonstration of what has been completed and a discussion of what could be improved. Before starting a new sprint, a Retrospective Meeting takes place where all the Scrum team members work on what they can do to improve their process. By working incrementally, the team can learn from previous sprints to optimize the next. [5]

Even though the efficiency of this method had been proved by its important use in different companies, implementing it for the first time is challenging. It beyond others requires extensive training and major changes within the organization. [6]

Contents

Scrum methodology

Definition

Scum is an agile method “that helps people, teams and organizations generate value through adaptive solutions for complex problems.” [2]

Scrum method was invented in the early 1990s by Ken Schwaber & Jeff Sutherland, influenced by Hirotaka Takeuchi and Ikujiro Nonaka ideas. [7] The term “scrum” comes from the rugby vocabulary, a sport in which the team performs a scrum that allows a project, product or feature to be delivered and modified very quickly. Each player has a specific role in the scrum, and sprints during rugby matches are really important and decisive for the game. Comparatively to rugby, Scrum method is based on “sprints”, small time boxes of a few weeks where a team of about 8 people deliver a product. [2]

Purpose of this method

Scrum agile method allows to deliver functioning products at the end of every sprint. This way, the customer provides continuous feedback throughout the whole project. This method puts the user at the center of the project in order to avoid any misunderstanding between the company and the future user. This allows to gain time, efficiency, and satisfaction of the customer. [2]

Structure of the method

The Scrum roles

The Scrum method is based on a team with specific roles.

The Product Owner: [8] The Product Owner is responsible for defining the features that are needed in the product. He is the key stakeholder who provides direction to the team for each sprint. He represents the client’s needs and wishes. He is also the one that establish the list of priorities of what should be developed and he validates the functionalities. Therefore, the Product Owner is responsible for the success and business value of the project.

The Scrum Master: [8] The Scrum Master is responsible for the smooth running of the Scrum process. He is totally focused on the process. He is the one running the meeting and keeping things going, assuring that there is a good communication between all team members. This way, he can be described as a process facilitator but not as a project or people manager. His role is to help team focus on value.

The Team: [2] The Team is composed of testers, developers, writers, and anyone else that helps building the product. The Team is usually composed of 5 to 10 professionals, but the Scrum Guide recommends 7 +/- 2 team members at most. These professionals are jointly responsible for the results. They are self-managed and self-organizing to get the work done.


The Scrum documents

Scrum method relies on several documents that are essential for the proper functioning of the process.

The Product Backlog: [8] The Product Backlog is a prioritized list of features that could go into the product and that represents the desired project requirements and how to achieve them. This list evolves and the priorities are changed with every sprint to reflect new needs.

The Sprint Backlog: [5] The Sprint Backlog is a precise list of products the team agrees to produce during the next sprint, broken into tasks. This document follows a clear definition of “Done” that indicates what exactly needs to be done by the end of the sprint. Tasks and product can be placed in 3 categories during the sprint: To do, busy and done.

Figure 1: Sprint Backlog [9]

User stories: [10] A User story is a description of the user experience using the language, vocabulary and terminology of the user. Each user story has an identifier (a name that succinctly describes the function of the product), the importance (a value that defines the priority of the story), an estimate of the work required, a demonstration (a simple test of the story that will have to be validated) and the notes which include all the information necessary for the realization of the story.

The User stories are described as follow: "As a ... (user), I need ... (something), so that ... (reason)". This way of phrasing allows the Product Owner to specify the right amount of detail for the team to estimate the size of a task. After prioritizing these User stories, the ones with the highest priorities go into the Sprint Backlog.

Burndown charts: [8] The Burndown charts describe the evolution of the project. It describes the completion of tasks during a sprint. It allows to have an overview at a glance of the remaining work. It is part of the Sprint Backlog.

Figure 2: Burndown Chart [11]

The Scrum events

The method is punctuated by 4 types of meetings.

The Sprint planning: [8] [2] The Sprint planning is a meeting during which the Product Owner, the Scrum Master and the rest of the team meet to discuss the user stories and estimate their relative sizes. The aim of this meeting is to describe exactly what will be achieved during the sprint and assign tasks to each team member.

The Daily Scrum: [8] [2] The Daily Scrum is a 15-minute daily meeting led by the Scrum Master with the whole team. Everyone discusses what they have achieved the day before, what they will be working on today and any difficulties they could have encountered during the last day or any point on which they would need help. The aim is not to fix these encountered problems but just to share them. The Scrum Master will then delegate the issues encountered to the team, after updating the Burndown chart. Usually, the Daily Scrums are done at the beginning of the day standing up.

The Sprint Review: [8] [2] The Sprint Review is a meeting done at the end of each sprint. This is when the team deliver the result by demonstrating the completed work to the Product Owner and sometimes to the client. The team discusses the eventual improvements and the feedback received will be used in the next Product Backlog.

The Sprint Retrospective: [8] [2] The Sprint Retrospective is also a meeting done at the end of each sprint, but that focuses on the method process: together with the Scrum Master, the team looks back on the process and reflect on what they can improve for the next sprint.


The typical conduct of the Scrum method

Step 1: Writing the Product Backlog

The first step is for the Product Owner to create a list of bright ideas and features that could go into the product. These ideas are then prioritized in order to provide the top ones to the team during the Sprint Planning Meeting. These ideas are referenced in the Product Backlog.

Step 2: Sprint planning meeting

The first meeting of the sprint is called the Sprint Planning Meeting. The Product Owner, the Scrum Master and the rest of the team gather to discuss the top priority user stories in order to determine the content of the incoming sprint.

Figure 3: From Product to Sprint Backlog [9]

Step 3: Writing the Sprint Backlog

The Sprint Backlog is then written: it is composed of the list of user stories that have been committed to for the next sprint. The entire team and Product Owner have a solid understanding of what each of the user stories involves based on the discussions from the Sprint Planning Meeting.

Step 4: Sprint

A “sprint’ is a 1-to-3-week time box [3] where the team works on achieving everything that has been stated in Sprint Backlog. During the sprint, the Daily Scrum occurs as a stand-up meeting where the team discusses what they have completed and what they are working on as well as any blocked items. The outcome of the sprint is a potentially shippable product. That means that the Product Owner can decide if it is ready to ship to the client or if there are any additional features needed before it ships.

Step 5: Sprint review and Sprint retrospective meetings

At the end of the sprint, the whole team attend two meetings: the Sprint Review to showcase their work to the Product Owner, and the Sprint Retrospective to work on what can be done to improve their process.

This whole workflow is repeated for each sprint until having a final product that perfectly suits the client’s requirements.

Concrete case: how to implement Scrum method in an organization

Needed qualities in people

Implementing an agile method like Scrum requires specific skills in all people involved. [5]

Product Owners have to be fully committed to the project and need experience and certification in this type of process. They understand that they are empowered by management to have decision authority and ultimate authority.

Scrum Masters possess or acquire good facilitation skills. They are focused on facilitating and not on managing the process. They need to have and develop good coaching skills. They should be independent of development and customer responsibilities.

The rest of the team needs to be composed of qualified people that are comfortable with not knowing all details up front, with working in small teams with different skilled people and that are trained on agile method.

The Customers and other Stakeholders need to be flexible on scope and committed and engaged through the duration of the project.

Convince the team

This part and the next one will rely on a success story of Bharath Malaivaiyavur, Scrum Master, that he shared in 2014. [12]

Bharath Malaivaiyavur had about 13 years of experience in software services when he was trained as a Scrum Master. His mission was to implement Scrum at Global Products, the team that developed Internet products for their customer.

In order to smoothly implement Scrum Method in a company that previously used Waterfall but within Agile methods, he processed as follow:

  • After his Scrum Master training, he briefed his bosses about the training he had attended and shared with them the principles of Scrum. After these discussions, the original 50-members team was split into 5 smaller teams of about 9 to 10 member each, and he was identified as the Scrum Master for two of these teams.
  • He worked with the project management office team which did the release planning and assigned the features to the Scrum teams. Every Scrum team had a sprint schedule.
  • During the first sprint, he introduced his teams the process: sprint planning, the Daily Scrum, sprint burn-down, sprint retrospectives etc. Teams began to show a keen interest in all of these things, which they had never done before. In the beginning, he also had the support of his bosses.
  • After 2 sprints, the team members were showing “great enthusiasm and active participation in all the Scrum ceremonies”. They identified that “they were working more continuously than before, that they did not have to wait for the requirements after the sprint had begun, that they could actually collaborate more effectively among themselves, and that they could find ways to improve their work in a friendly setting.”
  • At the end of the project, after a lot of investment from the team, the project was a success. The team members completely adopted this new process, the management department was also very satisfied of how it went and the whole department of the company adopted Scrum method to develop products from now on.

Convince the client

One of the main obstacles for Bharath Malaivaiyavur was to convince the client of the efficiency of the process. In order to do so, he processed as follow:

  • At the beginning, the customer manager was not convinced that this new process would work and contacted the management team to express his worries. To face that, Bharath Malaivaiyavur invited the customer manager to attend the Daily Scrum meetings as an optional attendee.
  • He made sure that the teams were able to interact more frequently with the business analysts.
  • After these steps, the customer manager was still skeptical. Bharath Malaivaiyavur then set up a discussion between the customer manager and his teams to ask the question “What should we do differently to satisfy the customer?”. After several discussions, the team agreed on completing the full feature by the end of the very sprint and to demonstrate it to the customer. In other words, they wanted to complete the feature a whole sprint in advance.
  • The teams were really motivated to show the customer that this process and project were a success so they worked harder and more than usual and succeeded in completing all the deliverables for the sprint, and called the tester to validate the feature. It was accepted by the business analysts.
  • The customer praised the teams for this huge contribution, and with such good quality. The members had succeeded in convincing the declared champions of Waterfall that the Scrum method was the way to go for the development of Internet products.


Limitations & Challenges

Implementing Scrum method in a company remains challenging and this method has several disadvantages: [6]

  • It requires extensive training and a well-trained and skillful team to be well implemented and efficient. The team has to understand and recognize the benefits and advantages of using this kind of method.
  • Scrum is more adapted for small to medium projects. Using this method for large projects can be really challenging.
  • Major transformations within the organization can be required, which complicates even more the implementation of Scrum.
  • Scrum might not be suitable for projects with very specific and defined deadlines and milestones and that require predictability.
  • Using this method implies that the project doesn’t have a strict deadline.


Annotated Bibliography

  • Schwaber K., Sutherland J., The Scrum Guide, 2020

The book is an updated version of the description of the Scrum method, written by the two founders of the method. They explain the process in detail with the Scrum team, Scrum deliverables and Scrum Events. The values are also presented.

  • Lopez A., Milmine L., Agile Implementation Lessons Learned from Practical Application, 2012

It is a presentation made by two certified Scrum Masters presented to NM Women in Technology. They start by explaining what is an Agile method before presenting the basics of the Scrum method as well as discussing their lessons learnt and giving a few recommendations for future Scrum Masters.

  • Malaivaiyavur B., Success Story: Transition from Agile-cum-Waterfall to Scrum, in: ScrumAlliance, 2014

This is a success story written by a Certified Scrum Master about how he implemented for the first time Scrum method in a company. He explains the barriers he had to face with the client as well as how he convinced the team of the efficiency of this method.

References

  1. Schwaber K., SCRUM Development Process, 1995, external link: [1]
  2. 2.0 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 Schwaber K., Sutherland J., The Scrum Guide, 2020, external link: [2]
  3. 3.0 3.1 Viter I.,Everything You Need to Know About Sprint Planning, in: Forecast, 2020, external link: [3]
  4. Uzility, Introduction to Scrum - 7 Minutes, 2014, external link: [4]
  5. 5.0 5.1 5.2 Lopez A., Milmine L., Agile Implementation Lessons Learned from Practical Application, 2012, external link: [5]
  6. 6.0 6.1 Indeed Editorial Team, List of Scrum Advantages and Disadvantages, in: indeed, 2021, external link: [6]
  7. Sutherland J., Takeuchi and Nonaka: The Roots of Scrum, 2011, external link: [7]
  8. 8.0 8.1 8.2 8.3 8.4 8.5 8.6 8.7 Gonçalves L., Scrum : The methodology to become more agile, in: Zeitschrift Für Controlling Und Management, 2018
  9. 9.0 9.1 Visual Paradigm, "What is Sprint Backlog in Scrum?", external link: [8]
  10. Rehkopf M., User stories avec des exemples et un modèle, in: ATLASSIAN, external link: [9]
  11. Guthrie G., "Get started using a burndown chart to track your project", in: backlog, 2021, external link: [10]
  12. Malaivaiyavur B., Success Story: Transition from Agile-cum-Waterfall to Scrum, in: ScrumAlliance, 2014, external link: [11]
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox