I’m actually starting work on a couple of white papers around how p&p runs its software development teams and some of the best practices we’ve harvested from looking at other Microsoft teams. Currently I’m thinking of two main topics; large scale projects and distributed teams. Some of this will appear on my blog while I think about getting the actual papers written. I’ve already written some posts on these two topics; Large teams and Distributed teams.
These papers will be very much about concrete instances of practices that have proven themselves within p&p and/or Microsoft. In a similar vein to Henrik Kniberg’s Scrum and XP from the trenches this will be guidance based around how we do things rather than something more general.
In the meantime I thought I’d give you an example of what a daily standup meeting looks like for a patterns & practices team.
Standup meetings at p&p typically take place between 9am and 10am each day. This means the team have the whole day to resolve issues and work on items discussed during standup. It also matches will with our South American developers who are four hours ahead. The testers, who are located in India (nine hours behind), usually have their own sync up meeting at the end of the day and rely on one of the testers in the room to relay key information.
A few minutes before standup starts someone dials into the conference call line. We do this early so there’s time to sort out any technical issues with the conference line and for all the remote people to dial in. You can use this time to talk about the weather (see below). Each team has it’s own Live Meeting code that’s used throughout the project and published on the project Wiki.
- Everybody stands for the whole meeting. This keeps it nice and short, no more then fifteen minutes.
- The last person to arrive at standup gets to go first. If they’re really late then they pay a fine (see fines below).
- Each person answers the three questions; what did you do yesterday, what are you working on today and is anything blocking you.
- Any large issues that come up get put in the parking lot and dealt with after standup is over – this is how we keep the meeting to fifteen minutes. The parking lot is usually a list of set of sticky notes on a whiteboard.
- Once one person has finished they nominate the next person (see the standup game below).
- Once everyone has had their turn the standup is declared over and the team turns to the parking lot to deal with issues raised in the standup. Team members who don’t have anything to contribute may return to their work. Discussion of parking lot issues may lead to new tasks being created.
Who runs facilitates (see comments below) the standup? Typically this is either the lead developer or project manager for the team but it can be anyone.
Games – How to make standup meetings more fun
There are a number of ways we make standup meetings more interesting and fun…
- Bring food – Periodically team members bring cookies and other treats to the team room. These usually appear first thing in the morning around standup. Miss standup, miss the treats.
- Fine latecomers – Many p&p teams fine latecomers a dollar. The money is spent one beer or snacks at the ship party.
- Talk about the weather – Help remote team members feel more engaged by syncing up on other stuff that’s going on in each location. This is a good way to kill time while waiting for everyone to join the call.
- Play the standup game – p&p teams play what I call the standup game. The idea is to try and catch someone out by pretending you’re going to ask one person to go next while actually asking someone else. Usually a team member will look at someone on one side of the room, like they’re about to say “you next” and then say somebody else’s name in the hope that they’re not paying attention. Keeps everyone on their toes.
Currently listening to:
Beastie Boys – Ill Communication