The client, a US startup, initiated the partnership with AltexSoft with the idea of building a gamification cloud platform. It was intended to provide engagement solutions for a broad range of businesses, from retail to healthcare, and address the problem of low customer engagement in discount and rewards campaigns by using game theory.
The product engaged customers to participate in marketing campaigns through gaming. As brands acquired tools to retain the customer, they became more profitable developing stronger relationships with people. For example, healthcare companies struggling with low retention offered patients to play a roulette game having multiple discount options for the second visit. This increased attendance rate by about 30 percent.
The project’s main goal was to introduce an operationally simple platform, reachable from a browser, and flexible. Each client company would be able to customize the games and better tailor them to specific customers and existing discount campaigns.
The concept of the SaaS platform entailed designing a powerful management environment where companies could choose games or surveys, customize their graphics and content without changing core mechanics, tweak the campaigns, define the rules of rewarding customers, and eventually assess the effectiveness of their campaigns via comprehensive reports.
All games are web-based to let companies run them on any digital device, from a smartphone to a kiosk in a grocery store. So, the spectrum of engineering challenges is broad and requires a versatile development expertise.
The core business value of the platform is to provide custom gamification services. Unlike most competitor’s solutions, the platform was intended to support each client with a functionality to tailor games and surveys based on the specific operational needs. AltexSoft met this demand by introducing a sustainable architecture and delivering continuous support by integrating new gaming experience.
On the research stages, we had to choose the database type that would be fast and allowed for generating complex reports. The team was challenged to build an architecture to endure up to 20,000 operations per minute to cover data exchange with hundreds of endpoint devices. The initial assumption implied that the nonrelational database could handle this workload with maximum performance. The team started testing the NoSQL architecture with the new DocumentDB service from Microsoft. As a result, the engineers uncovered many pitfalls in using this database. First of all, as DocumentDB was recently released, it still had a number of technical issues. Another drawback of DocumentDB was that it couldn’t process complex cross-document and deep-graph queries with expected performance. This didn’t allow for fast report generation based on the acquired user data. So, the approach was rejected, and the team decided to design a custom-data architecture that combined both relational and nonrelational schemes without the use of DocumentDB. This new hybrid scheme prevented the architecture from being unstable. It also shortened the development course as engineers didn’t have to constantly adapt to the flawed system, and were instead able to focus on business tasks.
The developers took a hybrid approach to building server-side architecture and data processing. As consumers play games, take surveys and get rewards, the system has to track all activities, ranging from gaming scores to the details about redeeming the awards. This requires a large number of simultaneous database operations and can eventually disrupt gaming experiences for customers. The solution was to utilize Microsoft Azure Cloud to build the architecture that would store denormalized data along with the normalized, then transfer denormalized data to a relational Azure SQL database in the form of a sole object graph. After that, the data is normalized in the Microsoft SQL database in background mode. All commands and queries are performed by using the Service Bus pattern built on top of the Azure Message Queues. As a result, the architecture bears the workload of up to 20,000 queries per minute without performance loss on the customer side. In the meantime, normalized data is seamlessly interpreted and used for generating reports.
The client portal is an environment where users operate their gamification campaigns. 1) Campaign management: Clients pick games, choose their graphics using available assets, set campaigns, and apply various types of rewarding rules. 2) Access control: If some players aren’t welcome to participate, the access control can be set to define the categories of preferred users. 3) Reporting system: As all interaction data is gathered, the system suggests analyzing the success of campaigns via reports.
Every business that committed to using the platform requires an individual approach to games and their mechanics. While the service contains a set of out-of-the-box games, that isn’t enough to meet the demands of every business. That’s why our partner frequently introduces new games with different mechanics. This approach challenged our JavaScript developer, who developed a platform with reusable core-game mechanics with graphics that are customizable. Along with games integration, the platform itself undergoes constant upgrades.
The dedicated team of four AltexSoft experts established a sustainable cooperation framework with a partner team consisting of a designer and a local solution architect. Working as a solid development unit, the team not only managed to launch early after 10 months of research and development but can also handle the integration of a new game or feature every 2-3 weeks.
The dedicated team consisted of a front-end developer, two .net engineers, and a quality assurance specialist. The platform was built with .NET, ASP.NET, and Microsoft Azure Cloud. The first version was launched after 10 months and the entire cooperation took 2 years.