It is perhaps a myth, but an enduring one, that people and their pets resemble one another. The same has been said of products and the teams that build them. If it is true that a product reflects the structure of the team that built it, then an important decision for any Scrum project is how to organize individuals into teams. This paper presents a set of guidelines to consider in designing an appropriate team structure. Each guideline is presented in the form of a question to be asked of a current or proposed team. The questions are intended to be asked iteratively. Ask each question of a current or proposed team, changing the structure as appropriate based on the answer. As the structure changes, re-ask the questions until you can answer “yes” to each.
- Does the structure accentuate the strengths, shore up the weaknesses, and support the motivations of the team members? People don’t enjoy being on a team where they are not able to make use of their strengths or are constantly required to do things they are bad at. Good team members are willing to do whatever is necessary for the success of the project, but that doesn’t relieve us from the goal of trying to find a team structure that accentuates the strengths of as many team members as possible.
- Does the structure minimize the number of people required to be on two teams (and avoid having anyone on three)? A well-conceived team structure for an organization that is not attempting to do too many concurrent projects will reduce multitasking to a tolerable level. If more than 20% of all team members belong to more than one team, consider an alternative team design or deferring some projects.
- Does the structure maximize the amount of time that teams will remain together?
If other factors are equal, you should favor a design that allows team membership to persist over a longer period. It takes time for individuals to learn to work well together. Amortize the cost of that learning over a longer period by trying to leave teams together as long as possible. - Are component teams used only in limited and easily justifiable cases? Most teams should be created around the end-to-end delivery of working features. In some cases, it is acceptable to have a component team developing reusable user interface components, providing access to a database, or similar functionality. But these should be exceptions.
- Will you be able to feed most teams with two pizzas? Given the compelling productivity and quality advantages of small teams, the majority of teams in a good design should have five to nine members.
- Does the structure minimize the number of communication paths between teams? A poor team structure design will result in a seemingly infinite number of communication paths between teams. Teams will find themselves unable to complete any work without coordinating first with too many other teams. Some inter-team coordination will always be required. But, if a team that wants to add a new field on a form is required to coordinate that effort with three other teams, as I’ve seen, then the communication overhead is too high.
- Does the structure encourage teams to communicate who wouldn’t otherwise do so? Some teams will just naturally communicate with each other. An effective team design encourages communication among teams or individuals who should communicate but may not do so on their own accord. In fact, one valid reason to put someone on two teams is that doing so will increase the communication between those teams. If lack of communication between two teams is a concern, splitting a person’s time between those two teams is easily justified.
- Does the design support a clear understanding of accountability? A well-designed team structure will reinforce the concept of a shared, all-teams accountability for the overall success of the project while providing each team with clear indicators of their unique accountabilities.
- Did team members have input into the design of the team? During the early stages of your transition to Scrum, this may not be possible. Individuals may not yet have enough experience delivering working, tested, ready-to-use products by the end of each sprint. Similarly, some individuals may be initially too resistant to Scrum to contribute to team structure discussions in constructive ways. In these cases, it is acceptable for managers outside the team to design an initial team structure.
An effective team structure is one of the most critical factors in the success of any agile endeavor. Poorly structured teams will lead to inefficient teamwork, excessive integration challenges, multitasking, low morale and other problems. By using these nine questions to carefully consider how teams are organized you can avoid these problems.

Nine Questions to Assess Team Structure by Mike Cohn is licensed under a Creative Commons Attribution-No Derivative Works 3.0 United States License.
Based on a work at blog.mountaingoatsoftware.com.
Mike,
Excellent post, as usual.
One little detail, however: the pizza analogy is a little US-centric; in Argentina two pizzas feed four men (and in Italy it’s probably just two)
Thanks, Diego. You’re right about the pizzas but it’s the idea that counts. If ordering lunch for your team is hard (“how many vegetarians do we have?” “Is any gluten-free?”), the team is probably too big.
Mike, we are italians! with two pizzas you feed just two people!
Hi Stefano–
I must be part Italian then myself!
Hi Mike,
A really interesting read, particularly your first point about finding a “team structure which accentuates the strengths of as many team members as possible”. Just last week I blogged about a production support role in a team I work with. We’ve worked hard to create a structure for both accentuating team members strengths, and for minimizing distractions and requirements for multi-tasking.
It took the team some time to find the sweet spot for the team structure. Thinking back, the entire team used the retrospective as a forum for constant evaluation of our progress on creating the ideal production support role. In Shopzilla terms, the optimal “Fire Chief”.
Cheers,
Rod.
Hi Mike,
I couldn’t agree more! A good Team structure is crucial for succeeding in teamwork (agile og nonagile).
Keep up the good work – I look forward reading further posts!
Regards
Per Lund
Thanks, Per.
the pizza analogy is a little US-centric; in Argentina two pizzas feed four men
You need to get some bigger pizzas!
Yes, it is perhaps US-centric. But the idea holds. Pick a local food and some quantity of it and use that as a gauge for team size. (Perhaps some churrasco steak. I had some from Argentina last week and it was the best I’ve ever had.) Alternatively, I often simplify the idea by saying that if ordering lunch for a team meeting is hard, the team is probably too big.
Hi Mike,
Great article as usual. Regarding point -2- when you say no more than 20% should be in more than 2 teams, does this stand also for having multiple projects with the same team? i.e. the same team has 3 projects in parallel however no person is on any other team. Thanks.
Hi Alaa–
Thanks for your kind words. I don’t mind when one team works on many projects as long as the one team has one person doing prioritization for them. That is, it shouldn’t be up to team members to resolve disputes among a dozen competing stakeholders.
I will say, though, that when a team is working on a lot of projects, it can often be worthwhile to batch them up a bit because I’m fully convinced there are synergies to be had that way. So, rather than work on projects A, B, C, D, E, F, and G this sprint and then A, B, C, D, X, Y, Z next sprint it may make sense to just get ABCD done in the first sprint and then do E, F, G, X, Y, Z the next. Whoever manages priorities for the team in this situation should be on the lookout for such opportunities.