Nov 25, 2011

On the Daily Scrum

Introduction
In a team environment, collaboration is essential for achieving the goals within a time-boxed iteration. Within the Scrum process, it is a subject to the Daily Scrum implementation to establish collaboration context within the team, and expose the benefits of the collaboration, so an appropriate implementation is necessary. Additionally, enforcing collaboration in Scrum is essential  in the absence of a command-and-control manager to enforce it, to justify the absence of the manager.
This blog post introduces a new tool named collaboration board and a proposed Daily Scrum implementation with corresponding question to fill the collaboration board.
The Daily Scrum
One of the few building blocks of  the Scrum framework is the Daily Scrum a.k.a. Stand-up, at which each team member answers the three questions:
  • What have I done since yesterday?
  • What am I planning to do today?
  • Any impediments?
The participants need to understand what could the answers of these questions change. Who should use the answers, and what for? This explanation can be essential for establishing an attitude towards the process, and on the long term even influence the performance and work satisfaction of the participants.

The command-and-control project management style
Scrum is a set of simple rules of a framework that is an alternative to command-and-control management style. It is important to understand, that  the role of the command-and-control manager is to be compensated by an empowered team. In order to justify the team empowerment and the absence of the command-and-control manager, the team members has to make some effort. That is it: with the Scrum framework, if the team members are informative, cooperative, disciplined and contribute, the team as an entity does not need a command-and-control manager. The Daily Scrum  is supposed to target the informative and cooperative part on a daily basis, to serve as an information exchange activity and provide context for collaboration.
It is important to understand the Daily Scrum as an activity used to provide  information exchange and context for collaboration. However, at least in the company I work for, people tend to consider the daily Scrum as a scene, on which the participants report to a product owner.
What is the problem with reporting?
Let's see what follows if we take part in the Daily Standup with that reporting attitude (to report e.g. to the product owner). If the daily Stand-up is understood as reporting, people tend to put themselves in a defensive position, because to report is associated with being subordinate and managed. To inform does not necessarily impose a mood of being subordinate and managed. As result, with that feeling it is difficult to enjoy and maybe impossible to benefit from the Scrum process as well as contribute to improvements.
What needs to be done here is to use a different understanding of inform, to absorb that defensive facet that comes by the reporting association. In this sense, it would be appropriate to put the focus on the patterns used to implement the task, and on the benefits of collaboration within the team, that contributed for the task achievement. The benefits can be for example, concept validation / feedback, experience sharing, cut-down development time or leveraging creativity.

Proposed Daily Scrum Implementation
 So what do we do to assert that this attitude be changed in order to:
  • expose the benefits of the team collaboration and have the participants develop positive attitude with the time towards the process (perhaps increase satisfaction);
  • justify the absence of command-and-control manager for the information exchange and collaboration responsibilities;
  • implementation the Daily Scrum in a way that does not suppress people;
Here is my proposal to address the bullet points above in the Daily Scrum.

"What have I done since yesterday?"
Time-boxed within 2 minutes. Take some time to prepare yourself, otherwise you will not fit into the 2 minutes.
  • Give a short answer of the question in 2-3 short sentences using the header descriptions of the issues only.
  • With whom did you collaborate? If someone gave you ideas and help, give this person a +1 on the collaboration board. Use at least the following dimensions for the reasons you gave a +1: ideas, workforce, feedback (add new or remove if appropriate). Here are some example outcomes from collaboration: results from code review, a success story, a big improvement, new pattern, the simplest solution etc. 
  • Was it something big that you would like to share? Invite the team to a session where you have enough time to say what you want.
  • Set a person to give you feedback from what you did, if you worked on the task/tasks alone.
"What am I planning to do today?"
Time-boxed within 1 minute. Say briefly what you will do, using the header descriptions of the issues.
  • How do you estimate the task in terms of complexity?
  • After the stand-up discuss the approach and/or outline the solution with a domain expert, if there is any. Find yourself a collaboration partner within the team.
"Any impediments?"
Extract the information that concerns the team. Prepare to be short and clear. Explain the details to your ScrumMaster in a 1:1.