Architecture of Tower-Defense-backend¶
Tower Defense is a minigame which is part of the Gamify-IT platform. The intention with this game is to make answering single choice questions fun.
Table of Contents¶
Links¶
General code structure¶
This Java backend has the following package structure
data: Contains the data objects and DTOscontrollers: Containers the server routesservices: Contains the business logicclients: Contains the b2b (backend-2-backend) communication methodsrepositories: Contains the database repositories
Starting the service¶
See the README.
What to look at¶
The controllers for the API requests are a good point to start.
From there you can follow the code flow to the other components.
The GameResultController provides the API for the game results.
The ConfigController provides the API to configure the game.
What to ignore¶
Nothing at the moment.
Class diagrams¶
Overview complete application¶
This simplified class diagram shows how the most important services, mappers and repositories in the project are interlinked.
ConfigController¶

This class diagram shows an overview of the ConfigController class.
GameResultController¶

This class diagram shows an overview of the GameResultController class.
The data structure of GameResult and its contents are shown at the left and bottom of the diagram.
Known Design Flaws¶
There are no known design flaws.
Known Bugs¶
An up-to-date list of open bugs can be found at https://github.com/orgs/Gamify-IT/projects/6/views/11 by searching for Tower-Defense-backend.
Tests¶
We use the following test strategies in the Tower-Defense-backend:
unit tests