Part 2: Architectural Building Blocks#
Part 1 introduced the NAF Framework and named its seven building blocks. Part 2 examines each one in depth.
The seven blocks are: the Source of Truth, the Executor, the Collector, the Observability stack, the Orchestrator, the Presentation layer, and the Network. Each block has a distinct responsibility, a defined boundary, and a set of failure modes that become visible when the block is designed incorrectly or integrated carelessly with the others. Understanding each block on its own is necessary but not sufficient. The failure modes that matter most in production are the ones that occur at the boundaries between blocks, when a design assumption made in one chapter turns out to be incompatible with a constraint documented in another.
To make those boundary interactions concrete, Part 2 follows a single running example across all seven chapters: a campus network of approximately 800 switches, three vendors, and a team that is building the automation platform from scratch. The example is not a tutorial; it does not prescribe specific tools or specific configurations. It is a structural anchor that allows each chapter to discuss its block in the context of a complete, realistic system rather than in the abstract.
Chapter 4 covers network intent: the data the Source of Truth holds, at three levels of abstraction, and the schema that decides what counts as a valid value. Its core contribution is that correctness is established once, at the boundary where data is written, rather than re-checked by every consumer downstream.
Chapter 5 covers the Source of Truth as a system: how intent survives concurrent change, how every consumer reaches it at the shape it needs, and which system owns each value when several hold a copy. The four functionalities the SoT must provide, what breaks when any of them is missing, and what it means to treat the SoT as a live dependency rather than a reference document, are the chapter’s focus.
Chapter 6 covers the Executor: how automation tooling receives intent from the SoT and applies it to network devices. The write path, idempotency discipline, and the interface contract between the Executor and the Orchestrator that coordinates it are the chapter’s focus.
Chapter 7 covers the Collector and Observability stack together: how telemetry flows from network devices into a queryable, actionable form, and what “observability of the automation system” means as a distinct requirement from observability of the network.
Chapter 8 covers the Orchestrator: how multi-step automation workflows are coordinated, how failures at block boundaries are handled, and how the Saga Pattern provides the reliability primitive that makes long-running workflows safe to retry and recover.
Chapter 9 covers the Presentation layer: the surfaces through which human operators and external systems interact with the automation platform, and why the design of those surfaces is an architectural concern rather than an implementation detail.
Chapter 10 covers the Network as an architectural participant: the programmable interfaces it exposes, the simulation environments that allow automation logic to be validated before it touches production, and the abstraction strategies that keep the platform stable as the underlying network evolves.
Chapter 10 closes Part 2 with the observation that the Network is a constraint on every other block. The Source of Truth models what it should be. The Executor changes what it is. The Collector reads what it reports. The Orchestrator sequences those interactions. The Presentation layer surfaces them to humans. The design of each block is, in part, the design of its relationship to the physical and operational reality that Chapter 10 describes.
Part 3 takes the seven building blocks and asks what it takes to run them together as an operable, scalable, and trustworthy platform.
💬 Found something to improve? Send feedback for this chapter