Der Webshop Super-GAU

Montag, 18. März 2013 um 14:02 von Thorsten Schneider in Webentwicklung
Letzte Woche erhielt ich von meinem bevorzugten Online-Weinhändler einen Entschuldigungs-Brief. Bei der Einführung einer neuen Online-Shop-Software kam es bei ihm zum Super-GAU. Für mich als Web-Projektmanager ein Beweis dafür, dass die Dinge, die wir in unseren Projektmanagement-Seminaren predigen, in der Praxis auch tatsächlich eintreten. Sofern das Ganze nicht nur ein Marketing-Gag ist, aber danach sieht es für mich nicht aus. Obwohl ich zugeben muss, dass der Umgang mit diesem Desaster - ganz im Gegensatz zur wenig professionellen Web-Entwicklung - aus Marketing-Sicht hervorragend ist.
Man kann also aus der Geschichte einiges lernen: Was man bei der Web-Entwicklung nicht tun sollte - und wie man eine Krise marketingmäßig gekonnt meistert.
Was ist passiert?
In seinem Brief erklärt Geschäftsführer Jörg Horn es so (Ausschnitt):
Wir haben uns 2011 entschieden, unseren ... Kundenservice auch für die Zukunft auf sichere Beine zu stellen. Dafür war es notwendig, unsere im Jahre 1996 begonnene und selbstprogrammierte Software (die drohte in die Knie zu gehen) für Warenwirtschaft und Internet auf neuesten und zukunftsorientierten Stand zu bringen. ...
Nach monatelangem Testen und Suchen haben wir uns dann für eine neue Software entschieden und im September 2012 diese nach langer Vorbereitung eingeführt. Damit begann der Horror. ...
So sind Bestellungen ganzer Tage einfach verschwunden ..., andere Bestellungen haben sich plötzlich dupliziert oder halbiert, es sind Artikel dazu gekommen, die niemand bestellt hat oder manche rausgeflogen, die aber ausdrücklich bestellt wurden, Versandwünsche und Grußtexte sind von Kunde zu Kunde gewandert, so dass Tante Erna die für Onkel Erwin bestimmten Glückwünsche erhielt und anschließend wurden (obwohl bezahlt) nicht nur der Schenker unberechtigt angemahnt, nein, auch Tante Erna selbst erhielt zum falschen Geschenktext obendrein eine Mahnung.
Manche Pakete wurden doppelt verschickt, andere wurden irrsinnig in Einzellieferungen aufgeteilt (ein Kunde erhielt seine 18 Flaschen statt in einem Paket in 18 Einzelpaketen ... und gerade zu Weihnachten mussten viele Kunden auf Ihren Wein warten, da das System sich für zwei Tage ganz verabschiedet hatte und anschließend alle Bestellungen komplett durcheinander und auf einmal ausgespuckt hat. ...
Soweit der Ausschnitt aus dem Brief, den vinos.de an alle Kunden verschickt hat.
Was ist - aus Web-Projektmanagement-Sicht - nun eigentlich schiefgelaufen?
Wegwerf-Software vermeiden!
Wie aus dem Brief hervorgeht, sollte die - schon etwas in die Jahre gekommene - selbst entwickelte Online-Shop-Software durch ein neues System ersetzt werden. Genau das erlebe ich in meinen Projektmanagement-Seminaren ständig: Funktionierende Software, die die aktuellen Anforderungen nicht mehr zu 100% erfüllt, wird einfach weggeworfen und soll durch etwas Neues ersetzt werden. Mit allen Risiken, die die Einführung eines neuen Systems, mit dem man noch keinerlei Erfahrungen hat, bringt und die, wie am Beispiel vinos.de sehen, nicht zu unterschätzen sind.
Da stellt sich die Frage, ob das so sein muss bzw. warum ein Unternehmen überhaupt in die missliche Lage kommt, ein prinzipiell funktionierendes und bewährtes System entsorgen zu müssen.
Die Ursache des Problems liegt in einem mangelhaften Software-Entwicklungsprozess: Es wurde versäumt, den bestehenden Online-Shop kontinuierlich weiter zu entwickeln und zu modernisieren, um auch zukünftige Anforderungen noch erfüllen zu können.
Das Gemeine ist nämlich: Der Quellcode einer Web-Anwendung wird ohne jegliches Zutun im Laufe der Zeit immer schlechter (man sagt "er degeneriert"), so dass man irgendwann an den Punkt kommt, dass der Quellcode kaum mehr lesbar, geschweige denn wartbar und erweiterbar ist.
Sämtliche Technologien im Web-Bereich entwickeln sich rasant weiter. Das betrifft nicht nur die von dem Webshop verwendete serverseitige Programmiersprache, z.B. PHP, sondern auch die Datenbank, die clientseitigen Markup- und Programmiersprachen (HTML, CSS, JavaScript) und vor allem auch die Programmierkonzepte (denken wir z.B. an Technologien wie Ajax, Objektorientierung und moderne Web-Entwicklungs-Frameworks wie z.B. ZEND, Symfony (im PHP-Bereich) oder Ruby on Rails).
Modernisiert man seine Codebasis nach dem Launch nicht kontinuierlich, verliert man irgendwann die Wartbarkeit und Erweiterbarkeit. Die Entwickler, die den Quellcode produziert haben, sind irgendwann nicht mehr verfügbar. Andere Entwickler trauen sich schließlich nicht mehr, den Code überhaupt zu ändern, weil unvorhersehbare Effekte an ganz anderen Stellen der Anwendung auftreten können.
Schließlich bleibt einem nichts anders übrig, als die Software wegzuwerfen und etwas komplett Neues zu entwickeln, mit entsprechend hohem (Kosten)-Aufwand und Risiko.
Zeitgemäß ist das nicht, denn es gibt natürlich Möglichkeiten, diese Probleme zu vermeiden: Moderne, agile Vorgehensmodelle wie z.B. Scrum oder Extreme Programming (XP) unterstützen die Weiterentwicklung einer (Web-)-Software auf unbestimmte Zeit - solange die Anwendung eben gebraucht wird.
Ein wichtiges Prinzip dabei ist das sog. Refactoring des Quellcodes. Darunter versteht man die Veränderung des Quellcodes ohne Veränderung der Funktionalität aber mit dem Ziel, die Quellcode-Qualität in Bezug auf Lesbarkeit, Wartbarkeit, Erweiterbarkeit und Sicherheit zu verbessern bzw. den aktuellen technologischen Entwicklungen anzupassen.
Zusätzlich sorgen automatisierte Tests dafür, dass Fehler, die ja z.B. auch durch das Refactoring entstehen können, so früh wie möglich entdeckt und behoben werden können.
Diese Prinzipien sorgen (zusammen mit sehr vielen weiteren, hier nicht genannten) dafür, dass eine Web-Anwendung jederzeit so weiterentwickelt werden kann, dass beliebige neue Anforderungen problemlos erfüllt werden können. Es wird konsequent verhindert, dass Wegwerf-Anwendungen entstehen, die Investition in die Entwicklung einer Anwendung wird nachhaltig geschützt.
Der Kunde freut sich über kostenlosen Wein
So unprofessionell die Web-Anwendungsentwicklung bei Vinos gelaufen ist, so professionell finde ich den Umgang der Vinos Marketing-Abteilung mit dem Webshop-Super-GAU. Der Brief an sich hat durchaus viralen Charakter. Ich bin bestimmt nicht der einzige, der ihn in seinem Blog erwähnt ... Mit den Problemen wird offen und auf eine humoristische Weise (viraler Effekt!) umgegangen und als Wiedergutmachung schenkt Vinos allen Kunden (nicht nur den direkt betroffenen!) eine Flasche Wein im Wert von 26,90 Euro - sofern man im März eine Online-Bestellung aufgibt und im Vinos Onlineshop im Kassenbereich "SOFTWARE" (ohne Anführungszeichen und groß geschrieben) in das Gutschein-Feld eingibt (noch ein viraler Effekt!).
Habe ich natürlich auch gleich gemacht. Und werde dann an dieser Stelle berichten, wie der Pago de Vallegarcía Hipperia 2007 schmeckt...
Tags: vinos
Kommentare
-
Aramon
am Montag, 18. März 2013, 16:41
Obwohl ich kein bekennender Weintrinker bin, finde ich diesen Blog-Eintrag recht interessant. Bezüglich dem Software-Entwicklungsprozess sehe ich es ähnlich wie du. Wobei ich sagen muss, manchaml lässt sich das Wegschmeißen von Software nicht vermeiden. (z.B. wenn es keine Entwickler für Sprache X gibt, die Performance nicht mehr ausreicht, die Sprache nicht mehr weiter entwickelt wird etc. ).
Da macht es manchmal Sinn, bestehende Teile auszulagern und die Software so Stück für Stück zu ersetzen. Ein radikaler Switch von heute auf morgen sollte natürlich vermieden werden.