SCRUM framework

From apppm
(Difference between revisions)
Jump to: navigation, search
(Limitations and challenges)
 
(46 intermediate revisions by one user not shown)
Line 1: Line 1:
''Developed by Sana Ilyas''
+
''Developed by Sana Ilyas, DTU (s192815)''
  
  
Scrum is an Agile framework that ''helps organizations, teams and people to generate value through adaptive solutions for complex problems'' <ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref>. The word Scrum originates from rugby to describe a formation of players in a complex game and were first introduced in the context of product development by Hirotaka Takeuchi and Ikujiro Nonaka in 1986 to increase speed and flexibility by implementing a cross functional team working in overlapping phases <ref name=Moving>Takeuchi, Hirotaka; Nonaka, Ikujiro, ''"The New New Product Development Game".'' Harvard Business Review January-February (1986) </ref>.
+
Scrum is an Agile framework that ''"helps people, teams and organizations generate value through adaptive solutions for complex problems"'' <ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref>.  
 +
The word Scrum originates from rugby to describe a formation of players in a complex game. It was later introduced in the context of product development by Hirotaka Takeuchi and Ikujiro Nonaka in 1986 to increase speed and flexibility by implementing a cross functional team that worked in overlapping phases <ref name=Moving>Takeuchi, Hirotaka; Nonaka, Ikujiro, ''"The New New Product Development Game".'' Harvard Business Review January-February (1986) </ref>.
  
Taking inspiration from this formation, Scrum framework is founded on empiricism, proclaiming that knowledge is derived from experience and decision making based on the observed, and lean thinking which is designed to reduce waste and focus on the essential <ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref>. Together with the Agile manifesto for software development <ref name=Manifesto> http://agilemanifesto.org/ </ref> , Scrum framework encourages iterative and incremental practices to deliver working software in dynamic environments. Unlike traditional Waterfall mythology, Scrum encourages not to have a defined scope but iteratively decide scope as the project progresses and to actively work in cross functional teams while regularly integrating end-users in order to constantly validate and prioritize outputs of the processes. Comparing the two methodologies using the Iron triangle, Waterfall have a fixed Scope and quality to be delivered while Scrum have a fixed time for when the project should finish along with fixed cost in terms of resources allocated<ref name=Castillo> F. Castillo, ''"Agile-Scrum Project Management".'' Managing Information Technology, Springer (2016) </ref> <ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - November 2020 ".'' (2020) </ref>      
+
Taking inspiration from this formation, Scrum framework is founded on empiricism, proclaiming that knowledge is derived from experience and decision making based on the observed, and Lean thinking which is designed to reduce waste and focus on the essential <ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref>. Together with the Agile manifesto <ref name=Manifesto> http://agilemanifesto.org/ </ref> , Scrum framework encourages iterative and incremental practices to deliver working software in dynamic environments. Unlike traditional Waterfall mythodology, Scrum encourages not to have a defined scope but iteratively decide scope as the project progresses, and to actively work in cross-functional teams while regularly integrating end-users and/or stakeholders in order to constantly validate and prioritize outputs of the processes. Comparing the two methodologies using the Iron triangle, Waterfall have a fixed scope and quality to be delivered while Scrum have a fixed time for when the project should finish along with a fixed cost in terms of resources allocated<ref name=Castillo> F. Castillo, ''"Agile-Scrum Project Management".'' Managing Information Technology, Springer (2016) </ref> <ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - November 2020 ".'' (2020) </ref>  
  
In order to understand and implement Scrum, the team must understand the 3 pillars and 5 values that serves as a roadmap for of Scrum:
+
'''Project management tool''': Scrum framework is a project management tool and can be viewed as a project life cycle, which is defined as follows in the PMBOK guide: ''"A project life cycle is the series of phases that a project passes through from its start to its completion. It provides the basic framework for managing the project. This basic framework applies regardless of the specific work involved. The phases may be sequential, iterative, or overlapping."''<ref name=PMBOK> Project Management Institute, Inc., ''"Guide to the Project Management Body of Knowledge".'' Project Management Institute, Inc (PMI), 6. edition (2017) </ref>. Scrum is an incremental project management mythodology where input, output and techniques are constantly evaluated and validated throughout the process using the same framework (tool).       
  
3 pillars of Scrum<ref name=Rossberg> Rossberg J., ''"Introduction to Scrum and Agile Concepts".'' Agile Project Management with Azure DevOps, Berkeley (2019) </ref>:
+
Before implementing the Scrum framework, the team must consider whether the following pre-requisites is suitable for their team:
* Transparency is an important pillar of the Scrum setup where the outcome and process are visible and clear to stakeholders involved in the project in order for them deliver what is agreed and to give feedback and approve the outcome.
+
* Scrum require an Agile mindset where flexibility, honesty and communication are at the center. Accepting the Agile manifesto means the lack of detailed workplans, rapid and frequent changes in scope and procedures which can be a big change of mindset and the way a team works<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>
* Inspection is done frequently to avoid undesirable variances in the process and deliverable thus meeting the fixed release date.
+
* The project team must agree upon commitment to Scrum pillars and values (see section below).  
* Adaption refers to the ability to adjust to change in processes, scope or any relevant change discovered during inspection. By adjusting to change as soon as possible, the team minimize further deviation going forward .
+
  
5 Values of Scrum (Work in progress)
 
* Commitment
 
* Focus
 
* Openeness
 
* Respect
 
* Courage
 
  
Before implementing the Scrum framework, the team must consider the following pre-requisites to ensure a successful implementation and application:
+
==Scrum overview==
* Scrum require an Agile mindset where flexibility, honesty and communication are at the center. Accepting the Agile manifesto means the lack of a detailed workplans, timelines and scope which can be a big change of mindset and the way a team works<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>. 
+
* The project team must be committet to the values of Scrum
+
* Scrum does not in particular tell you how to prioritize, estimate or plan. Figuring out how many hours each tasks requires includuing team velocity (number of stories or tasks the team can handle in 1 sprint) is to be determined by the team<ref name=Rossberg> Rossberg J., ''"Introduction to Scrum and Agile Concepts".'' Agile Project Management with Azure DevOps, Berkeley (2019) </ref>. 
+
  
 +
In order to understand and implement Scrum, the team must understand the 3 pillars and 5 values that serves as a roadmap for Scrum:
  
==Scrum overview==
+
'''3 pillars of Scrum'''<ref name=Rossberg> Rossberg J., ''"Introduction to Scrum and Agile Concepts".'' Agile Project Management with Azure DevOps, Berkeley (2019) </ref>:
 +
* '''Transparency'''is an important pillar of the Scrum setup where the outcome and process are visible and clear to stakeholders involved in the project in order for them deliver what is agreed and to give feedback and approve the outcome.
 +
* '''Inspection''' is done frequently to avoid undesirable variances in the process and deliverable thus meeting the fixed release date.
 +
* '''Adaption''' refers to the ability to adjust to change in processes, scope or any relevant change discovered during inspection. By adjusting to change as soon as possible, the team minimize further deviation going forward .
 +
 
 +
'''5 Values of Scrum''' <ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>
 +
* '''Commitment''' - Commitment to Scrum principles, common goals and team
 +
* '''Focus''' -  Focus on what is required to accomplish the goals and improving the setup to increase effectivity and efficiency 
 +
* '''Openeness''' - Being open and comfortable in the team and open to change
 +
* '''Respect''' - Respect for each other and the goals within a sprint
 +
* '''Courage''' - Courage to explore new solutions, making mistakes and challenging the status quo
 +
 
 +
 
 +
===Scrum Framework===
  
