Cash League is an application that unites billiards lovers and allows them to find companions, hold tournaments, compete with other teams and keep statistics on each game.
With Cash League, users can relax with like-minded people and have the opportunity to realise a profit.
Our client is an avid billiards player. He often holds tournaments with friends, and they continuously face difficulties in keeping score throughout the season and filling standings for final games.
Initially, he came to us with the idea of creating an application for account management and tracking billiard games statistics. However, during the development process, the initial idea of a minimum viable product turned into a completely different, more complex, solution. We often encounter similar cases and our approach allows us to tackle them efficiently.
At the beginning of our collaboration, the client had an idea to develop an app to just keep statistics for friendly matches. However, during our work, he decided to expand the functionality by adding a wide range of new features. He aimed to not only unify billiard lovers globally, but also attain a new way of gaining profit from his favourite hobby.
At this stage, we ran into an issue; most of the proposed extras features were contradictory and mutually exclusive. In this case, we needed to develop a new app concept and determine the appropriate set of functions and a suitable technological stack.
At the stage of making drastic changes to the project concept, our team conducted a series of business and tech consultations with our client. We mutually discussed, developed and designed a solution that accommodated all his additional requirements.
We also supplemented the app with extra features, which we thought would ideally suit the new app's concept to simplify the organisation of billiard matches. Based on previous experience, our team has created an easily extendable application architecture to implement subsequent changes without delay in the project.
The application features set was extensive, so for application usability by players at cross purposes, we have identified four primary user roles. Our team selected the optimal set of capabilities for each role, which will satisfy the needs of each participant of the tournaments.
We analysed all the incoming requirements and compared them with the real difficulties that billiards players often face in organising and conducting tournaments. The implementation of an automatic match and final game schedule generation function has solved these problems.
In order for teams to find equal rivals, we have developed an algorithm to calculate the skill levels of players and assign them ranks. Thus, the organisation of matches takes less time and occurs without overlaps or conflicts. It allows our customer to manage all user' interaction processes easily.
According to the new application concept, players can easily organise billiards tournaments while earning from it. All payment transactions realise due to the integration with a Stripe payment system.
Synchronisation with the Stripe performs all the specific payment actions set by the business logic of the application. For more convenience, we provided users with two payment methods - cash and a card.
The prize fund consists of player payments for each game. To ensure high reliability of all transactions in the application, we provided the administrator role with the ability to block players who have overdue payments. In the profile of such players, all tabs are blocked, except for the payment tab.
Players must always stay abreast of all actions, transactions and updates in the game, so we have developed a complex system of notifications. Due to this, the process of organising games has become simpler and more auspicious.
Due to numerous changes in the middle of the work on the project, we conducted integration testing and go/no go testing of the new components after the modification of business logic with specific requirements. We focused on the app's scalability and performance aspects by thoroughly testing the app using the best QA practices during each sprint.
Since the application has an extensive feature set that we placed in various tabs, our team conducted UI and usability testing. Aided by regression testing, we have prevented errors at each stage of the app’s development and subsequent usage. As a result, we provided the customer with a guarantee of high performance and smooth operation within the application.
Our close cooperation let to transform the initial application for managing statistics of billiards games into a platform that unites thousands of billiards players, allowing them to earn and relax at the same time. Through the automation of tournament processes, we have made the management of the whole game processes easier than ever.
We helped to realise our customer’s idea, as well as turn it into a way to earn money from their favourite hobby. Our team still provide support for the Cash League app and constantly make improvements. The customer has already conducted several test tournaments, and we, in turn, are looking for possible best practices and innovative solutions to implement in the existing version.
Anuitex developed a mobile app from scratch for Android and an MVP for iOS that allows amateur pool players to track game scores. Their team was very responsive, accessible, and collaborative throughout the process. They also provided a lot of creative solutions, even for issues relating to business logic.