Teams, like newly formed families or groups of friends, start out through meeting, greeting, and building initial relationships. In the beginning all is good and rosy as the relationships begin to forge and build. Soon after the "honeymoon" is over, the individuals with their diversity of personalities, demeanor, and perceptions start to clash. This behavior leads to anger, frustration, and damaged relationships or failing teams. The team's evolutionary behavior described here is a descriptive example of Tuckman's law for the evolution of newly forming teams. Tuckman's law presents the team evolutionary phases of "forming, storming, norming, and performing". How do teams move quickly through and beyond the storming phase into the performing and norming phases? Team Agreements can help.
So what are Team Agreements? Team Agreements are a mutually agreed upon set rules, guidelines, and principles for engagement. These agreements enable a team to work through naturally occurring conflict and points of friction now and in the future. The goal or outcome of Team Agreements is to help teams move quickly through the forming and storming stages into the norming and performing stages where we see the real value and long standing team relationships. This ties back to the 12 Agile Principles for self-organizing teams and enables their formation.
Team Agreements can be made for any event or activity as deemed valuable to the team. Examples where Team Agreements are important for Scrum Team are events such as Refinement, Sprint Planning, Daily Standups, Retrospectives, and operations during a Sprint. A team could have a general meeting Team Agreement in place and also have other agreements in place that may be more specific to one of the other activities listed previously.
So how are Team Agreements formed? There is no right or wrong way to build an agreement, just so as long as the agreement is built by the team for the team based on consensus. A team could simply list out 'rules' to address conflicts or issues that they all agree upon. Other methods, such as Dot voting could be used. For example, the team time boxes a 30 minute meeting to build a Team Agreement for conducting the daily standup. Team members brainstorm and develop a list of rules for engagement or conflict resolution using index cards, stickies, whiteboard, etc. Once the list stops growing, give everyone 5 'voting' dots. If I'm using index cards, I like everyone to have a pen or marker. They get 5 votes they can place all on a single card or they can choose to distribute up to 5 dots across multiple cards. After everyone has had the opportunity to vote then rank or stack the cards in order based on the highest number of voting dots. Take the top 5 +/- (not a rule) and discuss as a team. At this point, the top rated items become the first Team Agreement list for that specific activity. Also to mention, this list is brainstormed, developed, voted on, and committed to by the team. The Scrum Master's role is that of a facilitator in this meeting.
Here are a couple of other examples of Team Agreements:
- Be on time.
- Limit your conversation to the 3 questions as suggested per the Scrum Guide.
- Update your JIRA story card or task prior to or during the standup.
- Conversations be checked until parking lot dedicated time or outside of the daily standup meeting.
During a Sprint:
- JIRA cards and tasks represent current status.
- Limit your work to 2 work-in-progress (WIP) and minimize context switching. Focus.
- Pull in and initiate work from top of Sprint backlog (next in top order of Sprint committed PBI's).
- If more than 3 emails in a conversation, then stop the emails and verbally engage.
Definition of Done (DoD):
- Development complete, code reviewed, and all automated unit tests have passed.
- All code checked in and automatically builds without errors or failed test notifications.
- Technical design document complete.
- Story acceptance criteria met.
When does a team create Team Agreements and can they be modified? Team Agreements can be created or modified at any time. Remember continuous improvement? Team Agreements are especially important when teams are newly forming. Scrum Teams have to move very quickly through the storming phase as expectations for delivery of value are immediate. Because of this natural state of expectation, initializing Scrum Teams should create these initial agreements prior to sprinting. After that, Team Agreements may be created or modified as the team matures and maybe identifies more specific scenarios where Team Agreements make sense. As part of continuous improvement, the team should revisit the Team Agreements for inspection and adaption on a continuous cycle. A great place to do this would be part of the retrospective meeting or maybe the team may choose to have a separate meeting specific to a given Team Agreement. Whatever works best as decided by the team. Team Agreements should be put in place upon the initiation of a new team, created or modified as needed, and continuously improved to better fit the team dynamics as they mature with ever changing environments.
Team Agreements are important to quickly address the natural evolution (Tuckman) of new teams so that they can perform as a solidified unit and deliver value. The Team Agreements need to be put in place as soon as the team is formed so that the teams have a mechanism to mitigate the inevitable conflict that will arise. Team Agreements are just that, an agreement by the team and for the team to promote continued self-organization, performance, and value delivery.