aau-giraf / web-api

The backend API for GIRAF — a .NET-core project written in C#.
GNU General Public License v3.0
2 stars 5 forks source link

Task/326 #367

Closed JMyrtue closed 11 months ago

JMyrtue commented 11 months ago

Description

This pull request creates a new architecture for the web-api. Before this pull request all folders were contained in a single project, resulting in a difficult-to-comprehend communication between the folders.

The new structure introduces a total of 4 projects: API, Service, Repository and Entities. The new architecture is based on N-tier Layered Architecture

The dependencies between the projects may only go downward, in the list above, i.e. API can reference all other projects, but none of these may reference the API project.

A part of this restructure was splitting up methods from classes, to satisfy the above description, and in general move functions.

Fixes #326

Type of change

How Has This Been Tested?

All endpoints are tested through Swagger. After all testcases are refactored to the new architecture, they are executed and passes. The emulator have been used thoroughly to try and crash the application with the new architecture.

Testcases have been run on the following OSs:

Development Configuration .NET 8.0

Definition of Done