When looking for a museum, we are mainly interested in the subject matter, but special facilities are also important to us. We want to know if we can enter the museum with a pram, if we can find a café and have access to WiFi. This follows from research by both NIMOZ and The Story about how foreign tourists and Poles use museums.
The basic context for using the map will be the process of searching for the museum as if by the way - on the street and without special preparation. That is why the application, although running in a browser, was designed for mobile users with limited access to the web in mind.
Apply advanced search criteria, use ready-made themed tour routes - these are the first features of Museum Map.
The Museums Map application is a tool facilitating finding the most interesting museum facilities in Poland - both large and more intimate ones, less known to the general public. Each museum profile is updated by NIMOZ and data is provided directly by museums.
We have used technologies that ensure the stability and speed of the application. This is SPA - Single Page Application. In such an application the user does not have to deal with page reloading. Most of the logic is moved to the client's browser, which allows the application to work quickly and smoothly.
The main front-end engine is the Backbone framework. To write the API we used Zend Framework 3 and the MySQL database.
Of separate note is the application's infrastructure, which is designed from the outset to be scalable and highly efficient. The application runs in an Amazon Web Services environment, uses Elastic Beanstalk, CloudFront, S3, RDS and ElastiCache. This allows us to serve a virtually unlimited number of users per day, as the entire environment scales automatically depending on load.
The implementation of the Map of Museums application was conducted using the Kanban method. In the solution we apply automated tests, continuous delivery and Robert Cecil Martin's clean code philosophy. The project is managed on the JIRA platform, and the documentation is archived in the Confluence system.