Estimated at $556bni, the aviation industry is run by a vast ocean of products and services that work together seamlessly to make sure flights take-off and land on time, the passengers are safe and entertained, and the overall business is profitable. Multiple systems interact with each other and exchange data almost every second. With the number of airline passengers growing at a rate of approximately 6% per annumii, have the major players learned to adapt to the rapidly growing demands of their customers?
Finding solutions in Agile
Traditionally considered a stable industry, the aviation sector has well-established practices and highly experienced personnel to manage workflows around a complex web of information. However, with several years of experience of enabling high-end technology in this industry, we have seen that when it comes to technology up gradation, these established practices, and well-set ways can also pose challenges.
This is where agile provides solutions.
Typical challenges in aviation projects | Agile solutions |
---|---|
Complicated requirements |
Projects tend to have a complex web of information wherein a seemingly simple use case of viewing a flight list might involve integration to multiple systems at the back end. Here agile’s basic principle of breaking down complex work into small work streams or stories is critical as the team gets a chance to brainstorm the requirements and drill down the complexity. Understanding integration points and breaking the requirement into simpler chunks brings more clarity to the use case. |
Multi-location teams |
Teams are usually distributed in separate locations and building trust among different stakeholders is critical to the project’s success. Agile helps in overcoming negative perceptions and building trust by keeping transparency in terms of the work, queries and responses. Documenting and sharing user stories with everyone through agile boards, and clearly assigning tasks fosters trust amongst all stakeholders. |
High-risk domain |
Even a minor error or omission in the testing phase can prove to be catastrophic in this domain. For e.g. a change in the units of fuel ordered can lead to a mid-air fuel shortage. Agile helps in mitigating such risks by dispersing them into various work packets. Testing at the end of each sprint ensures that the risk is eliminated one by one in small chunks. In the last ‘hardening’ sprint of the project, testing ensures everything is working coherently. |
Lack of skilled personnel |
Finding a blend of technical as well as aviation expertise in project personnel is always a challenge. Usually, aviation experts have been working in the sector for years and are often not exposed to the technical aspects of their day to day work. Since a project run in agile has a well-defined scope, each team member can adorn multiple hats and offer support to their colleagues. For e.g. a technical architect can sometimes aid the team in improving their functional know-how. Support from him can come in the form of information as well as taking up technical tasks from the unassigned pool of stories. Having a defined project scope gives all team members a better view of additional areas of responsibility they can take up during the course of project implementation. |
Agile approach: One “sprint” at a time
A good example of how agile works best in aviation is our work in the development of a flight planning system for a leading airline. The legacy application had been running for the past 20 years, with 60+ loyal customers, and a market share of approximately 35%. In Europe alone, more than 45% of the airlines consume the services of this flight planning and tracking system. Upgrading a system of this scale and complexity, all the while ensuring business continuity for existing customers requires a high degree of flexibility, co-ordination, speed, and accuracy.
We set about planning this project with the goal of maximizing asset utilization, improving customer experience and cost efficiency. Following the agile approach, the mammoth program was broken down into approximately 16 sub-projects or streams. The drivers that led to the final breakdown of the project into these streams are listed below.
-
- Business objectives: Each stream needed to fulfill a different business objective driven by customer needs. With the delivery of each stream, one objective (out of the overall list of objectives) was accomplished.
-
- Priority: The streams were prioritized according to business initiatives and strategic decisions. At the end of each sprint, a shippable product was to be delivered, thus enabling the customer to inch closer to their goal and measure every step. The priority of each stream was decided based on various other factors such as clarity in requirements, availability of personnel etc. Each project was being handled by a separate agile team. The value could be delivered iteratively, thus ensuring customer confidence. For instance, in order to bring about change, without impacting the current functioning, backend technical services were the first ones to be picked up for up-gradation.
-
- Plug-out and Plug-In: Each stream was easy to ‘plug out’ and ‘plug in’ since an independent workable solution was developed as part of each stream. Separate functionalities like crew briefing, flight planning, airport suitability check were taken as separate work streams. This enabled us to make changes to the existing application, by replacing existing modules iteratively. It also helped minimize the risk of application failure and made roll back easy. Changes were made in small releases instead of leapfrogging to change to the entire system at once.
Additionally, two other factors were considered essential while implementing agile in this project.
-
- Constant Inspection: Monitoring the progress of smaller chunks was easier than handling the metrics for a very large project. Constant inspection and adapting to situations where required, ensured that a quality product was being delivered.
-
- Controlled budget: Since budget is always one of the top concerns in an IT project, iterative development helped in keeping a check on the cost involved in the project. By tracking the expenditure, the budget for future projects could be better planned.
Our experience in the aviation industry has reinforced our belief that any project, however, large in scope or complex in its implementation, can be handled well when armed with the right set of agile tools and expertise. On its part, the aviation sector is increasingly adopting the agile way as it embraces new age technologies like mobile, beacons, and wearables. With almost one-third of the IT spend in aviation going towards innovationiii, there is no doubt that agile methodologies will very soon entrench themselves in the aviation world and become one its established practices.