In developing this website, a number of key design choices were made. This is an overview of what these choices were and why we chose the path we did.
Type of application
The Battle Map is a single-page Web application (SPA) built for the modern Web. While it is optimised for PCs, its responsive design makes it usable with mobile devices such as tablets.
We wanted to give users of the Battle Map more than just a static map. Our aim was to create an intuitive way of viewing contacts on a map, while providing sufficient depth for users who want to delve into the details.
The end result is a highly interactive experience that allows the user to not only choose from many map layers, but combine these with other analysis tools including charts and filters, to find and view information their way. Features such as the Timeline set the Battle Map apart from other websites, due to its integration with the map, charts and filters.
OpenLayers 3, a popular open-source mapping platform, is the mapping engine at the heart of the Battle Map.
We required on-demand analysis against a mix of data sources, including combat incidents and community-contributed content. This data would need to be filterable and available for use with charts and map layers to let users explore the Vietnam War their way.
The underlying technology had to be scalable enough to meet our future aim of covering the broader Vietnam War (including NZ and US forces). We chose MySQL, a relational database management system.
Another consideration was being able to package the website as a mobile app in the future. To make this easier to achieve, we implemented a REST data service using the Open Data Protocol (OData). This will enable us to deploy our application in many forms in the future, all sharing the same database access layer.