Suchen

Definition „Shift-Left-Ansatz“ Was ist Shift-Left Testing?

| Autor / Redakteur: zeroshope / Stephan Augsten

In der Software-Entwicklung kollidieren zwei Ideale: Qualität und Geschwindigkeit der Entwicklung. Wer zu schnell arbeitet, riskiert Fehler. Wer auf Qualität achtet, braucht zu lange. Das Shift Left Testing ist ein Hilfsmittel, die Kollision zu entschärfen.

Firmen zum Thema

Beim Shift Left Testing wird steht eine Software gemäß der Maxime „Teste frühzeitig und häufig“ bereits in der Anforderungsphase auf dem Prüfstand.
Beim Shift Left Testing wird steht eine Software gemäß der Maxime „Teste frühzeitig und häufig“ bereits in der Anforderungsphase auf dem Prüfstand.
(Bild: Startup Stock Photos / Pexels )

Software-Entwicklung läuft traditionell nach dem sogenannten Wasserfall-Modell ab. Nacheinander werden die folgenden Phasen „von oben nach unten“ bzw. auf einem Zeitstrahl von links nach rechts abgearbeitet:

  • Definition der Anforderungen
  • Entwicklung des Designs
  • Coding
  • Tests
  • Veröffentlichung

Auf den ersten Blick ergibt diese Reihenfolge durchaus Sinn: Dadurch, dass die Tests am Ende stehen, werden hier alle Fehler bereinigt. Dies erscheint praktisch, weil so anschließend eine möglichst perfekte Version der Software veröffentlicht werden kann.

Probleme des Wasserfall-Modells

Im Alltag zeigten sich allerdings einige Probleme des Wasserfall-Modells, die durch das sogenannte Shift Left Testing gelöst werden können:

  • Werden bestimmte Fehler nicht frühzeitig erkannt, kann dies zu Folgefehlern führen.
  • Wird die Software im Auftrag eines Kunden entwickelt, ist es problematisch, wenn dieser erst ganz am Ende beim Testen eingebunden wird. Bemängelt er beispielsweise ein fehlerhaftes Design, kostet dies viel Zeit.
  • Die Tage und Wochen vor der Veröffentlichung sind tatsächlich kaum für das Testen geeignet. Bug-Fixes, erste Updates und „Polier“-Prozesse bestimmen den Alltag.
  • Selbst wenn Tester Fehlerberichte erstellen oder Verbesserungsvorschläge einreichen, haben die Entwickler deshalb oft schlicht nicht die Zeit, um sich diesen zu widmen.

Die Linksverschiebung

Beim Shift Left Testing wird der Wasserfall aufgelöst. Die Reihenfolge ohne Tests sieht jetzt so aus: Anforderungen - Design - Coding - Veröffentlichung. Das Testen wird auf dem Zeitstrahl möglichst weit nach links geschoben und mehrfach durchgeführt.

Die Reihenfolge sieht so aus: Anforderungen - Tests - Design - Tests - Coding - Tests - Veröffentlichung. Dieses Verfahren bietet die folgenden Vorteile:

  • Dadurch, dass keine Folgefehler entstehen, steigt die Entwicklungsgeschwindigkeit, obwohl tatsächlich mehr getestet wird.
  • Alle Stakeholder werden frühzeitig eingebunden. Dies ermöglicht es, etwaige Fehler beispielsweise im Design schnell zu identifizieren.
  • Testprotokolle können optimiert werden. Dadurch, dass die Tester eher und mehr eingebunden werden, können sie ihre eigene Arbeit verbessern. Dies liegt erstens daran, dass sie weniger Zeitdruck haben. Und zweitens kommunizieren sie wesentlich mehr mit den an der Entwicklung beteiligten Parteien.

Shift Left Testing ist eine Hilfe

Shift Left Testing ist durch seine Vorteile ein wirksames Hilfsmittel, um die Kollision der beiden Ideale „Geschwindigkeit“ und „Qualität“ zu entschärfen. Es ist allerdings nicht die ultimative Lösung. Testphasen können beispielsweise immer noch künstlich ausgedehnt oder nicht ernst genug genommen werden. Die Linksverschiebung ist deshalb kein Allheilmittel.

(ID:46611926)