===What does Scrum look like===
+
[[File:Sprint.png|700px|thumb|Figure 1: Scrum Sprint (inspired by Troels et al., (2019)<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>]]
Scrum is a framework consisting of 6 artifacts, 5 roles and 4 activities.
+
  
[[File:Sprint.png|700px|thumb|Figure 1: Scrum Sprint (inspired by Troels et al., (2019)]]
+
'''Sprint''': In a Scrum setup, the project is divided into short iterative cycles called sprints that can vary in duration from weeks to months. Here, the focus lies on development of features in the Sprint Backlog to reach the Sprint goal. The output of a Sprint is partial product deliverable(s)/feature(s) called increment(s) that together form a possible shipable product. Although not all product features must be incorporated at the end of a sprint, the increments should be sufficient enough to be released as a functioning product<ref name=Castillo> F. Castillo, ''"Agile-Scrum Project Management".'' Managing Information Technology, Springer (2016) </ref>.
  
'''Sprint''': In a Scrum setup, the project is divided into short iterative cycles called Sprints that can vary in duration from weeks to months. Here, the focus lies on development of features in the Sprint Backlog to reach the Sprint goal. The output of the Sprint is partial product deliverables/features called increments that together form a possible shipable product. Although not all product features must be incorporated at the end of the sprint, however, the increments should be sufficient enough to be released as a functioning product<ref name=Castillo> F. Castillo, ''"Agile-Scrum Project Management".'' Managing Information Technology, Springer (2016) </ref>. A sprint can result in 1 or more increments, depending on the size and complexity of the Sprint backlog and team velocity.  
+
Note: A sprint can result in 1 or more increments, depending on the size and complexity of the Sprint backlog and team velocity (number of stories or tasks the team can handle in 1 sprint).
 +
 
* Length: typically 1 week - 1 month (2 weeks recommended). Sprints lasting more than 1 month makes it difficult to make nimble adjustments and deploy working software <ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>
 
* Length: typically 1 week - 1 month (2 weeks recommended). Sprints lasting more than 1 month makes it difficult to make nimble adjustments and deploy working software <ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>
* Owner: Product owner - The Product owner have the authority to cancel a upcoming or ongoing sprint if the Sprint goal is no longer valueable   
+
* Owner: Product owner - The Product owner have the authority to cancel an upcoming or ongoing sprint if the Sprint goal is no longer valueable   
* Outcome: Product increment that potentially can be relased  
+
* Outcome: Product increment that can potentially be relased  
  
'''Product backlog and Sprint backlog''': All project requirements are gathered in the Product backlog in the form of user stories which is to be defined, prioritized and developed during the project. For each sprint, selected features/user stories are transferred to the sprint backlog by the Scrum team and developed during the current sprint. Each user story is further sub-divided into smaller and more detailed items called tasks. To keep track of user stories and the progress of tasks, a Scrum board is used. It visualizes the user stories and the tasks for the current sprint and their development from backlog to Work in progress (WIP) to done. Through self management, the team assign tasks to each member and how this task is solved most efficiently. The responsibility for reducing the the sprint backlog relies on the entire team. In scrum mythology, this is refereed to as "owning" the sprint backlog<ref name=Castillo> F. Castillo, ''"Agile-Scrum Project Management".'' Managing Information Technology, Springer (2016) </ref> <ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref> <ref name=Rossberg> Rossberg J., ''"Introduction to Scrum and Agile Concepts".'' Agile Project Management with Azure DevOps, Berkeley (2019) </ref> <ref name=Weinreich > Weinreich R., Neumann N., Riedel R. and Müller E., ''"Scrum as Method for Agile Project Management Outside of the Product Development Area".'' Innovative Production Management Towards Sustainable Growth, Springer, vol 459, (2015) </ref>.
+
'''Product backlog and Sprint backlog''': All project requirements are gathered in the Product backlog in the form of user stories which is to be defined, prioritized and developed during the project. For each sprint, selected features/user stories are transferred to the Sprint backlog by the Scrum team and developed during the current sprint. Each user story is further sub-divided into smaller and more detailed items called tasks. To keep track of user stories and the progress of tasks, a Scrum board is used. It visualizes the user stories and the tasks for the current sprint and their development from Backlog to Work in progress (WIP) to done (figure 2). Through self management, the team assign tasks to each member and how this task is solved most efficiently. The responsibility for reducing the the sprint backlog relies on the entire team. In scrum mythodology, this is refereed to as "owning" the sprint backlog<ref name=Castillo> F. Castillo, ''"Agile-Scrum Project Management".'' Managing Information Technology, Springer (2016) </ref> <ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref> <ref name=Rossberg> Rossberg J., ''"Introduction to Scrum and Agile Concepts".'' Agile Project Management with Azure DevOps, Berkeley (2019) </ref> <ref name=Weinreich > Weinreich R., Neumann N., Riedel R. and Müller E., ''"Scrum as Method for Agile Project Management Outside of the Product Development Area".'' Innovative Production Management Towards Sustainable Growth, Springer, vol 459, (2015) </ref>.
* Size: Depends on the project
+
* Size: Depends on the project<ref name=Rossberg> Rossberg J., ''"Introduction to Scrum and Agile Concepts".'' Agile Project Management with Azure DevOps, Berkeley (2019) </ref>
* Owner: PO owns Product backlog and Development team owns Sprint backlog
+
* Owner: PO owns Product backlog and Development team owns Sprint backlog<ref name=Rossberg> Rossberg J., ''"Introduction to Scrum and Agile Concepts".'' Agile Project Management with Azure DevOps, Berkeley (2019) </ref>
* Outcome: Product Backlog containing all user stories to be developed in the entire project (with subject to change) and Sprint backlog containing user stories for the upcoming sprint
+
* Outcome: Product Backlog containing all user stories to be developed in the entire project (with subject to change) and Sprint backlog containing user stories for the upcoming sprint<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>
  
 
===Scrum Team and roles===
 
===Scrum Team and roles===
  
The Scrum team is a (small) cross functional team consisting of necessary resources, typically 10 or fewer people since smaller teams has proven to be more productive and have better communication<ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref>. Unlike many traditional teams, no hierarchy exist in the Scrum Team and they are self-managing meaning that the the team decide how to desing, build, test and deliver the user stories <ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref><ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>
+
The Scrum team is a (small) cross-functional team consisting of necessary resources - typically 10 or fewer people since smaller teams has proven to be more productive and have better communication<ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref>. Unlike many traditional teams, no hierarchy exist in the Scrum Team and they are self-managing meaning, that the team decide how to design, build, test and deliver the user stories <ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref><ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>
  
 
Following roles and associated responsibilities are assigned to members:
 
Following roles and associated responsibilities are assigned to members:
  
 
'''Product Owner (PO)''': The product owner represents the voice of the customer. He/she plays a big role in maximizing value throughout the project and therefore "owns" the Product Backlog. PO responsibilities can be summarized as follows: <ref name=Rossberg> Rossberg J., ''"Introduction to Scrum and Agile Concepts".'' Agile Project Management with Azure DevOps, Berkeley (2019) </ref><ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref><ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>:  
 
'''Product Owner (PO)''': The product owner represents the voice of the customer. He/she plays a big role in maximizing value throughout the project and therefore "owns" the Product Backlog. PO responsibilities can be summarized as follows: <ref name=Rossberg> Rossberg J., ''"Introduction to Scrum and Agile Concepts".'' Agile Project Management with Azure DevOps, Berkeley (2019) </ref><ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref><ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>:  
* Owns Product backlog: By taking ownership of the Product backlog, the PO is responsible for translating customer needs and ideas into features also called user stories that is put into the backlog. To do so, the PO needs to 1) express backlog items clearly to ensure that the development team understand what needs to be done 2) Get a user story ready for development together with the development team (clafifying and adding important details to user stories that are nessacary for the developers before they can initiate the development 3) prioritize user stories to meet the overall objective of the project including Product Goal.  
+
* Owns Product backlog: By taking ownership of the Product backlog, the PO is responsible for translating customer needs and ideas into features also called user stories that is put into the backlog. To do so, the PO needs to 1) express backlog items clearly to ensure that the development team understand what needs to be done 2) Get a user story ready for development together with the development team (clarifying and adding important details to user stories that are nessacary for the developers before they can initiate the development) 3) prioritize user stories to meet the overall objective of the project including Product Goal.  
 
* Communication: The PO should be able to communicate with stakeholders outside the team and work closely with the team to ensure alignment between what is expected and developed.
 
* Communication: The PO should be able to communicate with stakeholders outside the team and work closely with the team to ensure alignment between what is expected and developed.
* Accepting and rececting increments: When an increment or user story is developed, it is the PO's responsibillity to either reject or accept it based on acceptence criterias. Acceptence criterias for each user story are often formed in collaboration with the developers and describes the functional requirements related to the story that must be fulfilled before it becomes a shippable product.
+
* Accepting or rejecting output: When an increment or user story is developed, it is the PO's responsibillity to either reject or accept it based on acceptence criterias. Acceptence criterias for each user story are often formed in collaboration with the developers and describes the functional requirements related to the story that must be fulfilled before it becomes a shippable product.
  
 
'''Development team''': The development team usually consist of 5-9 people where each member is referred to as a developer<ref name=Hanslo>Hanslo R. and Vahed A., Mnkandla E., ''"Quantitative Analysis of the Scrum Framework".'' Przybyłek A., Morales-Trujillo M. (eds) Advances in Agile and User-Centred Software Engineering, Business Information Processing, Springer Volume 376, (2020) </ref>. Their collective responsibility is to work on user stories in the Sprint backlog hence deliver value to the customer. The composition of the developers reflects resources required to complete the tasks, thus it can be different professions such as designers, engineers, testers, analysts etc. <ref name=Hanslo>Hanslo R. and Vahed A., Mnkandla E., ''"Quantitative Analysis of the Scrum Framework".'' Przybyłek A., Morales-Trujillo M. (eds) Advances in Agile and User-Centred Software Engineering, Business Information Processing, Springer Volume 376, (2020) </ref>  
 
'''Development team''': The development team usually consist of 5-9 people where each member is referred to as a developer<ref name=Hanslo>Hanslo R. and Vahed A., Mnkandla E., ''"Quantitative Analysis of the Scrum Framework".'' Przybyłek A., Morales-Trujillo M. (eds) Advances in Agile and User-Centred Software Engineering, Business Information Processing, Springer Volume 376, (2020) </ref>. Their collective responsibility is to work on user stories in the Sprint backlog hence deliver value to the customer. The composition of the developers reflects resources required to complete the tasks, thus it can be different professions such as designers, engineers, testers, analysts etc. <ref name=Hanslo>Hanslo R. and Vahed A., Mnkandla E., ''"Quantitative Analysis of the Scrum Framework".'' Przybyłek A., Morales-Trujillo M. (eds) Advances in Agile and User-Centred Software Engineering, Business Information Processing, Springer Volume 376, (2020) </ref>  
 
