Intelligentes Outsourcing Nearshore-Projekte zuverlässig zum Erfolg führen
Gründe für das Outsourcing von Embedded-Softwareentwicklung gibt es viele. Es geht um schnelleres Time-to-Market durch kurzfristig ausbaubare Entwicklungskapazitäten, die Auslagerung von Standard-Programmierungen oder den zeitlich befristeten Zukauf von Know-how. Doch wie betreibt man „Intelligentes Outsourcing“ mit minimalem Risiko?
Anbieter zum Thema
Viele Firmen scheuen den Schritt zum Outsourcing ihrer Entwicklungsarbeiten und die Statistik gibt ihnen Recht: Rund die Hälfte aller Outsourcing-Projekte scheitert. Die Gründe dafür finden sich in nicht realisierten Kosteneinsparungen, schlechter Produktivität, mangelnder Kooperationsbereitschaft und Kommunikation zwischen den Beteiligten, unüberbrückbaren Differenzen in Unternehmens- oder Landeskultur sowie fehlender Erfahrung und mangelhaftem Projektmanagement.
Der Preis des Scheiterns sind unter anderem hohe Ausgaben für die Kommunikation und Koordination, hohe Verwaltungskosten sowie häufig nicht einkalkulierte Zusatzkosten. Hinzu kommen demotivierte Mitarbeiter, mittelfristig fehlendes Know-how, weil das eingekaufte Fachwissen im eigenen Unternehmen nicht weiter aufgebaut wird, und eventuelle rechtliche Folgen zum Beispiel in Form von Urheberrechtsstreits, weil die Arbeiten in verschiedenen Rechtssystemen durchgeführt wurden. Diese Klippen kann nur umschiffen, wer sich der Risiken bewusst ist und diese durch die sorgfältige Wahl des Outsourcing-Partners rigoros ausschließt.
Nearshoring macht projektspezifische Kosten kalkulierbarer
Zunächst einmal muss eine Entscheidung über den Standort des Softwareentwicklungspartners getroffen werden. Ein Onshore-Dienstleister ist typischerweise im selben Land angesiedelt. Dies bringt Vorteile hinsichtlich der Kommunikation, allerdings ergibt sich aufgrund ähnlicher Lohnstrukturen meist keinerlei Kostenvorteil. Vom geringeren Pro-Kopf-Einkommen profitiert ein Unternehmen durch die Zusammenarbeit mit einem Offshore-Partner zum Beispiel aus China und Indien. Allerdings vermissen viele Auftraggeber die Nähe zum Dienstleister, die nötig ist um ein Projekt möglichst zeitnah zum Abschluss zu bringen. Sprachliche und auch (unternehmens-)kulturelle Reibungsverluste sowie unliebsame Verzögerungen in der Kommunikation aufgrund unterschiedlicher Zeitzonen und mangelnder Vor-Ort-Präsenz lassen so manche Beteiligten schnell das Handtuch werfen. Und so entscheiden sich viele Unternehmen bei der Vergabe ihrer Outsourcing-Projekte für einen Partner, der die Vorteile der beiden extremen Varianten in sich vereinigt: Nearshore-Dienstleister bieten einen wirtschaftlichen Vorteil durch Off-site-Leistungen am Personalkosten-günstigen eigenen Standort sowie Nähe zum Kunden mit bedarfsgerechter On-site-Präsenz. Projektspezifische Risiken werden so kalkulierbar und können rechtzeitig abgefangen werden.
Projektorientierte On-site-Aktivitäten kombiniert mit Nearshore-Entwicklungszentren
Nearshore-Dienstleister mit qualifizierten Entwicklern und kosteneffizienter Struktur sind aus deutscher Sicht nur in Osteuropa zu finden. Doch auch hier gilt es deutliche Unterschiede zu machen zwischen einfachen Auftragsprogrammierern und erfahrenen Softwarehäusern, deren On- und Off-site-Teams mehr leisten als die simple Code-Lieferung. Hermes Softlab mit Sitz in der slowenischen Hauptstadt Ljubljana ist einer der größten unabhängigen Engineering & IT Service-Anbieter Südosteuropas. Das Unternehmen kombiniert projektorientierte On-site-Aktivitäten beim Kunden mit den Dienstleistungen seiner Nearshore-Entwicklungszentren. Im Laufe von 16 Jahren Erfahrung mit Outsourcing-Projekten hat das Unternehmen die „nearshore transition methodology“ entwickelt, die das Outsourcing-Risiko von Entwicklungsprojekten durch einen iterativen Ansatz, ähnlich dem iterativen Vorgehensmodell bei der Softwareentwicklung, reduziert.

