-
Notifications
You must be signed in to change notification settings - Fork 0
Diagrams and Models
The following diagrams were created in order to design the backend.


When designing the components, modularity was key in order to create a decoupled and maintainable backend. That is why it is divided into four components: models, analyzer, presenter and fetcher. It is worth noting that these components are not definitive and their responsibilities may vary slightly over time. For example, the models could also extend and take on responsibilities of accessing the DBs through a repository pattern.

The previous components are extended to show more specific implementations. Both the Fetcher and Analyzer components use the strategy pattern through the interfaces as it allows for easier development of new "strategies" (steps or behaviours) while complying with the "API" they expose to other components.
This is the simplest schema that was thought of to work for the necessary endpoints. However, if new requirements arise, this schema might require changes.