paint-brush
Mastering the Daily Scrum | Best Practices for Startupsby@Iba
1,062 reads
1,062 reads

Mastering the Daily Scrum | Best Practices for Startups

by IbaMJune 12th, 2020
Read on Terminal Reader
Read this story w/o Javascript
tldt arrow

Too Long; Didn't Read

The Daily Scrum is a 15-minute time-boxed meeting for the Development team held each day of the Sprint to inspect what has been done and create a plan for the next 24 hours. Daily scrum is one of the main Scrum ceremonies, along with Sprint Planning, Sprint Review, and Sprint Retrospective. It is held every day (preferably morning) during the sprint to inspect the progress towards the Sprint goal and remove road blockers along the way. We’ll share the two most popular Daily Standup agendas so you can adapt them to your way of working.

People Mentioned

Mention Thumbnail

Companies Mentioned

Mention Thumbnail
Mention Thumbnail
featured image - Mastering the Daily Scrum | Best Practices for Startups
IbaM HackerNoon profile picture

Learn from yesterday, live for today, hope for tomorrow. The important thing is not to stop questioning.

– Albert Einstein

This quote - encapsulates a daily scrum agenda. During daily scrum (or daily standup) you learn from yesterday, plan for today, and set expectations for tomorrow. 

The Daily Scrum is one of the main Scrum ceremonies - and enables teams to prioritize for the next day. 

Here’s what you’ll learn from this article:

1. What is Daily Scrum?

2. Why is Daily Scrum Standup important?

3. Daily Scrum: Questions, Formats & Agenda

4. Daily Scrum: Time-box, Roles & Attendees

5. Daily Scrum: Tips (+ bonus for remote teams)

The goal here is to share tips from our own daily scrum at Tara, so you can walk away with insights on how to make your next daily scrum/standup effective, and under 15 minutes. We’ve learned extensively with these daily practices, and they have helped us create structure in our weekly releases, as a distributed team.


1. Daily Scrum

Definition

Daily Scrum is a 15-minute time-boxed meeting for the Development team held each day of the Sprint to inspect what has been done and create a plan for the next 24 hours.

The Daily Scrum meeting (often referred to as the “Daily Standup”) is one of the main Scrum ceremonies, along with Sprint Planning, Sprint Review, and Sprint Retrospective. It is held every day (preferably morning) during the sprint to inspect the progress towards the Sprint goal and remove road blockers along the way.


2. Why is Daily Scrum Standup Important?

Daily scrum standup is used to synchronize the team, inspect the progress of the Sprint backlog, and remove blockers for planned tasks for the day.

Daily scrum not only aligns the team towards the Sprint goal but it also encourages each team member to commit  to what they’ll deliver in the next 24 hours.

Daily Scrum Benefits

- Teams doing Daily Standup every day of the Sprint also experience:

- Improved team spirit and shared sense of responsibility

- Shared knowledge and increased knowledge transfer

- Finding blockers

- Faster decision making

3. Daily Scrum Questions & Agenda

There are various ways to do Daily Scrum and each team has its own style of holding the daily standup meeting. We’ll share the two most popular Daily Standup agendas so you can adapt them to your team and way of working.

“Round Robin”

Round Robin is a way of doing Daily standup where each team member answers three important questions. This is our primary way of doing our daily standup. 

At Tara, we typically spend 15 minutes, in which each team member will specify what they have accomplished yesterday and today so that everyone can gain visibility into their teammates’ progress.

- What did I do yesterday?

- What will I do today?

- Are there any blockers or impediments in my way?

1) “What did you do yesterday?”

On this question the Development team member should summarize the work he/she has done yesterday without going into many technical details.

💬 Conversation

Scrum Master: “Hey Melita, would love to learn how far you’ve gotten on the assigned tasks?”

Melita (Front-end Dev): “I fetched the magazines data from the server and displayed them in a grid view. Then I continued styling the grid so it looks like in our designs.”

2) “What will you do today?”

The today question of the daily standup is to briefly explain what you’ll do at work today and lay out a simple 24-hour plan that everyone can understand.

💬 Conversation

Scrum Master: “Cool cool! So what will be your focus for today?”

Melita: “I think I will finish the grid design and then will proceed to handle the click events of the magazines so the magazines can open when our users click them.”

