Now that we understand Sprint planning, and we also have a Sprint Goal defined, we need a way to increment and adapt daily. How do we do that? We do it by different Scrum Events called "Daily Scrum". We will discuss below topics in this tutorial
- What is the Daily Scrum meeting?
- Characteristics of Daily Scrum Meeting
- What is the Role of Scrum Team in the Daily Scrum Meeting?
What is the Daily Scrum Meeting?
Daily Scrum, also known as Daily Stand-up, is one of the essential Scrum event, where the team will meet at the start of the day to inspect the work done, and adapt to meet the sprint goals incrementally.
In simple terms, each team member has to answer three questions in daily Scrum.
- What work did I accomplish yesterday?
- What work do I plan to do today?
- Are there any blockers that can effect my work?
The answers to these three questions help us in the following ways -
- Inspect the work done - What we accomplished yesterday helps in inspecting the work that completes. It also helps in understanding how we are progressing towards meeting the sprint goal.
- Adapt the work - Based on what we accomplished yesterday; the team can also plan what needs to finish today. It also takes into account if a team member is busy in some work, then a different work can be assigned to him, till the blocker removes.
It's important to note that the Scrum meeting is NOT a status meeting. The development team is not giving status to the Scrum Master. The meeting is for the team to inspect and adapt. The development team is enabled to decide what they want to do today to meet the sprint goals.
Characteristics of Daily Scrum Meeting
Daily Scrum Meeting is time-boxed to 15 min. Why only 15 min? What's wrong with 30 or 60 min? Traditional project meetings were always of longer duration and could go up to hours. Scrum erases this in-efficiency by keeping the scrum meeting time-boxed to 15 min. It helps in avoiding any unnecessary discussions, where the entire team is not required. Also, the time-box assists in keeping the discussion pointed and focused on answering the three questions.
Start of the Day
Daily Scrum meetings should always conduct at the start of the day. It is the first meeting that happens in the day, and it's essential to keep it this way only. The work that needs to finish in the day gets planned in this meeting. As such, it's quite apparent if this meeting late, it will hinder the team's ability to adapt the work based on yesterday's increment.
Same time every day
Daily scrum meetings should also have fixed timing. It can be 8 am or 9 am, or whenever the day begins, based on office timings. If the meeting finalizes, people make it a habit to remember it, and they don't have to look at the calendar every time. It teaches a sense of discipline and routine.
Same place every day
Just like the time, it's essential to have the meeting at the same place (physical or online meeting). It again helps to make sure no one has to waste time searching for a new room or look at the calendar for a new meeting bridge.
It may sound unnecessary, but unless your meeting is virtual, it's always good to remain standing for this 15 min duration. There is a reason why daily Scrum is also known as "daily stand-up". Staying on your feet is one of the core principles of the scrum meeting. It reduces rambling and keeps you focused.
What is the Role of Scrum Team in the Daily Scrum Meeting?
It's obvious that a daily scrum meeting is a meeting that the full scrum team requires to attend. However, let's have a look at what each role is supposed to do during this meeting.
Role of Scrum Master
It's a common perception that a Scrum Master drives the daily Scrum meeting. Opposite to this belief, the Scrum Master is only a facilitator. Their sole job is to ensure that the development team has the meeting in their calendar, but they don't run this meeting. SM ensures that Scrum best practices follow, and coaches the development team on Scrum methodologies. E.g., SM can ask the team to cut the meeting short. The long discussions can be kept for later, and everyone can stick to the three questions. Additionally, it also ensures that the meeting is time-boxed to 15 min.
For teams who are new to Scrum as well, the Scrum Master may run the meeting till the team matures. However, this is not the norm.
One critical task of Scrum master is to also note down the impediments that development team members call out. He can either resolve it himself (like access issues) or can work with external stakeholders to resolve the impediment (e.g., the team is waiting for an API contract from another team)
Role of Development Team
Contrary to popular belief, the development team runs the Daily Scrum. It's a meeting where they gather as a group and decide what they need to do as a team to accomplish the sprint goal. No one guides the development team on what they need to work on a particular day. There is a sprint goal, and everything aligns themselves with that. However, it's an only development team that decides what they should pick up on a given day to achieve that goal.
Each member of the development team will take his turns to answer the three questions, and based on these answers; he would update the Scrum board.
Scrum Board is nothing but a board that will show what story (or a task within the story) a developer is working. It also shows what story or tasks are complete so far.
The development team members sequentially update their status. In some cases, they use passing the ball technique where each member will randomly pass the ball to another team member, who will give the status. It keeps the team alert, and its also some fun.
Ideally, the developer is supposed to update the board before he leaves for the day, so the scrum board gets updated at the start of the next day's Daily Scrum.
The development team mutually decides what they need to work on the day, and the story/tasks are assigned to the developers accordingly.
Product Owner is optional for Daily Scrum. He would get the updates by checking the scrum board or via the demo's that the development team will schedule with him. If the development team has any doubts about any story, they will ask the Product owner after the daily scrum meeting.
While it may still be worth-while for a product owner to attend the daily Scrum, he would need to understand that it's the development team's meeting. Any discussions outside the three usual questions need to park for later.
Common Questions on Daily Scrum
Let's look at some of the common questions (and misconceptions) that we usually have on this daily scrum meeting.
What happens when an outsider attends the daily stand-up?
It's not common, and we don't encourage it. Even then, it happens that someone outside your Scrum could attend the daily Scrum. E.g., another Scrum Master who is dependent on some story to complete in your team, or a member of the management team who wants to know the progress. While these folks can enter the meeting, they need to remain silent and not ask any questions during the meeting. The Scrum Master acts as a facilitator of this meeting. SM should set the right expectations with the folks that they can only listen to, and questions will get answered outside the daily Scrum.
Should we wait for the Scrum Master or a development team member if they're 5 min late?
It's very common to wait for all the members to join. However, even if Scrum Master isn't able to join, the development team should carry on with the meeting. Remember, the Scrum Master only acts as a facilitator. But the meeting is of the development team, so they should carry on the meeting irrespectively.
In case if the development team member is late, we should still start on time. It's a 15 min meeting, and while 5 min doesn't sound too much, it's a discipline and routine that needs to establish.
Should I push the meeting to a common timezone if my team is not in the same timezone?
It is a very tricky question. Usually, the best practice is to have the scrum team co-located. It results in better efficiency and coordination. However, on rare occasions, if the team distributed geographically, we can look at a few options.
If the timezone difference is 3 hours or less, we can ask the team to start early. For example, some begin at 7 am while others at 10 am. By adjusting a few office hours, we could still achieve a common start time for daily Scrum.
However, it becomes difficult if the team separates by more extended hours. E.g., 5 members are in the UK, and 2 members are in the US. In such cases, the UK team should still begin their Scrum in their morning hours, and the US team could send out their answers of 3 questions over email before ending their previous day. The team could read this out in UK stand-up. The UK stand-up recording can be used by the US team when they do their stand-up, so they know the discussions.
Any further sync-ups can schedule separately.
Finally, it all depends on what works best for the development team. The solution can vary for each development team. Remember, it's a meeting for them, and they need to decide what works best for them collectively.