Date:
13 July 2023

The main focus for this month's Melbourne Drupal Meetup was a presentation by Suchi Garg on building the Victoria Police Station LocatorExternal Link . Suchi started off looking at the original process (very manual) and then looked at the new process. The project uses station content available with Victoria Police as an API, ingests it in Drupal and then uses it to create the locator.

The locator allows users to search and filter police stations using suburb, distance, specialty services and whether the station is open 24 hours or not. All this has been done along with integration with Google maps.

Victoria Police Station Locator: summary of Suchi’s presentation

In this presentation, Suchi Garg from Salsa discusses the recent implementation of the Victoria Police station locatorExternal Link on the existing website. The project aimed to elevate the user experience for finding police stations in Victoria, Australia. Salsa collaborated with Victoria PoliceExternal Link and the Single Digital PresenceExternal Link (SDP) team to achieve this goal.

Project requirements and challenges

Victoria Police approached SDP to build a new component that would improve the user experience for finding police stations. The police station data was already available internally and as an API, but the old implementation didn’t use it. Instead, manual content entry was required, leading to errors and delayed updates.

To overcome these challenges, the team set out to create a new content type called "stations" and automate the migration of data from the API into Drupal. They also needed to ensure that the syncing process with the API was performant, so they opted for Delta syncing, reducing the processing load on the server.

Project timeline and team composition

The project commenced on 27 March 2023, and development started in May. The team completed the project in just 15 weeks, and the station locatorExternal Link went live on the website recently.

The project team included various roles to ensure a comprehensive and successful implementation. They had a relationship manager, a project manager, a designer, a backend developer, a frontend developer, and a quality assurance (QA) analyst.

Implementation details

The team implemented several features to enhance the user experience. On the frontend, they introduced a suburb and postcode search for stations, filters to find stations by opening hours or specialty services, sorting capabilities, and a Google Maps integration. The Maps feature allowed users to zoom in and view stations in a specific area easily.

The backend of the new component was integrated with Elasticsearch, which was already being used by SDP for search. This decision was made to leverage existing infrastructure and improve search efficiency.

Challenges and solutions

One of the challenges faced during development was the availability of the API for the station, which was still under development when the project began. However, the team received helpful support from the Victoria Police API team, who provided appropriate samples, facilitating the development process.

Another significant challenge was the partial ownership of the project, which required close collaboration with the SDP team. The team made sure to involve SDP in all stages of the project, from design to technical implementation, to ensure a seamless handover.

Additionally, the SDP team requested the backend module to be developed as a separate module in a separate repository. This led to the creation of a new repository called "Tide Station Locator" for the backend, adding some complexity to the project due to dependencies.

Demo and results

Suchi demoed the new functionality to highlight the improvements made in the station locator. She compared it to the old implementation, which had keyword-based search results with limited information. In contrast, the new version offered a full listing of stations, interactive maps, and filtering options based on distance and specialties. The locator's new features significantly improved the user experience, making it more user-friendly and efficient.

Conclusion

The successful implementation of the Victoria Police station locatorExternal Link showcased effective collaboration between the Salsa development team, Victoria PoliceExternal Link , and SDPExternal Link . By leveraging the existing infrastructure, automating data migration, and implementing user-friendly features, the new component elevated the user experience, minimised manual content entry, and provided accurate and up-to-date information about police stations across Victoria.