Description:
- Treat an architecture of a specific system as:
- a collection of computational components
- a description of interactions between these components.
- Graphically speaking,
- Nodes represent the components
- Arcs represent the connectors (procedure call, event broadcast, database queries, and pipes, etc.)
- Set of constraints on how these elements can be combined. E.g., no cycles
Software architecture/design patterns
- Model-view controller
- Layered architecture
- Repository design pattern
- Client-server design pattern
- Microservices
- Pub-Sub