There's not a lot that Brooks got wrong but the surgical team is it.
There's not a lot of team in a surgical team. Software does not need to be limited to one thing happening at a time the way open heart surgery does. There's room for more hands.
It's more like a sports team. But we don't practice, review, or coach the way they would, and so it takes a lot longer for us to reach excellence.
Have you ever seen or been to a serious surgery? The operating room is full of people, and those are some of the most gelled teams you'll find anywhere.
Brooks' idea is that the surgeon calls all the shots and everyone else is being orchestrated by that one person. There is only one person holding a knife at any point and that's generally the surgeon.
How many people are there besides the surgeon? About six? That's pretty much all one person can wrangle.
That's not enough for a large scale software project. We keep trying to make it work with Scrum teams but it is broken and we know it.
Most of the highest functioning projects I've been on have had a couple of 'surgeons'. And while they often work on separate 'patients', it's not always the case.
Aren't there some surgeries now where more than one surgeon is operating concurrently? All I can find is that there's an Insurance Code for it.
There's not a lot of team in a surgical team. Software does not need to be limited to one thing happening at a time the way open heart surgery does. There's room for more hands.
It's more like a sports team. But we don't practice, review, or coach the way they would, and so it takes a lot longer for us to reach excellence.