...
Design Decisions related to Deployment Diagram
BrokerServer | The A brokerserver will run with is a brokerservice on it. This server on which one or more brokers reside. In our case this will be just one broker which sends the data from the racecar to our website. The brokerservice will allow us to create large data-streams. This will in turn allow us to create dynamic graphs on our webpage without having to consult a database. This brokerservice is connected via a broker connection to the Java application API, sending data from one point to another. This way we can show dynamic graphs on the website with the actual data without using a database. This way the data will be arriving on the website much quicker, which definitely is important in our case. We connect to the broker over a websocket connection directly in the front end code. This way it will be as fast and reliable as possible. It will go through the least amount of code and layers that is possible. |
---|---|
DatabaseServer | The database will contain all data that is not required to be updated to show real-time data. This will thus include all sensor-data of past races, as well as all data required for logging in and creating race-views. The database system we use is MySQL, because of it's its accessibility and relative ease to use. MySQL runs on a databaseServer, that is connected to the Java Application API with the use of a JDBC (Java Database Connectivity) Database Database Connection. |
ApplicationServer | The ApplicationServer will contain the API itself. This API will use Jakarta EE and Wildfly 25.0, which allows us to run an API with ease in a web environment. Using the REST API, this Java Application will connect to a webserver and deploy its .war artifact there. |
Webserver | The webserver is the link between user and API and . That is the part of our API that the user can interact with. This webserver could also be described as a simple website. |
User PC | The user PC is the eventual device on which the API and webpage will be run. This is the user end of our application. |
...
We made three different class diagrams to make the visual side of our program more understandable. The first one is for all our back-end code, the . The second one is shows our data acces access object and data transfer object diagram and the last one is our front-end class diagram.
Class Diagram Backend
figure 3: class diagram back-end
...