Nederlandse Loterij and Trifork - a winning ticket for tomorrow's challenges
Nederlandse Loterij (Dutch Lotteries – NLO) decided in 2017 to change from a primarily single-vendor software solution to a best-of-breed landscape in which the different aspects of their business are supported by systems from multiple vendors.
This both reduces vendor lock-in and enables the organisation to adapt more rapidly to the changing requirements and future possibilities in the Dutch market for online betting and gaming.
This decision, however, presents a challenge in terms of integrating these different back-end systems and NLO’s different clients (game-specific websites and mobile apps, customer services, in-lane solutions, etc.) in a way that ensures the overall platform is robust, scalable and resilient to changes in individual systems.
NLO was looking for a technology partner in order to meet the new challenges it is facing to be future-proof. It needs a company that can provide a gateway that integrates the various systems, while offering consistent APIs, domain abstractions and orchestration between services.
NLO selected Trifork and Utilus to build the gateway as joint partners. Why did it not choose an off-the-shelf integration product instead? What solution is Trifork providing? See below..
Selection- Why Trifork
Trifork has a proven track record in delivering working software for mission-critical systems, which often feature extensive integrations with third-party systems to exchange data.
These integrations must be robust when facing temporary unavailability of external systems and provide alerting, throttling to prevent overloading systems with requests, lenient handling of various data exchange formats, etc.
After Trifork explained and demonstrated how it has architected and implemented these systems, NLO concluded that a custom-built integration solution tailored to their exact needs would be a better solution than product-based solutions from other vendors using traditional Enterprise Service Buses (ESBs).
These other solutions have architectural limitations such as requiring all integration logic to be incorporated into a centrally-operated system that often becomes a huge bottleneck.
ESB-based solutions also tend to focus on the limitations of what the product provides, rather than on what optimally fulfils the client’s requirements. Trifork builds custom software solutions based on proven, widely used Open Source software. This gives clients the best of both worlds: quick development without vendor lock-in and tailor-made functionality that best addresses their needs.
Utilus is providing the entire setup of the AWS environment in which the system is running: both the infrastructure development as well as the day-to-day operations. This setup follows a cloud-native infrastructure-as-software approach, whereby environment can be stood up quickly, reliably and in a reproducible manner, and scalability and observability of the system are treated as first-class citizens. Their expertise ensures that systems are run as stable and efficiently as possible.
Trifork strongly believes in applying agile practices in all its projects. This means Trifork never carries out fixed-time, fixed-price projects. Requirements are never completely and fully clear and understood in detail when commencing a custom software project.
In light of the complex nature of this project, NLO was looking for a provider with both the necessary technical expertise and the ability to assist in gathering requirements, performing analyses and aligning the other providers within their IT landscape.
Trifork’s team is working closely with NLO’s stakeholders to drive the overall solution forward. When necessary, the team is happy to spend more time on analysis than coding for some functionality. The stakeholders are welcome to change their minds along the way and do not have to worry about what is in or out of scope of the contract. This means they can always be sure that Trifork is working on the aspects that add the most value to their business at any given time.
Trifork and Utilus are building a gateway that is based on a cloud-native architecture. A suite of microservices is deployed to Amazon Web Services (AWS), using AWS’s Docker orchestration support (ECS).
This infrastructure is completely configured through software. As a result, new environments can be stood up and updated quickly and reliably without manual steps. Build pipelines ensure that deploying a new release to every environment can be performed with a single click.
Services responsible for different parts of the domain are completely independent. This means a problem with a game-specific back-end will never affect other services. What’s more, changes in back-end systems only require updates of the adaptor services that expose them to the rest of the gateway without causing a ripple effect. This ensures that clients are decoupled from back-end implementation details through an NLO-specific rather than vendor-specific domain model.
Centralised logging, tracing, metrics and alerting provide insight into how the entire system operates. Thanks to the gateway’s nature, this makes it possible to observe the gateway itself, the downstream systems it exposes and the clients that interact with it.
These insights provide NLO with valuable information on usage, availability, performance and error rates and how these factors affect their bottom line with respect to selling their products to their customers.
By applying distributed system patterns and best practices such as circuit breakers and bulkheading, the gateway ensures that access to back-end systems occurs in a controlled manner whereby we can throttle the load we put on downstream systems, detect failures early and provide retries and fallbacks to degrade gracefully.
The gateway is currently running in production to support the Lotto game. As NLO introduces new back-end systems in the architecture, the team is incorporating them so that processes such as subscription provisioning, which requires orchestration between various back-ends, are also supported by and exposed through the gateway. The gateway is consequently becoming the heart of NLO’s IT platform.
With its annual revenues of €1.1 billion, Nederlandse Loterij is the largest lottery and gaming organization in the Netherlands with a significant impact on the Dutch society. Nederlandse Loterij offers traditional lottery games, sports betting, and instant games. Nederlandse Loterij offers attractive, regulated games of chance to Dutch players. In 2017, players won a total of 732 million euros.
Nederlandse Loterij invests its total proceeds in the Dutch society, every year. In 2017 Nederlandse Loterij remitted a net profit of 165 million euros to its beneficiaries Dutch Olympic Committee * Dutch Sport Federation, 18 Dutch good causes and the government of the Netherlands. The ambition of Nederlandse Loterij is to increase its remittance to beneficiaries every year.