Clean architecture
Clean architecture, presented by Robert C. Martin (Uncle Bob) in 2012, organises a system into concentric layers: entities (business rules) at the centre, use cases around them, interface adapters next, frameworks and drivers on the outside. The Dependency Rule states that dependencies point inward, outer layers know about inner layers, never the reverse.
Clean architecture is one of several near-synonymous formulations of the same idea: hexagonal architecture (Cockburn 2005), onion architecture (Palermo 2008), DCI (Coplien & Reenskaug). All share the 'domain at the centre, infrastructure at the edge' commitment. The practical payoff: unit tests don't need a database; frameworks are upgrade-able without rewriting business rules; new delivery mechanisms (CLI, gRPC, Kafka consumer) are add-on adapters rather than restructures. The common mistake is over-engineering the layering for a system that doesn't need it, clean architecture earns its keep in long-lived systems where infrastructure churn is likely; small short-lived services rarely benefit.