Daily Scrum Meeting
In rugby, a scrum is a play, similar to a down in American football. In the Scrum methodology, the Scrum meeting makes a day of work like a play in rugby. It might be rough and tumble, but the goal to make forward progress is clear, and your team pulls together toward that common goal. Your team should hold daily Scrum meetings to determine what it needs to do in the next day to maximize its chances of meeting its commitments. Each team member describes what he or she has accomplished since the most recent meeting, the work that he or she plans to accomplish that day, and any issues or impediments that might affect or require help from other team members.
Your ScrumMaster strictly enforces the structure of the meeting and ensure that it starts on time and finishes in 15 minutes or less. In this meeting, each member of the team answers three questions:
What have I accomplished since the most recent Scrum?
What will I accomplish before the next Scrum?
What blocking issues or impediments might affect my work?
It is important that team members answer these questions quickly and concisely. An example of a good answer is, "Yesterday, I updated the class to reflect the new data element that we pull from the database, and I got it to appear in the interface. This task is complete. Today, I will ensure that the new data element is correctly calculating with the stored procedure and the other data elements in the table. I believe I will accomplish this task today. I will need someone to review my calculations. I have no impediments or blocking issues." Compare that answer to the less-than-stellar answer, "Yesterday, I worked on the class, and it works. Today, I will work on the interface. No blocking issues."
As these examples show, the first response conveys what was accomplished, what will be accomplished, and that the team member would like some help looking at the code. The second example does not provide enough detail about what class the person worked on or which interface components will be done. In fact, the word accomplished never came up.
Notice that no one interrupted during the sample response. There was no follow-up discussion where several people talked about who might be the best person to review the calculations or how the class was implemented. Each person must have sufficient time to answer the three questions. The time for elaboration is after the meeting, as people return to their desks or, if a significant amount of conversation is necessary, in a follow-up meeting. Many teams delay discussions by using the "virtual parking lot" method. As topics come up that a team member feels must be discussed later, any team member can quietly walk to a whiteboard or flipchart and list the topic in the parking lot. At the end of the meeting, the team plans to discuss topics that appear in the list.
Another aspect of a successful Scrum is that people actually stand up. When the team stands up, members feel uncomfortable, especially when they are speaking. If everyone stands, the meeting will keep moving and discourage lengthy conversations.
Third, the meeting should start and end on time and be at the same time in the same location every day. This consistency helps the team because a pattern can be established. Also, the team can post data and notes in the area where the meeting is held, such as burndowns, issues, release plans, and tasks. Alistair Cockburn calls these information radiators in Agile Software Development. Having one location to store and view these important assets as the team meets is an easy way to help things run more smoothly.