Before 2001, to develop software companies used to set a fixed duration and end-goal before starting the work.
It all worked in stages like from research to development to testing to delivery.
It moved only in the forward direction; there was no possibility of going back to the previous stage for alterations.
This is called the Waterfall approach, which is good for small duration projects but perilous for long term jobs due to a dynamic business environment.
Companies couldn’t afford to lose huge amounts of money and time by designing software which at the time of delivery can become obsolete due to continuous evolution in technology and other factors.
This is where the Agile Methodology came in, where instead of preparing the entire software in one go, it is continuously developed in small phases and evolved as per changing needs.
Hence software made through Waterfall Approach is a one time project, whereas software developed using the Agile approach is a continuous process.
Not digressing further, let’s come directly to the point.
What is Scrum?
As discussed above, it is an agile framework in which a product (software or anything) is developed and delivered in phases.
There are three key people in a scrum; the product owner, the development team, and the scrum master.
- The product owner shares the requirement
- The development team delivers those requirements
- The scrum master manages the overall process
Each phase has three processes — build, deliver, and learn. The development team builds and delivers to the product owner, later they receive feedback from the customers and other stakeholders.
The feedback is evaluated and worked upon in the next build process. This continuous delivery is called increment whereas the continuous building is called iteration.
For this reason, Scrum is referred to as an incremental and iterative approach. It gives the development team plenty of chances to get things right and is one of the most popular techniques of product development in today’s time.
Scrum and Sprint in Detail
Remember the phases we were talking about, these phases in Scrum are called Sprints. As shown in the figure below, each sprint has several parts which move circularly, meaning they occur one after the other.
The usual duration of a sprint ranges between a minimum of two weeks to a maximum of one month. However, it varies from one product to another based on the scrum team’s decision.
- What is a Product Backlog?
If you remember, we talked about a term called iteration that is the continuous building process.
The product backlog is nothing but the feedback of end customers and other stakeholders on the delivered increment.
This list of feedback is maintained and managed by the product owner. It is a crucial part as each sprint begins with the selection of tasks from the product backlog.
The product owner continuously updates the backlog with new jobs, and all the tasks are listed on a priority basis; the top item assigned a high priority and the last item with least.
- What is Sprint Planning and a Sprint Backlog?
Theoretically, sprint planning and a sprint backlog are two different parts of a scrum but both the processes are ordinarily completed together.
Sprint planning is a meeting called by the scrum master for the members of the scrum team.
They collectively select tasks from the product backlog to be performed during the sprint and estimate the time required for completing each task.
Technically, the development team has the first say in picking items from the product backlog but the product owner can make trade-offs by explaining the relevancy of certain item(s).
At this stage, the scrum team also sets a sprint goal involving decisions like what needs to be done, the process which will guide the work, resultant product increment, and similar things.
Once the goal is set and the sprint has started; it is never altered. If the sprint goal becomes obsolete, the sprint is canceled.
The final list of tasks collectively decided by the scrum team is known as a Sprint Backlog; Items in the backlog always complement the sprint goal.
Once a sprint starts, no one except the development team has the right to add more item(s) to the backlog. It is the scrum master’s job to protect the sprint backlog from external influence.
- What is Daily Scrum?
During the sprint, the development team and the scrum master meet daily for a 15-minute session to discuss the activities for the next 24-hours.
The everyday session is called the Daily Scrum which aims to improve communication, promote quick decision-making, optimize teamwork and performance, enhance the development team’s knowledge, and more.
It also helps in ensuring that the team will achieve the sprint goal.
- What is an Increment?
An increment is the delivery of something valuable to the product owner at the end of a sprint. If the team is working on developing software then it can mean a part of it.
The most crucial feature of an increment is that it should be done from the development team’s side; meaning it should be in a usable condition that provides value to the owner.
- What is a Sprint Review?
The sprint review is an exercise where the development team analyzes the concluded sprint like what went well, what problems were faced, and how they were solved. The product owner puts forward his points on item(s) completed and still due.
The process usually consists of a review on the timeline, budget, potential capabilities, and market for the next anticipated release of the product’s functionality.
From the sprint review, the scrum team scores input for the subsequent sprint planning.
- What is a Sprint Retrospective?
This stage marks the end of a sprint where the team inspects and adapts from the review. In simple words, the sprint team identifies the improvements to be implemented in the next sprint.
Over To You
This agile framework has proved to be a boon for the IT industry because it offers much-needed space for learning and adapting to the development team; keeping the end product competitive and relevant for the present.
We hope our detailed discussion on Scrum was able to sort out all your queries. If you feel we missed out something, then kindly let us know.