Aviation
Airline software is a real-time negotiation system built on top of a forty-year-old data model.
2/10 chapters written
Aviation is one of the rare domains where engineers say “why is this so complicated” and almost all of the complexity turns out to have a real reason.
I am writing this file because the most instructive modelling mistakes I have seen in my career are concentrated here. Thinking a reservation is a row, thinking a seat is a stock item, thinking a delay is an exception — all three get made in other domains too, but in aviation the consequences show up immediately.
My sources are public: IATA standards, published incident and outage reports, and airlines’ own technical documentation. Nothing here is internal knowledge belonging to a particular company.
Contents
Unwritten chapters are listed too. The line beneath each is a promise of what it will cover.
- Reservation
- 01From mail contracts to SABREWhy inventory and the passenger record were born apart, and why that split still costs us.
- 02A PNR is not a record, it is a contractModel a reservation as a row and it works for a month, then collapses. The cause is misunderstanding not what a PNR is, but what it represents.
- 03Overbooking is not a mistake, it is a modelAirlines sell more tickets than seats, and that is a deliberate decision rather than a software bug. What is interesting is not the decision but how the system carries it.
- Inventory
- 04Inventory is not seatsWhat an airline sells is not a physical seat, and confusing the two breaks the pricing model.
- 05A price is not a number, it is a stack of rulesWhy the same flight has a different price for every passenger, and where that is computed.
- 06Codeshare: two airlines, one seatWhen two carriers sell the same seat, who owns the truth about it.
- Operations
- 07IROPS: when the plan collapsesDisruption is not an exception path, it is the hardest normal path in the system.
- 08Why crew scheduling is NP-hardLegal duty limits, rest rules and fairness turn rostering into a genuinely hard problem.
- Integration
- 09The industry still speaks EDIFACTA 1980s message format underneath modern APIs, and why replacing it keeps failing.
- 10NDC: who controls distributionA standard that is also a commercial power struggle, and what that means for the architecture.