The development team responsibilities can be summarized as follows:
 
The development team responsibilities can be summarized as follows:
*Owns the Sprint Backlog: The development team is self-organized and accountable for creating an execution plan for user stories in the sprint backlog and adapting their plan if necessary in order to reach Sprint goal while bringing value and quality in their tasks<ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref>.  
+
*Owns the Sprint Backlog: The development team is self-organized and accountable for creating an execution plan for user stories in the Sprint backlog and adapting their plan if necessary in order to reach Sprint goal while bringing value and quality in their tasks<ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref>.  
*Defining the "Definition of done" (DoD): The definition of done can be viewed as a formal agreement between the developers and PO that states "what requirements, in addition to the user story's acceptance criteria, you need to fulfill to be done with the story"<ref name=Rossberg> Rossberg J., ''"Introduction to Scrum and Agile Concepts".'' Agile Project Management with Azure DevOps, Berkeley (2019) </ref>. In other words, it describes the requirements for when an user story in the backlog is completed and ready to be delivered to the customer<ref name=Lárusdóttir> Lárusdóttir M., Cajander Å., Erlingsdottir G., Lind T., Gulliksen J, ''"Challenges from Integrating Usability Activities in Scrum: Why Is Scrum so Fashionable?".'' Integrating User-Centred Design in Agile Development. Human–Computer Interaction Series. Springer,(2016) </ref>
+
*Defining the "Definition of done" (DoD): The Definition of Done can be viewed as a formal agreement between the developers and PO that states ''"what requirements, in addition to the user story's acceptance criteria, you need to fulfill to be done with the story"''<ref name=Rossberg> Rossberg J., ''"Introduction to Scrum and Agile Concepts".'' Agile Project Management with Azure DevOps, Berkeley (2019) </ref>. In other words, it describes the requirements for when an user story in the backlog is completed and ready to be delivered to the customer <ref name=Lárusdóttir> Lárusdóttir M., Cajander Å., Erlingsdottir G., Lind T., Gulliksen J, ''"Challenges from Integrating Usability Activities in Scrum: Why Is Scrum so Fashionable?".'' Integrating User-Centred Design in Agile Development. Human–Computer Interaction Series. Springer,(2016)</ref>  
 
* Work cross-functional: It is encouraged that developers do not claim an area of expertise and stick to that. Ideally, every developer should be able to perform different tasks thus being involved in every aspect of the development process. This will prevent bottlenecks and hierachies in the team<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>
 
* Work cross-functional: It is encouraged that developers do not claim an area of expertise and stick to that. Ideally, every developer should be able to perform different tasks thus being involved in every aspect of the development process. This will prevent bottlenecks and hierachies in the team<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>
  
'''Scrum Master''': The Scrum Master acts like a facilitator of the Scrum setup including the PO and the Development team. They are often referred to as "servant leader" of the team meaning that they lead by serving the team and being supportive This entails keeping track of timelines, deadlines and keeping the team motivated without micro-management<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>.  
+
'''Scrum Master (SM)''': The Scrum Master acts like a facilitator of the Scrum setup including the PO and the Development team. They are often referred to as "servant leader" of the team meaning that they lead by serving the team and being supportive, thus focusing on leadership instead of management<ref name=PMBOK> Project Management Institute, Inc., ''"Guide to the Project Management Body of Knowledge".'' Project Management Institute, Inc (PMI), 6. edition (2017) </ref>. This entails keeping track of timelines, deadlines and keeping the team motivated without micro-management<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>.  
 
The Scrum master responsibilities can be summarized as follows:
 
The Scrum master responsibilities can be summarized as follows:
* Serving the Scrum framework: Promoting, establishing and maintaining the agile scrum best practices and rules within the team thus ensuring that the framework is implemented and used effectively<ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref>. Practically, this is done by moderating Scrum events eg. Sprint planning, daily scrum etc. <ref name=Weinreich > Weinreich R., Neumann N., Riedel R. and Müller E., ''"Scrum as Method for Agile Project Management Outside of the Product Development Area".'' Innovative Production Management Towards Sustainable Growth, Springer, vol 459, (2015) </ref>.  
+
* Serving the Scrum framework: Promoting, establishing and maintaining the agile scrum best practices and rules within the team thus ensuring that the framework is implemented and used effectively<ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref>. Practically, this is done by moderating Scrum events eg. Sprint planning, daily scrum etc. and being available to any kind os support needed by the Scrum Team <ref name=Weinreich > Weinreich R., Neumann N., Riedel R. and Müller E., ''"Scrum as Method for Agile Project Management Outside of the Product Development Area".'' Innovative Production Management Towards Sustainable Growth, Springer, vol 459, (2015) </ref>.  
* Serving the PO: To make sure that the Product backlog is clear, the Scrum Master facilitate the PO with Product Goal definition and management. Subsequently, they help the Scrum Team understand the items within the backlog. If needed, the Scrum Master can facilitate stakeholder collaboration<ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref>.   
+
* Serving the PO: To make sure that the Product backlog is clear, the SM facilitate the PO with Product Goal definition and management and subsequently help the Scrum Team understand the items within the backlog. If needed, the Scrum Master can facilitate stakeholder collaboration<ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref>.   
* Serving the Development team: The Scrum master helps coaching the team in how to work as a cross functional and self-organizing team. Additionally, the Scrum master facilitate in value creation and efficiency of the team by removing obstacles in their way and ensuring productive Scrum events <ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref>.  
+
* Serving the Development team: The SM helps coaching the team in how to work as a cross functional and self-organizing team. Additionally, the SM facilitate in value creation and efficiency of the team by removing obstacles in their way and ensuring productive Scrum events <ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref>.
  
 
+
==Scrum application for Software development==
==Recipe for Scrum application==
+
 
===Step 1: Create a Product backlog===
 
===Step 1: Create a Product backlog===
  
# Plan a workshop where key stakeholders brainstorm user stories. Example of key stakeholders could be: end-users, experienced developers, business analysts, customer etc. Here you focus on the bigger picture and do not go into details.  
+
The first step is to create a Product Backlog with relevant stakeholders. This can be done in different ways, 1 way could be as follows:
# Brainstorming results are then converted to user stories
+
# Plan a workshop where key stakeholders brainstorm ideas. Example of key stakeholders could be: end-users, experienced developers, business analysts, customer etc. Here you focus on the bigger picture and do not go into details.  
 +
# Brainstorming results are then converted into user stories (see example below)
 
# User stories are prioritized, typically by the PO. Prioritization can be done based on associated risks to each story and/or the business needs related to the project<ref name=Rossberg> Rossberg J., ''"Introduction to Scrum and Agile Concepts".'' Agile Project Management with Azure DevOps, Berkeley (2019) </ref>.   
 
# User stories are prioritized, typically by the PO. Prioritization can be done based on associated risks to each story and/or the business needs related to the project<ref name=Rossberg> Rossberg J., ''"Introduction to Scrum and Agile Concepts".'' Agile Project Management with Azure DevOps, Berkeley (2019) </ref>.   
  
 
Link between '''User stories''' and '''Acceptence criteria'''  
 
Link between '''User stories''' and '''Acceptence criteria'''  
  
User story 1: ''As a "type of user", I want "a functionality", so I may have "a business value''<ref name=Rossberg> Rossberg J., ''"Introduction to Scrum and Agile Concepts".'' Agile Project Management with Azure DevOps, Berkeley (2019) </ref>
+
'''User story 1''': ''As a "type of user", I want "a functionality", so I may have "a business value''<ref name=Rossberg> Rossberg J., ''"Introduction to Scrum and Agile Concepts".'' Agile Project Management with Azure DevOps, Berkeley (2019) </ref>
 +
 
 +
Example: As a user, I want to log into the system using my login so that I can see an overview of my expenses.
  
Example: As a user, I want to be able to log into the system using my login so that I can see an overview of my expenses"
+
Note: 1) User stories do not contain details about functions and implementation 2) You can add user stories throughout the project and adjust stories if needed.
Note: 1) User stories does not contain details about functions and implementation 2) You can add user stories throughout the project and adjust stories if needed
+
  
Acceptence criteria: Before "User story" can be marked as done, "scenarios or test" must be validated<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>.
+
'''Acceptence criteria''': Before "User story" can be marked as done, "scenarios or test" must be validated<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>.
  
 
Example: Before "User story 1" can be marked as 'done', username and code bar  along with a 'forgotten password' botton must be validated.  
 
Example: Before "User story 1" can be marked as 'done', username and code bar  along with a 'forgotten password' botton must be validated.  
Line 89: Line 95:
 
===Step 2: Sprint planning===   
 
===Step 2: Sprint planning===   
 
Sprint planning is the first activity and typically lasts 4 hours (for a 30-day sprint) requiring the presence of the whole Scrum team. Here, you address/decide the following<ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref><ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>:
 
