- How will the users be using the application?
- How will the application be deployed into production and managed.
- What were the quality attribute requirements for the application, such as security, performance, concurrency, internationalization, and configuration.
- How can the application be designed to be flexible and maintainable over time?
- What are the architectural trends that might impact your application now or after it has been deployed?
- What are the foundational parts of the architecture that represent the greatest risk if you get them wrong?
- What are the parts of the architecture that most likely to changes, or whose design you can delay until later with little impact?
- What are the key assumptions and how will you test them?
- What conditions may require you to refactor the design?
When testing your architecture, consider the following questions
- What assumptions have I made in this architecture?
- What explicit or implied requirements is this architecture meeting?
- What are the key risks with this architectural approach?
- What countermeasures are in place to migrate key risks?
No comments:
Post a Comment