I don’t see a lot of talk about team swarming (sometimes referred to as mobbing) yet it can be one of the most powerful problem-solving techniques for breaking through really difficult challenges. A swarm is where you get the whole team together to focus on solving a single problem. You can also focus on multiple problems but only one problem at a time. Here are seven strategies for effective team swarms:
1. Be a team
When swarming, the whole team works together on the same problem. It helps to know each other and work well together. Generally, groups need to go through the phases of forming (getting to know each other) and storming (having conflicts and resolving them) before they get to performing (being a highly functional team), so give everyone the space to become a team.
2. Swarm frequently
Swarming on a an important problem can be a great way to help a group come together as a team. It also builds problem-solving and collaboration skills so treat swarms as a team building exercise as well as a problem-solving exercise.
3. Encourage diversity
We all have unique talents and the more we are encouraged to bring out our best, the more we will. People are the key asset to any organization and we are motivated to make a difference more than to make money. Being great means taking risks so managers must provide safety to encourage greatness.
4. Pair within swarms
Swarms self-organize, they figure out what needs to be done and do it. Sometimes this requires the momentum of the whole group and other times parts of problems can be done in isolation. Rather than working alone, see if solitary tasks can be done by two or sometimes three people. Often, the momentum gained by working in pairs offsets putting two people on the same task. Remember, high performance teams almost always pair on tasks.
5. Check in frequently
I often like to treat swarms as mini-iterations. We swarm on critical unknowns so it is valuable to check in frequently to see progress and cross-pollinate ideas. I like to check in every twenty minutes but certainly no longer than every few hours.
6. Update estimates frequently
During check-ins, it is valuable to update estimates and reassess tasks as new information comes to light. Estimation is a skill that only improves with practice so the more frequently you update your estimates, the more accurate you become at estimating.
7. Engage everyone
Treating team swarms as a team building exercise can be a powerful way to support team members but only if everyone is engaged. Use exercises and processes that involve everyone, like fist-of-five and other estimation games, so everyone feels included and no one is left out.
Swarming is not for addressing all problems but it can be an effective tool for show-stoppers. When the whole team is engaged in solving a problem it creates a forward momentum that helps push passed impediments more effectively. Swarming can also be a valuable way of building problem-solving and collaboration skills on a team.
{7 Comments }
Previous Post: « Seven Strategies for Pair Programming
Next Post: Seven Strategies for Customer Collaboration »
Thank you for this excellent post! It would be interesting to hear more about your experiences and the way of using swarms. Do you still use swarms? What have you learned from them?
We have developed an model what we call skill swarms. It would be nice to have your comments on our model. You can find it on our blog: http://intunex.fi/2014/06/30/skill-swarms-a-new-way-to-share-expertise-and-work-smarter-together/.
Thank you for your comment, Janne. I teach classes for software developers and in many ways they are like swarms. There’s a lot of power in focusing several minds on a single problem. However, I do more problem-solving work in pairs than in swarms.
Your article on skill swarms is very interesting. Thank you for sharing it.
David.
I’m interested in delving a little deeper into this statement: “Remember, high performance teams almost always pair on tasks.” – I wonder if this is garnered from your experience, whether you have any metrics to back this up or whether there’s a citation to research for this as it’s quite a strong assertion.
I wasn’t citing a research study, merely speaking from my own experience working with many top teams and, of course, there’re exceptions.
Can you explain , how 5 to 6 developer will work on 1 story?
Also how it will be cost effective if we put 6 developer on same story?
Please explain with your live experience so i can connect and understand more better way
Hi Kshitij,
Thank you for your question.
A swarm is when the whole team works together to solve a single issue. Usually, it’s a “show-stopper” issue that blocks the whole team anyway so they can’t do anything else in the meantime. But a swarm implies a different way of working than usual. When a team swarms together all the time (or most of the time) we call that mobbing.
As I indicated in my previous comment, I have a lot more experience with pairing than mobbing. I wouldn’t say that teams should mob all the time (although I know teams that do and they swear by it) but mobbing can be really helpful when the team needs to adopt new practices or review code and can get everyone up to speed very quickly.
There’s more information on mobbing and a time-lapse video of the Hunter team mobbing at http://MobProgramming.org. The video shows a day in the life of a team mobbing condensed down to five minutes. Aside from Woody, the manager on the right who likes sitting with the team, everyone else is fully engaged in solving the programming task at hand. Often, when coding we have to take detours to research an API or figure something out. In a mob, one person can do a research task while the rest of the team focuses on the main story.
Mobbing seems to work for them and many other teams but it doesn’t work for all teams.
I hope this helps.
David.
Hi David
just found this via a google search for swarm teamwork – really enjoyed it and found it very useful thank you for the taking the time to write down your thoughts
Thanks, Laura