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!

bgloger-redakteur
August 27, 2014

Table of content

Diesen Beitrag teilen

Das könnte auch interessant sein:

Wie du mit klaren Rollen Erwartungen managst (und Konflikten vorbeugst)
BG

Wie du mit klaren Rollen Erwartungen managst (und Konflikten vorbeugst)

Innere Klarheit statt Aktionismus – wie du als Führungskraft souverän bleibst
BG

Innere Klarheit statt Aktionismus – wie du als Führungskraft souverän bleibst

Zwischen Klarheit und Kontrolle – was moderne Führung heute wirklich braucht
BG

Zwischen Klarheit und Kontrolle – was moderne Führung heute wirklich braucht

Gute Führung beginnt bei dir - warum Selbstführung kein Luxus ist
BG

Gute Führung beginnt bei dir - warum Selbstführung kein Luxus ist

„Purpose statt Position“ - warum der Wunsch nach Sinn zum neuen Karrieremotor wird
BG

„Purpose statt Position“ - warum der Wunsch nach Sinn zum neuen Karrieremotor wird

Arbeiten im Wandel - was Unternehmen heute leisten müssen
BG

Arbeiten im Wandel - was Unternehmen heute leisten müssen

Was ist eigentlich ein Agile Coach - und brauchen wir das wirklich?
BG

Was ist eigentlich ein Agile Coach - und brauchen wir das wirklich?

Finde deine Stimme – und nutze KI als Verstärker
BG

Finde deine Stimme – und nutze KI als Verstärker

Leadership in the AI Era: Reinventing Human-Centered Leadership
BG

Leadership in the AI Era: Reinventing Human-Centered Leadership

KI hier, KI da – was bedeutet das für mich als Führungskraft?
BG

KI hier, KI da – was bedeutet das für mich als Führungskraft?

Der kybernetische Teamkollege
BG

Der kybernetische Teamkollege

Agile Strategie mit OKRs: Vom Denken ins Tun kommen
BG

Agile Strategie mit OKRs: Vom Denken ins Tun kommen