Topic 1 of 10
Software Architecture
Architecture is about decisions that are hard to change later, and the trade-offs of each one. Understand the levels of architecture, the types of architect and what's expected of each role.
What to study
Levels of architecture
- Application Architecture
- Solution Architecture
- Enterprise Architectureoptional
Types of architect
- Software Architect — LLD (Low-Level Design)
- Solutions Architect — HLD (High-Level Design)
- Enterprise Architectoptional
Roles and responsibilities
- Functional and non-functional requirements
Examples
Functional requirements
- The system must send a confirmation email after the user signs up.
- The system must let the user log in with email and password.
- The system must calculate the order total including shipping, discounts and taxes.
Non-functional requirements
- The system must be available 99.9% of the time (high availability).
- The system must support 1 million concurrent users (scalability).
- Requests must be answered within 200 ms (performance).

