Search⌘ K
AI Features

Team Building: Team Structures and Subteams

Explore methods to build and structure large agile teams by dividing them into manageable subteams. Understand the benefits of combining horizontal and vertical team divisions, and learn how technical service teams support domain teams to optimize collaboration and project success.

Overview

A large team is hardly manageable as a whole. Therefore, to establish a flexible team, the team is usually divided into subteams of no more than ten members.

The typical structure used by large teams (and in large companies) is still based on Taylor’s theory of building teams according to their knowledge. Therefore, we will often find an analysis team, a design team, a test team, and so on. The developers are typically further subgrouped into smaller subteams, each responsible for a specific function like presentation, database, network services, etc. This Tayloristic split is also known as horizontal team division. Taylorism works quite well for repeatable jobs. It doesn’t work well if a lot of creative and holistic thinking is required.

We can also consider defining vertical teams focused on business functionality. These teams are also known as domain or feature teams, as Peter Coad terms them in the Feature Driven Development process. On the other hand, if we divide the team vertically, we might find that not every team has all the necessary skills, or even worse, every team might start to address the same problems.

Example of horizontal and vertical teams

In this example, we can see horizontal ...