Domain Model
<Provide a diagram showing important real-situation conceptual classes in the application domain. Do NOT include software classes. Describe each of the conceptual classes in a glossary.>
This is the domain model. It represents all concepts and attributes that are present within Regterschot Racing's desire for our application. This model shows all concepts as yellow squares, with the attributes underneath the concepts they belong to. Between the squares are lines that represent the interaction between the different concepts. The arrow on the lines indicate in which way the concepts interact with each other. Next to the line, near the concepts are numbers and asterisks that represent how many interactions on concept has with another concept. The line between Tab and Graph for example shows us that every 1 tab consists of 0 or more graphs.
An explanation of all terms found in the domain model can be found below.
figure 1: Domain model
As visible in the diagram above, a user is a generalization of both crewmembers and viewers. A crewmember can perform certain actions within the domain than a viewer, therefore the user concept has been split. The crewmember and viewer do however have the same attributes as a player, so they will inherit those attributes from the user.
Glossary
Concept | Description | ||||
---|---|---|---|---|---|
RegterschotRacing | Company The company that wants us to build a zero-emission race car for amateur racingan application to view data from a racecar's sensors in real-time. RegterschotRacing manages who gets to use the application and which races the application will be used at. | ||||
User | The person that uses the Regterschot Racing dashboard.application. A user can either be a Crewmember or a Viewer | ||||
Username | The name the user will use. | ||||
Password | The hashed key of the account of that the user utilizes. (is hashed) | ||||
Token | Authenticates the user. | ||||
Dashboard | Dashboard shows every stat of the race car. Shows tabs so that the user can filter what they want to see. | ||||
Racer | The racer you choose decides the dashboard you get. | ||||
The code used to authenticate a user into one of the two user roles. | |||||
Crewmember | A person who is part of the Regterschot Racing racing team that reads and analyses the real-time data from the racecar. | ||||
Viewer | A person who wants to view the race but has no access to the real-time data dashboards. | ||||
Race | The race where the racecar will be used. | ||||
Lap | The laps that make up the race. | ||||
Dashboard | A dashboard shows all relevant statistics and data received from the racecar. This dashboard is updated in real-time or shows data of one or more specific rounds. | ||||
Racecar | The racecar that the dashboard is showing the data for. | ||||
Tab | A part of the dashboard where graphs can be loaded into. | Tab | Shows the graphs that belong to the tab name. | ||
Name | Name of the tab. | ||||
Sensor | A device that measures or detects data the way its it's used for. | ||||
Data | Values of the sensor. | ||||
TimeStampTimestamp | Time stamp Timestamp that the data uses. | ||||
WheelSpeed | Sends the amount that the wheel spins in rounds per minute. | ||||
RPM | Rounds per minute. | ||||
TimeStamp | Time stamp given with the RPM. | ||||
RaceCar | Car that is used by the racer on the racing track. | ||||
Graph | Shows the data produced by the sensors. | ||||
Color | Color used for the data in the graph. | ||||
TimeScope | Start time and end time of the graph. | LineGraph||||
Raceteam | A graph that shows the data with a line. | ||||
BarGraph | A graph that shows the data through the heights of the bars. | ||||
SpeedoMeter | Shows the speed the racer is driving. | ||||
MinSpeed | Minimal speed used for the speedometer. | ||||
MaxSpeed | Maximal speed used for the speedometer. | PieChart | A circle that shows data with the size of the pieces in the circle.|||
The team that participates in a race that consists of crewmembers and racers. | |||||
Name | the name for the raceteam. | ||||
Racecar | The car participating in the race. | ||||
Brand | The brand of the car. | ||||
Type | The type of racecar. For example '320 4fl E46'. |
Table 1: Domain model glossary