Vacations and travel are the most purchased online services today and a there's a lot of fuss that goes into a purchase. In fact, research suggests that web users visit an average of 20 different sites before booking a trip, including a holiday portals, social media, reviews and so on.
The steep rise of online travel bookings started in the mid-90s. Now, we can book trips online at any time and do more complex activities such as consult hotels' reservation systems, and, more than just book flights, also compare flight fares in comparison sites to get the best deal.
Online Travel: Save Time and Money
The spread of travel booking sites happened because of two main reasons, there was an increasing need to save time and travellers' needed to get the best deal for the least amount of money. Booking a trip on these booking sites is more efficient and is much faster than having to check every single airline or hotel's website.
The only thing you need to do is enter your origin, your destination (if you don't like the recommendations already on the page), the date of arrival and departure, number of rooms and the number of guests and wait for search results. Some sites also show selected destinations of the week, the best period for cheap flights, destinations reachable within a given budget and more.
Booking trips online has become so easy that it's difficult to imagine booking a trip without using the internet and consulting multiple websites. But if booking trips online is a breeze, what about developing these travel booking websites? (Find out how the technology behind the world's top travel sites and companies that allow them to offer the best deals in our knowledge pack:System Integration Knowledge Pack)
What To Do: A Software Development Perspective
For a travel portal to succeed, it needs to be well designed, multilingual and be effective and efficient in showing the availability and prices of their selections. Effectiveness and efficiency depend on the back-end of the web portal and its underlying architecture which should be capable of supporting a large number of requests, perform data handling, shorten response times and communicate with numerous providers of flights, hotels, rental cars, and with the various company software (ERP, CRM etc.).
The underlying architecture must also be capable of communicating with different data sources that support different formats, apply logical standardization and aggregate data so that it can provide end users with the best results with optimal response times.
The question is: how can we design an architecture that allows the web portal to communicate with diverse systems while aggregating data, and apply both logic and rules on the data itself?
The truth is there is no single answer. But one of the best solutions when integrating different sources of data with different protocols is to introduce a "mediator", like a middleware layer composed of an Enterprise Service Bus (ESB) and a rules engine. This solution will allow you to ensure high reliability, robustness and flexibility and develop a system characterized by high scalability, efficiency, modularity and high flexibility as well as reusability of the developed services.
Advantages of Using an Enterprise Service Bus and a Rule Engine?
Introducing an Enterprise Service Bus in your architecture will bring a robust and reliable component that allows you to support a large number of formats and protocols (http, json, rest, soap, ftp, BPEL, etc.). It will also allow you to manage software components modularly and transform, enrich and route messages in such a way that each external system can just refer to a single interface.
On the other hand, introducing a rules engine will allow you to define a set of rules that must be applied to the data and their order of execution, and guarantee the easy application of frequent changes. For example, you can use it to frequently change prices or simulate new promotions and discounts related to product combinations.
Going back to web portals, introducing an Enterprise Service Bus and rule engine provides a level of integration that can extract and simplify the complexities of integrating with tourism service providers and their IT software as well as easily implement business logic on the data.
With this architecture, it also becomes possible to implement a standardization logic on the incoming data. For example, for the same tourist service, if different suppliers are contacted, they can return the same data but in a different format according to appropriate rules necessary for standardization. Moreover, you can optimize the response time of the customer's research through a message queue management.
Therefore, if there are multiple data sources in your architecture and want to apply a business logic data, adopting an ESB and a rule engine may just be the solution to create and improve your system.