Scrum is one of the most popular agile frameworks in use today and rightly-so because it is widely adopted by software and non-software development teams alike. If you want to master scrum you need an end-to-end understanding of this framework. This comprehensive agile scrum tutorial is designed to help you dive deeper into several aspects of Scrum.
Join our CSM Training today and get certified!
Introduction to Agile: What is Agile Development?
Agile is a mindset, a philosophy, more like a way of thinking, a movement focusing on communication, team-thinking, intrinsic motivation, innovative talks, flow, and value creation while developing a product.
At its core, Agile is a set of principles for actions that keep a software development team organized and efficient. Agile started when in 2001, a team of software developers got together in Utah for a weekend of fun and discussion. They compiled their views and principles into a document that is easy to understand and apply. Which we refer to as Agile Manifesto.
What is Scrum?
The official Scrum Guide defines scrum as:
“A framework within which people can address complex adaptive problems, while productively and creatively delivering products of the highest possible value.”
In simple terms, Scrum is a lightweight agile framework that can be used to manage iterative and incremental projects of different types. The concept here is to break large complex projects into smaller stages, reviewing and adapting along the way. With scrum you:
- Write fewer plans and do more in short iterations or cycles that we call sprints
- Work as one dedicated and committed team, instead of working on separate groups
- Constantly deliver functioning products at the end of each sprint
- Receive continuous feedback from your customers and improvise your product
So, scrum is a flexible way of working on any kind of projects in this rapidly changing world. But that still leaves a lot of questions about the Scrum Framework. If you want to ask your questions from experts, you can check out CSM Certification by Edureka. The first step is to drill down a bit further into Scrum’s origins and history.
History of Scrum
The term “scrum” was first introduced by two professors Hirotaka Takeuchi and Ikujiro Nonaka in the year 1986, in Harvard Business Review article. There they described it as a “rugby” style approach to product development, one where a team moves forward while passing a ball back and forth.
Software developers Ken Schwaber and Jeff Sutherland each came up with their own version of Scrum, which they presented at a conference in Austin, Texan in 1995. In the year 2010, the first publication of official scrum guide came out. Since then, scrum has found application in a lot of domains.
Uses of Scrum
Scrum has been used extensively, worldwide, to:
- Develop software, hardware, embedded software, a network of interacting function, etc
- Research and identify viable markets, technologies, and product capabilities
- Develop products and enhancements
- Release products and enhancements very frequently
- Develop and sustain cloud environments for product use
- Sustain and renew products
Now that we are aware of various applications of scrum framework let’s go ahead and discuss what scrum is actually based on.
Scrum Theory
Scrum was founded based on empirical process control theory, or empiricism. Empirical process control relies on the three main ideas: transparency, inspection, and adaptation.
- Transparency allows every aspect of the Scrum process to be observed by everyone involved
- Inspection is depicted through Scrum board, by collecting feedback, etc
- The team learns through transparency & inspection and then adapt by making improvements in the work they are doing
With empirical process control, you don’t fix the scope of the product nor the processes of how to build it. Instead, you create a small shippable piece of product in short cycles, inspect what and how you create it and adapt the product and the way you build it, with built-in mechanisms for transparency to enable clear inspection.
In addition to this Scrum added 5 values to the framework that each member of the team uses to guide his decision making. In the next part of this ‘Agile Scrum Tutorial’ let’s check out what those values are.
Scrum Values
Five values that are the foundation for a Scrum team’s processes and interactions are:
- Focus – Everyone focuses on the work of the sprint and the goals of the Scrum Team
- Courage – Scrum Team members have the courage to do the right thing and work on tough problems
- Respect – Scrum Team members respect each other to be capable, independent people
- Commitment – People personally commit to achieving the goals of the Scrum Team
- Openness – The Scrum Team and its stakeholders agree to be open about all the work and the challenges with performing the work
You might have noticed that I have used the term ‘Scrum Team’ a lot of times till now. So, who exactly does the scrum team comprise of? What exactly does scrum sprint mean? What events does it involve? Who are the people involved in the Scrum Framework? Let’s check it out in the next part of this ‘Agile Scrum Tutorial’.
People & Parts of Scrum Framework
The Scrum Framework is made of three distinct categories, which are:
- Scrum Roles
- Events in Scrum
- Scrum Artifacts
Let’s check out each of these.
Scrum Roles
There are three distinct roles defined in Scrum:
Product Owner
The Product Owner is responsible for the work the team is supposed to complete. The main role of a product owner is to motivate the team to achieve the goal and the vision of the project. Roles & Responsibilities of the product owner include:
- Managing the product backlog & making sure that it is visible, transparent, and clear
- Guiding the team to achieve the best goals and missions
- Progressing the value of the work done and making rational decisions
- Collaborating with the development team and stakeholders
- Managing team economics and actively participate in meetings
Scrum Master
The Scrum Master ensures that all the team members follow scrum’s theories, rules, and practices. They make sure the Scrum Team has whatever it needs to complete its work, like removing roadblocks that are holding up progress, organizing meetings, dealing with challenges and bottlenecks. He serves the product owner, the development team and the entire organization.
Most important responsibilities of a scrum master include:
- To makes sure that the goals and scope of the project are understood by everyone involved
- Remove impediments & obstacles that could slow down the team’s progress
- Guide the team and product owner to improve the effectiveness of their practices
- Makes changes to increase the productivity of the scrum team
- Facilitate Scrum events when requested and needed
- Helps stakeholders and employees understand scrum empirical theory
Development Team
The Development Team(Scrum Team) is a self-organizing and a cross-functional team, working together to deliver products. Scrum development teams are given the freedom to organize themselves and manage their own work to maximize the team’s effectiveness and efficiency. Roles & Responsibilities of the product owner include:
- Plan the sprint with guidelines from the product owner and scrum master
- Perform sprint execution and adapt the sprint according to changing user requirements
- Help product owner groom the product backlog
- Inspect and adapt the product & process
Now that you have an idea of what scrum is and the people involved, its time to learn about different events that occur during the scrum process. In the next part of this ‘Agile Scrum Tutorial’ let’s check out what those events are.
Events in Scrum
In particular, there are four events that you will encounter during the scrum process. But before we proceed any further you should be aware of what sprint is.
Sprint – A scrum sprint basically is a specified time period during which a Scrum Team produces a product. It forces prioritization, demonstrates progress, avoids unnecessary perfections, motivates closure, improves predictability and improves the return of investment.
The four events or ceremonies of Scrum Framework are:
Scrum Planning
It is a meeting where the work to be done during a sprint is mapped out and the team members. During this meeting, the entire team clearly defines deliverables for the Sprint and assigns the work necessary to achieve that goal. It is an event where you can get answers to the following questions:
What can be delivered in this Sprint iteration?
How to achieve that work?
Once the entire team agrees on the product backlog items and sets the Sprint goal, the development team starts developing the functionality. It does so by designing the system and the work needed to convert the Product Backlog into a working product Increment. By the end of sprint planning, the development team should be able to explain how it is going to accomplish the Sprint Goal.
Daily Scrum
Also known as a stand-up, it is a 15-minute daily meeting where the team has a chance to get on the same page and put together a strategy for the next 24 hours. The entire daily scrum meeting is based on discussing three-question listed below:
- What was done yesterday by the scrum team that helped meet the sprint goal?
- What will be done today that will help meet the sprint goal?
- Are there impediments that are preventing the team from meeting the sprint goal?
Sprit Review
During the sprint review, product owner explains what the planned work was and what was not completed during the Sprint. The team then presents completed work and discuss what went well and how problems were solved. Here are some important points related to scrum review:
- Sprint Review meeting is held at the end of each sprint
- It doesn’t have a fixed time frame. It lasts at most for 4 hours for a one-month sprint or can be shorter for shorter sprints
- The scrum team and the stakeholders collaborate and plan for the next sprint goal
- The team does research on the marketplaces and estimates the budget, potential capabilities, timeline, and marketplaces for the upcoming releases
Thus, keeping all these factors in mind, a revised Product Backlog is the result at the end of the Sprint Review Meeting.
Sprint Retrospective
During sprint retrospective, the team discusses what went right, what went wrong, and how to improve. They decide on how to fix the problems and create a plan for improvements to be enacted during the next sprint. Regardless of how good a Scrum team is, there is always room for improvement. A good Scrum team will always focus on continuous improvement opportunities which is usually discussed in the Sprint Retrospective Meeting.
To understand scrum properly, you need to be aware of the artifacts that are used during the scrum process. In the next part of this ‘Agile Scrum Tutorial’ let’s check out those artifacts in detail.
Scrum Artifacts
Artifacts are just physical records that provide project details when developing a product. Scrum Artifacts include:
Product Backlog
It is a simple document that outlines the list of tasks and every requirement that the final product needs. It is constantly evolving and is never complete. The Product Owner manages the Product Backlog, including how it’s made available to the scrum team, its content, and how it’s ordered, everything. The Product Owner and the rest of the scrum team work together to review the Product Backlog and make adjustments as and when necessary. For each item in the product backlog, you should add some additional information like:
- Description
- Order based on priority
- Estimate
- Value to the business
Sprint Backlog
It is the list of all items from the product backlog that need to be worked on during a sprint. Team members sign up for tasks based on their skills and priorities. It is a real-time picture of the work that the team currently plans to complete during the sprint. Here are some important points about sprint backlog:
- The sprint backlog is dynamic in nature because each scrum sprint has repeated changes to reach the goal
- It is the outcome of sprint planning meeting sessions
- The development team owns the sprint backlog and divides tasks according to their skills
- It is a highly visible, real-time picture of the work that the Development Team plans to accomplish
Product Increment
The most important artifact is the product improvement, or in other words, the sum of product work completed during a Sprint, combined with all work completed during previous sprints. Important point is that the increment must be in useable condition regardless of whether the Product Owner decides to release it.
Well, this covers all the terms that you might come across when working with Scrum Framework. But, how does the scrum actually work? Let’s check that out in teh next part of this ‘Agile Scrum Tutorial’.
How does a Scrum Process Work?
The image below roughly outlines hows a sprint in scrum works.
Step1: Scrum process begins with a product owner. Product Owner creates a product backlog, a list of tasks and requirements the final product needs. The important part is that product backlog must be prioritized.
Step2: The scrum team gets together for sprint planning, which is when the team decides together what to work on first from the product backlog. This subset of items from the product backlog becomes the sprint backlog.
Step3: During the sprint, the team meets to communicate progress and issues, this meeting is called the daily scrum. It is overseen by the scrum master who ensures that all the team members follow scrum’s theories, rules, and practices.
Step4: At the end of the sprint, the sprint review meeting is organized by the product owner. During the meeting, the development team demonstrates what they completed since the last sprint. Then the product owner gives information about what is remaining on the product backlog and estimated time to complete the project if needed.
Note: In scrum, at the end of each sprint, the team should have a functioning piece of the product to show for their work.
Step5: After the sprint review, the scrum team gathers-up in sprint retrospective meeting, where the team discusses what went well, what did not and if they could have done better. Might be a tech limitation is holding them back or a team member is overloaded with tasks. The team decides how to fix these problems and creates a plan for improvements to be enacted during the next sprint.
Step6: The cycle repeats for the remaining tasks in the product backlog. This goes on until either of the below-mentioned things happen:
- The deadline has been reached
- The budget is exhausted
- The product owner is satisfied with the final product
So, in a nutshell, that is how the Scrum Framework is used to produce a working piece of the product after every sprint. To conclude Scrum is a flexible way of working in a rapidly changing world. With Scrum, you’re not creating more work for yourself; you’re being more efficient with your time and work.
If you want to build a community of folks around you pursuing scrum, you must check the CSM Training in Delhi.
This brings us to the end of this Agile Scrum Tutorial. I have covered all the basics that you should be aware of if you are planning to use scrum methodology. Hope you are clear with all that has been shared with you in this article.
Make sure you are well versed with the Scrum terminology before you start using it.
Got a question for us? Please mention it in the comments section of this Agile Scrum Tutorial and we will get back to you as soon as possible. Alternatively, check out the Scrum master course by Edureka & get certified!