Sprint planning is the first activity and typically lasts 4 hours (for a 30-day sprint) requiring the presence of the whole Scrum team. Here, you address/decide the following<ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref><ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>:
# Changes to Product backlog since last sprint
+
# Changes to Product backlog since last Sprint
# Sprint goal for the upcoming sprint
+
# Sprint goal for the upcoming Sprint.
# User stories to work on during the Sprint. PO and developers collaborate facilitated by Scrum master to select user stories from the Product backlog into the Sprint backlog (with team velocity in mind) along with acceptence criterias for each story.  
+
# User stories to work on during the Sprint. PO and developers collaborate facilitated by SM to select user stories from the Product backlog into the Sprint backlog (with team velocity in mind) along with Acceptence criterias for each story.  
# How do we intend to work on the user stories. Developers further breakdown user stories into tasks and plan how to complete these tasks so they meet the definition of done. This step does not require the PO.  
+
# Decide how the team intend to work on the user stories. Developers further breakdown user stories into tasks and plan how to complete these tasks so they meet the Definition of Done. This step do not require PO collaboration.  
# PO accepts the plan   
+
# PO accepts the plan.    
  
 
'''Input''': Product backlog, team velocity, current product status and constraints<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>  
 
'''Input''': Product backlog, team velocity, current product status and constraints<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>  
  
'''Output''': Sprint backlog, Sprint goal<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>
+
'''Output''': Updated Product backlog, Sprint backlog and Sprint goal<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>
  
 
===Step 3: The Sprint and Daily Scrum===  
 
===Step 3: The Sprint and Daily Scrum===  
  
Activities that happens during a typical Sprint
+
Activities taking place during a typical Sprint<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>:
* User stories in the Sprint backlog are developed and marked as "done" based on the "definition of done"
+
* User stories in the Sprint backlog are developed and marked as "done" based on the Definition of done  
* Product Backlog refinement: PO and the development team constantly refine and update Product backlog
+
* Product Backlog refinement: PO and the development team constantly refine and update Product backlog.
 +
* Changes in workflows and cross-functional collaboration to reach Sprint goal.
  
 
'''3.1 Daily Scrum meetings''': Daily Scrum meetings are - as the name indicate -  held every day for 15 min at the same time and place, typically in the beginning of the day to reduce complexity <ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref>. The purpose of this meeting is to give a quick status of the progress toward the Sprint goal and provide visibility and alingment between the members and the sprint goal<ref name=Bianco> Bianco C, ''"Agile and SPICE Capability Levels".'' Communications in Computer and Information Science, Springer, vol 155 (2011) </ref><ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>.  
 
'''3.1 Daily Scrum meetings''': Daily Scrum meetings are - as the name indicate -  held every day for 15 min at the same time and place, typically in the beginning of the day to reduce complexity <ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref>. The purpose of this meeting is to give a quick status of the progress toward the Sprint goal and provide visibility and alingment between the members and the sprint goal<ref name=Bianco> Bianco C, ''"Agile and SPICE Capability Levels".'' Communications in Computer and Information Science, Springer, vol 155 (2011) </ref><ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>.  
Line 110: Line 117:
 
# ''What are you doing today?''
 
# ''What are you doing today?''
 
# ''Do you have any roadblocks preventing you from accomplishing what you need to do?''
 
# ''Do you have any roadblocks preventing you from accomplishing what you need to do?''
Impediments can be solved together with the Scrum master. If needed, an action plan is defined and the issue is escalated within the organization to seek help outside the team.<ref name=Bianco> Bianco C, ''"Agile and SPICE Capability Levels".'' Communications in Computer and Information Science, Springer, vol 155 (2011) </ref><ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>
+
[[File:Scrum Board2.png|700px|thumb|Figure 2: Scrum Board(inspired by Castillo et al., (2016)<ref name=Castillo> F. Castillo, ''"Agile-Scrum Project Management".'' Managing Information Technology, Springer (2016) </ref>)]]
 +
Impediments can be solved together with the SM. If needed, an action plan is defined and the issue is escalated within the organization to seek help outside the team.<ref name=Bianco> Bianco C, ''"Agile and SPICE Capability Levels".'' Communications in Computer and Information Science, Springer, vol 155 (2011) </ref><ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>
  
Note:PO is not obligated to participate in every Daily Scrum. A PO typically belongs to another department eg. Sales, Marketing etc. and are therefore busy with other tasks besides being a PO for the team. However, they should prioritize this meeting to the best of their abillity<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>.
+
Note: PO is not obligated to participate in every Daily Scrum. A PO typically belongs to another department eg. Sales, Marketing etc. and are therefore busy with other tasks besides being a PO for the team. However, they should prioritize this meeting to the best of their abillity<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>.
  
'''Output''':''Plan for the day, any obstacles have been adressed''<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>  
+
'''3.2 Scrum board ''': To visualize the user stories and their work status, a Scrum board can be applied (figure 2). This creates transparency and helps the team to keep track of each task. A Scrum board can be customized to the teams need but typically contain the columns Backlog, Work in Progress (WIP) and Done. It is recommended to divide WIP into subsections to keep track of the different phases of development<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>. The Backlog section contains all tasks related to the user story. As the tasks is assigned to a developer, it is transferred to WIP. When the developer has completed the task by fulfilling criterias in DoD, including Acceptence criterias, the task is evaluated by the PO and put into the section "Done".   
  
'''3.2 Scrum board ''': To visualize the user stories and their work status, a Scrum board can be applied. This creates transparency and helps the team to keep track of each task. A Scrum board can be customized to the teams need but typically contain the columns Backlog, Work in Progress (WIP) and Done. However, it s recommended to divide WIP into subsections to keep track of the different phases of development<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>.   
+
'''Daily Scrum Output''': ''Plan for the day, any obstacles have been adressed''<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>
 
+
An Exapmple of Scrumboad (inspired by Castillo et al., (2016)<ref name=Castillo> F. Castillo, ''"Agile-Scrum Project Management".'' Managing Information Technology, Springer (2016) </ref>)
+
  
 
===Step 4: Sprint Review===  
 
===Step 4: Sprint Review===  
  
At the end of each Sprint, there is a Sprint review that typically lasts 3 hours for a 1 month sprint. Here, you do the following:
+
At the end of each Sprint, there is a Sprint review that typically lasts 3 hours (for a 1 month sprint) where the Sprint increments are reviewed. Here, you do the following<ref name=Castillo> F. Castillo, ''"Agile-Scrum Project Management".'' Managing Information Technology, Springer (2016) </ref> <ref name=Rossberg> Rossberg J., ''"Introduction to Scrum and Agile Concepts".'' Agile Project Management with Azure DevOps, Berkeley (2019) </ref><ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>:
# Development team presents and/or demonstrate their work to the PO and other relevant stakeholders
+
# Development team presents and/or demonstrate their work to the PO and other relevant stakeholders.
# Based on the results presented by the development team, the PO discuss and decide which user stories from the Sprint Backlog are "done" according to the Acceptance criteria
+
# Based on the results presented by the development team, the PO discuss and decide which user stories from the Sprint backlog are "done" according to the Acceptance criteria
 
# PO and stakeholders give valueable feedback which are discussed with the development team. This is a crucial step since the PO and stakeholders are able to see the prototype and therefore give better feedback of what features they would like to keep and remove for further development<ref name=Hanslo>Hanslo R. and Vahed A., Mnkandla E., ''"Quantitative Analysis of the Scrum Framework".'' Przybyłek A., Morales-Trujillo M. (eds) Advances in Agile and User-Centred Software Engineering, Business Information Processing, Springer Volume 376, (2020) </ref>.  
 
# PO and stakeholders give valueable feedback which are discussed with the development team. This is a crucial step since the PO and stakeholders are able to see the prototype and therefore give better feedback of what features they would like to keep and remove for further development<ref name=Hanslo>Hanslo R. and Vahed A., Mnkandla E., ''"Quantitative Analysis of the Scrum Framework".'' Przybyłek A., Morales-Trujillo M. (eds) Advances in Agile and User-Centred Software Engineering, Business Information Processing, Springer Volume 376, (2020) </ref>.  
# Items from current Sprint backlog that are market as "done" becomes a part of the Increment while items that needs further improvement/development (either by developers or PO), are put back into the product backlog for next sprint.
+
# Items from current Sprint backlog that are market as "done" becomes a part of the Increment while items that needs further improvement/development (either by developers or PO), are put back into the Product backlog for next Sprint or refinement.
  
'''Output''': "Learnings from previous sprint that need to be adressed in the coming sprint"<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>  
+
'''Output''': ''Learnings from previous sprint that need to be adressed in the coming sprint''<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>  
  
 
===Step 5: Sprint Retrospective===  
 
===Step 5: Sprint Retrospective===  
  
