Software Architecture
Source::
Definition
The software architecture of a system represents the design decisions related to overall system structure and behavior. Architecture helps stakeholders understand and analyze how the system will achieve essential qualities such as modifiability, availability, and security.
Software Architecture | Software Engineering Institute (cmu.edu)
Simply, software architecture refers to how you organize things when creating software. These “things” can include:
- Implementation details
- Implementation design
- Server Side Rendering or Client Side Rendering
- Relational or non-relational databases
- Chosen technologies
- REST API or GraphQL
- Django or Express
- System Design decisions
- Monolith Architecture or Microservices Architecture
- Application Infrastructure decisions
- On-Premise Hosting or Cloud Hosting