Infrastructure Planning Policy

This policy defines the defaults every OSBR project starts from when planning and provisioning infrastructure. It complements the Security Policy and the Non-functional Requirements guide: those describe what a system must guarantee, while this describes how we shape infrastructure to get there.

Where possible we lean on the decision frameworks the large cloud vendors publish β€” the AWS, Azure, and Google Cloud Well-Architected / Architecture Frameworks β€” and right-size them for an SME. We adopt their criteria for making a decision without adopting the scale, headcount, or budget assumptions behind their reference architectures. Deviations from this policy are allowed, but they must be deliberate and justified in the project's design notes.

1. Guiding Principles

1-1. Scale to Zero, Scale on Demand

OSBR prefers infrastructure that scales to zero when idle and auto-scales under load. We pay for what we actually use, not for idle capacity.

NOTE

"Scale to zero" is a cost and operations default, not a dogma. Some workloads (steady high traffic, latency-sensitive warm paths) are cheaper or more predictable on reserved capacity. Choose deliberately.

1-2. Assume a Hostile Internet (Zero Trust)

Assume the internet is dirty and full of enemies. Every exposed surface is under attack. This is the same Zero Trust posture the big platforms document (Google's BeyondCorp and the NIST Zero Trust Architecture), applied at our scale.

1-3. Infrastructure as Code Is Mandatory

Every durable resource must be provisioned as code β€” no click-ops, no manual dashboard changes for anything that must survive.

Tool choice is secondary; IaC itself is not

No matter native or Terraform β€” IaC is a must. The debate over which tool is a project-level decision; provisioning durable infrastructure by hand is not an option.

1-4. One Tool Owns Each Resource

A single resource must be managed by exactly one tool. Two tools managing the same resource cause drift and conflicting state.

1-5. Reliability and Delivery Are Measured, Not Assumed

Hold the running system to explicit, published targets rather than gut feel.

1-6. Observability Is Built In, Not Bolted On

You cannot operate β€” or hold an SLO for β€” what you cannot see. Every service is observable from day one.

1-7. Environments and Promotion

1-8. Backups, Durability, and Disaster Recovery

Data durability is non-negotiable; a service you cannot restore is a service you can lose.

1-9. Secrets and Least-Privilege Access

1-10. Deploy Safely and Reversibly

1-11. Cost Is a Design Constraint

1-12. Prefer Managed Services; Mind Data Residency

3. References

Big-tech decision frameworks and guidance this policy draws on, chosen because they are freely published and adoptable by a small team.

Decision frameworks

App architecture & cloud-native

Reliability & operations

Delivery metrics

Security & hardening

Infrastructure as Code