Foundations
v1.0 · in consultationThe layered framework
The 12 layers of Public Framework Modelling Language 1.0: the question each answers, the chain that connects them and the boundaries between them.
Describes specification v1.0
The layer chain
Ten of the 12 layers form a chain. The chain starts from policy intent and legal basis and runs through services, information and applications. It continues with software delivery, runtime, hosting and operations, and ends with public-service (PublicService) continuity.
Relationships are not limited to neighbouring layers. The “is associated with” relationship (association) connects any two elements, and “depends on” (dependsOn) connects elements from any of the technical layers APP, DEL, RUN, HST and OPS.
- The public policy “Family support access policy” and the public service “Family support benefit” have as legal basis the law “Family support law”.
- The procedure “Assess benefit application” realises the service and accesses the dataset “Benefit case records”.
- The software system “Benefits case platform” serves the service and runs on a node hosted by “Primary data centre”.
- When the portal is down, the service falls back to the procedure “Assisted paper intake”.
The cross-cutting layers
Two layers are not in the chain but cut across it. Implementation (IMP) describes programmes, projects, milestones, funding and architecture states — the change, not the software delivery within it, which belongs to DEL. Cross-cutting Concepts (X) describes requirements, constraints, architecture decisions, assumptions and risks, each explicitly linked to its subjects.
The 12 layers at a glance
| Code | Layer | Question | Colour |
|---|---|---|---|
| STR | Strategy & Public Policy | Why does the institution act? | #7C3AED |
| LEG | Legal Framework | On what legal basis? | #9F1239 |
| ORG | Organisations & Services | What does the institution offer, and to whom? | #EA580C |
| INF | Information | With what information? | #0891B2 |
| APP | Applications | With what software? | #2563EB |
| DEL | Software Delivery | How is the software produced? | #65A30D |
| RUN | Deployment & Runtime | Where and how does it run? | #059669 |
| HST | Hosting | Who hosts it, and where? | #78716C |
| OPS | Operations & Security | How is it operated and protected? | #DB2777 |
| CNT | Continuity & Fallback | What happens when the systems fail? | #CA8A04 |
| IMP | Implementation | How does the architecture change? | #115E59 |
| X | Cross-cutting Concepts | What conditions, choices and uncertainties shape the architecture? | #475569 |
Boundaries between layers
Some pairs of layers are easily confused, because they describe different sides of the same thing. The application shows a boundary text for each layer, in the palette and in F1 help.
STR records the intent of public policy (Policy). LEG records authority and legal obligations (LegalObligation). A public policy has a legal basis without becoming a legal resource (LegalResource). In the example, the policy “Family support access policy” stays in STR and has as legal basis the law “Family support law”, from LEG.
ORG describes the public service (PublicService) and its procedure (Procedure). APP describes the software that supports it. A service channel (ServiceChannel) describes how the public reaches the service, while an API describes a software interface. In the example, the software system “Benefits case platform”, from APP, serves the service “Family support benefit”, from ORG.
INF describes the meaning and governance of data. APP describes the logical store (DataStore) used by the software. RUN describes an installed storage resource (StorageResource) or a volume in the runtime environment. HST describes the physical context in which they are hosted.
APP describes the structure and behaviour of the software. DEL describes how it is produced and the artifacts (Artifact) delivered. RUN describes the deployment (Deployment) of a specific release (Release), with its configuration.
RUN describes a node (Node) or a workload (Workload). HST describes physical equipment (PhysicalEquipment) and its placement. The runtime node is associated with its host, and rack placement properties are not copied onto the node.
OPS describes technical disaster recovery, backups and runbooks (Runbook). CNT describes public-service continuity, manual alternatives, reconciliation and restoration priorities. The technical recovery plan (DisasterRecoveryPlan) is associated with the continuity needs it supports.
IMP describes the programme (Programme) or project (Project) that changes the architecture. DEL describes the software delivery pipelines within that change. A deployment stage in a pipeline (PipelineStage) belongs to DEL; a deployment recorded in the runtime environment (Deployment) belongs to RUN.
A geographic area (GeographicArea) in X describes a jurisdiction or the coverage area of a service. A data centre or a physical location (PhysicalLocation) in HST describes a hosting location.
