Wie eine erfolgreiche Implementierung eines Chatbots aussehen kann, zeigt seit über einem Jahr das Beispiel der globalen Flugsuchmaschine Skyscanner und deren Bots auf den Plattformen Alexa, Facebook-Messenger und Skype.
Skyscanner unterstützt Reisende bei der Suche nach den besten Flug-, Hotel- und Mietwagenangeboten weltweit. Um den Nutzern die Reiseplanung noch einfacher und bequemer zu gestalten, entschied man sich als erste Flugsuchmaschine, in-house einen Chatbot zu entwickeln. Das Beispiel zeigt, welche Schritte bei der Entwicklung und dem Launch eines Chatbots zu beachten sind: Um den Reisenden auch wirklich den besten Service bieten zu können, war es ausschlaggebend die Kundenbedürfnisse direkt in den Entwicklungsprozess zu integrieren. Die Schnittstelle zwischen Kunde und Chatbot ist zu Beginn noch eine ziellos geführte, natürliche Kommunikation. Da es kein direktes Nutzerfeedback zu diesem Zeitpunkt gibt, mussten die Entwickler erst einmal die tatsächlichen Absichten der Kunden im Gebrauch des Bots identifizieren, um anschließend Funktionen zu entwickeln, die den Kunden genau diese Ziele erreichen lassen. Als Lean & Agile-Unternehmen folgte Skyscanner dem Ansatz für den Start ein „Minimum Viable Product“ zu entwickeln, also eine minimal funktionsfähige Version des Bots. Ziel war es diese erste Version des Bots in 42 Tagen zu veröffentlichen, um möglichst schnell an echte Daten und echtes Nutzerfeedback zu kommen und auf diesem basierend weitere Features zu entwickeln. Dies ist wichtig, will man nicht über das Ziel hinausentwickeln und Features integrieren, die möglicherweise keinen Nutzen haben.
So entschloss man sich, den Bot zu Beginn der Entwicklung so einfach wie möglich zu halten und auf das wichtigste Ziel der Kunden zu beschränken – die Suche nach dem besten Flugangebot. Zu Beginn fokussierte sich der Chatbot auf den einfachsten Fall von Suchanfragen, bei dem die Nutzer bereits wussten, wann und wohin sie reisen möchten. Dabei standen den Nutzern zwei Abflug-Flughäfen zur Verfügung. Steht der Entwicklungsprozess einmal, können alle weiteren Features und Erweiterungen nach diesem Muster entwickelt werden.
Die richtige Plattform finden
Eine wichtige Frage, die möglichst früh geklärt werden sollte, ist die nach der Plattform. Je nach Unternehmen und Service können hier mehrere oder nur eine in Frage kommen. Nach der Auswahl der Plattformen folgte eine intensive Recherchephase bezüglich der notwendigen Entwicklungstools. Anschließend wurde geprüft, welche Tools bereits verfügbar waren und welche noch entwickelt werden mussten.
Ganz im Sinne von Scrum als Entwicklungskonzept wurden die noch nicht vorhandenen Tools in kürzeren Intervallen (Sprints) entwickelt. Die Arbeit mit webbasierten Anwendungen wie JIRA kann hier das Projektmanagement einfacher und übersichtlicher gestalten. Durch die Auswertung von bereits vorhandenen Kundenerfahrungen, entstand ein Set von möglichen Konversationsabläufen zwischen Bot und Kunde. Dieser Prozess findet parallel zu den Entwicklungsabläufen statt und stellt die Ausgangsbasis für jeden weiteren Entwicklungsschritt dar.
Scrum als Mittel zum Zweck
Skyscanner setzte während der Entwicklung auf einen modifizierten Scrum-Ansatz. Bei der War-Room-Variante handelt es sich um einen Raum zum Informationsaustausch bei schwerwiegenden Herausforderungen. Der anfängliche Facebook-Messenger-Bot wurde anhand dieses Modells, mit dem Ziel dem Kunden möglichst bald einen funktionierenden Bot zu präsentieren, entwickelt. Für die Entwicklung der weiteren Botversionen orientierte man sich an Scrum-Modellen, die Sprints mit einer Laufzeit von zwei Wochen vorgaben. Dabei einigten sich die Entwickler auf themenbasierte Sprints und spezielle Vorgehensweisen, um die Ziele der einzelnen Entwicklungsintervalle auch pünktlich einhalten zu können.
Das definierte Set an Konversationsabläufen wurde schließlich für ein Conversations-as-a-service-Modell genutzt. Dieses erlaubte Skyscanner einen Gesprächsstatus zu präsentieren, der kontextbasiert Antwortmöglichkeiten und logische Folgefragen anzeigt. Dabei wurde auf die bereits bestehenden Services, wie die Abfrage von Flugpreisen und Ticketverfügbarkeiten zurückgegriffen. Der Einsatz gängiger Programmiersprachen wie Python und NodeJS und das Hosting auf AWS (Amazon Web Services) vereinfachten hier die Arbeit. Über eigens ständig verbesserte Deployment-Tools wurde schließlich die erste Version des Bots in Betrieb genommen.
Internter Roll-out als Testlauf
Mit Hilfe automatisierter Testabläufe wurde sichergestellt, dass auch wirklich jede zuvor definierte Frage zufriedenstellend beantwortet werden kann und der Nutzer später nicht in einer Sackgasse landet. Anschließend wurde der Bot intern ausgerollt und das abteilungsübergreifende Mitarbeiter-Feedback bildete die Grundlage für das abschließende Feintuning. Der Bot sollte dann so schnell wie möglich gelauncht werden, um „echte Nutzeranfragen“ zu erhalten und daraus zu erkennen, wie User den Bot tatsächlich verwenden. Erst zu diesem Zeitpunkt, kann eine genaue Aussage darüber getroffen werden, an welchen Punkten der Chatbot optimiert werden kann oder gegebenenfalls weiterentwickelt werden muss. Skyscanner bemerkte auf diese Weise zum Beispiel, dass User im Facebook-Messenger besser auf Auswahlbuttons statt lange Textpassagen reagieren.
Kontinuierliche Weiterentwicklung
Um den sich wechselnden Kundenanforderungen gerecht zu werden, muss an der Weiterentwicklung des Chatbots kontinuierlich gearbeitet werden. Skyscanner verfolgt hier einen AB-Testing-Ansatz, bei den Nutzern neue Features bereitgestellt werden. Ergebnis eines solchen Testlaufs war zum Beispiel die Integration einer Preismeldungsfunktion. Der Chatbot benachrichtigt in Echtzeit den Nutzer sobald sich der Preis für den gewünschten Flug ändert.
Der Aufwand von Zeit und IT-Ressourcen ist auch bei einer in-house-Entwicklung nicht zu unterschätzen. Geht es um Service- und Supportleistungen kann sich der Einsatz von Chatbots bei genauem Abwägen der Vorteile und notwendigen Investitionen für viele Unternehmen jedoch lohnen und schnell amortisieren.
Pim van Oerle, Senior Technical Manager bei Skyscanner, ist maßgeblich an der Entwicklung des Bots beteiligt gewesen.