Vertical Architectures for Scalable Angular Applications | Manfred Steyer

Discover how vertical architectures can improve scalability and maintainability of Angular applications by decoupling systems, with expert insights on themes, domain-driven design, and more.

Key takeaways
  • Quality needs to address all stages of software engineering and development.
  • Vertical architectures allow for more scalability by decoupling systems.
  • Domain-driven design helps to identify business domains and model them separately.
  • Themes are a way to structure a system and define interaction between different parts.
  • Stream-aligned themes work well for systems that need to be updated frequently.
  • The goal of vertical architectures is to make sure each team can focus on its own domain without interference.
  • Each team has its own vertical, which is a self-contained system.
  • Verticals should be loosely coupled to allow for changes without affecting other parts of the system.
  • Each vertical is a library or folder that implements a specific domain.
  • Implemented themes should be easy to understand and maintain.
  • Domain experts and developers should work together to identify and implement verticals.
  • The ideal size of a vertical is small, allowing for easy maintenance and updating.
  • Event storming is a technique to identify and implement events that drive business processes.
  • The Angular community is involved in the development of vertical architectures.
  • Quality needs to be integrated into the development process, not just tested at the end.