3) “Are there any impediments in your way?”

The third question (and in my opinion the most important one) is to ask the developer if there are any difficulties or blockers that’ll prevent them from delivering on their plan.

💬 Conversation

Scrum Master:“Ok, Melita, that sounds like a plan! Are there any obstacles that would prevent you from delivering the magazine’s catalog feature?”

Melita: “I’m concerned that I wouldn’t be able to implement the exact blur effect our designer requested because I couldn’t find an iOS library that does that. If I have to make a custom blur myself I won’t be able to finish on time.”

Scrum Master:“Gotcha. Well, let’s discuss that after our daily with Derek and Bobby (the product owner) so we can brainstorm and find a solution to deliver on time :)”

---------

As the name “Round Robin” suggests the team gathers in a circle and members take turns answering the three daily scrum questions without being interrupted. Based on my observations Round Robin is the simplest and currently most adopted Daily Scrum format.

“Walking the board”


Another way of doing the Daily Scrum meeting is "Walking the board". In this method, the team gathers around the Scrum Board (Sprint Backlog, Dev, Test, Release columns) and inspects the state of the items in each column. 

While our team does not follow this method as all of our sprint data is stored on our platform, some teams find it easier to use a physical board to view sprint stories. 

It’s recommended to start from the top right corner of the Scrum board (“Release” stage & Highest priority) because releasing the highest priority tested items will bring the highest business value.

Then you should move to the “Test” stage so you can speed up the testing of implemented items hence they’ll go faster into the “Release” stage. Then you’ll review the “Dev” column (which stands for Development) so you can ensure that there aren’t any blockers stopping the development of new features.

Finally, you need to make sure each developer has the right task load in their sprint. If not, make sure to help them select relevant tasks from the Backlog (if they aren’t already in the sprint).

1) Release what can be released

Your goal when reviewing the “Release” stage items is to release every item while ensuring quality and do it in the shortest amount of time. For this to happen, you’ll need to ask questions and co-operate with both the Dev team and the Product Owner.

💬 Conversation

Scrum Master: “Okay team, let’s see how your hard work has paid off and what we can release today! Do we have a pull request (PR) ready for review for the magazine feature?”

Melita: “Yup - all set. I’ve implemented all requirements and I’ve pushed the PR..”

Scrum Master: “Excellent! QA team, is the PR stable and working as expected?”

Piotr (Lead QA): “I experienced a few minor glitches, non-reproducible. Overall, it’s stable and works as expected.”

Scrum Master:“Awesome. Melita, would you help me release it after Bobby approves it?”

Melita: “Sure! No problem.”

...discuss the next “Release” item

2) Test what is implemented

When “walking” the “Testing” stage of the board you should understand the state of each item being tested and eliminate the blockers for the QA team that might be stopping them from testing all items.

💬 Conversation

Scrum Master: “Okay, let’s see what we’re currently testing. Bobby, what’s the status?”

Bobby: “The Magazine Sharing feature is 90% covered and we’ll finish testing it today. The “Magazine Saving” feature didn’t pass testing because it crashes the app whenever you try to save a magazine with an odd number of pages. We also can’t test the uploading of a new magazine because we don’t have permissions to the admin panel.”

Scrum Master: “Got it. Okay, I’ll speak after the meeting with Vijay (our security specialist) to provide you with testing access. I’ll also move the Magazine Saving feature back to the development column. Melita, would you be able to have at it today and fix the crash so we can test and release it sooner?”

Melita: “Yeah. Bobby explained the issue well and I think I know how to fix it… If I’m correct, it shouldn’t take more than 20 minutes.”

Scrum Master: “Super! Thanks Melita!”

3) Implement what can be implemented

When moving to the “Dev” part of the Scrum board it’s important to understand what’s the progress of the developers and what are their challenges with the tasks they’ve planned for the day.

💬 Conversation

Scrum Master:  “Okay, team, what’s our progress with the development today?”

Melita: “We’re doing great! We have almost finished the notifications about new magazines and figured out an effective searching algorithm for text within magazines.”

Scrum Master:  “Great work! We’re on time with our Sprint goal. Are there any impediments or obstacles in your way?”

Melita: “Nope, all clear. We’re moving according to the plan and will finish on time.”

