Spreader — A p5.js virus simulation
Spreader aims to introduce users to the area of viral epidemiology through visually simulating the pattern created by a virus as is spreads through a population. This phenomena creates what is known as a viral dissemination pattern that begins from a central focal point. The virus will behave differently every time the simulation is run. The user can also alter the parameters for the application to vary the simulations even further. Statistical data on the number of infections in the population is rendered in realtime alongside the simulation. Once the simulation is over, the user is presented with a visualisation of the data.
There were many iterations of the project from an android app to the final, web-based app. After carrying out some research into the different options, it was decided to build the website using ‘Laravel’. ‘Laravel’ is a PHP web framework that makes tasks such as routing authentication, sessions and caching more friendly for developers. Therefore using ‘Laravel’ meant that a secure login system could be easily created, and it also helped manage user roles within the application.
It was concluded via user-testing that Spreader was perceived as a useful simulation tool for visualising the spread of a disease. To improve the application, a test subject specialising in health recommended introducing common diseases for the user to observe such as bird flu, influenza, cholera, etc. While ultimately satisfied with the result of Spreader, we recognise and agree that an in-depth study towards common diseases, and implementing an option for the user to view how these diseases would spread, would lead to an optimum simulation for scientific purposes. This is the direction Spreader would take in further development. During testing, after running the simulation once, users were consistently interested in running the simulation again using different parameters. This was a pleasing reaction, as this was the intended purpose of the application - to observe how different parameters input by the user will lead to different results. The design, interface and data-visualisation within Spreader was considered effective amongst the users who tested the application, and each user found that their experience with Spreader was enjoyable.