Fewer than three Development Team members decrease interaction and results in smaller productivity gains. Having more than nine members requires too much coordination.
My own experience is that starting from around 6 people you already have too much coordination. For my team people in the company were complaining that the output of the team was so low. One of my suggestions was clear: Split the team. A suggestion which my predecessor also already tried to change for a year before I started. It took me around 1/2 year to finally get the team to split into two teams of 4. This is what happened to the velocity (the graph shows roughly one year):
I have asked the team in the retrospective directly following the team split (Sprint 100) aswell as after Sprint 100 why they think the velocity has gone up almost 100% and how they felt. This is what they replied:
- Higher identification with stories due to smaller teams
- More focused daily
- More pair programming
- No more "unpopular" stories
- Less time wasted (e.g. in meetings you cannot really contribute)
Now I'm certain this might not happen to every time. It is useful to know that in my case the stories in the initial team were quite diverse and spanned over several products that have to be integrated into the SDK they are building.