
I'm a huge fan of team-based collaboration to complete small stories through the architecture. (The image above shows three small stories implemented through the architecture.) More collaboration means lower WIP (Work in Progress). That lower WIP allows the team to increase their throughput (finished features) and lower cycle time (release something useful faster). (See how that works in the Flow Metrics newsletter.)
For years, I've used these terms: Pairing, Swarming, and Mobbing. (That link goes to my definition post. I updated that post with the difference between cooperation and collaboration.)
Woody Zuill and his team invented the word “mobbing” to describe the entire team collaborating on one item together in real time. That real-time piece allows full team collaboration. In contrast, swarming teams cooperate on one item together in real time.
For example, orchestras mob because they collaborate over the entire piece together until they complete their performance. While it's difficult to see that outside of work, there is one way to emulate that—in flash mob videos.
Flash Mob Videos Show the Richness and Joy of Collaboration
Whole-group collaboration—a mob—isn't always easy to see. But if you, as I, like flash mob videos, you can get a little glimpse into what software mobbing can feel like.
Check out this flash mob of Ode to Joy. It starts with one performer and one audience member. (Similar to one software developer and one customer.) As the number of performers increases, you can hear the richness of the sound increase. About 3:30 in, you can see the literal joy on both the performers' and the audience's faces.
With more people, everyone hears and feels the richness of the performance. In addition, the performers and the audience experience more joy.
This is more than “teaming.” This richness and joy of collaboration is the best definition of a mob.
Swarming teams might not experience the same richness and joy because they cooperate, not collaborate.
Swarming Teams Cooperate
Back when I was a software developer, I was part of several (sequential) “tiger teams” whenever we had a terrible problem and needed to fix it. Fast. Fast is the operative word.
Our manager made sure we had a dedicated room with sufficient computing power and walls. The walls were for interim or in-progress data.
We swarmed on that problem, checking in with each other every 45 or 60 minutes. (I described this in the earlier post above.) Sometimes, we collaborated, as when another developer and I single-stepped through the code to find the problem that neither of us could detect alone. (We each thought it was a single line of code, but no, it was not.)
On another team, I was a tester collaborating with a developer. Together, we developed the algorithm as a pair. Then, I developed the tests, and he wrote the code (swarm). We read the code together and tested the code together as a pair.
We were only on one part of that critical problem. I don't remember how the other people worked. Some probably paired and some probably worked alone.
The entire tiger team cooperated as an ensemble. Even though we all worked on that one problem, we did not work all together in real time on that one item.
Swarming Videos Show Cooperative Ensembles
Here's a musical example of swarming in 56 Trombonists Play “Don't Stop Me Now” by Queen!!!) The original performer set the timing. (For software, I like to think of this as the initial meeting where people discuss the problem.)
Then, as an ensemble, each trombonist recorded their part separately, making sure to stick with the timing of the original performer. That's an example of cooperation. (We don't get to see the joy until the outtakes at the end.) Finally, one person combined the different cooperative parts into one beautiful outcome.
Unfortunately, too many software teams work like that today. Someone has to collect all the work, package it, and then release it. That's another ensemble role for a cooperative team.
That's why I see a huge difference between ensemble cooperation and mob collaboration. But I bet Woody now uses the word teaming because of the negative associations with the word mob.
What Does Mob Mean to You?
When you think of a mob, do you think of an unruly or revolutionary group of people? Or, are they the Mob, aka the Mafia, the kind of people who might leave a horse's head in your bed? Yikes!
However, there are other definitions for the word, such as (from Wordhippo):
- A group of people in the same place or with something in common
- An alliance of people or groups working together
- The community or common people in general
I recognize the negative connotations of the word mob. But to me, “teaming” is an insufficient description for a mob's collaboration. Teaming does not explain the richness and joy of the collaboration. The collaborative mob often experiences a joy in its achievement that the cooperative ensemble does not.
Ensembles cooperate. Mobs collaborate. Pairs (two people) collaborate. I could call all of these teaming. And all of these options are better than solo work.
While I will continue to use these collaboration terms, do they really matter? I say yes.
Collaboration Terms Matter
Until I started to use value stream maps to see delays in teams, I used “collaboration” for both cooperation and collaboration. I was wrong. (See Measure Cycle Time, Not Velocity to see the difference in cooperative and collaborative value stream maps.)
Too many teams still work as a collection of individuals. We even call these people “individual contributors.” That reinforces resource efficiency thinking, instead of flow efficiency.
If we specify our collaboration terms, we can then decide which kind of collaboration to use when:
- Swarming as a cooperative ensemble. Those teams look a lot like a television show cast where people often do “their” thing and then check in with each other periodically.
- Mobbing as a whole-team collaborative effort.
- Pairing as a collaborative effort between two people. Yes, some swarming teams also use pairs or triads to finish the work.
That's why I find a lot of value in the term mob. When we mob, we collaborate on everything the team does. We can be as fast and as good as possible to create value for the customer. And think about the audience's reaction to a flash mob. Wouldn't you love to see your users experience that much joy at a demo?
I want us to use clear terms for the types of collaboration we use. I've seen too many teams confuse the idea of swarming with mobbing. Worse, a swarming team does not always stay focused on just one item at a time. Instead, when someone is done with that item, they might do research or experiment with the next item on the list. That's not swarming or mobbing. That's increasing the WIP.
Remember, swarming is about cooperation. Mobbing is collaboration. These are two different ideas. If we separate these ideas, we can choose which idea to use when.
Read More
I write a ton about collaboration. You might find these books helpful if you want to consider your options for your team or cohort:
- Create Your Successful Agile Project. Pairing, Triads, team-subset mobbing, swarming, mobbing–it's all in there at the team level.
- Agile and Lean Program Management: Scaling Collaboration Across the Organization also discusses swarming and mobbing for teams and the program team.
- All three of the Modern Management Made Easy books.
I wish teams had all the autonomy they need to consider how they work. That's why I added options to encourage managers to focus on the outcome they want the team to complete.