The Scrum framework

From apppm
Revision as of 13:21, 26 February 2021 by S200165 (Talk | contribs)

Jump to: navigation, search


Contents

Abstract

In the complex technology and business world we live in today, there is a need for flexible project management practices. In for example product development, timing plays a huge role. Companies face growing pressure in delivering products quickly to the market. This pressure can result in many uncertainties and increase the rates of failures. These uncertainties can be linked to traditional project management methods being applied, where deterministic practices are being used. Resulting in companies not being able to evolve quickly or inexpensively enough when nearing the end of the development lifecycle. The ultimate goal is to deliver great customer value, Agile practices do that by constantly seeking involvement in product development e.g. from the customer. Evaluating and validating if what is being made is meeting the set business case [1]. This business case sets the objectives and success criteria for the project. In agile project management this validation is done more often. Most often the success or the real benefits of a project can‘t be seen until the project has been done. It can be considered an advantage for project managed with agile methods having constant validation, and close relationship with the stakeholder and that it will result in target benefits being met and higher success rate [2].

Scrum is an Agile project Management framework, where projects are managed in short sprints or iterations. These Sprints last up to 30 days. The Scrum Framework has a set of roles and events that will be discussed further in this article. The focus will be on looking at the Scrum Framework from a project management perspective, where it will be compared to the Waterfall model. The Waterfall model can be considered the most traditional project management method [3].

In Scrum the control is moved from the traditional central scheduling to the teams itself. Where individuals closer to the actual work take charge of the decision making. With this frameworks the feedback loop between customers and developers is much shorter, the progress is visible, inspections are done constantly and adaptations done when needed. [4]. This is especially important in complex projects where companies have to be able to adjust to changes in scope or specifications.

How it all started

In 2001 a group called the The Agile Alliance published theManifesto for Agile Software Development "[5]. It can be said that this group started an Agile movement. What started as a movement meant to improve software development is now being applied in various organisation(find better wording). The following b values that are highlighted in the Manifesto give a good overview of what Agile is all about:

In the Manifesto it is highlighted that individuals practicing Agile value:

  • Individuals and interactions over processes and tools
  • Working software over comprehensive documentation
  • Customer collaboration over contract negotiation
  • Responding to change over following a plan "[6].

Ken Schwaber & Jeff Sutherland started devloping the Scrum framework in the early 90s[7], with the first publication in 1990 [8]. Scrum follows the values mentioned above, in addition to that the following values are highlighted: Commitment, Focus, Openness, Respect and Courage. It is interesting to see that the development of Scrum started approximately 10 years prior to the meeting of the Agile Alliance, which Ken and Jeff were apart of. Since 2001 Agile grew in popularity and in 2009 more organisation were using Agile than Waterfall (traditional project management) processes. From those Agile processes the majority was using the Scrum framework or 84%. In 2009 Ken Schwaber created an organisation Scrum.org [www.scrum.org], reaching a broader audience and providing access to materials and courses. There you can access the Scrum Guide that Ken Schwaber and Jeff Sutherland published in 2010, which gives great overview of the Scrum framework and its application [7].

The Scrum Team

The Scrum Team has three roles: The ScrumMaster, Product Owner and the Developers (The Team). It should be mentioned that even though one role is called Developers it does not mean that the Scrum framework is only meant for Software development. It was first developed for that purpose however now used worldwide within various organisations.

  • The Product Owner represents the customers of the project. The Product Owner is in charge of making a plan that meets their vision and needs. That is done by setting up a Product Backlog, the Backlog contains both functional and nonfunctional requirements that have to be met to reach the goal or vision. This Backlog gets then prioritised, making sure that the Scrum teams starts with the main functionalities. With this prioritisation of functionalities a proposed release plan can be set. It is therefore the role of the Product Owner to priorities and decide what will be done during the sprint. This is then presented to the team during a Sprint planning meeting [4]. The Product Owner manages the Backlog, makes sure that the backlog is well organised and the content visible. He is also the only person that can make decisions on adjusting/changing something in the backlog [9].
  • ScrumMaster makes sure that everyone within the Scrum team knows the principles of Scrum and makes sure that everyone follows them. Another key role of the ScrumMaster is to remove any obstacles that might come their way, ensuring that the team can complete their work. The ScrumMaster is a role that is often filled by a project manager, however the ScrumMaster should not manage or define the work. The ScrumMaster should be managing the Scrum process, making sure that everyone is one the same page. As Ken Schwaber describes so well by comparing a ScrumMaster to a sheepdog, responsible for keeping the flock together and the wolves away[4].
  • The Developers (The Team) is a cross functional team, that is self organising and self managing. Where the latter is key as Scrum teams should not be managed rather they are responsible for managing their own work and making sure that the job gets done during each sprint [4]. It could be described as the team owns how it chooses to get the job done e.g. the functionalities. In comparison to the Product Owner that owns what should be done. The team is a relatively small, and usually consists of 5-9 people [10].

