< Back
Software architecture principles we believe are important
- Designing Components so they are stable (balancing cohesion and coupling)
- Setting Boundaries between software elements. Boundaries separate things that matter from things that don’t, i.e. high-level components from low-level components
- Separating layers and organising them using the dependency rule: outer layers should depend on inner layers (at the source-level), and not vice versa.
< Back