Nicht alles über den Zaun werfen, aber das Richtige mit Mut, geschickter Koordination, zusammen mit verlässlichen Partnern auslagern. Ein Plädoyer für ein Outsourcing im Test mit Augenmaß. In vielen Management-Köpfen und -Zielen ist Outsourcing immer noch blind verankert. Meist wird zu umfangreich und das Falsche ausgelagert. Für einige – nicht nur strategisch wichtige – Bereiche kann dieses Modell jedoch auch funktionieren, gewisse Rahmenbedingungen vorausgesetzt. Welche Vor- und Nachteile (Out-)Sourcing bringt, aber auch wo die Schwierigkeiten stecken und wie ein Unternehmen die passende Lösung für sich finden kann, möchte ich in diesem Beitrag näher betrachten.
Aktuelle Schwerpunkte wie neue Technologien, IOT, Big Data, Industrie 4.0, aber auch agile Entwicklungsmodelle eignen sich nur bedingt für Outsourcing Modelle. Dahinter steckt auch das Ziel, ein Team näher zusammenzubringen, High Performanceteams zu schaffen, Entscheidungen im Team als Einheit zu treffen, aktiv vor Ort in „Startup Zonen“ zu arbeiten. Viele Manager stehen unter massivem Zeit- und Kostendruck und stellen sich daher die Fragen:
- „Kann ich das intern abwickeln?“
- „Hole ich mir externe Spezialisten?“ oder
- „Gehe ich den Weg und wähle ein auf den ersten Blick attraktives Angebot von Offshore Sourcing Partnern?“
Outsourcing funktioniert nicht einfach auf Knopfdruck – es muss wohl durchdacht sein. Aber starten wir mal mit einer kurzen Begriffsklärung:
Was ist Outsourcing eigentlich?
Beim Outsourcing in der IT handelt es sich um die Auslagerung von diversen Aufgaben an externe Dienstleister. Ob dies kurz, mittel- oder längerfristige Aktivitäten sind, hängt vom gewählten Delivery/Sourcing Modell ab. Grundsätzlich kann jeder Bereich einer IT Organisation ausgelagert werden. Ob eine Auslagerung von Anwendungssystemen, Abteilungen oder von IT-Infrastrukturen Sinn macht bzw. wo sie kontraproduktiv ist, ist genau zu prüfen. Test kann aber genauso ausgelagert werden, doch dazu schauen wir uns zunächst einmal an, was Testen in der IT heute kennzeichnet.
Was ist Softwaretest, welche Eigenschaften muss ein Tester heutzutage vorweisen?
Der Test musste sich schon immer seinen Platz in der Software-Wertschöpfungskette erkämpfen. Im Zuge immer kürzerer Time-to-Market-Zeiten, steigender Komplexität und höheren Anforderungen an Qualität, hat sich der Test – die Sicherung der Qualität – nun endlich sein Fenster erkämpft und ist nicht mehr nur am Ende, sondern iterativ / laufend dabei.
Testen ist heutzutage eine technisch herausfordernde, hochprofessionelle, äußerst anspruchsvolle Aufgabenstellung. Tester sind die Kriminologen des Codes. Neben technischer Affinität und Verständnis über die aktuellsten Werkzeuge, müssen sie immer am Zug der Zeit bleiben, Innovationen verfolgen, sich damit auseinandersetzen und ständig verbessern.
Aus den anfänglich introvertierten Nerds wurden extrovertierte, stressresistente und auf Fachbereiche, Anwender, Analytiker, Entwickler oder Betriebsexperten zugehende Spezialisten. Letztendlich Menschen, die nicht nur stupide in Applikationen vordefinierte Szenarien durchklicken.
Natürlich gibt es diese Spezialisten auch in Indien, Asien, Nordafrika oder auch Osteuropa – exzellent ausgebildete Tester, Entwickler, Business Analysten. Jedoch ist die theoretische Ausbildung ja nicht alles.
Abb.: Software-Tester sind die Kriminologen des Codes
Nun, aber mit welchen Problemen haben wir zu kämpfen, wenn wir beides – Outsourcing und Test – verbinden? Passt das gut zusammen? Schauen wir uns zunächst das Konstrukt eines Testcenters an, um dann dessen Ausprägung als ausgelagerten Test zu betrachten.
Outsourcing im Test – verlockend, aber nicht ganz einfach
Ein Testcenter im eigenen Haus liefert typischerweise maßgeschneiderte Leistungen – die Medizin zur richtigen Zeit. Somit kann das Testcenter zu Spitzenzeiten Ressourcen, aber auch nicht vorhandene Kompetenzen dem Projekt zur Verfügung stellen. Es werden unter anderem Aufwände, Komplexität, fehlende Skills, usw. für das Projekt reduziert. Ein Testcenter wäre eine eigene Gruppe, welche die internen Prozesse mit Fachwissen und methodischem Testwissen kombiniert – sozusagen die Special Forces des Tests. Dies ist jedoch nur dann möglich, wenn im Unternehmen Testkompetenzen aufgebaut und verwaltet werden. Im Idealfall kümmert sich das Testcenter um Rekrutierung, Bereitstellung und kontinuierliche Kompetenzentwicklung der Mitarbeiter.
Wenn eine Organisation hingegen mit Offshore Sourcing Partnern zusammenarbeiten möchte, ist eine Analyse der eigenen Mitarbeiter unabdingbar. Für die Zusammenarbeit müssen andere Kompetenzen und Skills vorhanden sein, um Projekte gemeinsam erfolgreich abwickeln zu können. Um nur einige wenige zu nennen:
- Kulturelle Unterschiede erkennen und damit umgehen können,
- die Sender und Empfänger Thematik in der Kommunikation,
- Dokumente mit höherem Detailierungsgrad verwenden,
- die Sprache,
- usw.
Ich war einmal in einem Projekt für die Transition und den notwendigen Know-how-Transfer einer Bankapplikation verantwortlich. Die Übergabe/Know-how Sessions waren ein Mischung aus Simultanübersetzung von Bankendeutsch in ein verständliches Englisch, mit dem Versuch die Eigenschaften der Applikation inklusive allen geschichtlichen Gegebenheiten und Workarounds meinen indischen Kollegen zu erklären, damit diese Applikation in das Regressionstestfallportfolio übernommen und automatisiert werden konnte.
Herausgegriffen ein kleines Beispiel der Problematik: ein Kollege in Indien ist die direkte Kommunikation der Österreicher nicht gewohnt, es läuft vieles vorsichtiger und formeller ab, d.h. es ist die Herausforderung, die Filterung der Kommunikation zwischen den Stakeholdern zu überwinden.
Schlussendlich hat alles gut funktioniert und der Know-how-Transfer konnte innerhalb von 2 Wochen abgeschlossen werden. Im Nachhinein kamen beide Parteien unabhängig zu mir und meinten ohne eine Rolle wie ich sie innehatte, hätte dies nie funktioniert da beide von ihrer Organisation damit alleine gelassen wurden.
Vorteile, aber auch Risiken
Die Erfahrung zeigt, dass sich eine Organisation bei der Sourcing Thematik mit folgenden Themen auseinandersetzen und diese kritisch hinterfragen muss. Mögliche Vorteile für das Outsourcing sind unter anderem:
- Entlastung der eigenen IT-Organisation
- Ressourcen werden frei für weitere Bereiche
- Verlagerung des Investitionsrisikos
- Lösungen sind besser skalierbar
- Attraktives Preis-/Leistungsverhältnis
- Konzentration auf Kernkompetenzen
Eine Organisation sollte jedoch auch die Gefahren betrachten und sich nicht nur von den monetären Vorteilen blenden lassen. Auf diese Themen sollten sie besonders achten:
- Abhängigkeit von einem IT-Dienstleistungsunternehmen
- Gefahr des Verlusts von unternehmerischem Know-how im Bereich Informationstechnik.
- Unklare rechtliche Abklärungen (Service Level Agreements)
- Zeitliche Distanz
- Fluktuation der offshore Mitarbeiter
- Hoher Detailierungsgrad von Dokumenten notwendig
- Sprache / Kommunikation (klare Kommunikationsregeln)
- Interkulturelle Unterschiede
- Identifizieren des internen Reifegrads der Organisation (Kommunikation und Zusammenarbeit innerhalb der Organisation)
- Methoden und Metriken zur Erfolgsmessung
- Realkosten vs. Lohn und Gehaltskosten
- Moderne Teambasierte Entwicklungsmodelle
Oft werden die kulturellen Unterschiede, die Kosten für den notwendigen Know-how-Transfer und der erforderliche höhere Detailierungsgrad von Dokumenten, unterschätzt. Dokumente einfach über den „Zaun“ zu werfen, funktioniert einfach nicht. Die koordinativen und sozialen Fähigkeiten der eigenen Mitarbeiter vor Ort müssen analysiert und geschult werden. Die Implementierung von 2 SPOCS (Single Point of Communication) on- und offshore ist unabdingbar.
Der tatsächliche Aufwand, umgelegt auf die Realkosten im Vergleich zu den Lohn- und Gehaltskosten im Unternehmen ist am Ende nicht außer Acht zu lassen. Schlussendlich kann auch eine zu stringente Sicherheitspolicy das gesamte Outsourcing nahezu unmöglich machen (die Konsequenz sind dann Testumgebungen, die nur einen minimalen Teil der Wirklichkeit spiegeln).
Fazit
Für den Erfolg eines Projekts ist das Spezialwissen von Architekturexperten, Business Analytikern, Entwicklungsleitern, Coaches und Testexperten notwendig. Ich bin kein Gegner oder direkter Befürworter des Outsourcings, jedoch muss genau überlegt werden welche Teile ich auslagere und welche nicht. Wenn man sich für Outsourcing entscheidet, entscheidet man sich zwingendermaßen auch dafür, einen Weg gemeinsam mit einem Partner zu gehen. Dies kann zu Synergien und Erfolgen führen – vorausgesetzt das Unternehmen erledigt seine Hausaufgaben. Es kann genauso, wie bei jeder Partnerschaft auch scheitern.
Es ist eine Investition – keine Reduktion. Wenn Sie diese Investition nicht machen möchten, dann lassen Sie lieber die Finger davon.
Interne Testorganisation bei Bedarf mit externer Kompetenzunterstützung zu ergänzen, macht eine Organisation fit für die kommenden Herausforderungen in der IT. Strategisch wichtige Bereiche sollten in eigener Hand bleiben! Gut strukturierte, gemanagte und überlegte Arbeit vor Ort, Mitarbeiter mit den richtigen Skills und einem verlässlichen und exzellenten Outsourcing-Partner sind wichtig. Dann kann jedes Vorgehen gelingen.
The post Outsourcing 4.0 – Wie man Testdienstleistungen richtig auslagert appeared first on ANECON Blog.
Stellen der Anecon Software Design und Beratung GmbH
Software Test Berater (m/w)Architekt Testautomatisierung (m/w)
Software Test Manager (m/w)
Entwickler (m/w) für Testautomatisierungs-Frameworks Java/.NET bzw. SAP/ABAP