4) Assign more tasks to who need more work

The last step of the “Walking the board” method is to have a look at the Sprint backlog and see if any developers need more work than what has been planned for them at the Sprint planning meeting.

💬 Conversation

Scrum Master: “Okay team, we’re almost done. We’ll be able to finish in less than 10 minutes, that’s a record! Lastly, is there anyone looking for more work?”

Ahmed (Jr developer): “Yup. I finished the translation of magazines and I’ll be able to handle more tasks.”

Scrum Master: “Awesome job, Ahmed! You’re moving fast. Melita, what do you think would be the best task re-assign to Ahmed now?”

Melita: “He’s doing great! I think he can handle the crash that Bobby discovered when sharing a magazine with an odd number of pages. That way Ahmed would offload me and help me finish on time without hurrying.”

Scrum Master: “That’s a great idea! Ahmed do you feel comfortable fixing bugs for production features?”

Ahmed: “Challenge accepted.”

Scrum Master: “Excellent! That’s the spirit! I’m assigning the magazine saving crash to Ahmed and… Well done, team. We finished in... 9 minutes and 58 seconds!! Thank you for being focused and prepared for our daily standup!

---------

“Walking the board” might be a bit harder to understand compared to the “Round Robin” daily standup agenda but if done correctly can be really efficient for some teams.

💡 Tip: Pick a daily scrum format that fits your team best and also keep in mind that it serves only as a guideline and you’re encouraged to adapt it to your own way of working.


4. Daily Scrum Meeting: Timebox & Attendees

Remember that the Scrum framework, like any other methodology, is meant to provide guidance and a starting point. There are no right or wrong ways to do daily scrum. You need to experiment, practice, and find out what works best for you. That being said, we’ll share with you the most commonly accepted best practices so you have a solid base for your first experiments.

Timing & Duration

When is the daily scrum standup meeting?

It’s recommended to do it first thing in the morning when all participants are available because this way you and your team will have a clear vision of what has to be done during the day and blockers will be removed early so your development team can work the entire day productively.

What’s the time-box for daily scrum?

The time-box for daily scrum is no longer than 10-15 minutes depending on the team’s size. However, the daily scrum meeting can be shorter if all team members were able to go through their agenda without rushing before the 15-minute mark.

What if the team needs to discuss it in more detail?

Since the goal is to go through the team updates as quickly as possible, if there are issues or blockers raised that require a deeper discussion, often teams will call out “parking lot items” to be discussed after the standup. Those team members that need to be part of the discussion stay behind after standup is over, thus not taking up the team’s standup time unnecessarily.

Daily Scrum Attendees

Development Team (required)

The development team must attend the daily scrum meeting every day during the Sprint because their role is critical. The goal of the daily standup is to inspect and sync the developers and without their mandatory attendance that can’t be done.

Scrum Master (recommended)

The Scrum Master isn’t required to attend every daily scrum but their presence is recommended. Their role during daily scrum is to keep the momentum going, reminding the team that off-topic or longer discussions should be held after the daily and keeping the meeting under 15-minutes. 

At Tara, our lead product manager (Derek Wong) plays the role as the Scrum master, who guides the team through the meeting and makes sure everyone is in high spirits at the start of the day. However, an engineering lead can also act as the scrum master.

Product Owner (optional)

The Product owner should act as an observer if they decide to attend the daily meeting. Their presence is optional and their goal is to get a better understanding of the state of the product, answer questions addressed to them, or schedule meetings for later if a product question should be discussed longer.


5. Daily Scrum Standup: Tips

Daily scrum and the Standup meeting are held in different forms in the different teams so there aren’t unified best practices that would work for every team. However, we’ll share with you tips based on our experience and what worked for us.

1) Do the daily scrum every day

The first and most important tip is to start doing daily scrum with your team every day during the Sprint. This is where most teams fail because they do it once or twice and then start to neglect it. The goal here is to form a habit with your team and also keep in mind that no matter how inefficient your daily standup at first might be the benefits will always outweigh the negatives. 

2) Same time every day. Set a calendar event.

Doing daily scrum at the same time every day will help your team form a habit faster and they’ll get used to it faster. To set yourself for success, create a 15-minute recurring calendar event with your team, and also put an alarm clock in your office, exactly set to ring one minute before the daily scrum time. 

