Recently the BBC announced plans to build a new infrastructure.
Below repeats the architectural principals they are planning to adhere to:
Architectural principles
- Each project must have a clear customer and deliver a real benefit.
- Don’t Repeat Yourself (DRY). Life is too short to spend your time re-inventing things.
- Be as simple as possible. Just do what we need to do now.
- Be as open as possible. Assume that all services can be accessed from outside the [your company], by default.
- Start simple, then iterate. Build the smallest thing you could possibly need, deploy it, then build applications on top of it. Think building blocks, not monoliths.
- Don’t optimise prematurely. The service might not grow the way we think it will.
- Build to scale. Think stateless, think content delivery networks, think database resilience.
- Test often. So you know when you need to optimise. So you can maintain your code. So you can maintain your platform.
- Evolve. Teams, systems, support structures. The platform. These principles!
- Let it die. Be prepared to turn your system off, or change it unrecognisably.
Filed under: infrastructure, bbc, php