Risk grows with depth in the stack. A greenfield product can move the line from the bottom; an existing, brownfield product works from the top, starting with onboarding and the interface, because revenue depends on the layers below.

Risk in a layered stack increases with depth. A change to the top layer is visible, comparable against the previous version, and reversible. A change to the data model or the deployment pipeline is none of those things, and every existing customer is standing on it. The same reasoning underlies the strangler fig pattern, which grows a new system around the edges of an old one and gives reduced risk as the most important reason to prefer it over a rewrite (Original Strangler Fig Application, Fowler, 2004; Strangler Fig pattern, Azure Architecture Center, 2026).
This gives two different programmes depending on what already exists. A new product is called greenfield here, and an existing product with customers on it brownfield.
| Greenfield product | Existing product | |
|---|---|---|
| Where the line starts moving | Bottom | Top |
| Why | Nothing is running yet, so the deepest decisions are the cheapest to make correctly | Revenue depends on the lower layers, so they go last or not at all |
| First work | Execution layer and data model designed to be driven by a document | Customer onboarding, then the user interface |
The greenfield case is covered in section 7.6 of The Domain-Specific Language as a Software Interface. The rest of this paper concerns existing products, which is where most of the installed base and most of the revenue sit.