AIMS (Airline Information Management System) is a business-critical aviation software package, which has reinforced the backbone of more than 150 airlines since 1983 . For a fast-growing airline, the ability to scale AIMS in pace with the growth of your fleet - avoiding any outage or degradation in performance - is critical. Because, as one airline put it, if AIMS went down, we could only function for 4 hours on paper-based records before we’d have to ground the entire fleet.
So, given its business-critical nature, how do you scale AIMS without putting the business at risk?
1. Planning is everything
Alignment with business is critical. Having the ability to predict how your system will behave based on changes to fleet and crew numbers is crucial. For instance, if Operations plans to add 50 new A321's to the fleet, what kind of load will this put on your system?
Whether or not there is imminent growth expected, it is vital to have a scalability plan in place. Consider a married couple with 2-bedroom home. They currently use one bedroom themselves and the other bedroom for their son. When finding out they are expecting a new child, they will start to plan how to accommodate them. Should they look for a new home? Perhaps the children can share a room? Whatever the outcome, by the time of the birth this has been decided well in advance.
Managing your infrastructure should follow much the same process. For instance, a crucial part of acquiring another airline is the ability to forecast the impact and develop a plan to scale your infrastructure. Scaling may involve adding more cores to your virtualised web servers or possibly spinning up a couple of new instances on your cloud architecture. While the environment might differ, every airline should have the ability to forecast AIMS demand in order to support growth.
If increasing compute capacity is not an option, then consider demand management techniques to smooth out extraordinary peaks in demand. For example, staggering out the opening of crew vacation bidding. This limits the number of users bombarding the application at once. Making simple adjustments as the size of your crew increases can prevent you becoming a victim of your own success.
2. Mitigate risk of change with Performance Testing
AIMS often releases software packages and updates as they expand and improve their software. The effect of these changes may be negligible under normal operating conditions. However, under a high load (for example, peak flying periods) performance can degrade to such an extent that the system falls over, disrupting the business, and resulting in the reputation impact that carries. Performance testing, therefore, must be done before going into production. Nobody wants to find out there is an issue as the result of a user complaint.
Successive releases of any software have the potential to degrade as well as improve performance; AIMS performance is no different. Carrying out regular and frequent performance testing can capture these variations and improve forecasting. Earlier this year, significant changes were made to the Vacation Bidding Module. Through monthly testing of the AIMS environment, one client was able to test these changes and mitigate risks by understanding how the next release of staff leave would impact their servers.
Varying response times within the Flight Information screen over 8 months
3. The cloud is not a silver bullet for scalability
Simply shifting your configuration of AIMS into the cloud will not necessarily improve performance. Recent technology trends have seen large waves of firms migrating away from their own infrastructures and onto the cloud. Whilst the temptation may be there to follow suit and invest in a move to AWS, Azure, GCP, or such like, the cloud is not a silver bullet for AIMS scalability.
Hybrid configurations are not the answer. AIMS runs on multiple tiers which all directly talk to each other. Rescheduling a flight, for example, means that the server hosting AIMS must make several calls to/from the database to check the validity before adjusting the flight time. In instances where web servers have been moved onto AWS (to take advantage of autoscaling), this has caused an increase in the latency between web and database instances. With a large number of calls behind the scenes, this can manifest itself into response time increases of up to 7x.
Migrating to the cloud should be an all or nothing approach. Unless all components are moved, you will simply end up with AIMS performance issues in different areas of your environment.
The route to doubling an airline
These 3 insights will help you develop a framework for scalability. Scaling AIMS to handle a fleet in excess of 500 aircraft is certainly achievable. However, the key is proper demand modelling, optimal architectural choices and frequent testing.
 "Company Information & Career", Aims.aero, 2019. [Online]. Available: http://www.aims.aero/company-information---career.html. [Accessed: 14-Jun-2019].