System architecture
In short: System architecture describes which building blocks an IT system consists of, how they work together and which interfaces exist between them.
In more detail: It is the top-level blueprint, before any individual code. Good architecture makes a system changeable, secure and performant. Decisions here are expensive to correct later.
In Depth
Typical building blocks of a web application
The browser (client) asks a web server, which uses a database, and further services (payment, email, chat) are attached through interfaces (API).
Common patterns
- Layered architecture: interface, business logic and data storage are separated.
- Client-server: tasks are split between clients and servers.
- Monolith or microservices: one large application or many small, separate services.
- Event-driven: components react to messages instead of calling each other directly.
Quality goals
Scalability (scaling), reliability (redundancy), security (security by design), maintainability and cost. Architecture means weighing conflicting goals consciously and documenting it, for example with diagrams (UML, C4).