We wanted to make a tool that takes large raw data sets from IoT devices and converts them to an intuitive visual system that anybody can use to interpret the data. Specifically, this tool can be used by the police to visualize and understand the sequence of events that took place before the murder in the Richcraft Hotel.
What it does
Mystery Tracker reads in a large dataset from a JSON file detailing when various sensors were activated, what event occurred, and who activated it (among other data). It then groups the data into its individual sensor events and displays it in a list, which can be easily sorted by guest, event, time, etc with a click of a button. By selecting any data point, it will also be shown on a floor plan of the hotel and described in plain English. This way, non-technical people such as the police can easily interpret the data.
How We built it
We used the Java language and the JavaFX framework for the GUI. This allowed us to have a powerful Java back end, but also make the easy-to-use interface using the same language, to seamlessly connect the two.
Challenges We ran into
JavaFX has some earlier features being phased out, so the familiar way of doing some things was no longer available, so we had to create our own workarounds. For instance, we could not customize the frontend with CSS anymore, so we had to learn the (usually longer) JavaFX way of changing background colours, fonts, etc. Also, Displaying 452 data points in a clear way was a challenging exercise in String formatting and user interface design.
Accomplishments that We're proud of
- Sorting objects by multiple fields at once (ex. By guest, and if they were the same, by time)
- Having the map interact with the list, to seamlessly connect the data to what actually happened in the hotel at that time.
What We learned
- Sometimes it is easier to take the 'long way' to solve problems
- It is easy for a computer to read data, it takes skill to create a way to interpret and display it
What's next for Mystery Tracker
Another interesting feature to add would be to add animations of the events unfolding along the timeline given, so the police can easily see what happened when.