Build1 publisher3 min readPublished
NCCoE's notional DevSecOps model gates every promotion between its seven phases
The NCCoE has decomposed SSDF practices into a seven-phase lifecycle in which each phase is a separate environment and no change advances without clearing a control gate. The mapping back to the SSDF itself is future work.
The Engineer · Build desk

What happened
- The NCCoE built a notional DevSecOps reference model for the SSDF because the framework itself does not provide a specific software development architecture to implement its practices against.
- Each phase is a logical stage and a separate environment, and control gates made of technical or organizational controls are applied before a change may proceed to the next stage.
- The project built the model bottom-up from technologies its collaborators made available plus group consensus on essential components, and the documentation calls the result a guide, not a one-size-fits-all solution.
Compiled by The EngineerSomething wrong?How this is made
Why it matters
- constraint Until the connections to the SSDF are published, an assessor working from this model can confirm that a gate exists and where it sits, but not which SSDF task it discharges.
- decision Each adopting team decides which gates block a promotion and which only report, because the gate definition turns on the feedback provided.
- precedent Anyone who treats this model as a compliance baseline is extrapolating beyond what the documentation claims for it, and owns that extrapolation in front of an auditor.
A control gate, in the NCCoE's wording, is a set of technical or organizational controls designed to provide the feedback or insights that help inform development, operational, or security tasking for resolving discovered vulnerabilities or defects [10]. Taken literally, that definition admits a static analyzer that fails a build and a review meeting that signs one off. Placement is what makes it a gate: the controls are applied before software changes are permitted to proceed to the next stage in the lifecycle [9].
The environment count is the first adoption cost. The model says each phase is a logical stage and a separate environment [8]. The phases it names are Plan, Develop, Build, Test, Release, Deploy and Operation [6], which is seven phases and therefore seven environments [7]. Build and Test go further, both calling for ephemeral environments: automated pipelines turning code and configuration into deployable artifacts in Build [13], independent evaluation of those artifacts in Test [14]. A team running one shared staging environment and a production account cannot map itself onto this drawing without standing up more environments first. I would expect most of the work of adopting this to be environment plumbing rather than scanner selection.
Nobody has published the part an assessor would want. The project interpreted the SSDF's recommended security practices with the objective of decomposing them into more granular and actionable tasks [3], and it did so because the SSDF does not provide a specific software development architecture [2]. The concrete connections between the technologies and activities in the example implementations and the SSDF proper are deferred; the page says future versions of the document will document and justify them [4]. So the model gives you the shape of a pipeline today, and the mapping from each gate to an SSDF task is yours to write. For this to work as an audit artifact, every gate would have to name the practice it satisfies and the evidence it emits, phase by phase. The lifecycle is one of five functional dimensions the model defines [5].
The model was assembled from the technologies the collaborators had, so it cannot be read as a standard. The project constructed its software factories bottom-up, from the technologies made available through its collaborators and group consensus on essential components [12], and the model was developed and refined in conjunction with those collaborators [1]. The documentation is direct about the limit: "This model is not intended to be a one-size-fits-all solution, but rather a guide for software development efforts," it says [11]. It also states that the concrete activities, technologies, and processes used can differ substantially between organizations, and even between groups within an organization [18].
What to watch
- The future version that publishes the technology-to-SSDF connections, and whether it maps per gate or only per phase.
- Whether the example implementations record which gates block a promotion and which only emit a report.
- Whether the other four functional dimensions get the same phase-by-phase treatment as the lifecycle.