A SCRUM Master is an individual who facilitates the workings within a team. This person shields the ICs from unnecessary work and strives constantly to remove impediments. In many teams, SCRUM Masters conduct meetings so the functional manager (lead) can focus on other things. If a team does not have a SCRUM Master, then the lead fulfills this role.
The SCRUM Master has several responsibilities, including conducting meetings, relaying information, and managing project status information.
Conducting Meetings
In the workplace, all members of a team meet every day for a "Daily Standup." This brief meeting takes less than five minutes, where each member of the team answers three questions:
- What did I just finish?
- What am I working on next?
- What is keeping me from accomplishing a given task?
The SCRUM Master conducts the daily standup and records the result. These results are then made available to the lead when he/she is making decisions such as risk determination (what could keep us from delivering?), resource allocation (who should get the next assignment?), and personal development (how can a given person work more effectively?).
Relaying Information
In a small team working in a confined space, it is very easy to get the information you need: just ask the person next to you. In distributed work environments (when people are working in different physical locations) or in asynchronous situations (when people hold different work hours), this can be very challenging. One of the chief responsibilities of the SCRUM Master is to pass information from the lead to the intended audience, and to collect information from the team back up to the lead. While this may seem trivial (isn't that what e-mail is for?), the most important information is difficult to gather.
The team lead often relies on the SCRUM Master to get answers to difficult questions, such as:
- Who is feeling stressed or overworked?
- What are the chances that a given deliverable will not be ready on time?
- Does everyone understand the new workflow the chief editor just introduced?
Managing Status Information
The "project backlog" is the set of tasks that need to be complete by the next milestone. Each item on the backlog may have a priority as well as an estimate. The lead knows the backlog needs to be finished by the end of the milestone, but does not necessarily want to be concerned with its details. The SCRUM Master manages the backlog, collects status information about the state of various tasks, and makes reports to the lead. In many teams, the Q/A serves as an important checkpoint for all submissions. It is the Q/A who accepts a given submission as being "good enough," or who sends a submission back to the IC who authored it. In this way, the Q/A is a gatekeeper, ensuring that everything that receives his or her approval meets the required quality mark.