3) Do the daily scrum in the morning

If it’s possible for you to gather the entire team first thing in the morning, do the daily scrum then. The earlier, the better. There are multiple reasons for that: you’ll eliminate blockers early, clear misunderstanding, you won’t wait for teammates to come back from lunch and the list goes on and on.

4) Do the daily standup - Standing up

There’s a reason why daily standup is called “Standup”. The reason for that is because people aren’t used to standing up for long periods of time and no one would like to stand up for an hour or so, hence the meeting would be fast and more likely under 15-minutes compared to sitting on the couch.

5) Know what you’re going to say before the “Daily”

The reason for some teams having dailies longer than 20 minutes is that when people aren’t ready to bring up the proper details about what has been done and what is to be done, it requires the leads or the Scrum Master to ask a lot of questions.

💬 Conversation

Scrum Master: “So how is it going with the sync issue?”

Developer: “Ughh, I did the code for… (awkward silence) ...uhh, I don’t quite remember, let me check my laptop.”

--- 3 minutes went by...

💡 Tip: Less is more. Always keep it concise. Don’t ramble, be prepared, and call out items needing additional discussions during the “parking lot”.

7) Pass a “token” to ensure only one person is talking

Sometimes people know what to say but they want to say more, especially when it’s not their turn. So what happens is developers stop listening to each other and start to cut off. An easy and fun way to fix that problem is to “Play catch!”. Throw a ball or a toy and the person holding it, is only allowed to speak.

BONUS: Remote Daily Standup Tips

We understand that there are times like now, during the COVID-19 pandemic when team members can’t be in the office. However, this isn’t a reason to stop doing daily scrum but rather start doing it remotely, online.

Here are 5 tips that’ll help you go remote and still do daily standup like a boss.

1) Find the right time

A common challenge for distributed teams is the time difference. Coordinating and assigning tasks could be challenging at times as you try to work around everyone’s schedule. 

However, don’t worry too much about the time difference and use it to your advantage! Remember, if the developer is ahead of your time zone, you can review his work and deliver feedback on the same day. On the other hand, if you are ahead of your developer’s time zone, you will have the opportunity to prepare the task in advance for your developer once his day begins.

To set up your daily scrum for success, if possible try to find a time that is at the beginning or end of the day for most team members. At Tara, nearly half of our team is remote. To accommodate the time difference, we schedule our daily scrum at 10AM Pacific Time, which is 7PM for our dev team in Central Europe. This gives our Europe team the opportunity to summarize what they have accomplished during the day, so that our US developers can flesh out their priorities for the day based on the Europe team’s update.

2) Go visual = turn ON your camera

Seeing each other makes the daily standup more personal and ensures that people will take turns and not cut off each other.

3) Open the Scrum board on a shared screen

This tip is more relevant if you’re using the “Walking the board” board method of the daily scrum. However, it’ll also benefit you in other formats when questions about blocking issues or tasks arise.

4) Standup during the meeting (even if you’re at home)

The same reason why you should be standing up while doing the Daily Standup in the office - people aren’t used to standing up for long periods of time hence they’ll express themselves more effectively.

5) Write your “Daily” in a #daily-scrum channel at Slack

Set up a #daily-scrum Slack channel and write your “daily” at the beginning of the day using Yesterday, Today, and Blockers format. Also set up a Slack bot to remind teammates to write their daily. 

Final Words

If there’s one thing to walk away from this article it’d be to do the daily scrum regularly. A great start would be to set a recurring 15-minute calendar event that repeats every day during the sprint and invite your team to it.

To make your next daily scrum standup more efficient you’d need to remember these three key things from our today’s article:

- The whole development team should attend the daily scrum

- The daily scrum should not take longer than 15 minutes (otherwise you’re doing something wrong, read the article again)

- Longer discussions should be called “parking lots” and discussed after the daily standup

-----------

Once your team has finished the daily scrum, it is time to start sprinting on Tara! Our sprint management platform is designed to enable teams to effectively plan sprints, assign tasks, and increase team velocity in a remote environment. Get free access here.

I’m curious to hear how you are running daily scrum with your team in a remote environment. Leave your comments below or shoot us a tweet @taradotai.