What you should know about scrum
This article is a summary of learnings from a course I am taking on Udemy. I hope it helps anyone looking to understand scrum processes.
Scrum is a software development methodology that delivers value through an incremental and iterative approach. It is carried out with a scrum team. In this article, I will be discussing the different roles of members of a scrum team, scrum artefacts, events and scrum estimation.
Roles in a scrum team
There are 3 roles in a scrum team.
Scrum Master: A Scrum Master is responsible for implementing the scrum processes and removing obstacles for the development team. The role of a scrum master is emphasised in a team that’s new to scrum processes.
Product owner: The product owner is in charge of managing the product backlog and user stories
Scrum Development Team: This is made up of Analysts, Testers and Coders. It is on average made up of 5–7 members (+ or — 2)
Note: Scrum is a scalable system. It is possible to have multiple scrum teams which are managed through Scrum of scrums. This is preferred for managing larger teams rather than increasing the size of the team.
Scrum artefacts
Scrum artefacts are the information resources used by a scrum team to detail the product being developed. It includes documents required for a scrum team to operate effectively. The scrum process generally has less documentation than the waterfall approach simply because everything is less fixed and less planned out from the onset. However, Agile methodology still requires documentation for managing its information and because we are always learning new information in Scrum, the amount of documentation grows over time.
Examples of scrum artefacts are Product backlog, Sprint backlog, Workflow diagrams, Wireframes and Data mapping sheets.
User stories are the building blocks of the scrum methodology and its artefacts. A well-written user story must possess certain features. These features can be described using the ‘INVEST’ framework;
- Independent
- Negotiable
- Valuable
- Estimate
- Small
- Testable.
Burndown chart
The Burndown chart is another important scrum artefact. It is a graphical representation of the estimated work required to complete a sprint, the actual work being done in the sprint and the work rate of the scrum team during that sprint. A burndown chart is usually displayed using a line frequency chart but it can occasionally be represented as a bar chart.
A burndown chart may be a sprint burndown chart or a release burndown chart and it is the responsibility of the scrum master.
Scrum events
Scrum events are regular events performed by scrum teams. They are the more well-known aspect of the scrum agile methodology. Small startup teams often employ the daily scrum or standup session as an integral part of their management process.
Scrum events include Sprints, Sprint Planning, Daily Scrum, Sprint Review and Sprint Retrospective.
Sprint: A sprint is a short period of time within which a scrum team is to complete a set amount of work. Sprints usually last 2 to 4 weeks and should be organised such that at the end of it, a useful and testable product functionality is delivered.
Sprint planning: This is a meeting in which the Scrum team identifies all the relevant user stories required to deliver a product functionality for the sprint. The meeting should also determine the methods to be used to deliver the chosen functionalities. It is recommended that sprint planning meetings be 2 times the determined length of the sprint period in hours. (i.e a 3-week sprint should have a (3*2) 6-hour sprint planning meeting.)
Daily Scrum: The daily scrum is a daily check-in meeting conducted by the scrum team in order to ensure that work is progressing and that scrum team members are not encountering obstacles that could hinder timely delivery. It is the responsibility of the Scrum Master and Product Owner to be present at the daily scrum in order to help the scrum development team remove any blockers they may be experiencing
Sprint Review: This is an informal demonstration of all the completed backlog items in a sprint. It is for the scrum team to assess if it has completed all the user stories it set out to.
Sprint Retrospective: This meeting is used to identify opportunities for the scrum team to improve its performance and delivery for the next sprint. The sprint retro should explore the questions:
- What went well?
- What should be improved? and
- What will we commit to?
Scrum Estimation
Scrum estimation is the process of determining the cost of a sprint. It is done during a sprint planning meeting by the scrum team. The aim of scrum estimation is to calculate the value of requirements or user stories by determining the effort required to complete the story.
One method that can be used to accomplish this is the Planning Poker technique. In planning poker, each member of the scrum development team is asked to rate the effort required to complete a story, or the story size, using a predetermined scale which is usually Fibonacci’s sequence (this is done in private). The members with the highest and lowest estimates are required to elaborate on why they chose their figures and this is explained to the team. This process is repeated until all team members arrive at a unanimous story point estimate.
Atlassian has a very detailed article on scrum and the agile manifesto that you can find here.
This is a small part of everything I have had the opportunity to learn this week as a result of my new role in Product. I plan to write more of these lesson summaries in the coming weeks.