Here, the Scrum team reflect upon the completed sprint in order to increase quality and effectiveness of the Scrum framework going forward<ref name=Hanslo>Hanslo R. and Vahed A., Mnkandla E., ''"Quantitative Analysis of the Scrum Framework".'' Przybyłek A., Morales-Trujillo M. (eds) Advances in Agile and User-Centred Software Engineering, Business Information Processing, Springer Volume 376, (2020) </ref><ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref>. For en 1 month sprint, this meeting is typically set to maximum 3 hours. Some guiding questions could be<ref name=Rossberg> Rossberg J., ''"Introduction to Scrum and Agile Concepts".'' Agile Project Management with Azure DevOps, Berkeley (2019) </ref>
+
Here, the Scrum team reflect upon the completed Sprint in order to increase quality and effectiveness of the team and Scrum framework going forward<ref name=Hanslo>Hanslo R. and Vahed A., Mnkandla E., ''"Quantitative Analysis of the Scrum Framework".'' Przybyłek A., Morales-Trujillo M. (eds) Advances in Agile and User-Centred Software Engineering, Business Information Processing, Springer Volume 376, (2020) </ref><ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref>. For 1 month sprint, this meeting is typically set to maximum 3 hours. Some guiding questions could be<ref name=Rossberg> Rossberg J., ''"Introduction to Scrum and Agile Concepts".'' Agile Project Management with Azure DevOps, Berkeley (2019) </ref>
 
# ''What went well during the sprint?''
 
# ''What went well during the sprint?''
 
# ''What problems did the team encounter and how were they dealt with?''
 
# ''What problems did the team encounter and how were they dealt with?''
 
# ''What could be improved during the next sprint?'' including optimization of interactions, processes and tools <ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref>  
 
# ''What could be improved during the next sprint?'' including optimization of interactions, processes and tools <ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref>  
  
'''Output''':''1-3 action items to focus on in the coming sprin''<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>
+
'''Output''':''1-3 action items to focus on in the coming sprint''<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>
  
 
==Limitations and challenges==
 
==Limitations and challenges==
 +
 +
Agile practices is becoming more and more popular and it is expected to grow in the future <ref name=AgileReport> Vision One, ''"14th annual State of Agile Report".'' https://stateofagile.com/?_ga=2.1847793.1975269652.1614501418-1195485270.1614501418#ufh-i-615706098-14th-annual-state-of-agile-report/7027494, (2020) </ref>.
 +
The reasons for adopting Agile were investigated in a survey conducted by Viosion One in 2020<ref name=AgileReport> Vision One, ''"14th annual State of Agile Report".'' https://stateofagile.com/?_ga=2.1847793.1975269652.1614501418-1195485270.1614501418#ufh-i-615706098-14th-annual-state-of-agile-report/7027494, (2020) </ref>. Here, the top reasons were: "Accelerate Software Delivery" (71%), "Enhance ability to manage changing priorities" (63%), "Increase productivity" (51%), and "Improve business/IT alignment" (47%). Likewise, the benefits of adopting agile were investigated among the respondants, giving the top benefits: "Ability to manage changing priorities" (70%), "Project visibility" (65%), "Business/IT alignment" (65%) and "Delivery speed/Time to market" (60%).
 +
 +
However, here are some limitations and challenges related to the framework:
 +
* Having a core team: In order for the Scrum framework to work, it must be implemented in a core team with limited to no change in roles and quantity. This is due to the collaborative nature of the framework along with the importance of alignment, minimal documentation and cross-functionality of the team<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>. 
 +
* Agile culture: The Scrum Framework will not bring the intended benefit if the team do not subscribe to the Agile meninifesto and its 12 principles <ref name=Manifesto> http://agilemanifesto.org/ </ref> 
 +
* Scrum is not intended for multipurpose projects (projects with severel product development outcomes) which requires many different people/resources to be involved. Instead, managers can implements elemets of Scrum eg. implementing a Kanban board or consider other more suitable tools such as SAFe (Scaled Agile framework) or PRINCE2<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>. 
 +
* Having fixed cost, time and demands (including scope) deprive agile development, The developers are (often) solving an unique problem and therefore need a significant degree of freedom to solve it. Otherwise, consider PRINCE2<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>.
 +
* Scrum do not in particular tell you how to prioritize, estimate or plan. Eg. figuring out how many hours each tasks requires includuing team velocity is to be determined by the team<ref name=Rossberg> Rossberg J., ''"Introduction to Scrum and Agile Concepts".'' Agile Project Management with Azure DevOps, Berkeley (2019) </ref>.
  
 
==Bibliography==
 
==Bibliography==
 +
'''Troels Jakobsen, ''"Scrum Done Right - Learn Agile Software Development".'' Lean Agile Ltd, 1st edition (2019)'''
  
 +
This guide provide an excellent description and overview of all the artifacts, roles and activities in Scrum and were especially developed for Scrum Masters as reference work.
  
==References==
+
'''Hanslo R., Vahed A., Mnkandla E. (2020) Quantitative Analysis of the Scrum Framework. In: Przybyłek A., Morales-Trujillo M. (eds) Advances in Agile and User-Centred Software Engineering. LASD 2019, MIDI 2019. Lecture Notes in Business Information Processing, vol 376. Springer'''
  
<ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref>Schwaber K. and Sutherland J, (2020) The Scrum Guide - The Definitive Guide to Scrum: The rules of the Game. Creative Commons. https://www.scrumguides.org/index.html.
+
This study performs a quantitative analysis of the Scrum Framework using The Spearman collerelation analysis in South African organizations. Of the 14 factors studied, the 3 factors: Sprint Management, Complexity and Relative advantage  have shown to have a statistically significant relation with Scrum adoption. This study can be used to gain more knowledge about factors that affect Scrum adoption.  
  
<ref name=Moving>Takeuchi, Hirotaka; Nonaka, Ikujiro, ''"The New New Product Development Game".'' Harvard Business Review January-February (1986) </ref>Takeuchi, H., Nonaka, (1986) The new new product development game. Harvard Bus. Rev. 64, 137–146
+
'''Hron, M., and Obwegeser N., (2018) Scrum in practice: an overview of Scrum adaptions. 51st Hawaii International Conference on System Sciences (HICSS 2018), Curran Associates, Inc., p. 5445-5454.'''
  
<ref name=Castillo> F. Castillo, ''"Agile-Scrum Project Management".'' Managing Information Technology, Springer (2016) </ref>Castillo F. (2016) Agile-Scrum Project Management. In: Managing Information Technology. Springer, Cham. https://doi.org/10.1007/978-3-319-38891-5_8
+
This study provide an overview of the proposed adaptions and their implications by augmenting or combining the Agile software development practices with other tools and methods. However, this study only covers 31 studies after a filtering process.  
  
<ref name=Rossberg> Rossberg J., ''"Introduction to Scrum and Agile Concepts".'' Agile Project Management with Azure DevOps, Berkeley (2019) </ref>Rossberg J. (2019) Introduction to Scrum and Agile Concepts. In: Agile Project Management with Azure DevOps. Apress, Berkeley, CA. https://doi.org/10.1007/978-1-4842-4483-8_3
+
==References==
  
<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref>
+
<ref name=Guide>Ken Schwaber & Jeff Sutherland, ''"The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game - 2020 edition".'' (2020) </ref>Schwaber K. and Sutherland J, (2020) The Scrum Guide - The Definitive Guide to Scrum: The rules of the Game. Creative Commons. https://www.scrumguides.org/index.html.
  
<ref name=Hanslo>Hanslo R. and Vahed A., Mnkandla E., ''"Quantitative Analysis of the Scrum Framework".'' Przybyłek A., Morales-Trujillo M. (eds) Advances in Agile and User-Centred Software Engineering, Business Information Processing, Springer Volume 376, (2020) </ref>Hanslo R., Vahed A., Mnkandla E. (2020) Quantitative Analysis of the Scrum Framework. In: Przybyłek A., Morales-Trujillo M. (eds) Advances in Agile and User-Centred Software Engineering. LASD 2019, MIDI 2019. Lecture Notes in Business Information Processing, vol 376. Springer, Cham. https://doi.org/10.1007/978-3-030-37534-8_5
+
<ref name=Moving>Takeuchi, Hirotaka; Nonaka, Ikujiro, ''"The New New Product Development Game".'' Harvard Business Review January-February (1986) </ref>Takeuchi, H., Nonaka, (1986) The new new product development game. Harvard Bus. Rev. 64, 137–146
  
<ref name=Lárusdóttir> Lárusdóttir M., Cajander Å., Erlingsdottir G., Lind T., Gulliksen J, ''"Challenges from Integrating Usability Activities in Scrum: Why Is Scrum so Fashionable?".'' Integrating User-Centred Design in Agile Development. Human–Computer Interaction Series. Springer,(2016) </ref>Lárusdóttir M., Cajander Å., Erlingsdottir G., Lind T., Gulliksen J. (2016) Challenges from Integrating Usability Activities in Scrum: Why Is Scrum so Fashionable?. In: Cockton G., Lárusdóttir M., Gregory P., Cajander Å. (eds) Integrating User-Centred Design in Agile Development. Human–Computer Interaction Series. Springer, Cham. https://doi.org/10.1007/978-3-319-32165-3_10
+
<ref name=Manifesto> http://agilemanifesto.org/ </ref> Agile Manifesto for Software development: http://agilemanifesto.org/  
  
 +