The Scrum Team are the individuals that are considered to be committed to the project, they can be called Pigs. However people that are interested in the project, have no accountability or responsibility are called Chickens. There is a clear distinction of authority between these two groups where the Chickens are not able to interfere without having the proper authority and the Scrum team has the full authority to do whatever it takes to make the project a success [4].

Application: The Scrum Events

Sprint

A sprint is where all the work takes place, often said to be the heartbeat of the Scrum Framework. The Sprints are fixed time boxes that are usually 30 days or less. When a sprint ends the next sprint takes over. The following events are linked to a sprint: Sprint planning meeting, Daily Scrum, Sprint review and Sprint retrospective meeting [4]. In Figure 1 you can see the sequence of the Sprint events.

Figure 1: The Scrum Events, Adapted from Ken Schwaber's Agile Project Management with Scrum (Figure 1-3) [4]

Sprint planning meeting

May last up to 8 hours when preparing a 30 day sprint [9]. The Product Owner uses the first 4 hours to introduce to the Team the Product Backlog and the highest priorities within the next Sprint and why those are important and bring value to the project [4]. From these priorities the Team assesses and selects what items they estimate they will be able to get done during the Sprint, here it is important to determine what their Definition of Done is. Finally the team evaluates how they will be able to get the work done. The Team is the only ones that can determine how the items from the Product Backlog are turned into Increments of value (product functionalities), (See Figure 2) By the end of the Sprint planning meeting a Sprint Goal has to be set [9],.

Figure 2: The three main topics for the Sprint planning meeting, Adapted from the Scrum Guide [9], available at https://www.scrum.org/resources/scrum-guide

Daily scrum

Daily scrum are 15 minutes meeting held at the same time and same place each day to track the progress and how they are doing in regards to the Sprint Goal. During that meeting the Team evaluates what they have done, what they are doing and what obstacle are preventing them from getting the work done [4]. To track the progress the Scrum Team often uses visual boards called Scrum Boards (See Figure 3) that they will update during the Daily Scrum meetings. Where the minimum categories would be: to do, doing (in process) and done. The items from the Sprint Backlog are evaluated and divided into manageable blocks, in Figure 3 called stories, the stories are then divided into subtasks [11]. During the Daily scrum meeting the Team moves around the tasks on the visual board according to the progress. Another way of visualising how much of the work is done during each Sprint is by the use of Burndown charts. Burndown charts provides good overview of how well the work is progressing [10] The Burndown chart in Figure 4 shows well how these graphs show the correlation between time and remaining work for one sprint that lasting from July 7th to August 3rd.

Figure 3: An Example of a Scrum Board, Adapted from the fyi blog; The Top 10 Scrum Boards you should be using by Marie Prokopets [11], available at https://usefyi.com/scrum-board/
Figure 4: Burndown chart to illustrate Scrum, picture by Manuelmorales (2009), distributed under a Creative Commons Attribution 3.0 Unported license, available at: https://commons.wikimedia.org/wiki/File:Burndown.png

Sprint review

Sprint review is a 4 hour meeting that takes place at the end of the Sprint. During that meeting the Team presents to the Product Owner and other relevant Stakeholders the outcome of the work that was done during that Sprint [4]. This meeting is informal and Stakeholders can give feedback on the work done during the Sprint. During that meeting the features are explored and from that new opportunities are explored and what should be the next steps [9],.

Sprint retrospective meeting

The ScrumMaster leads the Sprint Retrospective meeting, it is a 3 hour meeting where he goes over what went well during that sprint and what could be done better in the next sprint that the ScrumMaster leads and goes over what went well and what can be done better in the next sprint in respect to the Scrum process framework and practices [4]. The meeting should ensure that the next sprint be more enjoyable, effective and increase quality [9]. This is also an interactive meeting where not only the ScrumMaster does the talking, the team is involved and discussed their opinions on the previous Sprint, what went well and what problems they encountered that were challenging [9].

Scrum vs Traditional Project Management (Waterfall)

