Mumbai, Nariman Point, im Mai 2010. Die Stadt hat die vierthöchsten Gewerbeimmobilienpreise der Welt. Es ist kurz vor 24 Uhr. John sitzt im 20. Stockwerk eines der modernen Bürogebäude. Draußen hat es seit Wochen über 42 Grad Celsius, doch das spürt er im Luftzug der Klimaanlage kaum. Es sind nur noch wenige Wochen bis zum Monsun, das Klima ist schwül und drückend. Die Klimaanlage kühlt so kräftig, dass sich ein Durchschnittseuropäer erkälten würde, doch die Inder mögen es so.
Glücklicherweise reißt der frische Luftstrom dank einer eigenen Energieversorgung kaum ab. In diesem Stadtviertel muss kaum jemand auf Strom verzichten - im Gegensatz zu vielen Orten anderswo in Indien. Bis zur Auslieferung der Software, die John programmiert, sind es nur noch wenige Stunden. Schon seit zwei Wochen arbeitet John jeden Abend bis spät in die Nacht.
John hat am IITB (Indian Institute of Technology Bombay) Informatik studiert und als einer der Besten seines Jahrgangs ein Stipendienjahr in den USA verbracht. Dort wurde er nach seinem Abschluss sofort von einer Technologiefirma in Boston eingestellt. Sein Spezialgebiet waren Geschäftsprozesse, bis er vor fünf Jahren den Schritt zurück in die Heimat wagte. Aber momentan ist er nicht in bester Stimmung, weil er seine Aufgabe nicht entsprechend den üblichen Standards erledigen kann.
John arbeitet für Kiri Technologies Limited, einen jener indischen Aufsteiger der IT-Dienstleistungsbranche, die in wenigen Jahren von einer Garagenfirma zu einem Unternehmen mit knapp 1000 Mitarbeitern gewachsen sind. Sein richtiger Name ist Ajatashatru Kumar Gupta. Seit er jedoch zuerst für amerikanische, und jetzt hauptsächlich für Firmen in Europa Software entwirft, häuften sich die Probleme: Seine Kunden konnten seinen Namen nicht verstehen und schon gar nicht aussprechen. So hat er sich einen kurzen und im westlichen Sprachgebrauch leicht zu merkenden und einfach auszusprechenden Zweitnamen zugelegt: John Gupta - Senior Development Architect.
Bei Dycolo in Frankfurt
Momentan arbeitet John an den letzten Zeilen einer Software für Dycolo, einen Hersteller von Textilfarben nahe Frankfurt am Main, dessen hausinternes Entwicklungsteam im letzten Jahr von 15 auf acht Mitarbeiter geschrumpft ist. Ursache waren die fehlenden Karrieremöglichkeiten der Programmierer, Großbanken haben die begehrten Experten abgeworben. Gleichzeitig muss Dycolo durch den verschärften Wettbewerb in den letzten Jahren mehr kundenspezifische Anpassungen vornehmen, und damit fallen mehr Aufgaben für die IT an.
Michael, der IT-Leiter von Dycolo, sieht sich mit vielerlei Herausforderungen konfrontiert. Mit seinem IT-Budget kann er nicht die hohen Gehälter der Banken zahlen. Nicht zuletzt deshalb fällt es ihm schwer, junge Mitarbeiter für seinen Betrieb zu begeistern. In seiner Not hat er erstmals eine Offshore-Firma mit der Betreuung und Erweiterung der hausinternen Programme beauftragt. Die Qualität und Funktionalität, die er verlangte, wurden vorbehaltslos garnatiert und schnell ein erster Vertrag unterschrieben. Michael war erleichtert, weil der indische Partner ihm die Kapazitäten und Flexibilität bot, die er vor Ort nicht mehr finden konnte.
John stöhnt. Schon wieder erreicht ihn eine kurze Nachricht mit einer letzten kleinen und dringenden Erweiterung. Der ursprüngliche Funktionsumfang hat sich fast verdoppelt, der Liefertermin ist indes gleich geblieben. Von der anfangs sauberen und durchdachten Softwarestruktur ist nach den vielen kleinen Änderungen nicht mehr allzu viel übrig. Der lokale Vertriebler von Kiri Technologies hat es nicht geschafft, die Anforderungen an die erste Lieferung einzufrieren. Anfragen zu Änderungen und Erweiterungen hat er stets bereitwillig zugesagt: "No problem, my friend. We can implement this in no time", lautete seine Standardantwort gegenüber dem Kunden. Michael nahm es mit Freuden auf, wenn Pläne und Lieferumfang wieder einmal zu seinen Gunsten angepasst wurden.
Fresher und Hardcoding
Mehrere "Freshers" - das sind im Entwickler-Slang die unerfahrenen Uni-Absolventen - wurden für das Projekt abgestellt und mussten ohne ausführliche Einführung loslegen. Noch vor einigen Jahren war es selten ein Problem, gute neue Mitarbeiter zu finden, doch mittlerweile gehen die Besten lieber zu den Produktherstellern. Der Job bei einem Dienstleister ist häufig nur noch zweite Wahl. Zu Johns Verdruss hat vergangene Woche auch sein Freund Prashnat kurzfristig gekündigt. Sein neuer Arbeitgeber, gleich auf der anderen Straßenseite, zahlt 20 Prozent mehr und hat auch ihn schon angesprochen.
John ist frustriert. Dennoch möchte er die Aufgabe erfolgreich abschließen. Aus vielen früheren Projekten weiß er, wie wichtig es ist, dass Kunden eigenes technisch versiertes Personal zur Betreuung und Steuerung der Offshore-Partner abstellen. Je genauer sich Mitarbeiter mit firmeninternen Prozessen und dem Umfeld auskennen, desto besser können sie dem entfernten Team Besonderheiten und Abläufe in persönlichen Treffen darstellen. John arbeitet gerne mit solchen Spezialisten, um Entwürfe zu diskutieren und gemeinsame Entscheidungen zu fällen. Leider sind diese Rollen selten besetzt, so dass er immer wieder selbst Annahmen treffen muss.
John konzentriert sich wieder. Mittlerweile ist es selbst für ihn schwierig geworden, die Software zu verstehen. Die ursprüngliche Dokumentation hat kaum noch etwas mit dem aktuellen Projektstand zu tun. Im Code selbst gibt es nur wenige Kommentare, von denen einige zudem durch häufiges Hin- und Herkopieren nicht mehr passen. Wegen Zeitdrucks wurden viele Texte und Parameter "hart" in den Code implementiert. Für den Kunden bedeutet das, dass er später, wenn neue Anforderungen hinzukommen, nicht einfach die Konfiguration ändern kann.
Er muss jedes Mal den Programmcode überarbeiten oder überarbeiten lassen. Das ist zeitaufwendig und wenig flexibel. Große Teile der Funktionen wurden aus anderen Projekten zusammenkopiert und angepasst. Der Code mancher Module umfasst mehrere Seiten und enthält teilweise auch Programmzeilen, die gar nicht ausgeführt werden können. Das missfällt John, doch konnte er sich mit seinen Qualitätsansprüchen leider nicht durchsetzen: Er hätte sich weniger Änderungen und regelmäßige Treffen und Reviews mit dem Kunden gewünscht.
Termin eingehalten ...
Nun gibt es viele Abhängigkeiten zwischen Programmteilen, so dass jede Erweiterung einen endlosen Rattenschwanz an Änderungen und Tests an unvermuteten Stellen nach sich zieht. Schlimmstenfalls beeinträchtigt ein Eingriff andere Funktionen der Software. Schon jetzt weiß John, dass Programmierer, die später die Software betreuen, viel Zeit benötigen werden, um den Code zu verstehen.
Der Kunde bemerkt davon zunächst einmal nichts. Er wird die vorher abgestimmten Testfälle durchspielen und bei Erfolg die Abnahme unterzeichnen. Spätere Erweiterbarkeit und Flexibilität interessieren Anwender und Lieferanten erst dann, wenn es zu spät ist. John übersetzt den Code. Das Programm läuft und besteht die automatischen Testfälle. Daraufhin startet John den Transfer zum Kunden.
In Deutschland steht Michael wie immer unter schwerem Zeitdruck. Anfangs war er skeptisch. Er hatte viel über die Probleme in Offshore-Projekten gelesen. Nun ist er froh, dass die Software termingerecht geliefert wurde. Die im Code eingebetteten Probleme wird er erst viel später bemerken und sich über die hohen Folgekosten ärgern. (jha)
Dr. Andreas Kotulla und Sudarshan Bhide sind Geschäftsführer und Gründer der international agierenden Acellere GmbH. Acellere unterstützt Kunden bei der Vorbereitung, Durchführung und dem Controlling von IT-Offshoring-Projekten. Bhide war viele Jahre Softwarearchitekt bei einem der größten indischen IT-Anbieter. Kotulla war mehrere Jahre bei internationalen Großkonzernen in leitenden Positionen in der Softwareentwicklung tätig. Er ist zudem Buchautor.
Keine Tiger in Indien
Kommunikationsprobleme, interkulturelle Missverständnisse und unterschiedlich interpretierte Spezifikationen - die Gründe für gescheiterte Offshore-Projekte sind vielfältig. In seinem Buch "Keine Tiger in Indien" führt Andreas Kotulla die Leser durch ein Offshore-Projekt voller Überraschungen, beginnend mit der schwierigen und aufregenden Phase der Provider-Wahl.
Immer wieder das Scheitern vor Augen, wird das Vorhaben auf unvorhersehbare Weise in vielen kleinen Schritten doch noch erfolgreich abgeschlossen, wenn auch viel später als geplant. Der Autor mischt Analysen mit Blog-Einträgen und anekdotischen Reiseberichten. Das Ganze garniert er mit Kochrezepten, denn die Errungenschaften der lokale Küche machen leere Versprechungen in Bangalore, Bestechung in Moskau, harte Bandagen in Sofia und peinliche Pannen in Polen erträglicher, so die Erkenntnis von Kotulla.