NB: This is a guest article by Chris Lucca, technical marketing manager for AccuRev.
In the US alone, in 2009 the web was used by approximately 90 million American adults to make their travel arrangements (2009 is the most recent year these statistics are available from the US Travel Association).
Since that time, it is likely the figure has grown considerably as more consumers shift further from traditional travel planning methods to using sites such as metasearch engines and online travel agencies.
Travel reservation websites have become robust businesses that handle a tremendous volume of consumer searches, requests and transactions for making all their travel plans with frequent flyer miles, preferred hotel guest car rental points, hotel reservations and countless other online interactions.
These information hubs provide everything a traveler could want in preparation for their next destination.
While travel reservation sites provide an important service for consumers, the flipside is that they require a high degree of technical oversight due to the fact that the sites variables are changing rapidly and are updated dynamically and in real time.
This places greater demands on software development teams – teams that are increasingly distributed across multiple time zones and locations.
An added pressure is that software development is directly tied to revenue. The changes and updates development teams are called on to make are increasingly "business-critical".
Consider the flood of data and volume of software code required for a single reservation or transaction on one of these major travel sites, then multiply that thousands of times over with the demands of real time as thousands of consumers research, reserve and purchase flight, car rental and hotel options.
Add to that the requirements of special offers, deals, and the unique attributes of each person’s frequent flyer or executive club profiles.
Then magnify this even more during the many peak travel times that occur throughout the year, or the demands of weather-related events that disrupt travel and it becomes apparent how a single software glitch or a site crash can result in major revenue losses, not to mention the residual consumer frustration and damage to the brand.
Because of this, with the exception of small airlines or hotels with more basic informational web sites, simple software development tools are becoming overwhelmed by the intense demands of these complex sites that are constantly processing a tremendous volume of reservations and transactions. This is where Software Configuration Management (SCM) comes into the picture.
Also known as Version Control, SCM consists of the tools and processes that developers and development teams use to make sure all implemented changes are incorporated and shared with the team in the most efficient and accurate way possible. A single misstep in version control, and a travel website could experience a glitch or the worst case scenario – a site outage.
Site outages can be devastating to online businesses such as travel sites. For these reasons, SCM has become a crucial element to the ongoing operations of travel web sites.
Let's consider one example...
A global travel company operates dozens of sites in virtually every language and handles everything travel-related, including flights, hotels, car rentals, cruises. Travelers can choose from a wide variety of pleasure and business travel packages and special deals that are constantly changing and being updated in real time.
More than thirty development teams consisting of hundreds of developers are required to keep the site running smoothly 24/7. The developer teams are distributed across the globe, continually working in parallel and simultaneously on software development projects.
Unfortunately the site has outgrown the software development tools and processes that had been adequate at one time, but business growth demands required a more robust version control solution to manage the integration of all of these projects being developed in parallel around the clock.
The release engineers and architects working in this development environment will find themselves dealing with a number of challenges that are typical of complex, distributed software development initiatives such as:
- Getting to "done" within each stage of the development process
- The complexity of managing software changes
- Attaining rapid release cycles
- Remote and outsourced teams
- Scaling and code sharing among Agile and non-Agile teams
Attaining rapid release cycles is particularly important for travel web sites to handle the constant code changes and site updates already mentioned.
Travel sites also have a legal obligation to post immediate updates and changes to baggage or security policies imposed by regulatory and compliance organizations.
In addition, the recent daily deal and flash sales craze have intensified the variables and frequent changes that travel sites must manage seamlessly to handle the growing volume of these special deals.
To put this into perspective from a developer’s point of view, adding the capacity to handle coupon deals to a travel site is equivalent to at least half the effort of launching an entirely new site!
These challenges are driving travel and hospitality sites to take a closer look at the software development tools and processes they currently have in place to determine what’s needed to improve the efficiency, performance and reliability of their web sites which are the lifeblood of the business.
There’s no "one size fits all" solution. It all comes down to the right mix of tools and software development processes with a robust enterprise-class version control system as the hub and foundation for optimal web performance.
NB: This is a guest article by Chris Lucca, technical marketing manager for AccuRev.
NB2: Image via Shutterstock.