Architect resources

NDD and the Supergraph

In this article, we explore how Narrative Driven Development (NDD) ensures that requirements remain unified and effectively to solve challenges faced by data teams maintaining schema consistency within a GraphQL supergraph at scale.

The single source of truth for our data

The GraphQL Supergraph has transformed the way we build our systems. The supergraph gives us a great tool to bring order from the chaos of data. As supergraph practitioners, we now have a unified schema that integrates many data sources into one cohesive API. This has enabled us to scale our graphs to unprecedented levels such as systems supporting 200M or more transactions per day. We experience many benefits from having a single source of truth for our data: simplified client interactions, improved data consistency, reduced redundancy to quote a few. More and more companies are moving towards GraphQL federation as a solution to their data problems.

The problem with GraphQL federation

There's no doubt federated schemas can deliver on their technical promises. We finally have a single source of truth for our data, exposed through a single API. But as many of us are discovering, even that is not enough on its own to ensure excellent systems for our customers and users. To succeed, federation utterly depends on effective collaboration among data teams maintaining schema consistency. Schema consistency comes from clear and accurate requirements, clearly communicated across teams and in context of the user journey and system architecture.

Without those, we’ve seen supergraph adoption slowing to a crawl, creating a host of issues:

  • Execution becomes fragmented.
  • Communication breakdowns become the norm.
  • Inconsistent adoption rates create silos of functionality.
  • It all starts feeling a bit chaotic

And more importantly, we’re not able to achieve successful user outcomes.

In our experience these are not problems per se. They’re symptoms. We often hear these symptoms used to criticize supergraphs as a technology. But that’s not quite fair to the supergraph, and it’s not fair to the many success stories that are driving the continued innovation of the supergraph. Because no matter how neat the implementation, a single source of truth for our data will always be hard to manage without a single source of truth for requirements. 

It is the lack of clarity and completeness of requirements that is the problem.

NDD Solution

A single NDD session, whether on a whiteboard, in a Miro, or inside of Narrative, can create clear requirements for several user journeys of nearly any complexity. This will drive effective collaboration between teams maintaining schema consistency.

Over time, the consistent application of NDD can lead to successful supergraphs that give us the single source of truth for our data and the single API. At scale, teams rely on systems like Apollo Studio to give a complete overview of our data, schema proposal management systems, understand performance, and much more. 

With Narrative, we finally have the equivalent with a single source of truth for requirements. With Narrative, we have a shared board to gather all user requirements, journeys and system interactions. We can stay outcome focused, we can improve communication, reduce misunderstandings, and align team efforts. This results in a clear, unified picture of the requirements. 

And with that we can see a very bright future for supergraph teams. 

Getting Started
Introduction to NDD
Architect resources
Architect's Subscript Guide
Architect resources
Single Source of Truth
Architect resources
Anti Patterns
Architect resources
How NDD Works at Scale
Architect resources
NDD and the Supergraph
About NDD
Glossary
About NDD
Origins
About NDD
Community