Die Operation am offenen Herzen

Eine Situation unlängst in einem meiner Kundenprojekte: Die aufwändig in mehr als 5 Monaten entwickelte Software-Lösung befindet sich im großen abschließenden Test durch alle Fachbereiche. Es ist ein zeitintensives Verfahren, da viele Stakeholder involviert und jede Menge Testfälle abgearbeitet werden müssen. Ein in der Mitte des Integrationstest gefundenes und zunächst klein aussehendes Problem entwickelt sich während der Analyse zusehends zum „Show-Stopper“. Wichtige Plausibilisierungsprüfungen für den Geschäftsprozess finden wegen einer falschen Logik keine Anwendung. Das To-Do ist schnell klar: Die Methode muss umgeschrieben und verbessert werden, die Anpassungen sind überschaubar.Was zunächst einfach klingt, gestaltet sich auf den zweiten Blick äußerst problematisch. Die Anpassung muss in einem zentralen Baustein der Geschäftsprozesslogik angepasst werden - das hat große Auswirkungen auf die Geschäftsprozesse. Die Software und Prozesse sind nur sehr mangel- und lückenhaft mit Unit Tests und automatisierten Testskripts abgesichert. Änderungen könnten großflächige Nachtests aller Geschäftsprozesse bedeuten, welche die Produktivsetzung der IT-Lösung um Wochen verzögern wurde. Gute Ideen sind nun gefragt …Nach einem hektischen und diskussionsreichen Brainstorming hat das Team einen vermeintlich vernünftigen Weg aus der Misere gefunden:

  1. Die betroffene Methode soll in einem ersten Schritt umfangreich durch zahlreiche Unit Tests an den Schnittstellen abgesichert werden.
  2. In einem zweiten Schritt wird die Methode überarbeitet und mit Hilfe der Unit Tests auf deren gleiche Funktionsweise getestet.
  3. In einem dritten Schritt sollen einzelne Testfälle des Integrationstests stichprobenartig wiederholt werden.

Müsste ich eine Analogie für diese Vorgehensweise finden, würde ich die Operation am offenen Herzen wählen. Auch in der Medizin wird versucht, das Herz so gut wie möglich vom Rest der Organe bei gleichzeitiger Beibehaltung seiner Funktion zu isolieren. Beide Vorgehensweisen bergen Risiken, aber sie sind deutlich geringer als bei einem rigorosen Vorgehen ohne vorherige Absicherung bzw. Isolierung.Wenig überraschend ist, dass die nachträgliche Absicherung der Methode deutlich aufwändiger ist, als wenn sie gleich von Beginn an testautomatisiert aufgebaut worden wäre. Gerade dieses Beispiel hat mir wieder gezeigt, wie wichtig es ist, bestehende Funktionalität gewissenhaft abzusichern, um Änderungen im Code vornehmen zu können. Denn diese Änderungen werden kommen, ganz gleich ob durch Fehler oder neue Anforderungen bedingt.Respond to change … Start code test-driven!

Agile Toolbox
bgloger-redakteur
August 27, 2014

Table of content

Diesen Beitrag teilen

Das könnte auch interessant sein:

FRAGE: Warum macht ihr eigentlich kein SAFe?
Boris Gloger

FRAGE: Warum macht ihr eigentlich kein SAFe?

FRAGE: Was würdet ihr Kund:innen raten, die mit denselben Herausforderungen, wie BG sie aktuell hat, zu euch kommt?
Boris Gloger

FRAGE: Was würdet ihr Kund:innen raten, die mit denselben Herausforderungen, wie BG sie aktuell hat, zu euch kommt?

FRAGE: Wie wird darüber entschieden, welche:n Berater:in wir bekommen? Können wir die Berater:innen vorher kennenlernen?
Boris Gloger

FRAGE: Wie wird darüber entschieden, welche:n Berater:in wir bekommen? Können wir die Berater:innen vorher kennenlernen?

FRAGE: Was kostet eine agile Transformation?
Boris Gloger

FRAGE: Was kostet eine agile Transformation?

FRAGE: Welche Rolle spielt Training?
Boris Gloger

FRAGE: Welche Rolle spielt Training?

FRAGE: Wer sind die Top 10 agilen Unternehmensberatungen?
Boris Gloger

FRAGE: Wer sind die Top 10 agilen Unternehmensberatungen?

FRAGE: Was sind die Hauptunterschiede zwischen klassischen Beratungen und borisgloger?
Boris Gloger

FRAGE: Was sind die Hauptunterschiede zwischen klassischen Beratungen und borisgloger?

FRAGE: Wie viel bringt die Investition? Was ist der Business Case dahinter?
Boris Gloger

FRAGE: Wie viel bringt die Investition? Was ist der Business Case dahinter?

FRAGE: Habt ihr Beispiele für konkrete Situationen, in denen ihr Kunden bei einer schwierigen Herausforderung geholfen habt?
Boris Gloger

FRAGE: Habt ihr Beispiele für konkrete Situationen, in denen ihr Kunden bei einer schwierigen Herausforderung geholfen habt?

FRAGE: Welche Vorteile bietet es uns, wenn wir borisgloger beauftragen, anstatt die Transformation mit Internen voranzutreiben?
Boris Gloger

FRAGE: Welche Vorteile bietet es uns, wenn wir borisgloger beauftragen, anstatt die Transformation mit Internen voranzutreiben?

FRAGE: Welche sind häufige Herausforderungen, die ihr beim Kunden löst?
Boris Gloger

FRAGE: Welche sind häufige Herausforderungen, die ihr beim Kunden löst?

FRAGE: Warum sollten wir mit borisgloger arbeiten?
Boris Gloger

FRAGE: Warum sollten wir mit borisgloger arbeiten?