Full Cycle Backend Development For Travel Ticketing System

  • Duration: 2 years
  • Industries: Travel & Tourism
  • Services: Backend Development; Custom Software Development; Frontend Development; Test Automation Services; Software Integration Services
  • Software Categories and Types: B2C Solutions; B2B Solutions
  • Technical Expertise: Java Server Side Development; Web Development; Test Automation; Product Customization
  • DevOps Expertise: Advanced build organization
  • Technologies: Swagger; Robot Framework; Redis; Selenide; Data Bases; XML; Java; Java Enterprise Edition (EE); Spring Boot; Selenium WebDriver; MongoDB; Java Transaction API (JTA); Apache Solr; XSD; Drools; Testing Frameworks; Backend; Apache Kafka; Spring; XML based technologies; Development Infrastructure and Tools; Test Automation; Message Queues and Service Buses; Languages, Protocols, APIs, Network Tools; General Frameworks; Various Platforms, Solutions and Engines; NoSQL DBs
  • Team size (7):
  • 1 Project Manager
  • 1 QA Manual
  • 1 QA Automation
  • 1 Frontend
  • 3 Backend

Business challenge

Development of solution in the travel industry which will interact with such global distributing systems as GDS and Galileo. JazzTeam was responsible for creating a stable, predictable backend that could be easily extended with business rules and scripting.

Technological features of the project

  • In the process of working on the project, JazzTeam needed to master OTA schemas (including XSD, XML) in short time. Due to the fact that our company already had specific experience related to the Travel industry, we managed to do this within the required time frame.
  • It was necessary to develop easy extensibile backend. Using Drools and business rules helped to provide it.
  • There were serious architecture challenges on the project. Part of functionality has been realized on microservice architecture. Also because of different requirements to performance, relational and non-relational data bases have been used.
  • Because of the specifics of the project it was required to have fundamental understanding of JTA (Java Transaction API).
  • In the process of working our team offered untypical using of Apache Solr technology.

Project features

In the process of backend development it’s necessary to take into account serious requirements for load level and also to ensure efficiency of solution — backend should realize minimal quantity of requests to global systems.

Technologies

Spring Boot, Swagger, Redis, Apache Kafka, Apache Solr, MongoDB, JTA, XSD, XML, Drools, Robot Framework, Selenide.

Approaches and solutions

  • Combination of traditional approach to development with microservice architecture where it was really reasonable. Such approach allowed to solve the problems, but at the same time maximum save customer’s funds.
  • Because of the large number of situation combinations for handling on backend level, it was decided to create a test automation framework on the basis of Robot Framework. Development of tools for automation took a large part of this project.
  • Testing of nontrivial UI-components with Selenide library.

Project results

  • Backend-part of the nontrivial system has been developed based on all quality and performance requirements from the customer.
  • Complex automated testing of the backend part of the system has been held.
  • The requirements for peak load on the system have been taken into account. Performance of developed components had been measured after implementation of the necessary works.
  • A full set of scripts for building and installing of application components has been created, also with containerization.

Company’s achievements during the projects

At the beginning the work process was organized by a waterfall model. But under our initiative the customer agreed to move to Scrum methodology and short iterations. It helped to achieve good results in a short time.

Clients about cooperation with JazzTeam

Related projects

By industries:Travel & Tourism

Recent Work

    Contact Us

    What happens next?
    • 1

      Leave your project request. We will contact you and schedule a call.

    • 2

      Signing of the NDA to ensure the project info confidentiality.

    • 3

      Negotiation of your request and the required services.

    • 4

      Team forming, coordination of workstages.

    • 5

      Contract signing and project start.