Mehrere Anbieter, dasselbe Hotel, vier verschiedene Namen dafür. Und ein zweites Produkt, das in derselben Buchungsstrecke mitfährt.

Zwei Probleme in einer Oberfläche

atBeds brauchte eine Buchungsmaschine, und sie heißt myHotels. Das offensichtliche Problem hat jede Hotelsuche mit mehreren Quellen: Dasselbe Haus kommt aus drei Bettenbanken unter drei Kennungen, mit verschiedenen Zimmerbeschreibungen, verschiedener Stornologik und Preisen, die erst vergleichbar sind, wenn man bereits weiß, was jeweils enthalten ist. Die meisten Buchungsmaschinen beantworten das, indem sie nicht fragen. Sie zeigen eine Quelle und verbergen den Rest.

Das weniger offensichtliche Problem war der Zuschnitt. Mitten in der Arbeit kam die Aktivitätensuche über die Amadeus Activities API dazu: Wer ein Hotel bucht, soll am selben Ziel und im selben Ablauf gleich mitbuchen können, was es dort zu tun gibt. Damit wird aus einer Zimmersuche eine Reisesuche, und die Oberfläche muss auf einmal mehr gleichzeitig tragen.

Was in meiner Verantwortung lag

Gebaut hat das nicht ein Unternehmen allein. Anbieter, technische Partner und die eigenen Teams hatten jeweils ein Stück. Meine Aufgabe war der ganze Weg, nicht eines der Stücke.

Die Buchungsstrecke. Wo die Suche beginnt, ab welchem Punkt ein Preis verbindlich wird und was ein fehlgeschlagener Anbieteraufruf mit dem Rest des Bildschirms macht. Eine Suche mit mehreren Quellen scheitert teilweise, fast nie vollständig. Eine Oberfläche, die Teilausfall wie Totalausfall behandelt, verliert Buchungen, die sie schon hatte.

Die Daten. Häuser aus verschiedenen Bettenbanken einander zuordnen, damit ein Vergleich ein Vergleich ist und keine Liste. Vereinheitlichen, was „enthalten“ heißt, wenn vier Lieferanten es unterschiedlich definieren. Und entscheiden, wie Ergebnisse aus der Aktivitätensuche zur Hotelsuche gehören, statt als fremdes Widget danebenzustehen.

Die Oberfläche. Karte und Liste als zwei Wege in denselben Bestand. Ein Vergleich, der die Unterschiede dorthin legt, wo das Auge ohnehin ist. Und ein Weg von „hier ist ein Hotel“ zu „hier ist etwas zu tun in der Nähe“, der sich nicht anfühlt wie eine zweite Website, die an die erste geschraubt wurde.

Was daran schwer war

Nicht die Anbindungen. Die Abstimmung. Jede Partei hatte eine funktionierende Antwort für ihr eigenes Stück, und keine dieser Antworten setzte voraus, dass es die anderen gibt. Das zu führen heißt, das Bild vom Ganzen zu halten, während jede Partei ihren Teil optimiert, und derjenige zu sein, der Nein sagt, wenn eine an ihrer Stelle vernünftige Entscheidung zwei Schritte weiter hinten etwas zerlegt.

Die nachträglich dazugekommenen Aktivitäten waren davon der deutlichste Fall. Als eigener Reiter wäre es leicht gewesen: Hotels hier, Aktivitäten dort, kein Zusammenhang zwischen beiden. Brauchbar ist die Fassung, in der die Suche nach einem Hotel und die Suche nach etwas zu tun am Ziel sich wie dieselbe Aufgabe anfühlen, weil sie das für den Buchenden auch sind.