I was surprised at how difficult it was to find a good schedule at a good price; it was a lot harder than my normal booking. I ended up finding a suitable enough itinerary at Orbitz. I usually fly American Airlines, but for this trip, the AA flights were much more expensive than I wanted to pay. But I found an itinerary that used British Airways and Air Berlin that I liked. So I booked it.
The trip went just fine. On the morning of the final day of my trip, Dan Norris and I were standing together in Kastrup at the BA ticket counter when the BA agent noticed that I hadn't provided my American Airlines AAdvantage number for the itinerary. (BA and AA are oneworld partners.) So I gave him the number, which he attached to my itinerary, and he informed me that the number would map only to the segments of my flight that I hadn't consumed yet (I had CPH-LHR and then LHR-DFW left to go). I'd need to request credit for my flights prior in the week separately on the web once I got home.
Fine.
So on Monday after I got home, I went to AA.com to register my BA flights for mileage credit. There was a form to fill out. It took a while to type everything into it, because I had to find my ticket numbers, figure out how to isolate the carrier id from the remainder of the ticket number, and then enter date and flight number information for each segment of my trip for which I was requesting credit. It was probably a 10-minute time investment to get the form filled out.
So I reviewed what I had entered, and then I hit the Submit button. Instantly, I got feedback from the page saying that I couldn't request mileage credit right now, that I would have to wait 15 days before requesting mileage credit. So I recoiled a little bit—filling out that form was a bunch of work—and I opened my calendar application to log myself a reminder to go through the process again in 15 days.
There are a couple of problems here:
- Why did the form force me to enter a bunch of details before telling me that I shouldn't be using this form?
- Why was it necessary in the first place for me to type in the flight date, flight number, and origin and destination information for each segment of the itinerary? The ticket number should have been enough.
Anyway...
The fifteen days passed, and my calendar reminded me to submit my mileage credit form. So I went to work again, gathering my ticket number information, my flight numbers, my dates of travel, and my origin/destination airport codes. I spent another few minutes typing it all in again. Then I clicked Submit. This time: joy. The form said that the submission was complete, and I'd hear back from AA.com via email.
A minute or so later, I got an email in my inbox thanking me for visiting AA.com and confirming that I had issued a mileage credit request. Good: request confirmed.
Then, just a second or two later, I got a second email from AA.com saying this:
Thanks for using AA.com to request mileage credit for your travel on British Airways.Grrrr.... I had to work this hard—twice!—just to find out that I wasn't even going to get to do what I wanted to do? Why didn't they tell me this fifteen days ago?!
I'm sorry to disappoint you but your transatlantic travel on British Airways (or a BA-ticketed flight) is not eligible for AAdvantage mileage credit. British Airways transatlantic flights to/from the United States are specifically excluded from mileage accrual or redemption in the AAdvantage program.
The first experience was annoying. The second experience took the annoyance to a whole new level.
Here are some application design lessons that this story reinforces:
- Don't ask for information you can derive.
- Don't separate feedback from its prerequisite input by any more "distance" (measured in either time or user investment) than absolutely necessary. Especially when there's a chance you're going to deny someone his service, don't make him work any harder or wait any longer than absolutely necessary to let him know.
"Don't ask for information you can derive." That is not only for convenience, but for data integrity as well. What if the passed data conflicts the data stored in the system? We're going to trust the system anyway.
ReplyDeleteAs for when to pass the error. That's a harder one. Should the system have verified the data first and then given all the problems? What if there were multiple problems? What if those problems are actually built upon each other? What if some problems can only be determined by actually starting the process, such as INSERTing data INTO the database? What if it takes time to do the data verification, but we have an immediate check that we can show a response right away? Would the user prefer speed or completeness?
Submitting the application again when it takes time to fill out, would seem to be the real issue here. Perhaps the system should have stored the request for later filing, either by you, or automatically. Perhaps the system should have a separate verification procedures so the user can see what would have happened had the action been processed today.
It seems that in this case, it was the conglomeration of finding the data, typing it in a second time, and a verification error, built up to an annoying problem. Remove just one of the three issues, and it possibly would have been much less annoying.
Brian, excellent points. Thank you.
ReplyDeleteAnd don't forget:
ReplyDeleteYou never know who you're going to upset, or how many people worldwide they will tell!
Ha! You're right. Imagine how many people would be reading about it if Joel Spolsky started talking about it. ;/
ReplyDeleteSo you are stuck without the miles? Or did you then call their 800# and talk to a human and get it cleared up?
ReplyDeleteSometimes I wonder if all the "free" benefits of the frequent flyer and other affinity accounts are really worth the hassle.
Yes, I got the miles into my British Airways account. And I did actually talk to a human on the phone—a British one, in fact. I had to talk to someone to figure out why my BA account, to which I similarly logged a few thousand miles a few years ago, would not let me log in. ...The account had expired, as I am sure this one will before I use the miles in it.
ReplyDelete...Which I guess is exactly your point.