What is the Team Formation Model?
Many new Agilists are familiar with the The Team Formation Model. It describes the various stages through which teams go on their quest to become a great, high performing team. The model describes how new teams often hit the ground running with excitement and anticipation, and experience quick, short lived success. Inevitably, teams run into conflicts as team members “protect their turf” and focus on individual success. Many teams get stuck in this stage; but those that break through do so by collaborating and working as a team. When these teams stay disciplined and trust each other, they may eventually become high performing.
What does this have to do with Agile Software development?
Agile is all about teams. It is not just a series of strict ceremonies to be blindly followed. It is not an excuse to stop writing requirements, create documenation, or follow technical design principles. Agile is a mindset and a framework for creating high performing teams which are able to continuously deliver valuable software to customers. However, it’s not easy to build high performing teams, and the Team Formation Model can help explain why.
Forming: Teams that are new or have recently changed are considered “Forming”. These teams are marked by a mixture of fear and excitement. They may be excited about new possibilities, but are also fearful of what change may bring.
Storming: Inevitably, most teams will enter a period of “Storming”, in which conflict and power struggles take over. As team members get to know each other, they often find things they don’t like and become concerned about their own future. This stage is marked by “me” language from people, as in “Dont’ touch my code” or “That isn’t my bug”. It is this stage in which most teams get stuck and have a difficult time finding their way through.
Norming: Teams that do break out of Storming will next reach “Norming”. This stage is marked by the first signs of true engagement and collaboration. Team members begin working in small groups or pairs, and begin seeing the benefits of helping each other. Norming teams will use “you and me” language; for example “Will you help me with my bug?” or “May I help you with your task?”.
Performing: The rare, elite teams that reach “Performing” truly operate as a single functioning unit. They have shared goals, and work together daily to tackle clear business problems. They are marked by “we” language, such as “We will take care of that.” or “That was our fault!”. Only teams that reach Performing can truly deliver customer value on a regular basis.
Getting Stuck in Storming
Most teams that are new to Agile hit the ground running – they excitedly attend training, shed non-favored practices like documentation and start writing code. After time passes, they enter into storming and they get stuck. Individuals are unsure about their new role and what the future holds. New problems emerge when “the way we’ve always done things” is no longer a valid reason not to change. Everyone has different suggestions and ideas, and conflict is inevitable.
Often, management tries to solve Storming by firing the “problem” person, or moving that person to a different team. This solution does not help a team break through Storming; in fact, since the structure of the team is changing, it sends the team back into Forming. In other words, changing the team structure did not solve the problem, it just delayed it or shifted it to a different team. When teams are stuck in Storming, the only real solution is to directly deal with the conflict with open communcication and transparency.
What to do?
A team that doesn’t trust each other cannot get out of Storming. That is a fact. But building trust is not easy. With software teams, disciplined methodologies like Scrum are designed to help a team create trust. Practices like the daily standup and sprint retrospectives are designed to increase communication among team members. Issues quickly become transparent. This is the first step. The second step is to take actions to resolve issues. A skilled ScrumMaster or Agile Coach can facilitate these sessions to ensure every voice is heard and that actionable steps are identified. They can hold team members accountable to make commitments in order to resolve issues and work through conflict. The third step is to create a disciplined adherence to short, time-boxed iterations in which the team delivers working software. This discipline will establish a sense of collaboration and shared goals, which in turn will build trust over time. Building trust is a team’s best chance to lift out of Storming.