The Waterfall Model has a predictive life cycle, where time, cost and the project scope are well defined early on in the life cycle. Changes have to be managed well [2] and can be costly. The waterfall projects begin at one place and then similar to a waterfall cascade down to the end of the project in a forward direction. Scrum has an adaptive life cycle that is agile, where a scope is defined and approved before the start of each sprint. Adaptive life cycles are also often called change-driven life cycles [2]. The latter emphasises that Agile methodologies like the Scrum Framework welcomes changes. As an iterative model Scrum starts small and then adds on throughout the project.

For each project the project managements needs to considered what approach fits best[2].

Figure 5: Project life cycle: Water vs Scrum Adapted from the Scrum Guide

The following table gives an overview of the differences between the Scrum Framework and the Waterfall model.


Scrum vs Traditional approaches (Waterfall)
Scrum Traditional (Waterfall)
Planning Planning is done based on the sprints, therefore the plans are shorter where there are multiple deliverables There is a detailed timeline with long term project plans [12] that are done in the beginning of the project.
Reviews Reviews are being done after each of the Sprints with the relevant stakeholders, therefor they are being done throughout all the project stages [8]. Review is done at the end of the project
Customer involvement High customer involvement, The customer is involved all throughout the project Low customer involvement Customers are often only involved during the beginning and at the end of the project [12]
Ability to adapt to change Closely linked to the frequent reviews and customer involvement. In the Sprint review meetings where the functional increment is reviewed there is the opportunity to evaluate if any changes are needed or any new ideas come up. Changes are more costly and harder to make [8] as projects have been planned ahead at the beginning.
Requirements Throughout the project detailed requirements are being made Before the project start detailed requirements are defined[8].
Product delivery After each Sprint a product is delivered in a functional state, it is not the finished product however it shows the product functionality (increment) Done during the sprint [4] At the end of the timeline the product is delivered, fully functioning according to the requirements set in the beginning [12].

So is there a way of knowing when to apply traditional approaches like e.g. waterfall model and when to use Agile approaches like Scrum?

The following bullets on reasons why Scrum or Traditional Project management methods are appropriate were adapteded from the article Jason Fair wrote on Agile versus Waterfall approaches [12]

Reasons for why Scrum would be appropriate:

  • It is a complex project
  • It can be possible to split employees up to teams of 5-9 people.
  • The team works well together, the environments fosters collaboration, Openness and self organisation.
  • The resources are available to play the roles needed. If not companies may have to invest in training in order to get the full benefits.
  • Customers are willing and wanting to be an active part of the process [12]

Reasons for why Traditional Project management would be appropriate:

  • The project is of a Smaller to Medium Scale,
  • Where requirements are known beforehand and they are not likely to be subject to changes
    • Where it is easy to scope and define the project [12].

Advantages of Scrum

It has been said that with the use of Scrum companies have a faster way to the market. One reason could be that the Customer might be happy with the product sooner than with the traditional approached, as the customer can realise that some functionalities that they had requested in the beginning aren't as important after seeing the product functionalities already implemented. This is possible only because the customer reviews the product throughout the project, with a more traditional approach the customer would be reviewing the product at the end of the timeline. Another reason could be that the teams have to deliver increments frequently, meaning that there is better support and more pressure on deliveries. In 2008 the QSM Associates concluded in their report "Agile Impact Report, Proven Performance Metrics from the Agile Enterprise" that projects managed with the Agile approach were 37 % faster at delivering their products to the market and 16% more productive [13].

The customer is heavily involved throughout the project validating the functionalities of the product, this can increase the chances of the customer being satisfied with the end product. For many companies the customer satisfaction is how they measure their project success. Therefore this close relationship between the ScrumTeam and the customers can increases the possibility of meeting the target benefits.

When working with complex projects there is a higher risk of uncertainties and risks. With the use of frequent reviews that the agile approaches uses then it is more easy to identify and manage risks. By reviewing each Increment the risks for each sprint can be identified, analyzed and managed. The other aspect is that you have a good overview of the job ahead with the overview of the backlog, with this knowledge it is easier to priorities the progresses according the the risk exposure [2].

As states in the PMBOK guide Quality control in agile projects are being done throughout the project life cycle and can be performed by all team members. However for projects managed by the waterfall model the quality control is usually done towards the end of the project or phase, those quality controls are then done by specific team members. Here the advantage is quite clear as with the agile approach there is more flexibility, more people being able to perform. Furthermore the quality control is being done throughout the project ensuring that the project deliverables meet the set requirements.