<ref name=Castillo> F. Castillo, ''"Agile-Scrum Project Management".'' Managing Information Technology, Springer (2016) </ref>Castillo F. (2016) Agile-Scrum Project Management. In: Managing Information Technology. Springer, Cham. https://doi.org/10.1007/978-3-319-38891-5_8
  
<ref name=Weinreich > Weinreich R., Neumann N., Riedel R. and Müller E., ''"Scrum as Method for Agile Project Management Outside of the Product Development Area".'' Innovative Production Management Towards Sustainable Growth, Springer, vol 459, (2015) </ref>Weinreich R., Neumann N., Riedel R., Müller E. (2015) Scrum as Method for Agile Project Management Outside of the Product Development Area. In: Umeda S., Nakano M., Mizuyama H., Hibino N., Kiritsis D., von Cieminski G. (eds) Advances in Production Management Systems: Innovative Production Management Towards Sustainable Growth. APMS 2015. IFIP Advances in Information and Communication Technology, vol 459. Springer, Cham. https://doi.org/10.1007/978-3-319-22756-6_69
+
<ref name=PMBOK> Project Management Institute, Inc., ''"Guide to the Project Management Body of Knowledge".'' Project Management Institute, Inc (PMI), 6. edition (2017) </ref> Project Management Institute, Inc., ''"Guide to the Project Management Body of Knowledge".'' Project Management Institute, Inc (PMI), 6. edition (2017)
  
<ref name=Bianco> Bianco C, ''"Agile and SPICE Capability Levels".'' Communications in Computer and Information Science, Springer, vol 155 (2011) </ref>Bianco C. (2011) Agile and SPICE Capability Levels. In: O’Connor R.V., Rout T., McCaffery F., Dorling A. (eds) Software Process Improvement and Capability Determination. SPICE 2011. Communications in Computer and Information Science, vol 155. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-21233-8_16
+
<ref name=Troels> Troels Jakobsen, ''"Scrum Done Right".'' Lean Agile Ltd, 1st edition(2019) </ref> Troels Jakobsen, ''"Scrum Done Right - Learn Agile Software Development".'' Lean Agile Ltd, 1st edition (2019)
  
Schwaber K. and Sutherland J, (2020) The Scrum Guide - The Definitive Guide to Scrum: The rules of the Game. Creative Commons. https://www.scrumguides.org/index.html.
+
<ref name=Rossberg> Rossberg J., ''"Introduction to Scrum and Agile Concepts".'' Agile Project Management with Azure DevOps, Berkeley (2019) </ref> Rossberg J. (2019) Introduction to Scrum and Agile Concepts. In: Agile Project Management with Azure DevOps. Apress, Berkeley, CA. https://doi.org/10.1007/978-1-4842-4483-8_3
  
Lárusdóttir M., Cajander Å., Erlingsdottir G., Lind T., Gulliksen J. (2016) Challenges from Integrating Usability Activities in Scrum: Why Is Scrum so Fashionable?. In: Cockton G., Lárusdóttir M., Gregory P., Cajander Å. (eds) Integrating User-Centred Design in Agile Development. Human–Computer Interaction Series. Springer, Cham. https://doi.org/10.1007/978-3-319-32165-3_10
+
<ref name=Weinreich> Weinreich R., Neumann N., Riedel R. and Müller E., ''"Scrum as Method for Agile Project Management Outside of the Product Development Area".'' Innovative Production Management Towards Sustainable Growth, Springer, vol 459, (2015) </ref> Weinreich R., Neumann N., Riedel R., Müller E. (2015) Scrum as Method for Agile Project Management Outside of the Product Development Area. In: Umeda S., Nakano M., Mizuyama H., Hibino N., Kiritsis D., von Cieminski G. (eds) Advances in Production Management Systems: Innovative Production Management Towards Sustainable Growth. APMS 2015. IFIP Advances in Information and Communication Technology, vol 459. Springer, Cham. https://doi.org/10.1007/978-3-319-22756-6_69
  
Castillo F. (2016) Agile-Scrum Project Management. In: Managing Information Technology. Springer, Cham. https://doi.org/10.1007/978-3-319-38891-5_8
+
<ref name=Hanslo> Hanslo R. and Vahed A., Mnkandla E., ''"Quantitative Analysis of the Scrum Framework".'' Przybyłek A., Morales-Trujillo M. (eds) Advances in Agile and User-Centred Software Engineering, Business Information Processing, Springer Volume 376, (2020) </ref>Hanslo R., Vahed A., Mnkandla E. (2020) Quantitative Analysis of the Scrum Framework. In: Przybyłek A., Morales-Trujillo M. (eds) Advances in Agile and User-Centred Software Engineering. LASD 2019, MIDI 2019. Lecture Notes in Business Information Processing, vol 376. Springer, Cham. https://doi.org/10.1007/978-3-030-37534-8_5
  
Rossberg J. (2019) Introduction to Scrum and Agile Concepts. In: Agile Project Management with Azure DevOps. Apress, Berkeley, CA. https://doi.org/10.1007/978-1-4842-4483-8_3
+
<ref name=Bianco> Bianco C, ''"Agile and SPICE Capability Levels".'' Communications in Computer and Information Science, Springer, vol 155 (2011) </ref>Bianco C. (2011) Agile and SPICE Capability Levels. In: O’Connor R.V., Rout T., McCaffery F., Dorling A. (eds) Software Process Improvement and Capability Determination. SPICE 2011. Communications in Computer and Information Science, vol 155. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-21233-8_16
  
Weinreich R., Neumann N., Riedel R., Müller E. (2015) Scrum as Method for Agile Project Management Outside of the Product Development Area. In: Umeda S., Nakano M., Mizuyama H., Hibino N., Kiritsis D., von Cieminski G. (eds) Advances in Production Management Systems: Innovative Production Management Towards Sustainable Growth. APMS 2015. IFIP Advances in Information and Communication Technology, vol 459. Springer, Cham. https://doi.org/10.1007/978-3-319-22756-6_69
+
<ref name=AgileReport> Vision One, ''"14th annual State of Agile Report".'' https://stateofagile.com/?_ga=2.1847793.1975269652.1614501418-1195485270.1614501418#ufh-i-615706098-14th-annual-state-of-agile-report/7027494, (2020) </ref> Vision One,''"14th annual State of Agile Report"'', https://stateofagile.com/?_ga=2.1847793.1975269652.1614501418-1195485270.1614501418#ufh-i-615706098-14th-annual-state-of-agile-report/7027494 (2020)
  
Bianco C. (2011) Agile and SPICE Capability Levels. In: O’Connor R.V., Rout T., McCaffery F., Dorling A. (eds) Software Process Improvement and Capability Determination. SPICE 2011. Communications in Computer and Information Science, vol 155. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-21233-8_16
+
<ref name=Lárusdóttir> Lárusdóttir M., Cajander Å., Erlingsdottir G., Lind T., Gulliksen J, ''"Challenges from Integrating Usability Activities in Scrum: Why Is Scrum so Fashionable?".'' Integrating User-Centred Design in Agile Development. Human–Computer Interaction Series. Springer,(2016)</ref> Lárusdóttir M., Cajander Å., Erlingsdottir G., Lind T., Gulliksen J. (2016) Challenges from Integrating Usability Activities in Scrum: Why Is Scrum so Fashionable?. In: Cockton G., Lárusdóttir M., Gregory P., Cajander Å. (eds) Integrating User-Centred Design in Agile Development. Human–Computer Interaction Series. Springer, Cham. https://doi.org/10.1007/978-3-319-32165-3_10

Latest revision as of 10:16, 28 February 2021

Developed by Sana Ilyas, DTU (s192815)


Scrum is an Agile framework that "helps people, teams and organizations generate value through adaptive solutions for complex problems" [1]. The word Scrum originates from rugby to describe a formation of players in a complex game. It was later introduced in the context of product development by Hirotaka Takeuchi and Ikujiro Nonaka in 1986 to increase speed and flexibility by implementing a cross functional team that worked in overlapping phases [2].

Taking inspiration from this formation, Scrum framework is founded on empiricism, proclaiming that knowledge is derived from experience and decision making based on the observed, and Lean thinking which is designed to reduce waste and focus on the essential [1]. Together with the Agile manifesto [3] , Scrum framework encourages iterative and incremental practices to deliver working software in dynamic environments. Unlike traditional Waterfall mythodology, Scrum encourages not to have a defined scope but iteratively decide scope as the project progresses, and to actively work in cross-functional teams while regularly integrating end-users and/or stakeholders in order to constantly validate and prioritize outputs of the processes. Comparing the two methodologies using the Iron triangle, Waterfall have a fixed scope and quality to be delivered while Scrum have a fixed time for when the project should finish along with a fixed cost in terms of resources allocated[4] [1]

Project management tool: Scrum framework is a project management tool and can be viewed as a project life cycle, which is defined as follows in the PMBOK guide: "A project life cycle is the series of phases that a project passes through from its start to its completion. It provides the basic framework for managing the project. This basic framework applies regardless of the specific work involved. The phases may be sequential, iterative, or overlapping."[5]. Scrum is an incremental project management mythodology where input, output and techniques are constantly evaluated and validated throughout the process using the same framework (tool).

