What is a Scrum Master and how does one define a barrier within the context of an Agile software development effort?
A Scrum Master is a servant leader of an Agile team. An Agile initiative is measured daily to determine the team's effectiveness.
Why is this measurement a daily ritual?
Daily measurement is embraced by the Agile organization so little things remain that way. Each day the Scrum Master conducts a stand-up and asks - "Do you have any barriers?".
A barrier is anything preventing work from getting done. Agile inherently knows that projects get off track when a series of small and seemingly innocuous items fester. Feed these small items time by not addressing them and then all of a sudden a project is in trouble.
Now that we have established some context let's explore how our servant leader removes barriers.
Scenario 1 – During a stand-up the Scrum Master is informed that a developer is waiting for instruction from another individual before proceeding on a specific work item. This individual may or may not be a part of the team. That is, this individual could reside in another department within the organization.
Servant leadership is critical in an Agile organization as both the developer and the Scrum Master are faced with extracting information from individuals that are not required to help the team. The Scrum Master can lead by example here and work with the developer and double-up on communication efforts. Polite follow-up techniques at a higher frequency are perhaps all that’s required to remove work stoppages. Doubling-up does not necessarily mean a duplication of efforts such as coping managers on an original email. Instead, the Scrum Master could simply swing by this individual’s working space and have an informal face-to-face conversation in an attempt to remove the barrier.
The key concept with this illustration has little to do with the actual impediment. The Scrum Master knew that a single email or communication attempt typically is not enough to remove the barrier. The Servant Leadership concept is for all to practice on the team. Over time the team will realize that each team member shares in the collective output of the Agile team. As a result, the role of the Scrum Master is to demonstrate key behaviors modeled from Agile Principals which is in contrast to typical Command and Control leadership roles defined by political might and absolute project authority.