# Screaming Architecture --- ### Core concept 1. What does the architecture of your application scream? 2. Highest-level package --- ### THE THEME OF AN ARCHITECTURE - OOSE - A Use Case Driven Approach - Frameworks are tools to be used, not architectures to be conformed to - Architectures are not (or should not be) about frameworks. --- ### THE PURPOSE OF AN ARCHITECTURE - Good architectures are centered on use cases - A good software architecture allows decisions about frameworks, databases, web servers, and other environmental issues and tools to be deferred and delayed --- ### BUT WHAT ABOUT THE WEB? - Is the web an architecture? - The web is a delivery mechanism - Application is delivered over the web is a detail and should not dominate your system structure. --- ### FRAMEWORKS ARE TOOLS, NOT WAYS OF LIFE - Frameworks can be very powerful and very useful. - costs? - Think about how you can preserve the use-case emphasis of your architecture --- ### TESTABLE ARCHITECTURES - System architecture is all about the use cases - use-case objects should coordinate your Entity objects --- ### CONCLUSION - first impression - New programmers should be able to learn all the use cases of the system, yet still not know how the system is delivered.
{"metaMigratedAt":"2023-06-15T16:31:56.029Z","metaMigratedFrom":"YAML","title":"Screaming Architecture","breaks":true,"slideOptions":"{\"transition\":\"slide\"}","contributors":"[{\"id\":\"5525761c-1b39-465d-9c80-28d23b552681\",\"add\":3259,\"del\":1934}]"}
    288 views