Scrum is a framework that embodies Agile and makes the principles a reality through a group of practices. It is algo, by far, the most popular Agile framework. It’s designed to help teams work tougher more effectively and efficiently, by providing a set of roles, events, and artifacts that facilitate collaboration and continuous improvement.
Scrum is a simplicity framework aligned with Agile values and principles emphasizing iterative and incremental delivery, with a focus on delivering value to the customer early and often.
The main benefits of Scrum are:
- Increase productivity and efficiency by breaking down work into smaller, more manageable pieces.
- Improve collaboration and communication within the team and with stakeholders.
- Ensure that we’re building the right thing by prioritizing features based on value to the customer.
- Deliver working software early and often, which reduces risk and provides feedback for continuous improvement.
- Adapt to changing requirements and priorities throughout the project, rather than sticking to a rigid plan.
Scrum can be explained following the 3-5-3 formation (which sounds a bit like a formation for a sports team, such as rugby):
- 3 Roles
- 5 Events (sometimes known as ceremonies)
- 3 Artifacts
- Product Owner: Conveys the message of the envisioned product and sets priorities for the team.
- Scrum Master: Coaches the team on Scrum the process and helps iterate towards a productive environment.
- Development Team Members: Self-organize to transform backlog items into a potentially releasable product increment.
- Sprint Planning: Commit to a set of defined work as a team for the upcoming sprint cycle. The end result is the Sprint Backlog.
- Daily Standup: Daily sync to share common understanding of the goals, coordinate the team effort, report on progress of work, and communicate problems and improvements.
- Sprint Review: Review what was completed during the sprint with all relevant stakeholders to collect feedback.
- Sprint Retrospective: Help teams reflect on their internal team process with the goal to continuously improve.
- Sprint: A time-boxed event that moves the team towards the goal set for that iteration and ends with reviewing the product increment.
- Product Backlog: Set of all baseline requirements prioritized for the team.
- Sprint Backlog: Subset of the Product Backlog that the team agreed to pull into the Sprint to work on.
- Product Increment: The most important artifact that is produced at the end of each Sprint.
The workflow of Scrum starts with a prioritization of the Product Backlog during the Sprint Planning between the Product Owner and Development Team to create the Sprint Backlog for the next Sprint. The Development Team holds daily stand-up meetings to monitor progress and identify obstacles, where the Scrum Master could help to. At the end of the iteration the Development team will show the Product Increment during a Sprint Review with the Stakeholders. Finally a Sprint Retrospective allows the Development Team to identify areas of improvement and reflect about their internal process.