The standard rule of thumb for an Agile team is 7 +/-2 team members, or somewhere between 5 – 9 people. Did you know that translates between 15 – 36 lines of communication?
There’s a formula for it. The number of ways communication can flow between people, that is. It is based on the number of people in the team.
(n2 – n) / 2
where n = the number of people in a team
That works out as follows:
Can you appreciate how complex 45 lines of communication is? I didn’t until I looked at pictures depicting it. Each dot represents a team member, and each line a potential line of communication. The red dots and lines represent the increase as you add an additional team member.
If “simplicity, maximizing the amount of work not done” is one of the 12 Agile principles then it seams like optimizing team size is a good way to do so. When you’re thinking of building Agile teams think less about all the “roles” you need and more about the fewest number of people that can provide all the necessary “skills” the team needs in order to deliver potentially shippable product each iteration.