Relive is a sports application that seeks to increase the retention rate of its user base. The project entails a route builder that can be incorporated in the Relive app. A route builder has several challenges, both in supporting user-friendly interaction, rendering the map and c
...
Relive is a sports application that seeks to increase the retention rate of its user base. The project entails a route builder that can be incorporated in the Relive app. A route builder has several challenges, both in supporting user-friendly interaction, rendering the map and calculating the route. These challenges lead to design goals, such as a user experience focus, optimization of performance, and continuation of the project. To achieve these goals, the project is approached in an agile way with weekly planning meetings and tri-weekly stand-ups to keep it organized and well planned. The front-end features are based on a specific target audience: the Relive users that do not use a third party app for sporting activities. The screen is intuitive and supports storing of planned routes. A route can be created, edited and loaded in the Record functionality of the Relive app. To support the front-end, the back-end handles route calculation and route storing. The route calculation is done using Dijkstra’s shortest path algorithm. In addition, a proof of concept customized route calculation is created that focuses on popularity oriented routing. Route storing makes use of the internal databases of Relive and is integrated in the existing systems. Each feature is tested with automated end-to-end and unit tests. Additionally, user tests are performed to get valuable feedback from external users. Apart from active user participation, random users were selected to join a route builder experiment. During the project, more than 22 thousand users obtained the route builder feature. Each click is timed and tracked to make sure that the feature performed as expected. Based on the events and user surveys, another iteration of the application was made by making improvements based on the acquired information. These improvements are validated using event tracking to measure the desired improvements.