Major Airline Reveals Passenger Information
blog.tinfoilsecurity.com
blog.tinfoilsecurity.com
ITA Software (which I cofounded but at which I'm no longer an employee, and which is now part of Google) has been working on a new reservation system built on modern technologies. This is a monumental undertaking, but they have already launched with at least one airline.
It'll get better, but for the next few years, at least, airline websites are going to be patchwork quilts prone to this sort of problem.
I have no idea what United is running (besides the Windows ASP.NET front-end), but I wouldn't be surprised if it's something complicated enough to induce programming errors in clever people.
ITA's quizzes more than once inspired me on tests I subjected candidates to in order to gain a better understanding of the plumbing inside their heads. I assume the reservation system plumbing is equally interesting.
In what possible way could knowing who the other people on the flight are benefit an individual booking a seat?
This is sloppy, sloppy coding; probably a result of some poor schmuck pulling an all nigher or two because the somebody promised an unrealistic deadline.
Here's my guess: it's probably because you can have multiple people on one reservation. Each passenger on the flight gets an ID, and each reservation contains the IDs of the involved parties. Invalid reservation ID? List all the passengers, obviously!
As in "if seat.isoccupied()"
At no time should the passenger object be visible to perform a new booking. I see where you might need it if you are changing a reservation, but again this shouldn't in any way be linked to the passenger manifest.
Obviously you can easily design a schema that does that without including the names of other passengers, but that schema would be idiosyncratic to that one purpose.
Given a certain level with the airline, United for example blocks the seat right next to you to offer you extra space (this can be overruled if the plane gets too packed). Thus, one passenger may be linked to more than one seat.
The screenshot shows the point in the ticketing workflow where you give the name (and basic TSA-required details) of the passenger purchasing the ticket. If you're logged in to the website, you can add as many passengers as you want to your account, which might be handy if you purchase tickets for your family or for coworkers. My guess would be that somehow the session got into an incorrect state and is showing the passengers from one or more other accounts.
Also, the form is the same whether you're booking a one-way flight with one manifest, or a roundtrip with many connections where each flight has a unique manifest. I don't understand how the system would be able to deal with these diverse sets of data.
Paranoia --> profit.
They should sell rolls of tinfoil too, for "serious protection", just as a gag.
I wonder: When he selected the other passengers, did their information populate? Telephone/address/etc.?
Sidenote: Can't wait 'til Tinfoil opens up to a larger group; I've been over to your site several times over the past week. Looks like a useful product.
We'll roll you into the next batch of invites. :)