Social Contracts for Agile Teams

Social Contracts for Agile Teams


Team member cohesion is an important factor in building a high-performing team, however achieving this cohesion is often easier said than done. Social Contracts are a tool I’ve used to build cohesion quickly and effectively within teams. If you have never heard of Social Contracts, don’t worry, you are not alone. Many people have not heard of them. In this post I’m going to share with you a complete guide to Social Contracts covering the how, what and why of building a Social Contract. After reading this post you should be well prepared to go and build Social Contracts with your own teams.

What is a Social Contract?

A Social Contract is a set of agreements that a team makes within itself to describe how the team members will behave and work together. Social Contracts are sometimes called Working Agreements. Ideally it will balance aspirational goals of the team with the details of actual behaviours and attitudes that the team want to see in action.

The Social Contract should be unique to each team and changed as required. It is a set of agreements, not a straight-jacket, and as new team members come on board it may need to change.

There are several key attributes of a Social Contract:

  • Outside of an Organisation’s agreed policies and procedures, but cannot override them.
  • Created and changed by mutual agreement of the team members.
  • Exists for the life of the team.
  • Enforced by mutual agreement of the team members

Why have a Social Contract?

Agile Teams should be as self-organising as possible and therefore it is ideal for an Agile team to define their own standards and have a sense of ownership and commitment to them. This helps the team to build a unique character and creates a shared sense of identity.

A Social Contract can also be an important way of reminding team members that the way of working has shifted from a system of control, to a system of trust. People invariably forget their agreements over time. Anyone can ‘enforce’ the Social Contract by pointing out deviations. This in turn contributes to a safe working environment which enables team members to have conversations about behaviours considered inappropriate

Forming the Social Contract

Who

It is essential that the whole team should form the contract. You should ensure that all team members participate in forming the contract, as members who are absent may feel little ownership of the contract, which can in turn dilute the power of the contract.

Management typically has little input into forming the contract. They may find value from gaining awareness of the team’s commitment and accountability from the finished contract.

Where

Ideally the contract should be formed in a comfortable private room, away from the normal working environment and distractions.

When

Try to also avoid times where people might find it difficult to concentrate (for example close to the end of a Sprint, Friday afternoon or Monday morning). Mid-morning is often a good time for software development teams as the team are normally sufficiently caffeinated by this time.

How

The following are the steps I recommend to create a Social Contract with your team.

1) Hold a workshop with the whole team. Consider starting with a quick Agile game to get everyone into a relaxed, energized and positive state of mind. (See Awesome Agile Ceremonies or Tasty Cup Cakes for game ideas).

2) Run through the What and Why of Social Contracts to ensure that everyone is starting on the same page.

3) Review some examples of the Social Contracts from other teams (see later in this post).

4) Give the team members a minute or two to think about what they want to get out of having a Social Contract. Target the individuals’ self-interest. This should get them involved in the discussion rather than feeling forced into the process.

5) Brainstorm the contents of the Social Contract. In my experience this can sometimes be a slow process. You can speed it up by:

a.     Having plenty of samples available for the team to re-use in their own contract.

b.     Break the contract into sections, and work on one section at a time.

6) Once all the agreements have been recorded, print out the contract on an A3 sheet of paper and have all team members sign it.

It is important to note that nothing should go into the Social Contract unless it has complete agreement from all team members.

Where to put it

Ideally, put the Social Contract on the wall in the team/project area so everyone can see it and it can serve as a reminder to the team.

Examples from Social Contracts

The following is a collection of agreements and statements sourced from a number of Social Contracts on the internet, grouped together into categories. These are presented so that you can cherry-pick the individual agreements that are right for your team.

Meetings

  • Stand-ups at 9:00am.
  • No meetings between 12 and 2pm.
  • Be present for a core set of hours: 10am to 4pm
  • No regular scheduled meeting in the last 2 days of a sprint/iteration.
  • If you don’t believe you can contribute to a meeting, let the organiser know and don’t attend
  • Ensure all meetings have an agenda and that actions are recorded
  • If you can’t attend or need to leave early from a meeting notify the team beforehand
  • Come prepared to meetings
  • Be on time for Stand Ups and meetings
  • Mobile phones on silent
  • Everyone has equal voice and valuable contribution.

Communication

  • Raise a problem as soon as you see it
  • Face-to-face conversations over email, anytime
  • Respect each other and understand differences in knowledge
  • All team documents are to be shared
  • There are no silly questions, if you don’t understand, ask
  • Share success stories
  • Focus on the positives
  • Don’t make assumptions
  • Don’t interrupt and cut another person off while they are talking
  • Listen when someone is talking, don’t interject
  • We have zero tolerance for bullying.
  • Communication in this order: Face to face, phone call, Instant Message then email
  • Publish phone numbers and open and share calendars
  • Use Slack as the primary method of team communication.

Agile way of working

  • If are assigned a job, take ownership of it and keep it up to date
  • Stick to your agreed working patterns. Let the team know when you are late or going early
  •  If you think you need to work late to get the work done please highlight this to the iteration manager
  • Update cards before the Stand Up
  • Engage with a person before assigning and handing over a card
  • Keep JIRA board updated at all times.
  • Update the Scrum Board as you progress the story i.e. don’t update at standup.
  • Whoever breaks the build, fixes the build.
  • When Pair Programming, turn off distractions (email, IM)
  • Sufficient documentation, don’t document for the sheer heck of it
  • Ask or help
  • Solve roadblocks within the team. If the impediment can’t be solved within the team then give it to the Scrum Master.

Now it’s your turn

Now that I’ve shown you how and why to build a Social Contract, it’s time to roll up your sleeves and build one with your own team. Have fun in the process and let me know what a difference it makes to your team over time.

 

This post was originally published on LinkedIn.

+ There are no comments

Add yours