Before implementing the Scrum framework, the team must consider whether the following pre-requisites is suitable for their team:

  • Scrum require an Agile mindset where flexibility, honesty and communication are at the center. Accepting the Agile manifesto means the lack of detailed workplans, rapid and frequent changes in scope and procedures which can be a big change of mindset and the way a team works[6].
  • The project team must agree upon commitment to Scrum pillars and values (see section below).


Contents

[edit] Scrum overview

In order to understand and implement Scrum, the team must understand the 3 pillars and 5 values that serves as a roadmap for Scrum:

3 pillars of Scrum[7]:

  • Transparencyis an important pillar of the Scrum setup where the outcome and process are visible and clear to stakeholders involved in the project in order for them deliver what is agreed and to give feedback and approve the outcome.
  • Inspection is done frequently to avoid undesirable variances in the process and deliverable thus meeting the fixed release date.
  • Adaption refers to the ability to adjust to change in processes, scope or any relevant change discovered during inspection. By adjusting to change as soon as possible, the team minimize further deviation going forward .

5 Values of Scrum [6]

  • Commitment - Commitment to Scrum principles, common goals and team
  • Focus - Focus on what is required to accomplish the goals and improving the setup to increase effectivity and efficiency
  • Openeness - Being open and comfortable in the team and open to change
  • Respect - Respect for each other and the goals within a sprint
  • Courage - Courage to explore new solutions, making mistakes and challenging the status quo


[edit] Scrum Framework

Figure 1: Scrum Sprint (inspired by Troels et al., (2019)[6]

Sprint: In a Scrum setup, the project is divided into short iterative cycles called sprints that can vary in duration from weeks to months. Here, the focus lies on development of features in the Sprint Backlog to reach the Sprint goal. The output of a Sprint is partial product deliverable(s)/feature(s) called increment(s) that together form a possible shipable product. Although not all product features must be incorporated at the end of a sprint, the increments should be sufficient enough to be released as a functioning product[4].

Note: A sprint can result in 1 or more increments, depending on the size and complexity of the Sprint backlog and team velocity (number of stories or tasks the team can handle in 1 sprint).

  • Length: typically 1 week - 1 month (2 weeks recommended). Sprints lasting more than 1 month makes it difficult to make nimble adjustments and deploy working software [6]
  • Owner: Product owner - The Product owner have the authority to cancel an upcoming or ongoing sprint if the Sprint goal is no longer valueable
  • Outcome: Product increment that can potentially be relased

Product backlog and Sprint backlog: All project requirements are gathered in the Product backlog in the form of user stories which is to be defined, prioritized and developed during the project. For each sprint, selected features/user stories are transferred to the Sprint backlog by the Scrum team and developed during the current sprint. Each user story is further sub-divided into smaller and more detailed items called tasks. To keep track of user stories and the progress of tasks, a Scrum board is used. It visualizes the user stories and the tasks for the current sprint and their development from Backlog to Work in progress (WIP) to done (figure 2). Through self management, the team assign tasks to each member and how this task is solved most efficiently. The responsibility for reducing the the sprint backlog relies on the entire team. In scrum mythodology, this is refereed to as "owning" the sprint backlog[4] [1] [7] [8].

  • Size: Depends on the project[7]
  • Owner: PO owns Product backlog and Development team owns Sprint backlog[7]
  • Outcome: Product Backlog containing all user stories to be developed in the entire project (with subject to change) and Sprint backlog containing user stories for the upcoming sprint[6]

[edit] Scrum Team and roles

The Scrum team is a (small) cross-functional team consisting of necessary resources - typically 10 or fewer people since smaller teams has proven to be more productive and have better communication[1]. Unlike many traditional teams, no hierarchy exist in the Scrum Team and they are self-managing meaning, that the team decide how to design, build, test and deliver the user stories [1][6]

Following roles and associated responsibilities are assigned to members:

Product Owner (PO): The product owner represents the voice of the customer. He/she plays a big role in maximizing value throughout the project and therefore "owns" the Product Backlog. PO responsibilities can be summarized as follows: [7][1][6]:

  • Owns Product backlog: By taking ownership of the Product backlog, the PO is responsible for translating customer needs and ideas into features also called user stories that is put into the backlog. To do so, the PO needs to 1) express backlog items clearly to ensure that the development team understand what needs to be done 2) Get a user story ready for development together with the development team (clarifying and adding important details to user stories that are nessacary for the developers before they can initiate the development) 3) prioritize user stories to meet the overall objective of the project including Product Goal.
  • Communication: The PO should be able to communicate with stakeholders outside the team and work closely with the team to ensure alignment between what is expected and developed.
  • Accepting or rejecting output: When an increment or user story is developed, it is the PO's responsibillity to either reject or accept it based on acceptence criterias. Acceptence criterias for each user story are often formed in collaboration with the developers and describes the functional requirements related to the story that must be fulfilled before it becomes a shippable product.

Development team: The development team usually consist of 5-9 people where each member is referred to as a developer[9]. Their collective responsibility is to work on user stories in the Sprint backlog hence deliver value to the customer. The composition of the developers reflects resources required to complete the tasks, thus it can be different professions such as designers, engineers, testers, analysts etc. [9] The development team responsibilities can be summarized as follows:

  • Owns the Sprint Backlog: The development team is self-organized and accountable for creating an execution plan for user stories in the Sprint backlog and adapting their plan if necessary in order to reach Sprint goal while bringing value and quality in their tasks[1].
  • Defining the "Definition of done" (DoD): The Definition of Done can be viewed as a formal agreement between the developers and PO that states "what requirements, in addition to the user story's acceptance criteria, you need to fulfill to be done with the story"[7]. In other words, it describes the requirements for when an user story in the backlog is completed and ready to be delivered to the customer [10]
  • Work cross-functional: It is encouraged that developers do not claim an area of expertise and stick to that. Ideally, every developer should be able to perform different tasks thus being involved in every aspect of the development process. This will prevent bottlenecks and hierachies in the team[6]

Scrum Master (SM): The Scrum Master acts like a facilitator of the Scrum setup including the PO and the Development team. They are often referred to as "servant leader" of the team meaning that they lead by serving the team and being supportive, thus focusing on leadership instead of management[5]. This entails keeping track of timelines, deadlines and keeping the team motivated without micro-management[6]. The Scrum master responsibilities can be summarized as follows:

  • Serving the Scrum framework: Promoting, establishing and maintaining the agile scrum best practices and rules within the team thus ensuring that the framework is implemented and used effectively[1]. Practically, this is done by moderating Scrum events eg. Sprint planning, daily scrum etc. and being available to any kind os support needed by the Scrum Team [8].
  • Serving the PO: To make sure that the Product backlog is clear, the SM facilitate the PO with Product Goal definition and management and subsequently help the Scrum Team understand the items within the backlog. If needed, the Scrum Master can facilitate stakeholder collaboration[1].
  • Serving the Development team: The SM helps coaching the team in how to work as a cross functional and self-organizing team. Additionally, the SM facilitate in value creation and efficiency of the team by removing obstacles in their way and ensuring productive Scrum events [1].

[edit] Scrum application for Software development

[edit] Step 1: Create a Product backlog

The first step is to create a Product Backlog with relevant stakeholders. This can be done in different ways, 1 way could be as follows:

  1. Plan a workshop where key stakeholders brainstorm ideas. Example of key stakeholders could be: end-users, experienced developers, business analysts, customer etc. Here you focus on the bigger picture and do not go into details.
  2. Brainstorming results are then converted into user stories (see example below)
  3. User stories are prioritized, typically by the PO. Prioritization can be done based on associated risks to each story and/or the business needs related to the project[7].

Link between User stories and Acceptence criteria

User story 1: As a "type of user", I want "a functionality", so I may have "a business value[7]

Example: As a user, I want to log into the system using my login so that I can see an overview of my expenses.

Note: 1) User stories do not contain details about functions and implementation 2) You can add user stories throughout the project and adjust stories if needed.

Acceptence criteria: Before "User story" can be marked as done, "scenarios or test" must be validated[6].

Example: Before "User story 1" can be marked as 'done', username and code bar along with a 'forgotten password' botton must be validated.

Note: there can be more than 1 acceptence criteria for 1 user story.

[edit] Step 2: Sprint planning

Sprint planning is the first activity and typically lasts 4 hours (for a 30-day sprint) requiring the presence of the whole Scrum team. Here, you address/decide the following[1][6]:

  1. Changes to Product backlog since last Sprint
  2. Sprint goal for the upcoming Sprint.
  3. User stories to work on during the Sprint. PO and developers collaborate facilitated by SM to select user stories from the Product backlog into the Sprint backlog (with team velocity in mind) along with Acceptence criterias for each story.
  4. Decide how the team intend to work on the user stories. Developers further breakdown user stories into tasks and plan how to complete these tasks so they meet the Definition of Done. This step do not require PO collaboration.
  5. PO accepts the plan.

Input: Product backlog, team velocity, current product status and constraints[6]

Output: Updated Product backlog, Sprint backlog and Sprint goal[6]

[edit] Step 3: The Sprint and Daily Scrum