Hermes Softlab versteht sich als ein „mature nearshore“-Dienstleister. „Mature“ ist in diesem Zusammenhang der ausbalancierte Mix von On-site-arbeitenden „Ambassadors“ (erfahrene Senior-Ingenieure oder Projektleiter) und kosteneffektiv Off-site-arbeitenden Ingenieuren. Auf diese Weise werden die von auf den ersten Blick günstigeren Anbietern nachberechneten Kosten für das Projektmanagement auf ein Minimum reduziert. Darüber hinaus kann HERMES Softlab mit seinen erfahrenen Ingenieuren sehr viel früher in den Entwicklungsprozess einsteigen, also bereits an der strategisch anspruchsvollen Definierung des Projektes mitwirken. Nicht selten geht der Kunde so weit, die gesamte Pflege von Legacy-Produkten auszusourcen: HERMES Softlab übernimmt dann die Wartung und Weiterentwicklung bestehender Produktreihen, während sich der Kunde ganz auf die Neuentwicklung von Produkten konzentrieren kann.
Zusamenarbeit bereits bei der Spezifikation
Typischerweise gliedert sich ein Embedded-Softwareentwicklungs-Projekt von Hermes Softlab in sechs Phasen (Bild 2). Als „mature nearshore“-Dienstleister steigt das Unternehmen oft bereits im Stadium der „Spezifikation“ des Projektes ein, in dem alle technischen und projektrelevanten Details definiert werden. Die Slowenen setzen kommunikationsstarke Ingenieure mit langer Projekterfahrung als Ambassadors direkt vor Ort ein. Diese erhalten bei der Bearbeitung erster Arbeitspakete beim Kunden Einblick in die Entwicklungsumgebung wie Tools und Laufzeitumgebung sowie in die Zusammenhänge der einzelnen Softwaremodule. Gleichzeitig lernen sie die spezifischen Prozesse und die Infrastruktur des Unternehmens kennen und etablieren eine solide Kommunikationsbasis auf persönlicher Ebene, oftmals übernehmen sie auch die Aufgabe eines Projektleiters.
Design, Entwicklung und Tests laufen großteils Off-site
Das Entwicklungsteam des Nearshore-Dienstleisters steigt in die zweite Stufe des Projektes ein und beginnt noch während der Spezifikationsphase mit dem Design. Mehr als die Hälfte dieser Arbeiten werden Off-site in Entwicklungszentren in Slowenien, Bosnien-Herzegowina und Serbien geleistet. In regelmäßigen Design-Reviews des Ambassadors vor Ort beim Kunden werden die Einhaltung aller Prämissen und der Verlauf des Projektes überprüft. Damit machen sich in Phase 2 für den Auftraggeber erstmals die Kostenvorteile, aber auch der Nutzen der räumlichen Nähe zum Dienstleister bemerkbar.
Mit der Programmierung beginnt nun die Phase der Entwicklung, die meist ausschließlich an den Standorten des Dienstleisters stattfindet. Der Kunde hat aufgrund unregelmäßiger Reviews einzelner Module volle Kontrolle über den Projektverlauf. Nur bei Bedarf werden diese Meetings auch off-site abgehalten.
Bereits während der Entwicklungsphase werden von Kunde und Dienstleister On- und Off-Site-Test-Teams definiert. In der Regel werden die Integrations- und Systemtests beim Auftraggeber ausgeführt, denn viele Versuchsaufbauten sind sehr komplex und machen es zwingend notwendig, auch auf spezielle Messinstrumente oder Testumgebungen zurück zugreifen. In dieser Phase wird aber nicht nur die fehlerfreie Funktion der Software getestet, sondern es wird auch geprüft, ob in der Design- und Entwicklungsphase alle Anforderungen der Spezifikation erfüllt wurden.
Wissenstransfer vermeidet Know-how-Verlust
Erst nach dem erfolgreichen Abschluss aller Tests ist die Software fertig zur Auslieferung. Für den „normalen“ Auftragsentwickler endet hier die Arbeit, ein „mature nearshore“ Dienstleister sorgt an dieser Stelle aber auch noch für den Wissenstransfer zurück an den Kunden. Dies stellt sicher, dass der Auftraggeber durch das Outsourcing keinen Know-how-Verlust erleidet, sondern gegebenenfalls in der Lage ist, ohne weitere externe Unterstützung seine Produkte weiter zu entwickeln.
In den meisten Fällen bleibt Hermes Softlab für seine Kunden aktiv als Partner für alle Support- und Wartungsaufgaben. Insbesondere wenn es um die Pflege von Legacy-Produkten geht, wird der Dienstleister zum Beispiel mit der Einarbeitung neuer Funktionalitäten beauftragt.
Qualitätssicherung durch den Software Life-Cycle Process
Die Qualität einer Software, und letzten Endes auch des Dienstleisters, lässt sich anhand von sechs Merkmalen beurteilen: Funktionalität, Zuverlässigkeit, Benutzbarkeit, Effizienz, Änderbarkeit und Übertragbarkeit. Hermes Softlab erzielt eine hohe Software-Qualität durch die Anwendung des standardisierten Entwicklungsprozesses „Software Life-Cycle Process“ (SLCP). Hier finden die qualitätssichernden Maßnahmen auf verschiedene Weise sowohl auf Prozess- als auch auf Produktebene statt. Dazu stellt der Projektmanager für jedes Projekt einen Projektplan, einen Qualitätssicherungsplan und einen Risikoplan auf. Im Projektplan werden in enger Zusammenarbeit mit dem Kunden das Projekt und seine Ziele festgelegt sowie einzelne Entwicklungsphasen (Meilensteine) definiert. Der Risikoplan ergibt sich aus der Analyse möglicher Probleme im Verlauf des Projektes. Der Qualitätssicherungsplan schreibt vor, wie zum Beispiel mit Fehlerfällen umgegangen wird, und definiert klare Qualitätsziele. Hermes bevorzugt Metriken zum Messen ihrer Softwarequalität. Das kann die Performance, aber – insbesondere bei Embedded-Systemen – auch der Speicherverbrauch sein.
In jedem Fall werden nach Abschluss eines jeden Projektes Post-Mortem-Besprechungen mit allen Beteiligten abgehalten Auf diese Weise baut der Dienstleister seine Erfahrungen weiter aus, sowohl auf technologischer Ebene, aber auch hinsichtlich des Projektmanagements, das oft über den Erfolg des gesamten Entwicklungsauftrags und die daraus resultierenden Kostenvorteile entscheidet.
*Markus Fuchs ist Presales Consultant bei HERMES Softlab Deutschland GmbH, Böblingen.
(ID:234252)