-
-
Notifications
You must be signed in to change notification settings - Fork 2
Architecture
Author: Atharv Desai
What are you trying to accomplish? What’s wrong with things the way they are now?
Describe any historical context that would be needed to understand the document, including legacy considerations.
If the document uses any special words or terms, list them here.
If there are related problems that you have decided not to address with this design, but which someone might conceivably expect you to solve, then list them here.
Start with a brief, high-level description of the solution. The following sections will go into more detail.
If the design consists of a collaboration between multiple large-scale components, list those components here — or better, include a diagram.
Describe how the data is stored. This could include a description of the database schema.
Describe how the various components talk to each other. For example, if there are REST endpoints, describe the endpoint URL and the format of the data and parameters used.
If the design requires any non-trivial algorithms or logic, describe them.
If the design incurs non-backwards-compatible changes to an existing system, describe the process whereby entities that depend on the system are going to migrate to the new design.
Describe the potential impacts of the design on overall performance, security, and other aspects of the system.
If there are any risks or unknowns, list them here. Also if there is additional research to be done, mention that as well.
If there are other potential solutions which were considered and rejected, list them here, as well as the reason why they were not chosen.