Activities taking place during a typical Sprint[6]:

  • User stories in the Sprint backlog are developed and marked as "done" based on the Definition of done
  • Product Backlog refinement: PO and the development team constantly refine and update Product backlog.
  • Changes in workflows and cross-functional collaboration to reach Sprint goal.

3.1 Daily Scrum meetings: Daily Scrum meetings are - as the name indicate - held every day for 15 min at the same time and place, typically in the beginning of the day to reduce complexity [1]. The purpose of this meeting is to give a quick status of the progress toward the Sprint goal and provide visibility and alingment between the members and the sprint goal[11][6]. Every member answer the following questions[6]:

  1. What did you do yesterday?
  2. What are you doing today?
  3. Do you have any roadblocks preventing you from accomplishing what you need to do?
Figure 2: Scrum Board(inspired by Castillo et al., (2016)[4])

Impediments can be solved together with the SM. If needed, an action plan is defined and the issue is escalated within the organization to seek help outside the team.[11][6]

Note: PO is not obligated to participate in every Daily Scrum. A PO typically belongs to another department eg. Sales, Marketing etc. and are therefore busy with other tasks besides being a PO for the team. However, they should prioritize this meeting to the best of their abillity[6].

3.2 Scrum board : To visualize the user stories and their work status, a Scrum board can be applied (figure 2). This creates transparency and helps the team to keep track of each task. A Scrum board can be customized to the teams need but typically contain the columns Backlog, Work in Progress (WIP) and Done. It is recommended to divide WIP into subsections to keep track of the different phases of development[6]. The Backlog section contains all tasks related to the user story. As the tasks is assigned to a developer, it is transferred to WIP. When the developer has completed the task by fulfilling criterias in DoD, including Acceptence criterias, the task is evaluated by the PO and put into the section "Done".

Daily Scrum Output: Plan for the day, any obstacles have been adressed[6]

[edit] Step 4: Sprint Review

At the end of each Sprint, there is a Sprint review that typically lasts 3 hours (for a 1 month sprint) where the Sprint increments are reviewed. Here, you do the following[4] [7][6]:

  1. Development team presents and/or demonstrate their work to the PO and other relevant stakeholders.
  2. Based on the results presented by the development team, the PO discuss and decide which user stories from the Sprint backlog are "done" according to the Acceptance criteria
  3. PO and stakeholders give valueable feedback which are discussed with the development team. This is a crucial step since the PO and stakeholders are able to see the prototype and therefore give better feedback of what features they would like to keep and remove for further development[9].
  4. Items from current Sprint backlog that are market as "done" becomes a part of the Increment while items that needs further improvement/development (either by developers or PO), are put back into the Product backlog for next Sprint or refinement.

Output: Learnings from previous sprint that need to be adressed in the coming sprint[6]

[edit] Step 5: Sprint Retrospective

Here, the Scrum team reflect upon the completed Sprint in order to increase quality and effectiveness of the team and Scrum framework going forward[9][1]. For 1 month sprint, this meeting is typically set to maximum 3 hours. Some guiding questions could be[7]

  1. What went well during the sprint?
  2. What problems did the team encounter and how were they dealt with?
  3. What could be improved during the next sprint? including optimization of interactions, processes and tools [1]

Output:1-3 action items to focus on in the coming sprint[6]

[edit] Limitations and challenges

Agile practices is becoming more and more popular and it is expected to grow in the future [12]. The reasons for adopting Agile were investigated in a survey conducted by Viosion One in 2020[12]. Here, the top reasons were: "Accelerate Software Delivery" (71%), "Enhance ability to manage changing priorities" (63%), "Increase productivity" (51%), and "Improve business/IT alignment" (47%). Likewise, the benefits of adopting agile were investigated among the respondants, giving the top benefits: "Ability to manage changing priorities" (70%), "Project visibility" (65%), "Business/IT alignment" (65%) and "Delivery speed/Time to market" (60%).

However, here are some limitations and challenges related to the framework:

  • Having a core team: In order for the Scrum framework to work, it must be implemented in a core team with limited to no change in roles and quantity. This is due to the collaborative nature of the framework along with the importance of alignment, minimal documentation and cross-functionality of the team[6].
  • Agile culture: The Scrum Framework will not bring the intended benefit if the team do not subscribe to the Agile meninifesto and its 12 principles [3]
  • Scrum is not intended for multipurpose projects (projects with severel product development outcomes) which requires many different people/resources to be involved. Instead, managers can implements elemets of Scrum eg. implementing a Kanban board or consider other more suitable tools such as SAFe (Scaled Agile framework) or PRINCE2[6].
  • Having fixed cost, time and demands (including scope) deprive agile development, The developers are (often) solving an unique problem and therefore need a significant degree of freedom to solve it. Otherwise, consider PRINCE2[6].
  • Scrum do not in particular tell you how to prioritize, estimate or plan. Eg. figuring out how many hours each tasks requires includuing team velocity is to be determined by the team[7].

[edit] Bibliography

Troels Jakobsen, "Scrum Done Right - Learn Agile Software Development". Lean Agile Ltd, 1st edition (2019)

This guide provide an excellent description and overview of all the artifacts, roles and activities in Scrum and were especially developed for Scrum Masters as reference work.

Hanslo R., Vahed A., Mnkandla E. (2020) Quantitative Analysis of the Scrum Framework. In: Przybyłek A., Morales-Trujillo M. (eds) Advances in Agile and User-Centred Software Engineering. LASD 2019, MIDI 2019. Lecture Notes in Business Information Processing, vol 376. Springer

This study performs a quantitative analysis of the Scrum Framework using The Spearman collerelation analysis in South African organizations. Of the 14 factors studied, the 3 factors: Sprint Management, Complexity and Relative advantage have shown to have a statistically significant relation with Scrum adoption. This study can be used to gain more knowledge about factors that affect Scrum adoption.

Hron, M., and Obwegeser N., (2018) Scrum in practice: an overview of Scrum adaptions. 51st Hawaii International Conference on System Sciences (HICSS 2018), Curran Associates, Inc., p. 5445-5454.

This study provide an overview of the proposed adaptions and their implications by augmenting or combining the Agile software development practices with other tools and methods. However, this study only covers 31 studies after a filtering process.

[edit] References

[1]Schwaber K. and Sutherland J, (2020) The Scrum Guide - The Definitive Guide to Scrum: The rules of the Game. Creative Commons. https://www.scrumguides.org/index.html.

[2]Takeuchi, H., Nonaka, (1986) The new new product development game. Harvard Bus. Rev. 64, 137–146

[3] Agile Manifesto for Software development: http://agilemanifesto.org/

[4]Castillo F. (2016) Agile-Scrum Project Management. In: Managing Information Technology. Springer, Cham. https://doi.org/10.1007/978-3-319-38891-5_8

[5] Project Management Institute, Inc., "Guide to the Project Management Body of Knowledge". Project Management Institute, Inc (PMI), 6. edition (2017)

[6] Troels Jakobsen, "Scrum Done Right - Learn Agile Software Development". Lean Agile Ltd, 1st edition (2019)

[7] Rossberg J. (2019) Introduction to Scrum and Agile Concepts. In: Agile Project Management with Azure DevOps. Apress, Berkeley, CA. https://doi.org/10.1007/978-1-4842-4483-8_3

[8] Weinreich R., Neumann N., Riedel R., Müller E. (2015) Scrum as Method for Agile Project Management Outside of the Product Development Area. In: Umeda S., Nakano M., Mizuyama H., Hibino N., Kiritsis D., von Cieminski G. (eds) Advances in Production Management Systems: Innovative Production Management Towards Sustainable Growth. APMS 2015. IFIP Advances in Information and Communication Technology, vol 459. Springer, Cham. https://doi.org/10.1007/978-3-319-22756-6_69

[9]Hanslo R., Vahed A., Mnkandla E. (2020) Quantitative Analysis of the Scrum Framework. In: Przybyłek A., Morales-Trujillo M. (eds) Advances in Agile and User-Centred Software Engineering. LASD 2019, MIDI 2019. Lecture Notes in Business Information Processing, vol 376. Springer, Cham. https://doi.org/10.1007/978-3-030-37534-8_5

[11]Bianco C. (2011) Agile and SPICE Capability Levels. In: O’Connor R.V., Rout T., McCaffery F., Dorling A. (eds) Software Process Improvement and Capability Determination. SPICE 2011. Communications in Computer and Information Science, vol 155. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-21233-8_16

[12] Vision One,"14th annual State of Agile Report", https://stateofagile.com/?_ga=2.1847793.1975269652.1614501418-1195485270.1614501418#ufh-i-615706098-14th-annual-state-of-agile-report/7027494 (2020)

[13] Lárusdóttir M., Cajander Å., Erlingsdottir G., Lind T., Gulliksen J. (2016) Challenges from Integrating Usability Activities in Scrum: Why Is Scrum so Fashionable?. In: Cockton G., Lárusdóttir M., Gregory P., Cajander Å. (eds) Integrating User-Centred Design in Agile Development. Human–Computer Interaction Series. Springer, Cham. https://doi.org/10.1007/978-3-319-32165-3_10


Cite error: <ref> tags exist, but no <references/> tag was found
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox