Value Delivered
-
Creating a unified booking flow across countries
Instead of linking directly to numerous providers, the client built an integration with a train ticket aggregator, Trainline, which accumulates inventory from carriers across 45 countries. Yet, the mediator doesn’t completely solve a critical problem of European railways — lack of unification. Carriers have different tariffs, requirements for passenger information, additional services, booking steps, and so on. Our UX designers elaborated a single booking flow that allows passengers to choose and buy tickets across rail suppliers conveniently and consistently.
-
Implementing rail booking functionality into iOS and Android apps
Besides the website, the TMC runs mobile versions of the platform for iOS and Android. The augmented team designed two separate rail booking modules, using the latest available native technologies (such as SwiftUI for iOS) and MVVM (Model-View-View-Model) architectural pattern. MVVM enables the complete separation of the user interface and business logic, which makes it easier to run unit tests and maintain the code.
-
Accrediting integrations
The implemented rail booking functionality was verified and gained necessary accreditation from three nationwide railway companies — Rail Delivery Group (former ATOC, the UK), Renfe (Spain), and SNCF (France).
-
Ensuring fast delivery and high availability of the app’s features
Our DevOps team built and maintains CI/CD pipelines to support the platform in the AWS cloud. This approach allows for faster delivery of code changes and quick troubleshooting with minimum downtime so that the end-user experience is not affected
Approach and Technical Info
The project started a year ago and is ongoing. At different stages, the following AltexSoft specialists have augmented the client’s team: a project manager, two UX designers, an Android engineer, two iOS engineers, two QA engineers, DevOps engineers, and a product analyst.
The technology stack included iOS (Objective-C/Swift, UIKit/SwiftUI), Android (Java), Selenium IDE/Nightwatch.js, and Appium.