The Scrum Master role is not to proactively develop team skills. He is responsible for the effectiveness of the team, and in coaching the team in self management and cross functionality by using the scrum framework. By fostering an environment where the team is able to self organise and providing condition so that the team is able to do their best work, will lead to motivation. However the motivation in scrum is more focused on self motivation where the team members know their value in the role. Their work is being evaluated on a regular basis. Furthermore the Scrum Master makes sure that

Disadvantages of Scrum

Some have concluded that agile methodology does not work at scale, and that the small team sizes are a constraint. However there are ways of scaling with the use of Scrum-of-Scrums, and Ken Schwaber also introduces ways of scaling Scrum with examples in his book Agile Project Management with Scrum. Another approach that could be interesting to look at in this perspective is SAFe (link to SAFe).

Team members have to be cooperative, self organising and willing to follow the Scrum framework. There are frequent meetings so the team members have to be willing to engage. A problem could arise when a team member decides to quit during the project as each member of the team is very valuable to get the functions done. However as the sprints are maximum 30 days than it should be possible to find a new member filling that gap.

Annotated bibliography

  • Schwaber, K. (2004). Agile Project Management with Scrum (Developer Best Practices) (1st ed.). Microsoft Press: This book is written by one of the founders of Scrum Ken Schwaber. This book provides you with a good overview of the Scrum framework, The Scrum roles and Scrum Events. Ken also introduces good cases that have both been successful and failed, and provides good recommendations. This book is well structured and the appendixes are very helpful e.g. the Definition table.
  • Schwaber, K & Sutherland, J (November 2020) The Scrum Guide; The Definitive Guide to Scrum: The Rules of the Game: This book provides good understanding of Scrum. The guide is short and very on point, therefore easy to read.
  • Sliger, M. (2011). Agile project management with Scrum. Paper presented at PMI® Global Congress 2011—North America, Dallas, TX. Newtown Square, PA: Project Management Institute: This is a short article that gives good overview of the Scrum framework, especially the application. The article has good figures explaining the Scrum Process very well as well as introducing the relevant tools for Scrum like e.g. Scrum Board and Burndown charts. Furthermore it provides good examples as well as comparison between Scrum and more traditional approaches.

References

  1. Highsmith, J. (2009). Agile Project Management: Creating Innovative Products (2nd ed.). Addison-Wesley Professional.
  2. 2.0 2.1 2.2 2.3 2.4 Project Management Institute, Inc.. (2017). A Guide to the Project Management Body of Knowledge (PMBOK Guide)(6th ed.). Project Management Institute, Inc (PMI).
  3. What is waterfall project management Accessible: ref https://www.wrike.com/project-management-guide/faq/what-is-waterfall-project-management/.
  4. 4.00 4.01 4.02 4.03 4.04 4.05 4.06 4.07 4.08 4.09 4.10 4.11 Schwaber, K. (2004). Agile Project Management with Scrum (Developer Best Practices) (1st ed.). Microsoft Press.
  5. , Agilemanifesto.org Highsmith, J. (2001) History: The Agile Manifesto, (Accessed on 12th of February),
  6. , Agilemanifesto.org (2001) Principles behind the Agile Manifesto, (Accessed on 12th of February),
  7. 7.0 7.1 , Scrum.org (2021) About Scrum.org, (Accessed on 15th of February),
  8. 8.0 8.1 8.2 8.3 Kousholt, B. (2012). Project Management; Theory and practice (2nd ed.). Nyt Teknisk Forlag.
  9. 9.0 9.1 9.2 9.3 9.4 9.5 9.6 , Schwaber, K & Sutherland, J (November 2020) The Scrum Guide; The Definitive Guide to Scrum: The Rules of the Game, (Accessed on 16th of February),
  10. Cite error: Invalid <ref> tag; no text was provided for refs named Sliger
  11. 11.0 11.1 Prokopets, M. The Top 10 Scrum Boards you should be using. fyi BLOG.
  12. 12.0 12.1 12.2 12.3 12.4 12.5 Fair, J. (2012). Agile versus Waterfall: approach is right for my ERP project? Paper presented at PMI® Global Congress 2012—EMEA, Marsailles, France. Newtown Square, PA: Project Management Institute
  13. Quantitative Software Management Associates (2008). The Agile Impact Report - Proven Performance Metrics from the Agile Enterprise, QSMA for Rally Software Development Corp.
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox