Thursday, December 22, 2011

Do you like your daily Scrum?

Over the years, I've attended my fair share of meetings and worked in a couple of places that are sort of "agile". Naturally, I have witnessed some unproductive meetings. It seems to me that the daily scrum -- or daily standup -- are disproportionately dysfunctional. This makes me wonder if there are truly fans of the daily scrum. Consider the following scenes of dysfunction. Have you seen these?

Scene 1: there is one person talking in the room. Nobody is looking at him. Everybody else -- except me, because I'm busy observing them -- is staring at or futzing with his phone. The audible conversation is taking place between the one person talking in the room and one offsite guy on the Polycom, ignored by everyone else. I've also seen this happen with two live persons talking and the rest staring at their phones.

Scene 2: the guy on the phone just will not stop talking. He does not seem to register explanations or clarifications from others. He does not, of course, see the others rolling their eyes or pounding their heads on the table in frustration. This seems to be a phone-related disease, because the next day the same guy who wouldn't shut up might come onsite and be rolling his eyes at another long-winded caller.

Scene 3: we're almost at the end of our hour-long "15 minute" standup. People could not resist having extended discussions pertinent to their own work. Those who were exasperated by the interminable conversations also contribute to the meeting's length when it came to their turn to give their respective updates.

You might argue that these are not properly done daily standups, and I agree. But I suggest there is something about the nature of the daily scrum such that without herculean discipline it tends to dysfunction. Think a moment about what you are supposed to do at this meeting: tell everybody about what you did, what you will do, and what is blocking you. You, you, you: it's inherently selfish. It's a meeting to discuss things of interest to almost nobody else. In most other engineering meetings, people come together to discuss one thing that they are all concerned with. The daily scrum is the polar opposite.

This characteristic of the daily scrum is what leads to the dysfunctional scenes I described earlier. When one person gives his update to the manager, his update is usually of interest to nobody else. This explains scene 1. People on the phone have the advantage of being able to do something else, so they ignore the rest of the meeting until they give their own update. Unfortunately, they may not appreciate the fact that onsite members do not have that advantage and are trapped in the meeting until it ends. This explains scene 2. Each person would like to discuss his own issue at length -- it's natural -- but since everybody gets a turn this stretches out the meeting, leading to scene 3.

The daily scrum serves a need for agile micromanagement, but I wonder if there is a more effective way to do this. Consider this: if you trap 8 team members in a room for half an hour daily, you are wasting enough work hours every other day to give one team member a day off. Isn't there a better way? What if we do something like the following?
  1. Set up an IM group chat room for the team.
  2. Every morning, within a 5 minute window, have everybody type in their update.
  3. People read each other's updates, and those interested either continue the conversation or arrange to meet separately to follow up.
  4. After 5 minutes, everybody can log off and go do real work.
Everyone "speaks" at once, so there is no waiting on each other. The meeting is effectively over in 5 minutes, so nobody is trapped. In real world situations where maintaining a disciplined daily scrum is difficult, would this work better?

7 comments:

  1. Hello,

    I have worked for the past year and a half, and what you describe is what we experienced at the very beginning of our project. After the first couple of weeks, it all went much smoother.
    We were a seven-people team (all colocated though), and could complete the daily meeting in usually a bit less than 15 minutes.

    I think the key point that you mention here is "herculean discipline" - and it is one of the basis for Scrum. The goal of the Scrum Master (or however acts as a moderator for the meeting) is to ruthlessly cut people who go over their one-minute allowed time.
    During this time, the goal of the person is to report on how they advanced, and the issues they have faced or foresee. If you stick to this, one minute is more than enough. And for the points that require more in-depth discussion, you agree to deal with them after the meeting, with the people interested (and free the others to start working on their own things).
    The remaining time was then spent with the team discussing how to go on for the day. On which tasks to work, which stories to complete first, and which impediments to tackle.

    We didn't have the "I don't care about what you do syndrome" you mention either. We were developing at most 2 stories in parallel, so there was a strong interest for everyone to know what the others were doing. And we made sure that the stories were tested by people who didn't take part in their development to make sure everyone knew what had been done during a sprint.

    What you are proposing is replacing the stand-up meeting with a sit-down meeting over IM. From experience, this is far less productive: people have to type instead of speak, they are distracted by all their other IM messages (or whatever the computer uses to distract you) and lack the interaction provided by face-to-face communication.

    All in all, I would first suggest to enforce the discipline that is necessary to the daily scrum. If done properly and still feels inefficient, then I encourage you to adapt the contents of the meeting (maybe transform it into a team discussion rather than individual reports, or whatever feels right for ou). But I would definitely advise against moving to IM / mail / written communication for this kind of things. The daily scrum serves many things (including building a team spirit), and you should change how it works only when you understand all the implications it will have.

    ReplyDelete
  2. Has the team committed to a sprint backlog clearly within a specific sprint? If yes, then they will be interested in each other work. Any failure of one person, can cause the team to fail.
    When team members are not interested in daily scrum, I would suspect the sprint goal is not clear or the sprint duration is not clear or Product owner at the end of sprint does not indicate success/failure or maybe multiple such problems.
    I would rather fix the root cause of disinterest in daily scrum, rather than change daily scrum. Of course, there is no problem in changing daily scrum, if the team is productive and profitable.

    ReplyDelete
  3. all that just means you need a more effective scrum master.

    ReplyDelete
  4. Hi Chris,

    This post is interesting, what makes it even more interesting is that I saw a cartoon today about team members during a daily scrum (one wondering why he's there, the other is lying about what he's doing, the other saying that he'll be working with someone he doesn't like). I think as Xun said, if you don't like your daily scrum then you might need a better scrum master.

    PS: You might enjoy this post: http://www.pmhut.com/11-hints-to-improve-your-scrum-meetings

    ReplyDelete
  5. This is an excellent post. I think you got the root of the problem. In a well organized development project, each team member would have a clear idea about his/her scope of work and what needs to be done. His/her work interacts with others at specified boundaries or interfaces. In such projects, one team member would have to know little about what others are doing. That leads to the lack of interest in what others are saying in the scrum. This is perfectly natural human behavior.

    On the other extreme, there are projects where each team member needs to know continuously what others are doing. In those cases, a 15 minute meeting has hardly enough bandwidth to carry all the information exchanges. Co-locating the team members in a room where they can talk freely between them whenever needed is a magnitude of order better than a meeting.

    I used to believe in Scrum at one point. I have since realized that it's useful to only a limited type of projects. And for some people, Scrum is purely a business.

    ReplyDelete
  6. Yeah... I've been thinking of this problem for more than 2 years... maybe 3. It's when I've realized "wait, do we really need these daily meetings? It's a bullshit. They doesn't solve what they should". Daily meetings became some sort of a holy artefact that everybody uses, but don't understand why. We really should take a look at the purpose of daily meetings. I think you've hit the point, great post (and this one http://chriswongdevblog.blogspot.ru/2013/02/yammerchatter-as-alternative-to-your.html).

    ReplyDelete
  7. Hi Christopher,
    Thanks for this nice article. We figured out that standup meetings are great but needed improvement (they took a lot of time, de-focussed our colleagues and interrupted their workflows). Because of this we developed a SaaS tool to "automate" the daily standup meetings - with just a single email. If you like to take a look: www.30secondsmail.com.
    Best,
    Ajie

    ReplyDelete