How Feature Distribution Impacts Team Performance and Quality
We will explore how different feature distribution strategies work, how they affect our performance, and how we can improve them.
The situation is as follows: we are working on a large software development project with a dozen teams, and a new feature comes in. How do we decide which team gets the next feature?
We typically encounter two approaches: 1) distributing based on team capacity, and 2) distributing based on each team’s expertise. The question is, what are the advantages and disadvantages of each strategy? And does a hybrid approach make sense?
Balancing Strategy
Load balancing among teams is one of the first mechanisms that come to mind when thinking about how to distribute features. It’s simple: when a new feature arrives, we look at which team has the least load or the lowest priority tasks and assign it to that team.
For example, if we have five teams as shown in the following figure: