Swimming is an application for the students of the swimming school I Love Swimming, through which swimmers can manage their personal training schedule, track their progress, receive information about upcoming events, and communicate with coaches and like-minded people.
After examining the functional requirements, an interactive prototype was created using the Adobe XD tool. Already a week after the launch, the focus group was able to test the mechanics of the future application. After another two weeks, we worked out all the usage scenarios and we were able to start design development.
As a basis for registration of the application, the corporate style of the school was taken. From the client side, the art director controlled the process and carried out the acceptance. At the end of the phase, the results of the work were uploaded to Zeplin for transmission to the developers.
The development was carried out in close interaction with the client, so flexible methodology was used in project management. The process included daily rallies, weekly planning and intermediate demo versions. This allowed to reduce the time for the transfer of requirements and feedback.
It was important for the client to get a productive and responsive application, so we chose native development. The language of Swift allowed us to use the most convenient and fresh developments of the mobile industry.
As the architecture, a reliable and proven MVVM was chosen, which implies the use of a reactive approach in programming. The RxSwift library does the best. This approach allowed to build a modular and flexible structure of the project, open to changes on the part of the customer.
For the same purpose - openness to change - as an API for interacting with the server part, GraphQL was chosen, the modern standard of client-server interaction, which allows you to configure the API as it is necessary for the mobile client without actual changes on the server side.
Two months after the launch, the application was released in the App Store. We collected feedback and outlined further ways of product development. Thanks to the application, the client was able to further engage the audience in the learning process, create communities around the school.