One Team Project to rule them all
Explains how to manage multiple teams and projects in Team Foundation Server using a single Team Project, with tips on Agile planning, backlogs, and …
TL;DR; Using a single Azure DevOps project for all teams and products reduces fragmentation, improves visibility, and streamlines governance compared to managing multiple projects or organisations. Key benefits include unified reporting, easier collaboration, and lower administrative overhead, while Area Paths and Teams provide the necessary structure and security within one project. Development managers should consolidate into one project where possible, using Area Paths and Teams to model structure and scale, to optimise flow and delivery.
Most organisations still believe that managing multiple projects means a better organisation. It doesn’t. It could just be hiding your problems or even creating them.
If you’re still using multiple team projects in Azure DevOps to represent every application, every team, or every product, you may be paying the price in fragmentation, lost observability, and poor flow. That might have made sense in TFS 2005, but it’s a liability in 2025.
The real path to high-performing teams? One Project to rule them all. One Azure DevOps Project, multiple teams, focused goals, observable flow. Scaled, not scattered.
I have been advocating for One Team Project to rule them all almost from the beginning with Project of Projects with team Foundation Server 2010 and my stance has not changed, although the Azure DevOps product has a over the years.
The “many teams and projects” model in Azure DevOps is Microsoft’s own recommended setup—and one they use internally. It can make life easier for portfolio management and cross-team collaboration. But it comes with a price: increased complexity in setup, configuration, and ongoing maintenance. You’re trading operational simplicity for structural flexibility.
“One project to rule them all [Teams] and in [Azure DevOps] bind them” - Martin Hinshelwood, 2010
Microsoft clearly advises that projects are there to support multiple business units and gives the following reasons for creating multiple projects:
I removed three reasons they give from this list, as they are generally irrelevant for most organisations. The first was the permission boundary, which I will handle below; another was for testing customisations, and the last was for a separate public OSS project.
Nowhere does Microsoft, as the creator of Azure DevOps, advocate for a Project per project, initiative, or effort within your organisation.
In most organisations, we aim to create cross-functional teams capable of delivering across a portfolio, at least within a defined funding stream or budgetary unit. As organisations grow, they typically segment into multiple funding streams, but decision-making around where and how to apply funding remains centralised within each unit.
Azure DevOps’ organisational and project boundaries can hinder this flexibility.
Every additional Organisation and Project adds friction that Azure DevOps is not designed to resolve. These aren’t flexible abstractions; they are hard boundaries and are by design.
None of these constraints provides anything that a single project and a sane Area Path strategy couldn’t already achieve, with less overhead and more coherence.
Here is a summary of the three options:
I have always advocated for larger projects and use the following rule of thumb:
If you have money, people, work, or products that interact in any meaningful way, then they should really be in a single Project.
Let’s not pretend this is theoretical. Microsoft’s own Developer Division (DevDiv) utilises a single Azure DevOps project to manage source code, builds, releases, test cases, and work items for over 2,000 engineers. For the Windows team at Microsoft, it’s more like 15,000 people in one Project.
If that’s not proof this scales, what is?
A modern Azure DevOps project is designed to scale horizontally using Teams, and Area Paths and not by creating new team projects. This means that you need to deliberately design your strategy to avoid it becoming a total midden.
Inside Azure DevOps, while teams are a flat list, they are linked to Area paths, a hierarchy, to determine which work items are included in the teams view, and thus their backlogs and boards.
Here’s how it works.
This is going to get confusing since “Team” can mean “team of people” or the Azure DevOps construct of “Team”. Im going to try and explicetly say “Azure DevOps Team” to refer to the construct and “team” to refer to a group of people. These people could be a “portfolio team”, “feature team”, or “delivery team”.
Your Area Path hierarchy is the backbone of visibility, governance, and scale. Treat it as a map of how your products are delivered—not how your org chart looks. It should reflect the product structure and value streams, not departmental politics.
Create a distinct leaf node for every delivery team. This gives you fine-grained control for permissions, test plan isolation, dashboard targeting, and scoped visibility. Intermediate levels should reflect coherent product or platform groupings, enabling roll-up views without breaking team autonomy.
1MyProject
2 ├── Product A
3 │ ├── Team 1
4 │ └── Team 2
5 ├── Product B
6 │ ├── Team X
7 │ └── Team Y
8 └── Platform
9 └── Shared Services Team
If your hierarchy matches your architecture and delivery teams, you unlock real traceability. If it mirrors your reporting lines, you’ll spend your time fighting visibility gaps and access problems.
Use Area Paths deliberately. They are your primary tool for scoping permissions, isolating test plans, assigning build policies, and targeting dashboards. Keep them stable. Don’t reorganise on a whim.
Each Azure DevOps Team is a lens into a defined slice of the Area Path hierarchy. That lens determines what work shows up on its backlog, board, and delivery plans. Clear, non-overlapping ownership is essential if you want visibility without duplication, focus without conflict.
The key? Design the Area Path hierarchy with intent, then map each team to a specific leaf node. Use the “include sub-areas” option carefully. Avoid overlap. One work item, one team board.
A work item should never appear on two boards. If it does, your setup will confuse stakeholders and erode trust.
Here’s a common, pragmatic split:
This setup enables delivery teams to focus on tactical work, while leadership tracks strategic progress—all in the same project, without duplication.
Keep Iteration Paths consistent across teams where possible. This enables consolidated reporting and facilitates shared understanding of delivery cycles.
When teams have different cadences within the same funding structure, it can cause friction and delays.
When Team A says that the work will be done by Sprint 23, what does that mean? If Team B is on a different candidate, then this could be their Sprint 45, or the Shared Platform Teams Sprint 3. A balance of autonomy and alignment is important when lots of folks are working together in the same value stream.
Choose a cadence for review and delivery that aligns with the business needs, stakeholder engagement cadence, and the effective planning horizon. Regardless of the delivery team’s chosen process, everyone inspects and adapts at least on that cadence.
If you must deviate (e.g. teams with different Sprint lengths), isolate only the differing branches.
One of the most common justifications for multiple team projects is “security.” But Azure DevOps already supports:
You can grant fine-grained access control to individual teams, stakeholders, or systems without fragmenting your project into unmanageable silos.
Use Azure DevOps Groups that contain Enta ID groups to maintain flexability and clarity
If you’re using one Azure DevOps project with clearly defined Area Paths and Teams, reporting becomes dramatically simpler, more powerful, and more honest.
Everything you need is in one place: Work Items, Repos, Pipelines, Releases, Test Plans. That means dashboards, boards, analytics views, and Delivery Plans just work—with no duct tape, no spreadsheet exports, no cross-project hacks.
And when you need more:
Reporting doesn’t just inform—it aligns. A unified project gives you shared truth. Every extra project boundary erodes that.
Azure DevOps isn’t just tooling; it reflects how your organisation thinks about delivery. If you design for control, you’ll get silos. If you design for flow, you’ll get visibility, alignment, and adaptability. Its an intrinsic part of your systems of work.
Every new project boundary introduces delay, friction, and duplication. Every extra organisational boundary kills collaboration and wrecks observability. You don’t need more buckets. You need better boundaries inside one.
Design your system of work to reflect how you deliver value, not how your teams report. Use one project. Use Area Paths and Teams to model structure and scale. Secure it properly. Report from it meaningfully. And let your delivery system evolve with clarity, not chaos.
Don’t build around exceptions. Build for flow.
One Project. Many teams. Clear constraints. Value, continuously delivered.
It’s clear that everyone refers to things within Azure DevOps differently, and naming is not Microsoft’s strong suit. Here is what I mean when I use terminology in this post:
Each classification [Concepts, Categories, & Tags] was assigned using AI-powered semantic analysis and scored across relevance, depth, and alignment. Final decisions? Still human. Always traceable. Hover to see how it applies.
If you've made it this far, it's worth connecting with our principal consultant and coach, Martin Hinshelwood, for a 30-minute 'ask me anything' call.
We partner with businesses across diverse industries, including finance, insurance, healthcare, pharmaceuticals, technology, engineering, transportation, hospitality, entertainment, legal, government, and military sectors.
Slicedbread
Boxit Document Solutions
YearUp.org
New Signature
Healthgrades
Workday
Graham & Brown
Boeing
Brandes Investment Partners L.P.
MacDonald Humfrey (Automation) Ltd.
Kongsberg Maritime
CR2
Genus Breeding Ltd
Akaditi
Xceptor - Process and Data Automation
Emerson Process Management
Deliotte
Microsoft
Washington Department of Transport
Ghana Police Service
Royal Air Force
New Hampshire Supreme Court
Nottingham County Council
Department of Work and Pensions (UK)
Deliotte
DFDS
Genus Breeding Ltd
CR2
Microsoft
YearUp.org