Updated Software Architecture Document (SAD) (markdown)

Patrick 2021-06-26 23:09:04 +02:00
parent b3f7de4f7c
commit c5d3dfdf00

@ -69,6 +69,9 @@ As we use ExpressJS in the backend and Angular in the frontend, we don't have an
## 3. Architectural Goals and Constraints ## 3. Architectural Goals and Constraints
The Frontend and the Backend are split up into different components. The web crawler which will be developed later will be an independent component as well. This ensures maximum maintainability and the option to switch one of these components to a different technology in the future without having to rewrite the whole application. The Frontend and the Backend are split up into different components. The web crawler which will be developed later will be an independent component as well. This ensures maximum maintainability and the option to switch one of these components to a different technology in the future without having to rewrite the whole application.
### Patterns
One of the most important patterns we are using is the Observable / Subscriber Pattern in Angular. This is used to make asynchronous API requests without having the application waiting for the answer and hence blocking the user from doing something different in the meantime. To maintain a clear code structure, we are also using the proxy pattern to extend existing interfaces in TypeScript.
### Database ### Database
For the Database we use [mariaDB](https://mariadb.com/) as we already have multiple mariaDB servers up and running which we can use, which saves time because we don't have to set up a new server. For the Database we use [mariaDB](https://mariadb.com/) as we already have multiple mariaDB servers up and running which we can use, which saves time because we don't have to set up a new server.