Jason Yip, ThoughtWorks, Inc.
http://martinfowler.com/articles/itsNotJustStandingUp.html
We stand up to keep the meeting short
The daily stand-up meeting (also known as a "daily scrum", a "daily huddle", a "morning roll-call", etc.) is simple to describe: the whole team meets every day for a quick status update. We stand up to keep the meeting short. That's it. But this short definition does not really tell you the subtle details that distinguish a good stand-up from a bad one.
Given the apparent simplicity of stand-ups, I was quite surprised the first time I saw one that wasn't working. It was immediately obvious to me what was wrong but I realised that it was not obvious to the team. I realised that my team was not aware of the underlying principles and details that would allowed them to diagnose and solve problems with stand-ups.
People who have experienced good stand-ups will generally know what can be done when things aren't working well. For novice stand-up attendees, when things go wrong, it is much less likely that they'll figure out what to do. One way to approach this issue is to claim that it's all a matter of tacit knowledge and novices just need to attend more well-run stand-ups. I believe, however, that it's much more likely that given no assistance, novices will simply abandon the practice of daily stand-ups. This would be unfortunate since well-run stand-ups add significant value to projects.
This is my attempt to communicate some of the previously tacit knowledge on the benefits and consequences of common practices for daily stand-ups. These patterns of daily stand-up meetings are intended to help new practitioners as well as remind experienced practitioners of what they might already know in their gut.
The underlying theme is self-organisation
Self-organisation is not a culturally-specific virtue, whether team, organisational, or national culture. If the whole team will not commit to taking responsibility for their own success, the team's performance will be necessarily worse.
What is the purpose of the daily stand-up meeting?
Summarizing several papers and references ([Anderson, 2002], [Beedle et al., 2000], [Cochango, 2006], [OrgPatternsStandUp], [Rising, 2002], [Rising and Janoff, 2002], [Wells, 1999]) daily stand-ups should achieve the following goals:
-
share commitment
-
communicate daily status, progress, and plans to the team and any observers
-
identify obstacles so that the team can take steps to remove them
-
set direction and focus
-
build a team
Share commitment
Making daily commitments to each other as a team is the most important goal of daily stand-ups. Sharing commitment is more important than sharing progress or status. This is not to say that an observer will not have a sense of progress and status from the stand-up, but this is secondary to team members publicly committing to each other, and identifying obstacles that prevent them from meeting their commitments.
Communicate status
The focus of the meetings is on the technical progress in the architecture and the work plan. [OrgPatternsStandUp]
Communicating status is not much of a differentiator for stand-ups against any other kind of status meeting. The mechanism that stand-ups use for communicating the status, that is the team updates each other instead of a manager, is a differentiator. Updating status every day also ensures that the team reflects on what they're doing at least daily.
Identify obstacles
When one team member shares an obstacle in the Scrum meeting, the entire team’s resources come together to bear on that problem. Because the team is working together toward a shared goal, every team member must cooperate to reach that goal. The entire team immediately owns any one individual’s problems. [Rising and Janoff, 2000]
Raising and removing obstacles earlier allows the team to maintain its momentum. The stand-up itself is not intended to remove any particular obstacle but rather to provide a forum for people to identify obstacles so that other team members have the opportunity to help.
Set direction and focus
During the daily meetings, the Scrum master would call attention to backlog item priority. This was especially helpful for new team members, who might have gone off in another direction. [Rising and Janoff, 2000]
We want everyone to be moving in the same direction. The stand-up is used to continually remind the team what that direction is.
Build a team
More so than artificial “team-building” exercises, effective teams are built by regularly communicating, working, and helping each other. This is also strongly tied with team members helping each other with shared obstacles.
Effective daily stand-ups have a particular feel
Technically, the meeting is a “daily stand-up” if everyone is standing up and the meeting is held every day. However, there is a different feel to a good stand-up that distinguishes it from an empty ritual.
An early description of daily stand-up meetings called them Daily Scrums [Beedle et al., 2000] with an intentional association with the rugby term. The energy level of a daily stand-up should perhaps not be quite as high as that of a rugby scrum but it should still feel energising. Quickness and high energy support the goal of setting focus. Long, low-energy meetings tend to distract and mute the day.
Good stand-ups will feel supportive. When people are knocked down every time they raise a problem, they will tend to stop raising problems. Beyond preventing removal of obstacles, a non-supportive stand-up works against team dynamics. The stand-up instead becomes a ritual that team members dread [LaPlante, 2003].
Patterns of daily stand-up meetings
Who attends the daily stand-up?
All Hands
People and representatives from various areas (e.g., marketing, production support, upper management, training, etc.) wish to know about and/or contribute to the status and progress of the project. Communicating status in multiple meetings and reports requires a lot of duplicate effort.
Therefore
Replace some or all of the meetings and reports with the daily stand-up. Anyone who is directly involved in or wants to know about the day-to-day operation of the project should attend the single daily stand-up meeting.
But
People not directly involved can disrupt the stand-up. This suggests that another forum would still be required for queries outside the scope of the stand-up.
Too many people in the meeting may cause disruption and/or cause people to be uncomfortable in sharing information. Typical daily stand-ups will have at most 10 people. For larger stand-up groups, it is even more important to enforce Pigs and Chickens and Take it Offline in order to ensure all contributers can provide their input in a timely fashion.
Not all forms of reporting will be, nor should be, covered by the stand-up format. For example, overall project progress would be better communicated with a Big Visible Chart [Jeffries, 2004] such as burn-down, burn-up, cumulative flow diagram, etc.
Pig and Chickens
A chicken and a pig are together when the chicken says, "Let's start a restaurant!".
The pig thinks it over and says, "What would we call this restaurant?".
The chicken says, "Ham n' Eggs!".
The pig says, "No thanks, I'd be committed, but you'd only be involved!".
[Schwaber and Beedle, 2001]
During a stand-up, interference by observers causes disruption in the communication within the team. Such interference may be in the form of interruptions or simply by participating and providing inappropriate information. If the interference is severe enough, the team members may not bother using the stand-up to communicate project issues and either create an alternate medium or not communicate at all.
Therefore
Institute a rule where only the “committed” participate and the “involved” are only allowed to observe. “Committed” means any people who contribute to the completion of the current iteration (i.e., developers, testers, immediate managers, etc.). In other words, people who can say something that directly affects the delivery of backlog items/features/stories. “Involved” are other people who may be interested in the status of the iteration but will not directly contribute to its completion. This could be other managers, sales staff, developers from other projects, etc. Any questions and issues that the “involved” have can be resolved after the meeting (Take it Offline) or communicated in a different medium.
But
Attend by Proxy
All Team members are required to attend. If for some reason a Team member can't attend in person, the absent member must either attend by telephone or by having another Team member report on their status. [Cochango, 2006]
If team members are seen to show up to the stand-up if they feel like it, there is a communication that commitment to the team is not important. However, there are situations when a team member cannot make the meeting for a very legitimate reason (e.g., personal issues, production support problem, etc.). In these case, we still want a way for the member to express commitment in the stand-up.
Therefore
Team members that cannot attend the stand-up in person should find a way to Attend by Proxy. This can be in the form of a representative, calling in by telephone, or sending an e-mail summary before hand. Virtual attendance is still better than non-attendance.
But
What do we talk about during the daily stand-up?
Yesterday Today Obstacles
Some people are talkative and tend to wander off into Story Telling. Some people want to engage in Problem Solving immediately after hearing a problem. Meetings that take too long tend to have low energy and participants not directly related to a long discussion will tend to be distracted.
`
Therefore
Structure the contributions using the following format:
-
What did I accomplish yesterday?
-
What will I do today?
-
What obstacles are impeding my progress?
These are the minimum number of questions that satisfy the goals of daily stand-ups. Other topics of discussion (e.g., design discussions, gossip, etc.) should be deferred until after the meeting.
Lasse Koskela proposed another form of these questions in order to emphasise that team members should not be Reporting to the Leader:
Each team member updates his peers:
In turn, each team member provides his peers with 3 pieces of information:
-
Things I have done since yesterday's meeting
-
Things I am going to get done today
-
Obstacles that I need someone to remove
-
Was I able to fulfill what I committed to?
-
What am I comfortable committing to today?
-
What is obstructing me in meeting my commitments?
I prefer this question form for it's clarity though the original form may be simpler.
But
Focus on the Backlog
Some people find it difficult to keep the project context in mind when they are contributing. Symptoms of this would be attendees leaving the stand-up without a clear awareness of what remains for the iteration and release, and not much of a direct relationship with issues raised during the stand-up and the progress of the iteration and release.
It is much easier to understand project context with a visible reminder.
Therefore
Remind stand-up attendees to Focus on the Backlog, where a backlog is simply a list of tasks and features to do. For example, maintain an information radiator [Cockburn, 2001] (aka Big Visible Chart) showing the iteration and release status and hold the stand-up near it. The display serves as an obvious reminder of what remains to be done.
But
Blockage Board
Obstacles raised in the stand-up are not removed or otherwise addressed in a timely fashion.
Therefore
The simple act of writing an issue down and therefore explicitly acknowledging it is a very reliable way to reduce drawn out conversations. So even if not everyone agrees that any particular item is an obstacle, it is worth simply writing it down for discussion after the meeting has ended.
When and where are the daily stand-ups held?
Same Place, Same Time
We want the team to have a sense of ownership of the stand-up. We also want interested parties to be able to drop by to observe a stand-up to avoid having to schedule yet another status meeting. This is difficult if any particular team member is allowed to force a delay or change of location of the stand-up.
Therefore
Run the daily stand-up at the Same Place, Same Time. Do not wait for stragglers, including architects and managers. The meeting is for the whole team, not for any particular individual. This is especially important if you Use the Stand-up to Start the Day.
Some stricter teams may impose a “fine” for latecomers. I tend to be wary of any kind of punishment mechanism and prefer discussion.
But
Use the Stand-up to Start The Day
The daily stand-up meeting provides focus and awareness of outstanding issues. If it occurs late in the day, this focus and awareness is wasted.
There is usually a tendency not to work on any project-related tasks until the stand-up. If the Stand-up Meeting Starts the Day... Late, this slack time may be significant. To some extent, this may simply be used as an opportunity to check e-mail, fill in timesheets, etc. but it may be worth investigating removing the stand-up as a “start of day” ritual by scheduling it later in the day.
Don't Use the Stand-up to Start the Day
The stand-up tends to serve as the ritual to set focus for the day, especially if you Use The Stand-up to Start the Day. Because of this, team members tend not to work on features until the stand-up. When the meeting is not actually held first thing, this tendency may have a significant impact on productivity.
How do we keep up the energy level of the daily stand-up?
Huddle
Volume of speech affects attentiveness as well as effectiveness of communication. Physical distance changes the level of volume required to communicate well. Some people don't speak loudly and don't feel comfortable doing so.
Therefore
The stand-up should be more of a Huddle, than a meeting. If it's difficult to hear, bring everyone closer. Beyond allowing for a more relaxed speaking volume, being physically closer tends to cause participants to be more attentive on their own. Being able to stand physically closer is also an expression of greater trust within the team.
If the stand-up is a new thing, it's usually enough to use hand gestures to wave people in and say something to the effect of “Let's bring it in”. If the size of the circle has been established for a while, consider explaining the reasons for closing the circle before trying to shrink it.
But
Stand Up
Some people are talkative and tend to wander off into Story Telling. Some people want to engage in Problem Solving immediately after hearing a problem. Meetings that take too long tend to have low-energy and participants not directly related to a long discussion will tend to be distracted.
Require that all attendees Stand Up. Use standing up to link physical with mental readiness. Physical discomfort will also remind attendees when a meeting is taking too long. A simple way to encourage this is to simply hold the meeting where there are no chairs.
Standing up tends to cause meetings to shorten, but does not guarantee that they will shorten to an optimal length. People may learn to cope with the discomfort instead of taking a more appropriate response. Also if the meetings are not taking too long nor wandering off-topic, standing up is an unnecessary ritual.
Fifteen Minutes or Less
Most people will wander mentally when they are in long meetings. A long, droning meeting is a horrible, energy-draining way to start the day. A specific number helps remind us when to consider adjustment to reduce the time of the meeting.
Therefore
Keep the daily stand-ups to Fifteen Minutes or Less. As a general rule, after fifteen minutes, the average person's mind is going to wander which doesn't help with setting focus.
But
Signal the End
After the last person has spoken, the team may not immediately realise that the meeting is over. The gradual realisation that it's time to walk away doesn't end the meeting on a high note and may contribute to Low Energy.
Therefore
Time the Meetings
It is difficult to qualitatively judge whether a stand-up is taking too long, especially if it only gradually increases in length.
Therefore
Time the Meetings and publish the results. Most of the time, attendees just don't realise the impact of Story Telling, not being prepared to Take It Offline, or not preparing have on how long the meeting will take. Make it quantifiable.
But
Take It Offline
Some people want to engage in Problem Solving immediately after hearing a problem. Meetings that take too long tend to have low-energy and participants not directly related to a long discussion will tend to be distracted. It is still important to acknowledge that further discussion will be required to solve the raised problem. Some people may find it uncomfortable to enforce the structure of the stand-up by interrupting.
Therefore
Use a simple and consistent phrase like “Take it offline” as a reminder that such discussions should take place outside of the daily stand-up. If the discussion was Socialising, nothing more is required. If the discussion was Problem Solving, the facilitator (and eventually just the team) should ensure that the right people are nominated or sign up to deal with the issue later.
But
How do we encourage self-managing daily stand-ups?
Last Arrival Speaks First
During a stand-up, attendees need to know who is supposed to speak first. Having the facilitator decide who should speak first is a subtle though definite force against self-organisation. The team should know without intervention who speaks first.
Therefore
Round Robin
During a stand-up, attendees need to know who is supposed to speak next. Having a facilitator decide who speaks next is a subtle though definite force against self-organisation. The team should know without intervention who speaks next.
Therefore
Pass the Token
With simple, predictable ordering mechanisms (e.g., Round Robin), it is very easy for participants to ignore other speakers until it is closer to their turn. There may be a tendency to think of other things rather than pay attention to what others are saying.
Therefore
Introduce an unpredictable ordering mechanism, like tossing a speaking token (e.g., a ball) to determine who should speak next. Having a speaking token also simplifies deciding who speaks first as it will be the person who happens to have retrieved the token (or the first person s/he tosses the token to).
Tossing something around introduces a bit of fun to the daily stand-up ritual and thus serves as a good infection mechanism for other observing teams.
I first learned of this pattern on a project I was on with Simon Stewart. We used a small juggling ball but almost anything can be used as token. Other teams have used rugby balls [Gibbs, 2006, Rugby] or even plush toys [Mar, 2006].
But
Take a Card
During a stand-up, attendees need to know who is supposed to speak first and after that, who is supposed to speak next. Having a facilitator decide who should speak is a subtle though definite force against self-organisation. The team is not keen on Pass the Token because they typically have coffee cups in their hands.
Therefore
Rotate the Facilitator
Team members are Reporting to the Leader, that is, they're only talking to the meeting facilitator instead of each other. Only the meeting facilitator is raising and addressing process issues related to the stand-up. We want the team to take ownership of the stand-up and this requires removing any dependence on a single facilitator.
Therefore
Rotate the Facilitator. Rotate assignment of a role responsible for ensuring people attend the stand-up and stick to the agreed upon rules.
But
Break Eye Contact
Team members are Reporting to the Leader, that is, they're only talking to the meeting facilitator instead of each other. We want the team to take ownership of the stand-up and this requires removing any dependence on a single facilitator.
Therefore
Smells are about when things are going wrong
I endured regular stand-up meetings for three years. What made the meetings most painful was my boss (I'll call him Wally). His main reason for the stand-up meeting was not to increase efficiency or embrace XP as much as it was to shorten human interaction beyond anything directly related to the work product. ... For Wally, however, the stand-up meeting (like the 7 a.m. Monday meeting and the 5 p.m. Friday meeting) was a loyalty test designed to reinforce the employer-employee relationship. [LaPlante, 2003]
The feel of an effective stand-up is about how you know when things are going right. Smells are about how you know when things are going wrong. It is important to note that even if you have no smells, this does not mean the stand-up is going right. It just means that it doesn't “stink”.
Most of the following smells are linked back to the previous patterns. For those that are not, the underlying issues tend to be more subtle or outside the scope of the daily stand-up, and people will have to come up with their own solutions.
Reporting to the Leader
Team members should address the Team. This is not a "Reporting to the ScrumMaster" meeting. [Cochango, 2006]
Team members are facing and talking to the manager or meeting facilitator instead of to the team. This indicates that the daily stand-up is for the manager/facilitator when it is actually supposed to be for the team. There are various ways to break this dependence: Rotate the Facilitator, Break Eye Contact, change the form of Yesterday Today Obstacles, use Pass the Token, etc.
People are Late
This is directly addressed by Same Place, Same Time, but as mentioned may indicate that the stand-up is being held at the wrong time or at the wrong place.
Stand-up Meeting Starts the Day... Late
Because the stand-up is seen to start the work day, no work is done before the stand-up. Depending on how late in the morning the stand-up is, this can have a significant impact on available working hours. This leads to Don't Use the Stand-up to Start the Day.
Observers Interrupt
Regular interruption by observers is very disruptive to the delivery team by challenging the premise that the daily stand-up is primarily for the delivery team. Interruption also threatens Fifteen Minutes or Less. Enforce Pigs and Chickens.
Socialising
One of the goals of the stand-up is to increase team socialisation. However, the daily stand-up is not intended for team members to “catch up” with each other on non project-related matters. It's difficult to provide examples of this since the degree to which socialising passes from team-building to distracting varies from team to team. The threshold can be detected from the behaviours of participants not directly involved in the socialisation. If their energy levels remain high, then it's probably just team-building; if their energy levels drop, then Take It Offline and perhaps provide another forum to act as a Water Cooler [OrgPatternsWaterCooler].
I Can't Remember
“What did I do yesterday?... I can't remember... What am I doing today?... I dunno...”
Daily stand-ups are meetings. Like all meetings, participants have a responsibility to prepare. In this case, all participants are responsible for knowing the answers to Yesterday Obstacles Today. There can be more leniency when it comes to not knowing what will be done today since sometimes there is actually nothing specific planned except picking the next highest priority task off the stack.
Lack of preparation causes slower pace which causes lower energy. It also risks failing Fifteen Minutes or Less, which further reduces energy levels.
Story Telling
Instead of providing a brief description of an issue, the participant provides enough details and context to cause others to tune out. The general rule is to identify obstacles during the stand-up and discuss the details after the stand-up. This can be summarised as “Tell the headline, not the whole story” or Take it Offline.
Problem Solving
The key to keeping the stand-ups Fifteen Minutes or Less is to limit the Story Telling and not succumb to Problem Solving during the meeting. Take it Offline.
Low Energy
Could indicate a slow-down of pace due to Story Telling, Problem Solving, etc. In which case Take it Offline. Could be simply a matter of team size. Could be the time of day which suggests trying the alternative of Use the Stand-up to Start the Day and Don't Use the Stand-up to Start the Day.
Obstacles are not Raised
There may be several reasons for obstacles not being raised. Not remembering, high pain threshold, lack of trust in raising issues (because Obstacles are not Removed, Observers Interrupt with blaming), etc. Depending on the context, just introducing Yesterday Obstacles Today and enforcing Pigs and Chickens may not be enough. Introducing a Blockage Board may provide a less confronting medium to raise obstacles. Retrospectives [Kerth, 2001] are an effective way of discovering the underlying reason why Obstacles are not Raised.
Obstacles are not Removed
With the exception of a blaming environment, the surest way to stop people from raising obstacles is to not remove them. To make it difficult to forget and/or ignore obstacles, track them publicly with a Blockage Board.
Obstacles are Only Raised in the Stand-up
If the feel is good, you're probably okay
Hopefully this paper has provided some more insight into the subtle details of effective stand-up practices and also common problem indicators. It should be clear that a daily stand-up is not just standing up together every day.
What are other people saying?
Acknowledgements
I'd like to thank Ivan Moore and Alan Francis for helping me determine what I wanted to express overall, Owen Rogers for some of the patterns, Susan Newton for reminding me that stand-ups should be supportive, James Ross and Rebecca Parsons for some editing, Brian Marick for his shepherding, all the people at my PLoP 2004 writer's workshop (Dick Gabriel, Linda Rising, James Coplien, Lise Hvatum, Cecilia and Terje Haskins, Danny Dig, David Hecksel, and Ali Arsanjani), Bill Wake for his detailed comments, all the people at my PLoP 2006 writer's workshop (Ralph Johnson, Pau Arumi, David Garcia, Leon Welicki, Djamal Bellebia, Dirk Riehle, Hesham Saadawi, and Paddy Fagan), Karthik Chandrasekarial for the stand-up picture, and everyone I've ever attended a daily stand-up with.
References
[Cockburn, 2001] Cockburn, A., Agile Software Development, Addison-Wesley, 2001
[Cochango, 2006] “Daily Scrum Meeting”, URL: http://scrumforteamsystem.com/ProcessGuidance/Process/DailyScrumMeeting.html
[Cohn, 2003] Cohn, M., “Toward a Catalog of Scrum Smells”, October 2003, URL: http://www.mountaingoatsoftware.com/articles/ScrumSmells.pdf
[Gibbs, 2006, Leaderless] Gibbs, E., “Leaderless Standups”, 10 August 2006, URL: http://edgibbs.com/2006/08/10/leaderless-standups/
[Gibbs, 2006, Rugby] Gibbs, E., “Passing A Rugby Ball in Standups”, 14 August, 2006, URL: http://edgibbs.com/2006/08/14/passing-a-rugby-ball-in-standups/
[Gibbs, 2006, Signal] Gibbs, E., “Signaling the End of a Standup”, 7 August, 2006, URL: http://edgibbs.com/2006/08/07/signaling-the-end-of-a-standup/
[Jeffries, 2004] Jeffries, R., “Big Visible Charts”, March 2004, URL: http://www.xprogramming.com/xpmag/BigVisibleCharts.htm
[Kerth, 2001] Kerth, N., Project Retrospectives, Dorset House, 2001
[Koskela, 2006] Koskela, L., “On Scrum and the curse of the three questions”, May 7, 2006, URL: http://radio.javaranch.com/lasse/2006/05/07/1147034972559.html
[LaPlante, 2003] Laplante, Phillip A., “Stand and Deliver: Why I Hate Stand-up Meetings”, ACM Queue, 1, 7 (October 2003)
[Mar, 2006] Mar, K., “Controling the flow of daily meetings with a team mascot”, 13 May 2006, URL: http://kanemar.wordpress.com/2006/05/13/controling-the-flow-of-daily-meetings-with-a-team-mascot/
[Miller, 2003] Miller, C., “Stand-up Meeting Antipatterns”, 19 November 2003, URL: http://fishbowl.pastiche.org/2003/11/19/standup_meeting_antipatterns
[Nicolette, 2006] Nicollete, D., “Re: On Scrum and the curse of the three questions”, May 8, 2006, URL: http://radio.javaranch.com/lasse/2006/05/07/1147034972559.html#comment1147110635098
[Rising, 2002] Rising, L., “Agile Meetings”, STQE, May/June 2002, pp. 42-46
[Rising and Janoff, 2000] Rising, L. and N. Janoff, “The Scrum Software Development Process for Small Teams”, IEEE Software, July/August 2000, pp. 2-8
[Russell, 2006] Russell, R., “The Daily Stand Up, Part 2”, 30 May 2006, URL: http://www.robbyonrails.com/articles/2006/05/29/the-daily-stand-up-part-2
[OrgPatternsStandUp] “Stand Up Meeting”, Org Patterns, 7 October 2003, URL: http://www.easycomp.org/cgi-bin/OrgPatterns?StandUpMeeting
[OrgPatternsWaterCooler] “The Water Cooler”, Org Patterns, 18 November 2003, URL: http://www.easycomp.org/cgi-bin/OrgPatterns?TheWaterCooler
[Schwaber and Beedle, 2001] Schwaber, K. and M. Beedle. (2001) Agile Software Development with Scrum, Prentice-Hall
[Shimp, 2006] Shimp, D., “An Overview of ScrumMaster – Part 2”, July 18, 2006, URL: http://www.netobjectives.com/podcasts/last20060719_podcasts.mp3
[Wells, 1999] Wells, D., “Daily Stand Up Meeting”, Extreme Programming: A gentle introduction., 1999, URL: http://www.extremeprogramming.org/rules/standupmeeting.html